1
0

Accepting request 827955 from home:StefanBruens:branches:X11:wxWidgets

- Use _multibuild to avoid changes and spec files of the variants
  getting out of sync.

OBS-URL: https://build.opensuse.org/request/show/827955
OBS-URL: https://build.opensuse.org/package/show/X11:wxWidgets/wxWidgets-3_2?expand=0&rev=68
This commit is contained in:
Jan Engelhardt 2020-08-19 22:32:06 +00:00 committed by Git OBS Bridge
parent e7026e8327
commit 2a7953a799
9 changed files with 119 additions and 4577 deletions

6
_multibuild Normal file
View File

@ -0,0 +1,6 @@
<multibuild>
<package>GTK2</package>
<package>GTK3</package>
<package>GTK3-nostl</package>
<package>Qt</package>
</multibuild>

File diff suppressed because it is too large Load Diff

View File

@ -1,402 +0,0 @@
#
# spec file for package wxGTK3-3_2
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: wxGTK3-3_2
%define base_name wxWidgets-3_2
%define tarball_name wxWidgets
%define variant suse
# Use default debug level, enabling exceptions
# Other valid values: yes/no/max
%define wx_debug %{nil}
%define psonum 4_0_0
%define sonum 4.0.0
Version: 3.1.4
Release: 0
%define wx_minor 3.1
%define wx_micro 3.1.4
# build non-UI toolkit related packages
%define base_packages 0
Summary: C++ Library for Cross-Platform Development
License: LGPL-2.1-or-later WITH WxWindows-exception-3.1
Group: Development/Libraries/C and C++
URL: https://www.wxwidgets.org/
Source: https://github.com/wxWidgets/wxWidgets/releases/download/v%{version}/wxWidgets-%{version}.tar.bz2#/%tarball_name-%version.tar.bz2
Source2: README.SUSE
Source5: wxWidgets-3_2-rpmlintrc
# This script is not used during build, but it makes possible to
# identify and backport wxPython fixes to wxWidgets.
Source6: wxpython-mkdiff.sh
Patch1: soversion.diff
BuildRequires: autoconf
BuildRequires: cppunit-devel
BuildRequires: gcc-c++
BuildRequires: gstreamer-devel
BuildRequires: gstreamer-plugins-base-devel
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(webkit2gtk-4.0)
%define gtk_version 3
%define toolkit gtk%gtk_version
BuildRequires: libSM-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libmspack-devel
BuildRequires: libnotify-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(liblzma)
%if 0%{?sle_version} < 150000 && !0%{?is_opensuse}
BuildRequires: pkgconfig(sdl)
%else
BuildRequires: pkgconfig(sdl2)
%endif
BuildRequires: pkgconfig(xtst)
%description
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.
%package -n libwx_baseu-%variant%psonum
Summary: wxWidgets base library
# Name up to openSUSE 11.3 and up to wxGTK-2.8:
Group: System/Libraries
Obsoletes: wxGTK <= %version.0
# Third party base package name:
Obsoletes: wxWidgets < %version
Provides: wxWidgets = %version
Recommends: wxWidgets-lang >= 3.0
%description -n libwx_baseu-%variant%psonum
Every wxWidgets application must link against this library. It
contains mandatory classes that any wxWidgets code depends on (e.g.
wxString) and portability classes that abstract differences between
platforms. wxBase can be used to develop console-only applications.
%package -n libwx_baseu_net-%variant%psonum
Summary: wxWidgets networking library
Group: System/Libraries
%description -n libwx_baseu_net-%variant%psonum
Classes for network access with wxWidgets.
%package -n libwx_baseu_xml-%variant%psonum
Summary: wxWidgets XML parser library
Group: System/Libraries
%description -n libwx_baseu_xml-%variant%psonum
This library contains classes for parsing XML documents.
%package -n libwx_%{toolkit}u_adv-%variant%psonum
Summary: wxWidgets advanced widgets and rarely-used widgets
Group: System/Libraries
%description -n libwx_%{toolkit}u_adv-%variant%psonum
Advanced or rarely-used GUI classes for wxWidgets.
%package -n libwx_%{toolkit}u_aui-%variant%psonum
Summary: wxWidgets advanced user interface docking library
Group: System/Libraries
%description -n libwx_%{toolkit}u_aui-%variant%psonum
The Advanced User Interface docking library of wxWidgets.
%package -n libwx_%{toolkit}u_core-%variant%psonum
Summary: wxWidgets basic GUI class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_core-%variant%psonum
Basic GUI classes such as GDI classes or controls are in this
library. All wxWidgets GUI applications must link against this
library, only console mode applications need not.
%package -n libwx_%{toolkit}u_gl-%variant%psonum
Summary: wxWidgets OpenGL integration library
Group: System/Libraries
%description -n libwx_%{toolkit}u_gl-%variant%psonum
This library contains the wxGLCanvas class for integration of OpenGL
with wxWidgets.
%package -n libwx_%{toolkit}u_html-%variant%psonum
Summary: wxWidgets HTML parser and renderer library
Group: System/Libraries
%description -n libwx_%{toolkit}u_html-%variant%psonum
The wxHTML library provides classes for parsing and displaying HTML.
It is not intended to be a high-end HTML browser. wxHTML can be used
as a generic rich text viewer  for example, to display an About Box
or the result of a database search.
%package -n libwx_%{toolkit}u_media-%variant%psonum
Summary: wxWidgets media class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_media-%variant%psonum
wxMediaCtrl is a class for displaying types of media, such as videos,
audio files, natively through native codecs.
%package -n libwx_%{toolkit}u_propgrid-%variant%psonum
Summary: wxWidgets property grid class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_propgrid-%variant%psonum
wxPropertyGrid is a specialized grid for editing properties, in other
words, name=value pairs.
%package -n libwx_%{toolkit}u_qa-%variant%psonum
Summary: wxWidgets quality assurance class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_qa-%variant%psonum
This is the library containing extra classes for quality
assurance, containing the wxDebugReport class. wxDebugReport is
used to generate a debug report, containing information about the
program current state.
%package -n libwx_%{toolkit}u_ribbon-%variant%psonum
Summary: wxWidgets's ribbon user interface library
Group: System/Libraries
%description -n libwx_%{toolkit}u_ribbon-%variant%psonum
The wxRibbon library is a set of classes for writing a ribbon user
interface.
%package -n libwx_%{toolkit}u_richtext-%variant%psonum
Summary: wxWidgets Rich Text editor class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_richtext-%variant%psonum
wxRichTextCtrl provides a generic implementation of a rich text
editor that can handle different character styles, paragraph
formatting, and images. It is intended for "natural" text in the
sense that source code is better served by wxStyledTextCtrl.
%package -n libwx_%{toolkit}u_stc-%variant%psonum
Summary: wxWidgets styled text class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_stc-%variant%psonum
A wxWidgets implementation of the Scintilla source code editing component.
%package -n libwx_%{toolkit}u_webview-%variant%psonum
Summary: wxWidgets HTML/browser class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_webview-%variant%psonum
Library for a wxWidgets control that can be used to render web
(HTML / CSS / JavaScript) documents.
%package -n libwx_%{toolkit}u_xrc-%variant%psonum
Summary: wxWidgets's XML-based resource system
Group: System/Libraries
%description -n libwx_%{toolkit}u_xrc-%variant%psonum
The XML-based resource system of wxWidgets, known as XRC, allows user
interface elements such as dialogs, menu bars and toolbars, to be
stored in text files and loaded into the application at run-time.
%package devel
Summary: Development files for GTK3-backed wxWidgets 3.2
Group: Development/Libraries/C and C++
Requires: gtk%gtk_version-devel
Requires: libwx_%{toolkit}u_adv-%variant%psonum = %version
Requires: libwx_%{toolkit}u_aui-%variant%psonum = %version
Requires: libwx_%{toolkit}u_core-%variant%psonum = %version
Requires: libwx_%{toolkit}u_gl-%variant%psonum = %version
Requires: libwx_%{toolkit}u_html-%variant%psonum = %version
Requires: libwx_%{toolkit}u_media-%variant%psonum = %version
Requires: libwx_%{toolkit}u_propgrid-%variant%psonum = %version
Requires: libwx_%{toolkit}u_qa-%variant%psonum = %version
Requires: libwx_%{toolkit}u_ribbon-%variant%psonum = %version
Requires: libwx_%{toolkit}u_richtext-%variant%psonum = %version
Requires: libwx_%{toolkit}u_stc-%variant%psonum = %version
Requires: libwx_%{toolkit}u_webview-%variant%psonum = %version
Requires: libwx_%{toolkit}u_xrc-%variant%psonum = %version
Requires: libwx_baseu-%variant%psonum = %version
Requires: libwx_baseu_net-%variant%psonum = %version
Requires: libwx_baseu_xml-%variant%psonum = %version
Requires: pkgconfig(gl)
Requires: pkgconfig(glu)
Provides: wxGTK3-devel = %version-%release
Provides: wxWidgets-any-devel
Conflicts: wxWidgets-any-devel
%description devel
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 all files needed for developing with wxGTK%gtk_version.
Note: wxWidgets variant devel packages are mutually exclusive. Please
read %_docdir/%name/README.SUSE to pick a correct variant.
%prep
%autosetup -n %tarball_name-%version -p1
cp %{S:2} .
%build
autoconf -f -i
# NOTE: gnome-vfs is deprecated. Disabled for GTK3 build
#
# 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
%configure \
--enable-vendor=%variant \
--with-gtk=%gtk_version \
--enable-unicode \
--with-opengl \
--with-libmspack \
--with-sdl \
--enable-ipv6 \
--enable-mediactrl \
--enable-optimise \
%{wx_debug:--enable-debug=%{wx_debug}} \
--enable-repro-build \
--enable-stl \
--enable-plugins
make %{?_smp_mflags}
%install
export VENDORTAG='-$variant' # only needed for non-MSW
make install DESTDIR="%buildroot"
%if !%base_packages
# Drop libraries already supplied by another packages
rm -f "%buildroot/%_libdir"/libwx_baseu{,_net,_xml}-%variant.so.%{sonum}* \
"%buildroot/%_libdir/wx/%wx_micro"/sound_sdlu-*.so
%endif
rm -Rf %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
%post -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%if %base_packages
%files -n libwx_baseu-%variant%psonum
%_libdir/libwx_baseu-%variant.so.%{sonum}*
%files -n libwx_baseu_net-%variant%psonum
%_libdir/libwx_baseu_net-%variant.so.%{sonum}*
%files -n libwx_baseu_xml-%variant%psonum
%_libdir/libwx_baseu_xml-%variant.so.%{sonum}*
%endif
%files -n libwx_%{toolkit}u_adv-%variant%psonum
%_libdir/libwx_%{toolkit}u_adv-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_aui-%variant%psonum
%_libdir/libwx_%{toolkit}u_aui-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_core-%variant%psonum
%_libdir/libwx_%{toolkit}u_core-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_gl-%variant%psonum
%_libdir/libwx_%{toolkit}u_gl-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_html-%variant%psonum
%_libdir/libwx_%{toolkit}u_html-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_media-%variant%psonum
%_libdir/libwx_%{toolkit}u_media-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_propgrid-%variant%psonum
%_libdir/libwx_%{toolkit}u_propgrid-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_qa-%variant%psonum
%_libdir/libwx_%{toolkit}u_qa-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_ribbon-%variant%psonum
%_libdir/libwx_%{toolkit}u_ribbon-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_richtext-%variant%psonum
%_libdir/libwx_%{toolkit}u_richtext-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_stc-%variant%psonum
%_libdir/libwx_%{toolkit}u_stc-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_webview-%variant%psonum
%_libdir/libwx_%{toolkit}u_webview-%variant.so.%{sonum}*
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/web-extensions/
%files -n libwx_%{toolkit}u_xrc-%variant%psonum
%_libdir/libwx_%{toolkit}u_xrc-%variant.so.%{sonum}*
%if %base_packages
%files -n %{base_name}-plugin-sound_sdlu-3_2
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/sound_sdlu-%wx_micro.so
%endif
%files devel
# Complete documentation is available in the docs packages.
%doc docs/*.txt README.SUSE
%_bindir/wxrc
%_bindir/wxrc-%wx_minor
%_bindir/*-config*
%_datadir/aclocal
%_datadir/bakefile
%_includedir/wx-%wx_minor
%_libdir/*.so
%dir %_libdir/wx
%_libdir/wx/config
%_libdir/wx/include
%changelog

File diff suppressed because it is too large Load Diff

View File

@ -1,395 +0,0 @@
#
# spec file for package wxQt-3_2
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: wxQt-3_2
%define base_name wxWidgets-3_2
%define tarball_name wxWidgets
%define variant suse
# Use default debug level, enabling exceptions
# Other valid values: yes/no/max
%define wx_debug %{nil}
%define psonum 4_0_0
%define sonum 4.0.0
Version: 3.1.4
Release: 0
%define wx_minor 3.1
%define wx_micro 3.1.4
# build non-UI toolkit related packages
%define base_packages 0
Summary: C++ Library for Cross-Platform Development
License: LGPL-2.1-or-later WITH WxWindows-exception-3.1
Group: Development/Libraries/C and C++
URL: https://www.wxwidgets.org/
Source: https://github.com/wxWidgets/wxWidgets/releases/download/v%{version}/wxWidgets-%{version}.tar.bz2#/%tarball_name-%version.tar.bz2
Source2: README.SUSE
Source5: wxWidgets-3_2-rpmlintrc
# This script is not used during build, but it makes possible to
# identify and backport wxPython fixes to wxWidgets.
Source6: wxpython-mkdiff.sh
Patch1: soversion.diff
BuildRequires: autoconf
BuildRequires: cppunit-devel
BuildRequires: gcc-c++
BuildRequires: gstreamer-devel
BuildRequires: gstreamer-plugins-base-devel
%define toolkit qt
BuildRequires: libSM-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libmspack-devel
BuildRequires: libnotify-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(Qt5Core) >= 5.2.1
BuildRequires: pkgconfig(Qt5Gui) >= 5.2.1
BuildRequires: pkgconfig(Qt5OpenGL) >= 5.2.1
BuildRequires: pkgconfig(Qt5Test) >= 5.2.1
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.1
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(liblzma)
%if 0%{?sle_version} < 150000 && !0%{?is_opensuse}
BuildRequires: pkgconfig(sdl)
%else
BuildRequires: pkgconfig(sdl2)
%endif
BuildRequires: pkgconfig(xtst)
%description
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.
%package -n libwx_baseu-%variant%psonum
Summary: wxWidgets base library
# Name up to openSUSE 11.3 and up to wxGTK-2.8:
Group: System/Libraries
Obsoletes: wxGTK <= %version.0
# Third party base package name:
Obsoletes: wxWidgets < %version
Provides: wxWidgets = %version
Recommends: wxWidgets-lang >= 3.0
%description -n libwx_baseu-%variant%psonum
Every wxWidgets application must link against this library. It
contains mandatory classes that any wxWidgets code depends on (e.g.
wxString) and portability classes that abstract differences between
platforms. wxBase can be used to develop console-only applications.
%package -n libwx_baseu_net-%variant%psonum
Summary: wxWidgets networking library
Group: System/Libraries
%description -n libwx_baseu_net-%variant%psonum
Classes for network access with wxWidgets.
%package -n libwx_baseu_xml-%variant%psonum
Summary: wxWidgets XML parser library
Group: System/Libraries
%description -n libwx_baseu_xml-%variant%psonum
This library contains classes for parsing XML documents.
%package -n libwx_%{toolkit}u_adv-%variant%psonum
Summary: wxWidgets advanced widgets and rarely-used widgets
Group: System/Libraries
%description -n libwx_%{toolkit}u_adv-%variant%psonum
Advanced or rarely-used GUI classes for wxWidgets.
%package -n libwx_%{toolkit}u_aui-%variant%psonum
Summary: wxWidgets advanced user interface docking library
Group: System/Libraries
%description -n libwx_%{toolkit}u_aui-%variant%psonum
The Advanced User Interface docking library of wxWidgets.
%package -n libwx_%{toolkit}u_core-%variant%psonum
Summary: wxWidgets basic GUI class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_core-%variant%psonum
Basic GUI classes such as GDI classes or controls are in this
library. All wxWidgets GUI applications must link against this
library, only console mode applications need not.
%package -n libwx_%{toolkit}u_gl-%variant%psonum
Summary: wxWidgets OpenGL integration library
Group: System/Libraries
%description -n libwx_%{toolkit}u_gl-%variant%psonum
This library contains the wxGLCanvas class for integration of OpenGL
with wxWidgets.
%package -n libwx_%{toolkit}u_html-%variant%psonum
Summary: wxWidgets HTML parser and renderer library
Group: System/Libraries
%description -n libwx_%{toolkit}u_html-%variant%psonum
The wxHTML library provides classes for parsing and displaying HTML.
It is not intended to be a high-end HTML browser. wxHTML can be used
as a generic rich text viewer  for example, to display an About Box
or the result of a database search.
%package -n libwx_%{toolkit}u_media-%variant%psonum
Summary: wxWidgets media class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_media-%variant%psonum
wxMediaCtrl is a class for displaying types of media, such as videos,
audio files, natively through native codecs.
%package -n libwx_%{toolkit}u_propgrid-%variant%psonum
Summary: wxWidgets property grid class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_propgrid-%variant%psonum
wxPropertyGrid is a specialized grid for editing properties, in other
words, name=value pairs.
%package -n libwx_%{toolkit}u_qa-%variant%psonum
Summary: wxWidgets quality assurance class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_qa-%variant%psonum
This is the library containing extra classes for quality
assurance, containing the wxDebugReport class. wxDebugReport is
used to generate a debug report, containing information about the
program current state.
%package -n libwx_%{toolkit}u_ribbon-%variant%psonum
Summary: wxWidgets's ribbon user interface library
Group: System/Libraries
%description -n libwx_%{toolkit}u_ribbon-%variant%psonum
The wxRibbon library is a set of classes for writing a ribbon user
interface.
%package -n libwx_%{toolkit}u_richtext-%variant%psonum
Summary: wxWidgets Rich Text editor class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_richtext-%variant%psonum
wxRichTextCtrl provides a generic implementation of a rich text
editor that can handle different character styles, paragraph
formatting, and images. It is intended for "natural" text in the
sense that source code is better served by wxStyledTextCtrl.
%package -n libwx_%{toolkit}u_stc-%variant%psonum
Summary: wxWidgets styled text class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_stc-%variant%psonum
A wxWidgets implementation of the Scintilla source code editing component.
%package -n libwx_%{toolkit}u_webview-%variant%psonum
Summary: wxWidgets HTML/browser class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_webview-%variant%psonum
Library for a wxWidgets control that can be used to render web
(HTML / CSS / JavaScript) documents.
%package -n libwx_%{toolkit}u_xrc-%variant%psonum
Summary: wxWidgets's XML-based resource system
Group: System/Libraries
%description -n libwx_%{toolkit}u_xrc-%variant%psonum
The XML-based resource system of wxWidgets, known as XRC, allows user
interface elements such as dialogs, menu bars and toolbars, to be
stored in text files and loaded into the application at run-time.
%package devel
Summary: Development files for Qt-backed wxWidgets 3.2
Group: Development/Libraries/C and C++
Requires: libwx_%{toolkit}u_adv-%variant%psonum = %version
Requires: libwx_%{toolkit}u_aui-%variant%psonum = %version
Requires: libwx_%{toolkit}u_core-%variant%psonum = %version
Requires: libwx_%{toolkit}u_gl-%variant%psonum = %version
Requires: libwx_%{toolkit}u_html-%variant%psonum = %version
Requires: libwx_%{toolkit}u_media-%variant%psonum = %version
Requires: libwx_%{toolkit}u_propgrid-%variant%psonum = %version
Requires: libwx_%{toolkit}u_qa-%variant%psonum = %version
Requires: libwx_%{toolkit}u_ribbon-%variant%psonum = %version
Requires: libwx_%{toolkit}u_richtext-%variant%psonum = %version
Requires: libwx_%{toolkit}u_stc-%variant%psonum = %version
Requires: libwx_%{toolkit}u_xrc-%variant%psonum = %version
Requires: libwx_baseu-%variant%psonum = %version
Requires: libwx_baseu_net-%variant%psonum = %version
Requires: libwx_baseu_xml-%variant%psonum = %version
Provides: wxQt-devel = %version-%release
Provides: wxWidgets-any-devel
Conflicts: wxWidgets-any-devel
%description devel
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 all files needed for developing with wxQt.
Note: wxWidgets variant devel packages are mutually exclusive. Please
read %_docdir/%name/README.SUSE to pick a correct variant.
%prep
%autosetup -n %tarball_name-%version -p1
cp %{S:2} .
%build
autoconf -f -i
# NOTE: gnome-vfs is deprecated. Disabled for GTK3 build
#
# 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
%configure \
--enable-vendor=%variant \
--with-qt \
--enable-unicode \
--with-opengl \
--with-libmspack \
--with-sdl \
--enable-ipv6 \
--enable-mediactrl \
--enable-optimise \
%{wx_debug:--enable-debug=%{wx_debug}} \
--enable-repro-build \
--enable-stl \
--enable-plugins
make %{?_smp_mflags}
%install
export VENDORTAG='-$variant' # only needed for non-MSW
make install DESTDIR="%buildroot"
%if !%base_packages
# Drop libraries already supplied by another packages
rm -f "%buildroot/%_libdir"/libwx_baseu{,_net,_xml}-%variant.so.%{sonum}* \
"%buildroot/%_libdir/wx/%wx_micro"/sound_sdlu-*.so
%endif
rm -Rf %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
%post -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%if %base_packages
%files -n libwx_baseu-%variant%psonum
%_libdir/libwx_baseu-%variant.so.%{sonum}*
%files -n libwx_baseu_net-%variant%psonum
%_libdir/libwx_baseu_net-%variant.so.%{sonum}*
%files -n libwx_baseu_xml-%variant%psonum
%_libdir/libwx_baseu_xml-%variant.so.%{sonum}*
%endif
%files -n libwx_%{toolkit}u_adv-%variant%psonum
%_libdir/libwx_%{toolkit}u_adv-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_aui-%variant%psonum
%_libdir/libwx_%{toolkit}u_aui-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_core-%variant%psonum
%_libdir/libwx_%{toolkit}u_core-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_gl-%variant%psonum
%_libdir/libwx_%{toolkit}u_gl-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_html-%variant%psonum
%_libdir/libwx_%{toolkit}u_html-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_media-%variant%psonum
%_libdir/libwx_%{toolkit}u_media-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_propgrid-%variant%psonum
%_libdir/libwx_%{toolkit}u_propgrid-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_qa-%variant%psonum
%_libdir/libwx_%{toolkit}u_qa-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_ribbon-%variant%psonum
%_libdir/libwx_%{toolkit}u_ribbon-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_richtext-%variant%psonum
%_libdir/libwx_%{toolkit}u_richtext-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_stc-%variant%psonum
%_libdir/libwx_%{toolkit}u_stc-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_xrc-%variant%psonum
%_libdir/libwx_%{toolkit}u_xrc-%variant.so.%{sonum}*
%if %base_packages
%files -n %{base_name}-plugin-sound_sdlu-3_2
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/sound_sdlu-%wx_micro.so
%endif
%files devel
# Complete documentation is available in the docs packages.
%doc docs/*.txt README.SUSE
%_bindir/wxrc
%_bindir/wxrc-%wx_minor
%_bindir/*-config*
%_datadir/aclocal
%_datadir/bakefile
%_includedir/wx-%wx_minor
%_libdir/*.so
%dir %_libdir/wx
%_libdir/wx/config
%_libdir/wx/include
%changelog

File diff suppressed because it is too large Load Diff

View File

@ -1,405 +0,0 @@
#
# spec file for package wxWidgets-3_2-nostl
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: wxWidgets-3_2-nostl
%define base_name wxWidgets-3_2
%define tarball_name wxWidgets
%define variant suse-nostl
# Use default debug level, enabling exceptions
# Other valid values: yes/no/max
%define wx_debug %{nil}
%define psonum 4_0_0
%define sonum 4.0.0
Version: 3.1.4
Release: 0
%define wx_minor 3.1
%define wx_micro 3.1.4
# build non-UI toolkit related packages
%define base_packages 0
Summary: C++ Library for Cross-Platform Development
License: LGPL-2.1-or-later WITH WxWindows-exception-3.1
Group: Development/Libraries/C and C++
URL: https://www.wxwidgets.org/
Source: https://github.com/wxWidgets/wxWidgets/releases/download/v%{version}/wxWidgets-%{version}.tar.bz2#/%tarball_name-%version.tar.bz2
Source2: README.SUSE
Source5: wxWidgets-3_2-rpmlintrc
# This script is not used during build, but it makes possible to
# identify and backport wxPython fixes to wxWidgets.
Source6: wxpython-mkdiff.sh
Patch1: soversion.diff
BuildRequires: autoconf
BuildRequires: cppunit-devel
BuildRequires: gcc-c++
BuildRequires: gstreamer-devel
BuildRequires: gstreamer-plugins-base-devel
%define gtk_version 3
%define toolkit gtk%gtk_version
BuildRequires: gtk%{gtk_version}-devel
BuildRequires: libSM-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
BuildRequires: libmspack-devel
BuildRequires: libnotify-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(liblzma)
%if 0%{?sle_version} < 150000 && !0%{?is_opensuse}
BuildRequires: pkgconfig(sdl)
%else
BuildRequires: pkgconfig(sdl2)
%endif
BuildRequires: pkgconfig(xtst)
%description
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 variant of wxWidgets is built without STL types (such as
std::string), and is provided for old programs which fail to use e.g.
wxString and instead rely on the wxChar pointer API.
%package -n libwx_baseu-%variant%psonum
Summary: wxWidgets base library
# Name up to openSUSE 11.3 and up to wxGTK-2.8:
Group: System/Libraries
Obsoletes: wxGTK <= %version.0
# Third party base package name:
Obsoletes: wxWidgets < %version
Provides: wxWidgets = %version
Recommends: wxWidgets-lang >= 3.0
%description -n libwx_baseu-%variant%psonum
Every wxWidgets application must link against this library. It
contains mandatory classes that any wxWidgets code depends on (e.g.
wxString) and portability classes that abstract differences between
platforms. wxBase can be used to develop console-only applications.
This variant of wxWidgets is built without STL types (such as
std::string), and is provided for old programs which fail to use e.g.
wxString and instead rely on the wxChar pointer API.
%package -n libwx_baseu_net-%variant%psonum
Summary: wxWidgets networking library
Group: System/Libraries
%description -n libwx_baseu_net-%variant%psonum
Classes for network access with wxWidgets.
%package -n libwx_baseu_xml-%variant%psonum
Summary: wxWidgets XML parser library
Group: System/Libraries
%description -n libwx_baseu_xml-%variant%psonum
This library contains classes for parsing XML documents.
%package -n libwx_%{toolkit}u_adv-%variant%psonum
Summary: wxWidgets advanced widgets and rarely-used widgets
Group: System/Libraries
%description -n libwx_%{toolkit}u_adv-%variant%psonum
Advanced or rarely-used GUI classes for wxWidgets.
%package -n libwx_%{toolkit}u_aui-%variant%psonum
Summary: wxWidgets advanced user interface docking library
Group: System/Libraries
%description -n libwx_%{toolkit}u_aui-%variant%psonum
The Advanced User Interface docking library of wxWidgets.
%package -n libwx_%{toolkit}u_core-%variant%psonum
Summary: wxWidgets basic GUI class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_core-%variant%psonum
Basic GUI classes such as GDI classes or controls are in this
library. All wxWidgets GUI applications must link against this
library, only console mode applications need not.
%package -n libwx_%{toolkit}u_gl-%variant%psonum
Summary: wxWidgets OpenGL integration library
Group: System/Libraries
%description -n libwx_%{toolkit}u_gl-%variant%psonum
This library contains the wxGLCanvas class for integration of OpenGL
with wxWidgets.
%package -n libwx_%{toolkit}u_html-%variant%psonum
Summary: wxWidgets HTML parser and renderer library
Group: System/Libraries
%description -n libwx_%{toolkit}u_html-%variant%psonum
The wxHTML library provides classes for parsing and displaying HTML.
It is not intended to be a high-end HTML browser. wxHTML can be used
as a generic rich text viewer  for example, to display an About Box
or the result of a database search.
This variant of wxWidgets is built without STL types (such as
std::string), and is provided for old programs which fail to use e.g.
wxString and instead rely on the wxChar pointer API.
%package -n libwx_%{toolkit}u_media-%variant%psonum
Summary: wxWidgets media class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_media-%variant%psonum
wxMediaCtrl is a class for displaying types of media, such as videos,
audio files, natively through native codecs.
%package -n libwx_%{toolkit}u_propgrid-%variant%psonum
Summary: wxWidgets property grid class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_propgrid-%variant%psonum
wxPropertyGrid is a specialized grid for editing properties, in other
words, name=value pairs.
%package -n libwx_%{toolkit}u_qa-%variant%psonum
Summary: wxWidgets quality assurance class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_qa-%variant%psonum
This is the library containing extra classes for quality
assurance, containing the wxDebugReport class. wxDebugReport is
used to generate a debug report, containing information about the
program current state.
%package -n libwx_%{toolkit}u_ribbon-%variant%psonum
Summary: wxWidgets's ribbon user interface library
Group: System/Libraries
%description -n libwx_%{toolkit}u_ribbon-%variant%psonum
The wxRibbon library is a set of classes for writing a ribbon user
interface.
%package -n libwx_%{toolkit}u_richtext-%variant%psonum
Summary: wxWidgets Rich Text editor class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_richtext-%variant%psonum
wxRichTextCtrl provides a generic implementation of a rich text
editor that can handle different character styles, paragraph
formatting, and images. It is intended for "natural" text in the
sense that source code is better served by wxStyledTextCtrl.
%package -n libwx_%{toolkit}u_stc-%variant%psonum
Summary: wxWidgets styled text class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_stc-%variant%psonum
A wxWidgets implementation of the Scintilla source code editing component.
%package -n libwx_%{toolkit}u_webview-%variant%psonum
Summary: wxWidgets HTML/browser class library
Group: System/Libraries
%description -n libwx_%{toolkit}u_webview-%variant%psonum
Library for a wxWidgets control that can be used to render web
(HTML / CSS / JavaScript) documents.
%package -n libwx_%{toolkit}u_xrc-%variant%psonum
Summary: wxWidgets's XML-based resource system
Group: System/Libraries
%description -n libwx_%{toolkit}u_xrc-%variant%psonum
The XML-based resource system of wxWidgets, known as XRC, allows user
interface elements such as dialogs, menu bars and toolbars, to be
stored in text files and loaded into the application at run-time.
%package devel
Summary: Development files for GTK2-backed wxWidgets 3.2
Group: Development/Libraries/C and C++
Requires: gtk%gtk_version-devel
Requires: libwx_%{toolkit}u_adv-%variant%psonum = %version
Requires: libwx_%{toolkit}u_aui-%variant%psonum = %version
Requires: libwx_%{toolkit}u_core-%variant%psonum = %version
Requires: libwx_%{toolkit}u_gl-%variant%psonum = %version
Requires: libwx_%{toolkit}u_html-%variant%psonum = %version
Requires: libwx_%{toolkit}u_media-%variant%psonum = %version
Requires: libwx_%{toolkit}u_propgrid-%variant%psonum = %version
Requires: libwx_%{toolkit}u_qa-%variant%psonum = %version
Requires: libwx_%{toolkit}u_ribbon-%variant%psonum = %version
Requires: libwx_%{toolkit}u_richtext-%variant%psonum = %version
Requires: libwx_%{toolkit}u_stc-%variant%psonum = %version
Requires: libwx_%{toolkit}u_xrc-%variant%psonum = %version
Requires: libwx_baseu-%variant%psonum = %version
Requires: libwx_baseu_net-%variant%psonum = %version
Requires: libwx_baseu_xml-%variant%psonum = %version
Requires: pkgconfig(gl)
Requires: pkgconfig(glu)
Provides: wxWidgets-any-devel
Conflicts: wxWidgets-any-devel
%description devel
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 all files needed for developing with wxGTK%gtk_version.
This variant of wxWidgets is built without STL types (such as
std::string), and is provided for old programs which fail to use e.g.
wxString and instead rely on the wxChar pointer API.
Note: wxWidgets variant devel packages are mutually exclusive. Please
read %_docdir/%name/README.SUSE to pick a correct variant.
%prep
%autosetup -n %tarball_name-%version -p1
cp %{S:2} .
%build
autoconf -f -i
# NOTE: gnome-vfs is deprecated. Disabled for GTK3 build
#
# 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
%configure \
--enable-vendor=%variant \
--with-gtk=%gtk_version \
--enable-unicode \
--with-opengl \
--with-libmspack \
--with-sdl \
--enable-ipv6 \
--enable-mediactrl \
--enable-optimise \
%{wx_debug:--enable-debug=%{wx_debug}} \
--enable-repro-build \
--disable-stl \
--disable-plugins
make %{?_smp_mflags}
%install
export VENDORTAG='-$variant' # only needed for non-MSW
make install DESTDIR="%buildroot"
%if !%base_packages
# Drop libraries already supplied by another packages
rm -f "%buildroot/%_libdir"/libwx_baseu{,_net,_xml}-%variant.so.%{sonum}* \
"%buildroot/%_libdir/wx/%wx_micro"/sound_sdlu-*.so
%endif
rm -Rf %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
%post -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_net-%variant%psonum -p /sbin/ldconfig
%post -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_baseu_xml-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_adv-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_aui-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_core-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_gl-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_html-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_media-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_propgrid-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_qa-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_ribbon-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_richtext-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_stc-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_webview-%variant%psonum -p /sbin/ldconfig
%post -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%postun -n libwx_%{toolkit}u_xrc-%variant%psonum -p /sbin/ldconfig
%if %base_packages
%files -n libwx_baseu-%variant%psonum
%_libdir/libwx_baseu-%variant.so.%{sonum}*
%files -n libwx_baseu_net-%variant%psonum
%_libdir/libwx_baseu_net-%variant.so.%{sonum}*
%files -n libwx_baseu_xml-%variant%psonum
%_libdir/libwx_baseu_xml-%variant.so.%{sonum}*
%endif
%files -n libwx_%{toolkit}u_adv-%variant%psonum
%_libdir/libwx_%{toolkit}u_adv-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_aui-%variant%psonum
%_libdir/libwx_%{toolkit}u_aui-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_core-%variant%psonum
%_libdir/libwx_%{toolkit}u_core-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_gl-%variant%psonum
%_libdir/libwx_%{toolkit}u_gl-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_html-%variant%psonum
%_libdir/libwx_%{toolkit}u_html-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_media-%variant%psonum
%_libdir/libwx_%{toolkit}u_media-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_propgrid-%variant%psonum
%_libdir/libwx_%{toolkit}u_propgrid-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_qa-%variant%psonum
%_libdir/libwx_%{toolkit}u_qa-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_ribbon-%variant%psonum
%_libdir/libwx_%{toolkit}u_ribbon-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_richtext-%variant%psonum
%_libdir/libwx_%{toolkit}u_richtext-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_stc-%variant%psonum
%_libdir/libwx_%{toolkit}u_stc-%variant.so.%{sonum}*
%files -n libwx_%{toolkit}u_xrc-%variant%psonum
%_libdir/libwx_%{toolkit}u_xrc-%variant.so.%{sonum}*
%if %base_packages
%files -n %{base_name}-plugin-sound_sdlu-3_2
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/sound_sdlu-%wx_micro.so
%endif
%files devel
# Complete documentation is available in the docs packages.
%doc docs/*.txt README.SUSE
%_bindir/wxrc
%_bindir/wxrc-%wx_minor
%_bindir/*-config*
%_datadir/aclocal
%_datadir/bakefile
%_includedir/wx-%wx_minor
%_libdir/*.so
%dir %_libdir/wx
%_libdir/wx/config
%_libdir/wx/include
%changelog

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Aug 19 18:01:10 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Use _multibuild to avoid changes and spec files of the variants
getting out of sync.
-------------------------------------------------------------------
Sun Jul 26 07:45:42 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -16,10 +16,53 @@
#
Name: wxWidgets-3_2
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == ""
ExclusiveArch: do_not_build
%endif
%if "%{flavor}" == "GTK2"
%define pkgname wxWidgets-3_2
%define variant suse
%define gtk_version 2
%define toolkit gtk%gtk_version
%define base_packages 0
%bcond_with webview
%endif
%if "%{flavor}" == "GTK3"
%define pkgname wxGTK3-3_2
%define variant suse
%define gtk_version 3
%define toolkit gtk%gtk_version
# build non-UI toolkit related packages
%define base_packages 1
%bcond_without webview
%endif
%if "%{flavor}" == "GTK3-nostl"
%define pkgname wxWidgets-3_2-nostl
%define variant suse-nostl
%define gtk_version 3
%define toolkit gtk%gtk_version
%define base_packages 1
%bcond_with webview
%define extra_description This variant of wxWidgets is built without STL types (such as \
std::string), and is provided for old programs which fail to use e.g. \
wxString and instead rely on the wxChar pointer API.
%endif
%if "%{flavor}" == "Qt"
%define pkgname wxWidgets-3_2
%define variant suse
%define toolkit qt
%define base_packages 0
%bcond_with webview
%endif
Name: %{pkgname}
%define base_name wxWidgets-3_2
%define tarball_name wxWidgets
%define variant suse
# Use default debug level, enabling exceptions
# Other valid values: yes/no/max
%define wx_debug %{nil}
@ -29,8 +72,6 @@ Version: 3.1.4
Release: 0
%define wx_minor 3.1
%define wx_micro 3.1.4
# build non-UI toolkit related packages
%define base_packages 0
Summary: C++ Library for Cross-Platform Development
License: LGPL-2.1-or-later WITH WxWindows-exception-3.1
Group: Development/Libraries/C and C++
@ -45,12 +86,8 @@ Patch1: soversion.diff
BuildRequires: autoconf
BuildRequires: cppunit-devel
BuildRequires: gcc-c++
BuildRequires: gnome-vfs2-devel
BuildRequires: gstreamer-devel
BuildRequires: gstreamer-plugins-base-devel
BuildRequires: gtk2-devel
%define gtk_version 2
%define toolkit gtk%gtk_version
BuildRequires: libSM-devel
BuildRequires: libexpat-devel
BuildRequires: libjpeg-devel
@ -59,6 +96,24 @@ BuildRequires: libnotify-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: zlib-devel
%if %{toolkit} == "gtk2"
BuildRequires: gnome-vfs2-devel
BuildRequires: gtk2-devel
%endif
%if %{toolkit} == "gtk3"
BuildRequires: pkgconfig(gtk+-3.0)
%if %{with webview}
BuildRequires: pkgconfig(webkit2gtk-4.0)
%endif
%endif
%if %{toolkit} == "qt"
BuildRequires: pkgconfig(Qt5Core) >= 5.2.1
BuildRequires: pkgconfig(Qt5Gui) >= 5.2.1
BuildRequires: pkgconfig(Qt5OpenGL) >= 5.2.1
BuildRequires: pkgconfig(Qt5Test) >= 5.2.1
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.1
BuildRequires: pkgconfig(cairo)
%endif
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(liblzma)
%if 0%{?sle_version} < 150000 && !0%{?is_opensuse}
@ -89,6 +144,7 @@ Every wxWidgets application must link against this library. It
contains mandatory classes that any wxWidgets code depends on (e.g.
wxString) and portability classes that abstract differences between
platforms. wxBase can be used to develop console-only applications.
%{?extra_description}
%package -n libwx_baseu_net-%variant%psonum
Summary: wxWidgets networking library
@ -144,6 +200,7 @@ The wxHTML library provides classes for parsing and displaying HTML.
It is not intended to be a high-end HTML browser. wxHTML can be used
as a generic rich text viewer  for example, to display an About Box
or the result of a database search.
%{?extra_description}
%package -n libwx_%{toolkit}u_media-%variant%psonum
Summary: wxWidgets media class library
@ -221,9 +278,18 @@ Group: System/Libraries
SDL based sound plugin for the wxWidgets cross-platform GUI.
%package devel
Summary: Development files for GTK2-backed wxWidgets 3.2
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: gtk%gtk_version-devel
%if %{toolkit} == "gtk2"
Requires: gtk2-devel
%endif
%if %{toolkit} == "gtk3"
Requires: pkgconfig(gtk+-3.0)
%endif
%if %{toolkit} == "qt"
Requires: pkgconfig(Qt5OpenGL) >= 5.2.1
Requires: pkgconfig(Qt5Widgets) >= 5.2.1
%endif
Requires: libwx_%{toolkit}u_adv-%variant%psonum = %version
Requires: libwx_%{toolkit}u_aui-%variant%psonum = %version
Requires: libwx_%{toolkit}u_core-%variant%psonum = %version
@ -235,12 +301,16 @@ Requires: libwx_%{toolkit}u_qa-%variant%psonum = %version
Requires: libwx_%{toolkit}u_ribbon-%variant%psonum = %version
Requires: libwx_%{toolkit}u_richtext-%variant%psonum = %version
Requires: libwx_%{toolkit}u_stc-%variant%psonum = %version
%if %{with webview}
Requires: libwx_%{toolkit}u_webview-%variant%psonum = %version
%endif
Requires: libwx_%{toolkit}u_xrc-%variant%psonum = %version
Requires: libwx_baseu-%variant%psonum = %version
Requires: libwx_baseu_net-%variant%psonum = %version
Requires: libwx_baseu_xml-%variant%psonum = %version
Requires: pkgconfig(gl)
Requires: pkgconfig(glu)
Provides: wxGTK2-devel = %version-%release
Provides: wxWidgets-any-devel
Provides: wxWidgets-devel = %version-%release
@ -255,7 +325,8 @@ 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 all files needed for developing with wxGTK%gtk_version.
This package contains all files needed for developing with %{name}.
%{?extra_description}
Note: wxWidgets variant devel packages are mutually exclusive. Please
read %_docdir/%name/README.SUSE to pick a correct variant.
@ -266,6 +337,8 @@ cp %{S:2} .
%build
autoconf -f -i
# NOTE: gnome-vfs is deprecated. Disabled for GTK3 build
#
# With 2.9.1:
# --enable-objc_uniquifying is relevant only for Cocoa
# --enable-accessibility is currently supported only in msw
@ -273,19 +346,31 @@ autoconf -f -i
%configure \
--enable-vendor=%variant \
%if %{toolkit} == "qt"
--with-qt \
%else
--with-gtk=%gtk_version \
%if %{gtk_version} == 2
--with-gnomevfs \
%endif
%endif
--enable-unicode \
--with-opengl \
--with-libmspack \
--with-sdl \
--with-gnomevfs \
--enable-ipv6 \
--enable-mediactrl \
--enable-optimise \
%{wx_debug:--enable-debug=%{wx_debug}} \
--enable-repro-build \
%if "%{flavor}" == "GTK3-nostl"
--disable-stl \
--disable-plugins
%else
--enable-stl \
--enable-plugins
%endif
make %{?_smp_mflags}
%install
@ -378,15 +463,25 @@ ln -sf $(echo %buildroot/%_libdir/wx/config/* | sed "s%%%buildroot%%%%") %buildr
%files -n libwx_%{toolkit}u_stc-%variant%psonum
%_libdir/libwx_%{toolkit}u_stc-%variant.so.%{sonum}*
%if %{with webview}
%files -n libwx_%{toolkit}u_webview-%variant%psonum
%_libdir/libwx_%{toolkit}u_webview-%variant.so.%{sonum}*
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/web-extensions/
%endif
%files -n libwx_%{toolkit}u_xrc-%variant%psonum
%_libdir/libwx_%{toolkit}u_xrc-%variant.so.%{sonum}*
%if %base_packages
%if "%{flavor}" != "GTK3-nostl"
%files -n %{base_name}-plugin-sound_sdlu-3_2
%dir %_libdir/wx
%dir %_libdir/wx/%wx_micro
%_libdir/wx/%wx_micro/sound_sdlu-%wx_micro.so
%endif
%endif
%files devel
# Complete documentation is available in the docs packages.