From 93c07bc88049f55dac1ea22d1a908403940f96f8 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Mar 22 2023 17:22:40 +0000 Subject: Switch to CentOS structure Signed-off-by: Peter Lemenkov --- diff --git a/.wxGTK.metadata b/.wxGTK.metadata new file mode 100644 index 0000000..16f24d6 --- /dev/null +++ b/.wxGTK.metadata @@ -0,0 +1 @@ +d645cacbf2678cfc402ae163f2b0e0b05be5d239 SOURCES/wxWidgets-3.2.2.1.tar.bz2 diff --git a/SOURCES/wx-config b/SOURCES/wx-config new file mode 100644 index 0000000..30f2a00 --- /dev/null +++ b/SOURCES/wx-config @@ -0,0 +1,51 @@ +#! /bin/sh +# +# Multilib-aware wrapper for the wx-config script +# +# Usage: wx-config [--arch ] +# + +version=3.2 + +if [ $# -ge 2 ]; then + if [ $1 = "--arch" ]; then + arch=$2 + shift 2 + fi +fi + +if [ -z $arch ]; then + arch=`uname -m` +fi + +case $arch in + i?86|ppc|s390|sparc|arm*|ia64|mips|mipsel|riscv32) + libdir=/usr/lib + ;; + x86_64|ppc64|s390x|sparc64|aarch64|ppc64le|mips64*|riscv64) + libdir=/usr/lib64 + ;; + *) + echo "Unsupported architecture '$arch'" + exit 8 + ;; +esac + +wxconfig=$libdir/wx/config/gtk3-unicode-$version +if [ ! -f $wxconfig ]; then + wxconfig=$libdir/wx/config/gtk2-unicode-$version +fi +# special case when using 32-bit userspace and 64-bit kernel +if [ ! -f $wxconfig -a \( $arch = ppc64 -o $arch = sparc64 \) ]; then + wxconfig=/usr/lib/wx/config/gtk3-unicode-$version + if [ ! -f $wxconfig ]; then + wxconfig=/usr/lib/wx/config/gtk2-unicode-$version + fi +fi + +if [ -x $wxconfig ]; then + exec $wxconfig $@ +else + echo "wxGTK-devel isn't installed for architecture '$arch'" + exit 9 +fi diff --git a/SOURCES/wxGTK-3.1.6-abicheck.patch b/SOURCES/wxGTK-3.1.6-abicheck.patch new file mode 100644 index 0000000..1c4e618 --- /dev/null +++ b/SOURCES/wxGTK-3.1.6-abicheck.patch @@ -0,0 +1,16 @@ +diff -up wxWidgets-3.1.6/src/common/appbase.cpp.abicheck wxWidgets-3.1.6/src/common/appbase.cpp +--- wxWidgets-3.1.6/src/common/appbase.cpp.abicheck 2022-04-04 09:41:33.000000000 -0400 ++++ wxWidgets-3.1.6/src/common/appbase.cpp 2022-04-04 19:14:33.883814729 -0400 +@@ -843,11 +843,8 @@ bool wxAppConsoleBase::CheckBuildOptions + wxString prog = wxString::FromAscii(optionsSignature); + wxString progName = wxString::FromAscii(componentName); + +- wxLogFatalError(wxT("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."), ++ wxLogWarning(wxT("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."), + lib, progName, prog); +- +- // normally wxLogFatalError doesn't return +- return false; + } + + return true; diff --git a/SPECS/wxGTK.spec b/SPECS/wxGTK.spec new file mode 100644 index 0000000..4ae3d79 --- /dev/null +++ b/SPECS/wxGTK.spec @@ -0,0 +1,394 @@ +%global srcname wxWidgets +%global wxbasename wxBase +%global gtk3dir bld_gtk3 +%global sover 0 + +Name: wxGTK +Version: 3.2.2.1 +Release: 1%{?dist} +Summary: GTK port of the wxWidgets GUI library +License: wxWidgets +URL: https://www.wxwidgets.org/ + +Source0: https://github.com/%{srcname}/%{srcname}/releases/download/v%{version}/%{srcname}-%{version}.tar.bz2 +Source10: wx-config +# https://bugzilla.redhat.com/show_bug.cgi?id=1225148 +# remove abort when ABI check fails +# Backport from wxGTK +Patch0: %{name}-3.1.6-abicheck.patch + +BuildRequires: make +BuildRequires: gcc-c++ +BuildRequires: gtk3-devel +BuildRequires: webkit2gtk3-devel +BuildRequires: zlib-devel +BuildRequires: libpng-devel +BuildRequires: libjpeg-devel +BuildRequires: libtiff-devel +BuildRequires: expat-devel +BuildRequires: SDL2-devel +BuildRequires: libGLU-devel +BuildRequires: libSM-devel +BuildRequires: gstreamer1-plugins-base-devel +BuildRequires: gettext +BuildRequires: cppunit-devel +BuildRequires: libmspack-devel +BuildRequires: doxygen +BuildRequires: graphviz +BuildRequires: libsecret-devel +BuildRequires: libcurl-devel +# For Tests +%if 0%{?fedora} +BuildRequires: glibc-langpack-en +BuildRequires: mesa-dri-drivers +BuildRequires: xclock +BuildRequires: xorg-x11-server-Xvfb +BuildRequires: python3-httpbin +BuildRequires: vulkan-loader +%endif + +Provides: %{srcname} = %{version}-%{release} +Provides: bundled(scintilla) = 3.7.2 +Requires: %{wxbasename}%{?_isa} = %{version}-%{release} +Requires: %{name}-i18n = %{version}-%{release} + +%description +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package -n %{wxbasename}-devel +Summary: Development files for the wxBase3 library +Requires: %{wxbasename}%{?_isa} = %{version}-%{release} +Requires(post): /usr/sbin/update-alternatives +Requires(postun): /usr/sbin/update-alternatives + +%description -n %{wxbasename}-devel +This package include files needed to link with the wxBase3 library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package devel +Summary: Development files for the wxGTK library +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-gl = %{version}-%{release} +Requires: %{name}-media = %{version}-%{release} +Requires: %{name}-webview = %{version}-%{release} +Requires: %{wxbasename} = %{version}-%{release} +Requires: %{wxbasename}-devel%{?_isa} = %{version}-%{release} +Requires: gtk3-devel +Requires: libGLU-devel +Provides: %{srcname}-devel = %{version}-%{release} + +%description devel +This package include files needed to link with the wxGTK library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package gl +Summary: OpenGL add-on for the wxWidgets library +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description gl +OpenGL (a 3D graphics API) add-on for the wxWidgets library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package i18n +Summary: i18n message catalogs for the wxWidgets library +BuildArch: noarch + +%description i18n +i18n message catalogs for the wxWidgets library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package media +Summary: Multimedia add-on for the wxWidgets library +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description media +Multimedia add-on for the wxWidgets library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package webview +Summary: WebView add-on for the wxWidgets library +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description webview +WebView add-on for the wxWidgets library. +wxWidgets is the GTK port of the C++ cross-platform wxWidgets +GUI library, offering classes for all common GUI controls as well as a +comprehensive set of helper classes for most common application tasks, +ranging from networking to HTML display and image manipulation. + + +%package -n %{wxbasename} +Summary: Non-GUI support classes from the wxWidgets library + +%description -n %{wxbasename} +Every wxWidgets application must link against this library. It contains +mandatory classes that any wxWidgets code depends on (like wxString) and +portability classes that abstract differences between platforms. wxBase can +be used to develop console mode applications -- it does not require any GUI +libraries or the X Window System. + + +%package docs +Summary: Documentation for the wxGTK library +Requires: %{name} = %{version}-%{release} +Provides: %{srcname}-docs = %{version}-%{release} +BuildArch: noarch + +%description docs +This package provides documentation for the %{srcname} library. + + +%prep +%autosetup -n %{srcname}-%{version} -p1 + +# patch some installed files to avoid conflicts with 2.8.* +sed -i -e 's|aclocal)|aclocal/wxwin32.m4)|' Makefile.in + +# fix plugin dir for 64-bit +sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure +sed -i -e 's|/lib|/%{_lib}|' src/unix/stdpaths.cpp + + +%build +%global _configure ../configure + +mkdir %{gtk3dir} +pushd %{gtk3dir} +%configure \ + --with-gtk=3 \ + --with-opengl \ + --with-sdl \ + --with-libmspack \ + --enable-intl \ + --disable-rpath \ + --disable-glcanvasegl \ + --enable-ipv6 + +%make_build +popd + +#Docs +WX_SKIP_DOXYGEN_VERSION_CHECK=1 docs/doxygen/regen.sh html +mv docs/doxygen/out/html . + +%install +pushd %{gtk3dir} +%make_install +popd + +# install our multilib-aware wrapper +##Remove installed +rm %{buildroot}%{_bindir}/wx-config +##Install new and symlink +install -p -D -m 755 %{SOURCE10} %{buildroot}%{_libexecdir}/%{name}/wx-config +sed -i -e 's|=/usr|=%{_prefix}|' %{buildroot}%{_libexecdir}/%{name}/wx-config +ln -s ../..%{_libexecdir}/%{name}/wx-config %{buildroot}%{_bindir}/wx-config-3.2 +touch %{buildroot}%{_bindir}/wx-config + +#Alternatives setup with wxrc +mv %{buildroot}%{_bindir}/wxrc* %{buildroot}%{_libexecdir}/%{name} +ln -s ../..%{_libexecdir}/%{name}/wxrc-3.2 %{buildroot}%{_bindir}/wxrc-3.2 +touch %{buildroot}%{_bindir}/wxrc + +# move bakefiles to avoid conflicts with 2.8.* +mkdir %{buildroot}%{_datadir}/bakefile/presets/wx32 +mv %{buildroot}%{_datadir}/bakefile/presets/*.* %{buildroot}%{_datadir}/bakefile/presets/wx32 + +%find_lang wxstd-3.2 + +%check +%if 0%{?fedora} +pushd %{gtk3dir}/tests +make %{?_smp_mflags} +python3 -m httpbin.core & +LD_LIBRARY_PATH=%{buildroot}%{_libdir} TZ=UTC wxUSE_XVFB=1 \ + WX_TEST_WEBREQUEST_URL="http://localhost:5000" xvfb-run -a ./test ~[.] \ +%ifarch s390x + ~wxTextFile::Special ~wxFileName::GetSizeSpecial ~wxFile::Special \ +%endif + ~WebRequest::SSL::Ignore +LD_LIBRARY_PATH=%{buildroot}%{_libdir} wxUSE_XVFB=1 xvfb-run -a \ + ./test_gui ~[.] \ +%ifarch i686 + ~ImageTestCase \ +%endif +%ifarch s390x + ~WebView \ +%endif + ~wxHtmlPrintout::Pagination +popd +%endif + +%post -n %{wxbasename}-devel +if [ -f %{_bindir}/wx-config ] && [ ! -h %{_bindir}/wx-config ] ; then + rm %{_bindir}/wx-config +fi +/usr/sbin/update-alternatives --install %{_bindir}/wx-config \ + wx-config %{_libexecdir}/%{name}/wx-config 25 +/usr/sbin/update-alternatives --install %{_bindir}/wxrc \ + wxrc %{_libexecdir}/%{name}/wxrc 25 + +%postun -n %{wxbasename}-devel +if [ $1 -eq 0 ] ; then + /usr/sbin/update-alternatives --remove wx-config %{_libexecdir}/%{name}/wx-config + /usr/sbin/update-alternatives --remove wxrc %{_libexecdir}/%{name}/wxrc +fi + +%files +%doc docs/changes.txt docs/readme.txt +%license docs/gpl.txt docs/lgpl.txt docs/licence.txt docs/licendoc.txt +%license docs/preamble.txt +%{_libdir}/libwx_gtk3u_adv-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_aui-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_core-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_html-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_propgrid-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_qa-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_ribbon-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_richtext-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_stc-*.so.%{sover}* +%{_libdir}/libwx_gtk3u_xrc-*.so.%{sover}* + +%files -n %{wxbasename}-devel +%ghost %{_bindir}/wx-config +%ghost %{_bindir}/wxrc +%{_bindir}/wxrc-3.2 +%{_bindir}/wx-config-3.2 +%{_includedir}/wx-3.2 +%{_libdir}/libwx_baseu*.so +%dir %{_libdir}/wx +%dir %{_libdir}/wx/config +%dir %{_libdir}/wx/include +%{_datadir}/aclocal/wxwin32.m4 +%{_datadir}/bakefile/presets/wx32 +%{_libexecdir}/%{name} + +%files devel +%{_libdir}/libwx_gtk3u_*.so +%{_libdir}/wx/config/gtk3-unicode-3.2 +%{_libdir}/wx/include/gtk3-unicode-3.2 + +%files gl +%{_libdir}/libwx_gtk3u_gl-*.so.%{sover}* + +%files i18n -f wxstd-3.2.lang + +%files media +%{_libdir}/libwx_gtk3u_media-*.so.%{sover}* + +%files webview +%{_libdir}/libwx_gtk3u_webview-*.so.%{sover}* +%dir %{_libdir}/wx +%{_libdir}/wx/3.2 + +%files -n %{wxbasename} +%doc docs/changes.txt docs/readme.txt +%license docs/gpl.txt docs/lgpl.txt docs/licence.txt docs/licendoc.txt +%license docs/preamble.txt +%{_libdir}/libwx_baseu-*.so.* +%{_libdir}/libwx_baseu_net-*.so.%{sover}* +%{_libdir}/libwx_baseu_xml-*.so.%{sover}* + +%files docs +%doc html + +%changelog +* Tue Feb 21 2023 Scott Talbert - 3.2.2.1-1 +- Update to new upstream release 3.2.2.1 (#2170238) + +* Fri Feb 10 2023 Scott Talbert - 3.2.2-1 +- Update to new upstream release 3.2.2 (#2168466) + +* Sat Jan 21 2023 Fedora Release Engineering - 3.2.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Dec 14 2022 Florian Weimer - 3.2.1-4 +- Port configure script to C99 + +* Tue Nov 22 2022 Scott Talbert - 3.2.1-3 +- Rebuild (again) with wxGLCanvas GLX support (resolves many OpenGL issues) + +* Thu Nov 17 2022 Scott Talbert - 3.2.1-2 +- Rebuild with wxGLCanvas GLX support (resolves many OpenGL issues) + +* Fri Sep 09 2022 Scott Talbert - 3.2.1-1 +- Update to new upstream release 3.2.1 (#2125703) + +* Mon Jul 25 2022 Scott Talbert - 3.2.0-1 +- Update to new upstream release 3.2.0 (#2101974) + +* Sat Jul 23 2022 Fedora Release Engineering - 3.1.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jun 09 2022 Scott Talbert - 3.1.7-1 +- Update to new upstream release 3.1.7 (#2094214) + +* Mon Apr 04 2022 Scott Talbert - 3.1.6-1 +- Update to new upstream release 3.1.6 (#2071576) + +* Tue Feb 01 2022 Scott Talbert - 3.1.5-6 +- Add some BRs to enable more tests + +* Fri Jan 28 2022 Scott Talbert - 3.1.5-5 +- Fix FTBFS with GCC 12 (#2047123) + +* Sat Jan 22 2022 Fedora Release Engineering - 3.1.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Jan 10 2022 Scott Talbert - 3.1.5-3 +- Fix wxGLCanvas::IsDisplaySupported() when using EGL + +* Fri Jul 23 2021 Fedora Release Engineering - 3.1.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu Apr 15 2021 Scott Talbert - 3.1.5-1 +- Update to new upstream release 3.1.5 (#1948935) + +* Thu Mar 04 2021 Scott Talbert - 3.1.4-5 +- Fix FTBFS due to glibc non-const SIGSTKSZ + +* Wed Mar 03 2021 Peter Hutterer 3.1.4-4 +- Require only xclock, not all of xorg-x11-apps (#1934359) + +* Sat Feb 06 2021 Scott Talbert - 3.1.4-3 +- Properly skip WebView tests to fix FTBFS (#1923643) + +* Wed Jan 27 2021 Fedora Release Engineering - 3.1.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 08 2020 Scott Talbert - 3.1.4-1 +- Update to new upstream release 3.1.4 (#1859715) + +* Sat Aug 01 2020 Fedora Release Engineering - 3.1.3-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 3.1.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Mar 03 2020 Scott Talbert - 3.1.3-1 +- Initial packaging of wxWidgets 3.1.x (dev version) (#1714714) diff --git a/wx-config b/wx-config deleted file mode 100644 index 30f2a00..0000000 --- a/wx-config +++ /dev/null @@ -1,51 +0,0 @@ -#! /bin/sh -# -# Multilib-aware wrapper for the wx-config script -# -# Usage: wx-config [--arch ] -# - -version=3.2 - -if [ $# -ge 2 ]; then - if [ $1 = "--arch" ]; then - arch=$2 - shift 2 - fi -fi - -if [ -z $arch ]; then - arch=`uname -m` -fi - -case $arch in - i?86|ppc|s390|sparc|arm*|ia64|mips|mipsel|riscv32) - libdir=/usr/lib - ;; - x86_64|ppc64|s390x|sparc64|aarch64|ppc64le|mips64*|riscv64) - libdir=/usr/lib64 - ;; - *) - echo "Unsupported architecture '$arch'" - exit 8 - ;; -esac - -wxconfig=$libdir/wx/config/gtk3-unicode-$version -if [ ! -f $wxconfig ]; then - wxconfig=$libdir/wx/config/gtk2-unicode-$version -fi -# special case when using 32-bit userspace and 64-bit kernel -if [ ! -f $wxconfig -a \( $arch = ppc64 -o $arch = sparc64 \) ]; then - wxconfig=/usr/lib/wx/config/gtk3-unicode-$version - if [ ! -f $wxconfig ]; then - wxconfig=/usr/lib/wx/config/gtk2-unicode-$version - fi -fi - -if [ -x $wxconfig ]; then - exec $wxconfig $@ -else - echo "wxGTK-devel isn't installed for architecture '$arch'" - exit 9 -fi diff --git a/wxGTK-3.1.6-abicheck.patch b/wxGTK-3.1.6-abicheck.patch deleted file mode 100644 index 1c4e618..0000000 --- a/wxGTK-3.1.6-abicheck.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up wxWidgets-3.1.6/src/common/appbase.cpp.abicheck wxWidgets-3.1.6/src/common/appbase.cpp ---- wxWidgets-3.1.6/src/common/appbase.cpp.abicheck 2022-04-04 09:41:33.000000000 -0400 -+++ wxWidgets-3.1.6/src/common/appbase.cpp 2022-04-04 19:14:33.883814729 -0400 -@@ -843,11 +843,8 @@ bool wxAppConsoleBase::CheckBuildOptions - wxString prog = wxString::FromAscii(optionsSignature); - wxString progName = wxString::FromAscii(componentName); - -- wxLogFatalError(wxT("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."), -+ wxLogWarning(wxT("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."), - lib, progName, prog); -- -- // normally wxLogFatalError doesn't return -- return false; - } - - return true; diff --git a/wxGTK.spec b/wxGTK.spec deleted file mode 100644 index 4ae3d79..0000000 --- a/wxGTK.spec +++ /dev/null @@ -1,394 +0,0 @@ -%global srcname wxWidgets -%global wxbasename wxBase -%global gtk3dir bld_gtk3 -%global sover 0 - -Name: wxGTK -Version: 3.2.2.1 -Release: 1%{?dist} -Summary: GTK port of the wxWidgets GUI library -License: wxWidgets -URL: https://www.wxwidgets.org/ - -Source0: https://github.com/%{srcname}/%{srcname}/releases/download/v%{version}/%{srcname}-%{version}.tar.bz2 -Source10: wx-config -# https://bugzilla.redhat.com/show_bug.cgi?id=1225148 -# remove abort when ABI check fails -# Backport from wxGTK -Patch0: %{name}-3.1.6-abicheck.patch - -BuildRequires: make -BuildRequires: gcc-c++ -BuildRequires: gtk3-devel -BuildRequires: webkit2gtk3-devel -BuildRequires: zlib-devel -BuildRequires: libpng-devel -BuildRequires: libjpeg-devel -BuildRequires: libtiff-devel -BuildRequires: expat-devel -BuildRequires: SDL2-devel -BuildRequires: libGLU-devel -BuildRequires: libSM-devel -BuildRequires: gstreamer1-plugins-base-devel -BuildRequires: gettext -BuildRequires: cppunit-devel -BuildRequires: libmspack-devel -BuildRequires: doxygen -BuildRequires: graphviz -BuildRequires: libsecret-devel -BuildRequires: libcurl-devel -# For Tests -%if 0%{?fedora} -BuildRequires: glibc-langpack-en -BuildRequires: mesa-dri-drivers -BuildRequires: xclock -BuildRequires: xorg-x11-server-Xvfb -BuildRequires: python3-httpbin -BuildRequires: vulkan-loader -%endif - -Provides: %{srcname} = %{version}-%{release} -Provides: bundled(scintilla) = 3.7.2 -Requires: %{wxbasename}%{?_isa} = %{version}-%{release} -Requires: %{name}-i18n = %{version}-%{release} - -%description -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package -n %{wxbasename}-devel -Summary: Development files for the wxBase3 library -Requires: %{wxbasename}%{?_isa} = %{version}-%{release} -Requires(post): /usr/sbin/update-alternatives -Requires(postun): /usr/sbin/update-alternatives - -%description -n %{wxbasename}-devel -This package include files needed to link with the wxBase3 library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package devel -Summary: Development files for the wxGTK library -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: %{name}-gl = %{version}-%{release} -Requires: %{name}-media = %{version}-%{release} -Requires: %{name}-webview = %{version}-%{release} -Requires: %{wxbasename} = %{version}-%{release} -Requires: %{wxbasename}-devel%{?_isa} = %{version}-%{release} -Requires: gtk3-devel -Requires: libGLU-devel -Provides: %{srcname}-devel = %{version}-%{release} - -%description devel -This package include files needed to link with the wxGTK library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package gl -Summary: OpenGL add-on for the wxWidgets library -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description gl -OpenGL (a 3D graphics API) add-on for the wxWidgets library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package i18n -Summary: i18n message catalogs for the wxWidgets library -BuildArch: noarch - -%description i18n -i18n message catalogs for the wxWidgets library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package media -Summary: Multimedia add-on for the wxWidgets library -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description media -Multimedia add-on for the wxWidgets library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package webview -Summary: WebView add-on for the wxWidgets library -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description webview -WebView add-on for the wxWidgets library. -wxWidgets is the GTK port of the C++ cross-platform wxWidgets -GUI library, offering classes for all common GUI controls as well as a -comprehensive set of helper classes for most common application tasks, -ranging from networking to HTML display and image manipulation. - - -%package -n %{wxbasename} -Summary: Non-GUI support classes from the wxWidgets library - -%description -n %{wxbasename} -Every wxWidgets application must link against this library. It contains -mandatory classes that any wxWidgets code depends on (like wxString) and -portability classes that abstract differences between platforms. wxBase can -be used to develop console mode applications -- it does not require any GUI -libraries or the X Window System. - - -%package docs -Summary: Documentation for the wxGTK library -Requires: %{name} = %{version}-%{release} -Provides: %{srcname}-docs = %{version}-%{release} -BuildArch: noarch - -%description docs -This package provides documentation for the %{srcname} library. - - -%prep -%autosetup -n %{srcname}-%{version} -p1 - -# patch some installed files to avoid conflicts with 2.8.* -sed -i -e 's|aclocal)|aclocal/wxwin32.m4)|' Makefile.in - -# fix plugin dir for 64-bit -sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure -sed -i -e 's|/lib|/%{_lib}|' src/unix/stdpaths.cpp - - -%build -%global _configure ../configure - -mkdir %{gtk3dir} -pushd %{gtk3dir} -%configure \ - --with-gtk=3 \ - --with-opengl \ - --with-sdl \ - --with-libmspack \ - --enable-intl \ - --disable-rpath \ - --disable-glcanvasegl \ - --enable-ipv6 - -%make_build -popd - -#Docs -WX_SKIP_DOXYGEN_VERSION_CHECK=1 docs/doxygen/regen.sh html -mv docs/doxygen/out/html . - -%install -pushd %{gtk3dir} -%make_install -popd - -# install our multilib-aware wrapper -##Remove installed -rm %{buildroot}%{_bindir}/wx-config -##Install new and symlink -install -p -D -m 755 %{SOURCE10} %{buildroot}%{_libexecdir}/%{name}/wx-config -sed -i -e 's|=/usr|=%{_prefix}|' %{buildroot}%{_libexecdir}/%{name}/wx-config -ln -s ../..%{_libexecdir}/%{name}/wx-config %{buildroot}%{_bindir}/wx-config-3.2 -touch %{buildroot}%{_bindir}/wx-config - -#Alternatives setup with wxrc -mv %{buildroot}%{_bindir}/wxrc* %{buildroot}%{_libexecdir}/%{name} -ln -s ../..%{_libexecdir}/%{name}/wxrc-3.2 %{buildroot}%{_bindir}/wxrc-3.2 -touch %{buildroot}%{_bindir}/wxrc - -# move bakefiles to avoid conflicts with 2.8.* -mkdir %{buildroot}%{_datadir}/bakefile/presets/wx32 -mv %{buildroot}%{_datadir}/bakefile/presets/*.* %{buildroot}%{_datadir}/bakefile/presets/wx32 - -%find_lang wxstd-3.2 - -%check -%if 0%{?fedora} -pushd %{gtk3dir}/tests -make %{?_smp_mflags} -python3 -m httpbin.core & -LD_LIBRARY_PATH=%{buildroot}%{_libdir} TZ=UTC wxUSE_XVFB=1 \ - WX_TEST_WEBREQUEST_URL="http://localhost:5000" xvfb-run -a ./test ~[.] \ -%ifarch s390x - ~wxTextFile::Special ~wxFileName::GetSizeSpecial ~wxFile::Special \ -%endif - ~WebRequest::SSL::Ignore -LD_LIBRARY_PATH=%{buildroot}%{_libdir} wxUSE_XVFB=1 xvfb-run -a \ - ./test_gui ~[.] \ -%ifarch i686 - ~ImageTestCase \ -%endif -%ifarch s390x - ~WebView \ -%endif - ~wxHtmlPrintout::Pagination -popd -%endif - -%post -n %{wxbasename}-devel -if [ -f %{_bindir}/wx-config ] && [ ! -h %{_bindir}/wx-config ] ; then - rm %{_bindir}/wx-config -fi -/usr/sbin/update-alternatives --install %{_bindir}/wx-config \ - wx-config %{_libexecdir}/%{name}/wx-config 25 -/usr/sbin/update-alternatives --install %{_bindir}/wxrc \ - wxrc %{_libexecdir}/%{name}/wxrc 25 - -%postun -n %{wxbasename}-devel -if [ $1 -eq 0 ] ; then - /usr/sbin/update-alternatives --remove wx-config %{_libexecdir}/%{name}/wx-config - /usr/sbin/update-alternatives --remove wxrc %{_libexecdir}/%{name}/wxrc -fi - -%files -%doc docs/changes.txt docs/readme.txt -%license docs/gpl.txt docs/lgpl.txt docs/licence.txt docs/licendoc.txt -%license docs/preamble.txt -%{_libdir}/libwx_gtk3u_adv-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_aui-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_core-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_html-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_propgrid-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_qa-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_ribbon-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_richtext-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_stc-*.so.%{sover}* -%{_libdir}/libwx_gtk3u_xrc-*.so.%{sover}* - -%files -n %{wxbasename}-devel -%ghost %{_bindir}/wx-config -%ghost %{_bindir}/wxrc -%{_bindir}/wxrc-3.2 -%{_bindir}/wx-config-3.2 -%{_includedir}/wx-3.2 -%{_libdir}/libwx_baseu*.so -%dir %{_libdir}/wx -%dir %{_libdir}/wx/config -%dir %{_libdir}/wx/include -%{_datadir}/aclocal/wxwin32.m4 -%{_datadir}/bakefile/presets/wx32 -%{_libexecdir}/%{name} - -%files devel -%{_libdir}/libwx_gtk3u_*.so -%{_libdir}/wx/config/gtk3-unicode-3.2 -%{_libdir}/wx/include/gtk3-unicode-3.2 - -%files gl -%{_libdir}/libwx_gtk3u_gl-*.so.%{sover}* - -%files i18n -f wxstd-3.2.lang - -%files media -%{_libdir}/libwx_gtk3u_media-*.so.%{sover}* - -%files webview -%{_libdir}/libwx_gtk3u_webview-*.so.%{sover}* -%dir %{_libdir}/wx -%{_libdir}/wx/3.2 - -%files -n %{wxbasename} -%doc docs/changes.txt docs/readme.txt -%license docs/gpl.txt docs/lgpl.txt docs/licence.txt docs/licendoc.txt -%license docs/preamble.txt -%{_libdir}/libwx_baseu-*.so.* -%{_libdir}/libwx_baseu_net-*.so.%{sover}* -%{_libdir}/libwx_baseu_xml-*.so.%{sover}* - -%files docs -%doc html - -%changelog -* Tue Feb 21 2023 Scott Talbert - 3.2.2.1-1 -- Update to new upstream release 3.2.2.1 (#2170238) - -* Fri Feb 10 2023 Scott Talbert - 3.2.2-1 -- Update to new upstream release 3.2.2 (#2168466) - -* Sat Jan 21 2023 Fedora Release Engineering - 3.2.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Dec 14 2022 Florian Weimer - 3.2.1-4 -- Port configure script to C99 - -* Tue Nov 22 2022 Scott Talbert - 3.2.1-3 -- Rebuild (again) with wxGLCanvas GLX support (resolves many OpenGL issues) - -* Thu Nov 17 2022 Scott Talbert - 3.2.1-2 -- Rebuild with wxGLCanvas GLX support (resolves many OpenGL issues) - -* Fri Sep 09 2022 Scott Talbert - 3.2.1-1 -- Update to new upstream release 3.2.1 (#2125703) - -* Mon Jul 25 2022 Scott Talbert - 3.2.0-1 -- Update to new upstream release 3.2.0 (#2101974) - -* Sat Jul 23 2022 Fedora Release Engineering - 3.1.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Thu Jun 09 2022 Scott Talbert - 3.1.7-1 -- Update to new upstream release 3.1.7 (#2094214) - -* Mon Apr 04 2022 Scott Talbert - 3.1.6-1 -- Update to new upstream release 3.1.6 (#2071576) - -* Tue Feb 01 2022 Scott Talbert - 3.1.5-6 -- Add some BRs to enable more tests - -* Fri Jan 28 2022 Scott Talbert - 3.1.5-5 -- Fix FTBFS with GCC 12 (#2047123) - -* Sat Jan 22 2022 Fedora Release Engineering - 3.1.5-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Mon Jan 10 2022 Scott Talbert - 3.1.5-3 -- Fix wxGLCanvas::IsDisplaySupported() when using EGL - -* Fri Jul 23 2021 Fedora Release Engineering - 3.1.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Apr 15 2021 Scott Talbert - 3.1.5-1 -- Update to new upstream release 3.1.5 (#1948935) - -* Thu Mar 04 2021 Scott Talbert - 3.1.4-5 -- Fix FTBFS due to glibc non-const SIGSTKSZ - -* Wed Mar 03 2021 Peter Hutterer 3.1.4-4 -- Require only xclock, not all of xorg-x11-apps (#1934359) - -* Sat Feb 06 2021 Scott Talbert - 3.1.4-3 -- Properly skip WebView tests to fix FTBFS (#1923643) - -* Wed Jan 27 2021 Fedora Release Engineering - 3.1.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 08 2020 Scott Talbert - 3.1.4-1 -- Update to new upstream release 3.1.4 (#1859715) - -* Sat Aug 01 2020 Fedora Release Engineering - 3.1.3-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 3.1.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Mar 03 2020 Scott Talbert - 3.1.3-1 -- Initial packaging of wxWidgets 3.1.x (dev version) (#1714714)