forked from pool/wxWidgets-3_2
Jan Engelhardt
493b71f4c6
OBS-URL: https://build.opensuse.org/package/show/X11:wxWidgets/wxWidgets-3_2?expand=0&rev=64
398 lines
15 KiB
RPMSpec
398 lines
15 KiB
RPMSpec
#
|
||
# 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
|
||
%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
|
||
%setup -q -n %tarball_name-%version
|
||
%patch -P 1 -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 \
|
||
%if 0%{?WX_DEBUG}
|
||
--enable-debug \
|
||
%else
|
||
--disable-debug \
|
||
%endif
|
||
--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}*
|
||
|
||
%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
|