From 66872e5549483af7f7718e0de439b3742027239ef75350fb241d84ac257387f2 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 28 Jun 2022 15:43:38 +0000 Subject: [PATCH] Accepting request 985562 from home:StefanBruens:branches:X11:wxWidgets The xml files are required when bootstrapping wxWindows from a git checkout. - Install missing header added in 3.1.7, add 0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch - Add doc generation using _multibuild - Enable non-gui tests OBS-URL: https://build.opensuse.org/request/show/985562 OBS-URL: https://build.opensuse.org/package/show/X11:wxWidgets/wxWidgets-3_2?expand=0&rev=92 --- ...edlgcustomize.h-to-the-list-of-files.patch | 66 ++++++++++++++ _multibuild | 1 + wxWidgets-3_2-rpmlintrc | 4 +- wxWidgets-3_2.changes | 12 +++ wxWidgets-3_2.spec | 90 +++++++++++++++++-- 5 files changed, 166 insertions(+), 7 deletions(-) create mode 100644 0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch diff --git a/0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch b/0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch new file mode 100644 index 0000000..0e95e86 --- /dev/null +++ b/0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch @@ -0,0 +1,66 @@ +From 5f1c1e9eb6856c92bbba242f854baab18b9ff566 Mon Sep 17 00:00:00 2001 +From: Vadim Zeitlin +Date: Sat, 11 Jun 2022 15:13:38 +0200 +Subject: [PATCH] Add new wx/filedlgcustomize.h to the list of files + +Notably install it together with the other headers. + +Closes #22516. +--- + Makefile.in | 1 + + build/bakefiles/files.bkl | 1 + + build/cmake/files.cmake | 1 + + build/files | 1 + + 4 files changed, 4 insertions(+) + +diff --git a/Makefile.in b/Makefile.in +index 9c3919ffaa..65ee6e1817 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -4063,6 +4063,7 @@ COND_USE_GUI_1_ALL_GUI_HEADERS = \ + wx/generic/creddlgg.h \ + wx/creddlg.h \ + wx/bmpbndl.h \ ++ wx/filedlgcustomize.h \ + $(LOWLEVEL_HDR) \ + $(GUI_CORE_HEADERS) \ + wx/mediactrl.h \ +diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl +index 0b16b7d632..5007c6ab97 100644 +--- a/build/bakefiles/files.bkl ++++ b/build/bakefiles/files.bkl +@@ -1310,6 +1310,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! + wx/generic/creddlgg.h + wx/creddlg.h + wx/bmpbndl.h ++ wx/filedlgcustomize.h + + + +diff --git a/build/cmake/files.cmake b/build/cmake/files.cmake +index 8c9bcf58b5..0b5ea94dcf 100644 +--- a/build/cmake/files.cmake ++++ b/build/cmake/files.cmake +@@ -1213,6 +1213,7 @@ set(GUI_CMN_HDR + wx/generic/creddlgg.h + wx/generic/animate.h + wx/bmpbndl.h ++ wx/filedlgcustomize.h + ) + + set(UNIX_SRC +diff --git a/build/files b/build/files +index ca7e119b61..e918da31ba 100644 +--- a/build/files ++++ b/build/files +@@ -1017,6 +1017,7 @@ GUI_CMN_HDR = + wx/fdrepdlg.h + wx/filectrl.h + wx/filedlg.h ++ wx/filedlgcustomize.h + wx/filehistory.h + wx/filepicker.h + wx/fmappriv.h +-- +2.36.1 + diff --git a/_multibuild b/_multibuild index eb2fa5c..6f050c6 100644 --- a/_multibuild +++ b/_multibuild @@ -2,4 +2,5 @@ GTK3 GTK3-nostl Qt + doc diff --git a/wxWidgets-3_2-rpmlintrc b/wxWidgets-3_2-rpmlintrc index 6aee80f..4ed5e47 100644 --- a/wxWidgets-3_2-rpmlintrc +++ b/wxWidgets-3_2-rpmlintrc @@ -1,4 +1,4 @@ # Project name just starts with lowercase. addFilter("summary-not-capitalized") -# There is no such package. -addFilter("no-dependency-on") +# rpmlint does not detect dates matching SOURCE_DATE_EPOCH +addFilter("wxWidgets-3_2-doc-html.noarch:.*file-contains-date-and-time /usr/share/doc/packages/wxWidgets-3_2-doc-html/.*.html") diff --git a/wxWidgets-3_2.changes b/wxWidgets-3_2.changes index 2d7c1a4..a24052a 100644 --- a/wxWidgets-3_2.changes +++ b/wxWidgets-3_2.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Sun Jun 26 17:37:54 UTC 2022 - Stefan Brüns + +- Install missing header added in 3.1.7, add + 0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch + +------------------------------------------------------------------- +Sat Jun 25 01:11:47 UTC 2022 - Stefan Brüns + +- Add doc generation using _multibuild +- Enable non-gui tests + ------------------------------------------------------------------- Tue Jun 7 20:20:58 UTC 2022 - Antoine Belvire diff --git a/wxWidgets-3_2.spec b/wxWidgets-3_2.spec index 5d15daf..af5377c 100644 --- a/wxWidgets-3_2.spec +++ b/wxWidgets-3_2.spec @@ -20,7 +20,6 @@ %if "%flavor" == "" # default flavor is GTK2 Name: wxWidgets-3_2 -%define pkgname wxWidgets-3_2 %define variant suse %define gtk_version 2 %define toolkit gtk%gtk_version @@ -28,9 +27,14 @@ Name: wxWidgets-3_2 %bcond_with webview %endif +%if "%{flavor}" == "doc" +Name: wxWidgets-3_2-doc +%define variant %{nil} +%define toolkit %{nil} +%endif + %if "%flavor" == "GTK3" Name: wxGTK3-3_2 -%define pkgname wxGTK3-3_2 %define variant suse %define gtk_version 3 %define toolkit gtk%gtk_version @@ -41,7 +45,6 @@ Name: wxGTK3-3_2 %if "%flavor" == "GTK3-nostl" Name: wxWidgets-3_2-nostl -%define pkgname wxWidgets-3_2-nostl %define variant suse-nostl %define gtk_version 3 %define toolkit gtk%gtk_version @@ -54,7 +57,6 @@ wxString and instead rely on the wxChar pointer API. %if "%flavor" == "Qt" Name: wxQt-3_2 -%define pkgname wxQt-3_2 %define variant suse %define toolkit qt %define base_packages 0 @@ -82,6 +84,13 @@ Source5: wxWidgets-3_2-rpmlintrc # identify and backport wxPython fixes to wxWidgets. Source6: wxpython-mkdiff.sh Patch1: soversion.diff +# PATCH-FIX-UPSTREAM +Patch2: 0001-Add-new-wx-filedlgcustomize.h-to-the-list-of-files.patch +%if "%{flavor}" == "doc" +BuildRequires: doxygen +BuildRequires: fdupes +BuildRequires: graphviz +%else BuildRequires: autoconf BuildRequires: cppunit-devel BuildRequires: gcc-c++ @@ -120,6 +129,7 @@ BuildRequires: pkgconfig(sdl) BuildRequires: pkgconfig(sdl2) %endif BuildRequires: pkgconfig(xtst) +%endif %description wxWidgets is a C++ library abstraction layer for a number of GUI @@ -350,16 +360,49 @@ This package contains all files needed for developing with %name. Note: wxWidgets variant devel packages are mutually exclusive. Please read %_docdir/%name/README.SUSE to pick a correct variant. +%package xml +Summary: wxWidgets interface description +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description xml +wxWidgets is a C++ library abstraction layer for a number of GUI +backends. Applications can be created for different GUIs (GTK+, +Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source +code. + +This package contains the interface description in XML format, +useful for generating bindings. + +%package html +Summary: wxWidgets API documentation +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description html +wxWidgets is a C++ library abstraction layer for a number of GUI +backends. Applications can be created for different GUIs (GTK+, +Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source +code. + +This package contains the API documentation in HTML format. + %prep %autosetup -n wxWidgets-%version -p1 cp %{S:2} . %build +%if "%{flavor}" == "doc" +pushd docs/doxygen +echo "DOT_IMAGE_FORMAT = svg" >> Doxyfile +WX_SKIP_DOXYGEN_VERSION_CHECK=1 ./regen.sh xml +WX_SKIP_DOXYGEN_VERSION_CHECK=1 ./regen.sh html + +%else autoconf -f -i # NOTE: gnome-vfs is deprecated. Disabled by default upstream. # # With 2.9.1: -# --enable-objc_uniquifying is relevant only for Cocoa # --enable-accessibility is currently supported only in msw # --enable-extended_rtti does not compile @@ -389,8 +432,16 @@ autoconf -f -i %endif %make_build +%endif %install +%if "%{flavor}" == "doc" +find docs/doxygen/out/xml/ -iname \*.png -print -delete +find docs/doxygen/out/html/ -iname \*.dot -print -delete +%fdupes -s docs/doxygen/out/html/ + +%else + export VENDORTAG='-$variant' # only needed for non-MSW %make_install %if !%base_packages @@ -402,6 +453,19 @@ rm -Rfv %buildroot/%_datadir/locale # HACK: Fix wx-config symlink (bug introduced in 2.9.4). ln -sf $(echo %buildroot/%_libdir/wx/config/* | sed "s%%%buildroot%%%%") %buildroot/%_bindir/wx-config +%endif + +%check +%if "%{flavor}" != "doc" +%make_build -C tests all +pushd tests +# Non-gui tests +./test -l || true +# ExecTestCase depends on xclock, and is fragile +./test exclude:ExecTestCase exclude:[.] +# Tests depending on a running X server +# ./test_gui -l || true +%endif %post -n libwx_baseu-%variant%psonum -p /sbin/ldconfig %postun -n libwx_baseu-%variant%psonum -p /sbin/ldconfig @@ -436,6 +500,21 @@ ln -sf $(echo %buildroot/%_libdir/wx/config/* | sed "s%%%buildroot%%%%") %buildr %post -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig %postun -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig +%if "%{flavor}" == "doc" +%files xml +%doc docs/doxygen/out/xml/*.{xml,xslt} + +%files html +%doc docs/doxygen/out/html/*.css +%doc docs/doxygen/out/html/*.html +%doc docs/doxygen/out/html/*.js +%doc docs/doxygen/out/html/*.png +%doc docs/doxygen/out/html/*.svg +%doc docs/doxygen/out/html/generic +%doc docs/doxygen/out/html/search + +%else + %if %base_packages %files -n libwx_base-%variant-devel %_libdir/libwx_baseu*.so @@ -519,5 +598,6 @@ ln -sf $(echo %buildroot/%_libdir/wx/config/* | sed "s%%%buildroot%%%%") %buildr %dir %_libdir/wx %_libdir/wx/config %_libdir/wx/include +%endif %changelog