%{?mingw_package_header} %global mingw_build_win32 1 %global mingw_build_win64 0 %global mingw_pkg_name wxWidgets3 %global repo https://github.com/wxWidgets/wxWidgets/releases/download Summary: MinGW port of the wxWidgets GUI library Name: mingw-wxWidgets3 Version: 3.0.4 Release: 1%{?dist} License: wxWidgets Group: Development/Libraries URL: http://wxwidgets.org Source: %{repo}/v%{version}/wxWidgets-%{version}.tar.bz2 BuildArch: noarch BuildRequires: mingw32-filesystem >= 68 BuildRequires: mingw64-filesystem >= 68 BuildRequires: mingw32-gcc-c++ BuildRequires: mingw64-gcc-c++ BuildRequires: mingw32-expat BuildRequires: mingw64-expat BuildRequires: mingw32-libjpeg BuildRequires: mingw64-libjpeg BuildRequires: mingw32-libpng BuildRequires: mingw64-libpng BuildRequires: mingw32-libtiff BuildRequires: mingw64-libtiff BuildRequires: mingw32-zlib BuildRequires: mingw64-zlib BuildRequires: gettext %description wxWidgets is the C++ cross-platform 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. # Mingw32 %package -n mingw32-%{mingw_pkg_name} Summary: %{summary} %description -n mingw32-%{mingw_pkg_name} wxWidgets is the C++ cross-platform 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. # Mingw64 %package -n mingw64-%{mingw_pkg_name} Summary: %{summary} %description -n mingw64-%{mingw_pkg_name} wxWidgets is the C++ cross-platform 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. # Mingw32 static %package -n mingw32-%{mingw_pkg_name}-static Summary: Static libraries for mingw32-%{mingw_pkg_name} development Group: Development/Libraries Requires: mingw32-%{mingw_pkg_name} = %{version}-%{release} %description -n mingw32-%{mingw_pkg_name}-static The mingw32-%{mingw_pkg_name}-static package contains static library for mingw32-%{mingw_pkg_name} development. # Mingw64 static %package -n mingw64-%{mingw_pkg_name}-static Summary: Static libraries for mingw64-%{mingw_pkg_name} development Group: Development/Libraries Requires: mingw64-%{mingw_pkg_name} = %{version}-%{release} %description -n mingw64-%{mingw_pkg_name}-static The mingw64-%{mingw_pkg_name}-static package contains static library for mingw64-%{mingw_pkg_name} development. %{?mingw_debug_package} %prep %setup -q -n wxWidgets-%{version} #========================================== %build #========= Shared Libraries ========== export MINGW_BUILDDIR_SUFFIX=_shared %mingw_configure --enable-shared \ --with-msw \ --with-sdl \ --enable-unicode \ --enable-optimise \ --with-regex=builtin \ --disable-rpath \ --without-subdirs #Try to reduce linker memory footprint %if %{mingw_build_win64} sed -e 's|^CXXFLAGS = |CXXFLAGS = -fpermissive -fno-keep-inline-dllexport |' < build_win64_shared/Makefile > build_win64_shared/Makefile.xx mv build_win64_shared/Makefile.xx build_win64_shared/Makefile %endif %mingw_make %{?_smp_mflags} #========= Static Libraries ========== export MINGW_BUILDDIR_SUFFIX=_static %mingw_configure --disable-shared \ --with-msw \ --with-sdl \ --enable-unicode \ --enable-optimise \ --with-regex=builtin \ --disable-rpath \ --without-subdirs #TODO verify this doesn't overwrite anything from the shared build %mingw_make %{?_smp_mflags} #========= Locale ==================== make -C locale allmo #========================================== %install export MINGW_BUILDDIR_SUFFIX=_shared %mingw_make install DESTDIR=$RPM_BUILD_ROOT export MINGW_BUILDDIR_SUFFIX=_static %mingw_make install DESTDIR=$RPM_BUILD_ROOT if ls $RPM_BUILD_ROOT%{mingw32_libdir}/*.dll ; then mv $RPM_BUILD_ROOT%{mingw32_libdir}/*.dll $RPM_BUILD_ROOT%{mingw32_bindir} else echo "No 32bit shared libraries found." fi if ls $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll ; then mv $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll $RPM_BUILD_ROOT%{mingw64_bindir} else echo "No 32bit shared libraries found." fi # we need to modify the absolute wx-config link to be relative or rpm complains # (and our package wouldn't be relocatable) wx_config_filename=$(basename $RPM_BUILD_ROOT%{mingw32_libdir}/wx/config/%{mingw32_target}-*-unicode-[0-9.]*) ln -sf ../lib/wx/config/$wx_config_filename $RPM_BUILD_ROOT%{mingw32_bindir}/wx-config %if %{mingw_build_win64} wx_config_filename=$(basename $RPM_BUILD_ROOT%{mingw64_libdir}/wx/config/%{mingw64_target}-*-release-[0-9]*) ln -sf ../lib/wx/config/$wx_config_filename $RPM_BUILD_ROOT%{mingw64_bindir}/wx-config %endif # remove bakefiles for now until we have a working bakefile setup for mingw32 rm -rf $RPM_BUILD_ROOT%{mingw32_datadir}/bakefile rm -rf $RPM_BUILD_ROOT%{mingw64_datadir}/bakefile # find locale files %find_lang wxstd %find_lang wxmsw %files -n mingw32-%{mingw_pkg_name} -f wxstd.lang -f wxmsw.lang %doc docs/licence.txt docs/licendoc.txt docs/lgpl.txt docs/gpl.txt %{mingw32_bindir}/wx-config %{mingw32_bindir}/wxbase30u_gcc_custom.dll %{mingw32_bindir}/wxbase30u_net_gcc_custom.dll %{mingw32_bindir}/wxbase30u_xml_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_adv_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_aui_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_core_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_html_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_qa_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_richtext_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_xrc_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_gl_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_media_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_propgrid_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_ribbon_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_stc_gcc_custom.dll %{mingw32_bindir}/wxmsw30u_webview_gcc_custom.dll %{mingw32_includedir}/wx-3.0 %{mingw32_libdir}/libwx_baseu-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_baseu_net-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_baseu_xml-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_adv-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_aui-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_core-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_html-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_qa-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_richtext-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_xrc-3.0-%{mingw32_target}.dll.a %{mingw32_libdir}/libwx_mswu_gl-3.0-i686-w64-mingw32.dll.a %{mingw32_libdir}/libwx_mswu_media-3.0-i686-w64-mingw32.dll.a %{mingw32_libdir}/libwx_mswu_propgrid-3.0-i686-w64-mingw32.dll.a %{mingw32_libdir}/libwx_mswu_ribbon-3.0-i686-w64-mingw32.dll.a %{mingw32_libdir}/libwx_mswu_stc-3.0-i686-w64-mingw32.dll.a %{mingw32_libdir}/libwx_mswu_webview-3.0-i686-w64-mingw32.dll.a %dir %{mingw32_libdir}/wx %dir %{mingw32_libdir}/wx/config %dir %{mingw32_libdir}/wx/include %{mingw32_libdir}/wx/include/%{mingw32_target}-msw-unicode-3.0 %{mingw32_libdir}/wx/config/%{mingw32_target}-msw-unicode-3.0 %{mingw32_datadir}/aclocal/wxwin.m4 #{mingw32_datadir}/bakefile #{mingw32_datadir}/bakefile/presets #{mingw32_datadir}/bakefile/presets/wx.bkl #{mingw32_datadir}/bakefile/presets/wx_unix.bkl #{mingw32_datadir}/bakefile/presets/wx_win32.bkl %files -n mingw32-%{mingw_pkg_name}-static %{mingw32_libdir}/libwx_baseu-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_baseu_net-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_baseu_xml-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_adv-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_aui-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_core-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_html-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_qa-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_richtext-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwx_mswu_xrc-3.0-%{mingw32_target}.a %{mingw32_libdir}/libwxscintilla-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_gl-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_media-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_ribbon-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_stc-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_webview-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwx_mswu_propgrid-3.0-i686-w64-mingw32.a %{mingw32_libdir}/libwxregexu-3.0-%{mingw32_target}.a %{mingw32_libdir}/wx/include/%{mingw32_target}-msw-unicode-static-3.0 %{mingw32_libdir}/wx/config/%{mingw32_target}-msw-unicode-static-3.0 %if %{mingw_build_win64} %files -n mingw64-%{mingw_pkg_name} -f wxstd.lang -f wxmsw.lang %doc docs/licence.txt docs/licendoc.txt docs/lgpl.txt docs/gpl.txt %{mingw64_bindir}/wx-config %{mingw64_bindir}/wxbase30u_gcc_custom.dll %{mingw64_bindir}/wxbase30u_net_gcc_custom.dll %{mingw64_bindir}/wxbase30u_xml_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_adv_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_aui_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_core_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_html_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_qa_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_richtext_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_xrc_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_gl_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_media_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_propgrid_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_ribbon_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_stc_gcc_custom.dll %{mingw64_bindir}/wxmsw30u_webview_gcc_custom.dll %{mingw64_includedir}/wx-3.0 %{mingw64_libdir}/libwx_baseu-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_baseu_net-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_baseu_xml-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_adv-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_aui-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_core-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_html-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_qa-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_richtext-3.0-%{mingw64_target}.dll.a %{mingw64_libdir}/libwx_mswu_propgrid-3.0-x86_64-w64-mingw32.dll.a %{mingw64_libdir}/libwx_mswu_ribbon-3.0-x86_64-w64-mingw32.dll.a %{mingw64_libdir}/libwx_mswu_webview-3.0-x86_64-w64-mingw32.dll.a %{mingw64_libdir}/libwx_mswu_media-3.3.086_64-w64-mingw32.dll.a %{mingw64_libdir}/libwx_mswu_stc-3.0-x86_64-w64-mingw32.dll.a %{mingw64_libdir}/libwx_mswu_xrc-3.0-%{mingw64_target}.dll.a %dir %{mingw64_libdir}/wx %dir %{mingw64_libdir}/wx/config %{mingw64_libdir}/wx/config/%{mingw64_target}-msw-unicode-3.0 %dir %{mingw64_libdir}/wx/include %{mingw64_libdir}/wx/include/%{mingw64_target}-msw-unicode-3.0 %{mingw64_datadir}/aclocal/wxwin.m4 #{mingw64_datadir}/bakefile #{mingw64_datadir}/bakefile/presets #{mingw64_datadir}/bakefile/presets/wx.bkl #{mingw64_datadir}/bakefile/presets/wx_unix.bkl #{mingw64_datadir}/bakefile/presets/wx_win32.bkl %files -n mingw64-%{mingw_pkg_name}-static %{mingw64_libdir}/libwx_baseu-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_baseu_net-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_baseu_xml-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_adv-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_aui-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_core-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_html-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_qa-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_richtext-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwx_mswu_xrc-3.0-%{mingw64_target}.a %{mingw64_libdir}/libwxregexu-3.0-%{mingw64_target}.a %{mingw64_libdir}/wx/config/%{mingw64_target}-msw-unicode-static-3.0 %{mingw64_libdir}/wx/include/%{mingw64_target}-msw-unicode-static-3.0 %{mingw64_libdir}/libwx_mswu_gl-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_media-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_propgrid-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_ribbon-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_stc-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_webview-3.0-x86_64-w64-mingw32.a %{mingw64_libdir}/libwxscintilla-3.3.086_64-w64-mingw32.a %{mingw64_libdir}/libwx_mswu_gl-3.0-x86_64-w64-mingw32.dll.a %endif %changelog * Tue Feb 26 2019 Alec Leamas - 3.0.4-1 - New major upstream version, renamed package, initial 3.x GTK2 release.