1 Summary: A C++ interface for glib library - cross MinGW32 version
2 Summary(pl.UTF-8): Interfejs C++ dla biblioteki glib - wersja skrośna MinGW32
3 %define realname glibmm
4 Name: crossmingw32-%{realname}
8 Group: Development/Libraries
9 Source0: https://download.gnome.org/sources/glibmm/2.66/%{realname}-%{version}.tar.xz
10 # Source0-md5: 89c0ba07736d258b84bc201bd213fd69
11 Patch0: glibmm-mingw32.patch
12 URL: https://www.gtkmm.org/
13 BuildRequires: autoconf >= 2.59
14 BuildRequires: automake >= 1:1.11
15 BuildRequires: crossmingw32-gcc-c++ >= 1:4.7
16 BuildRequires: crossmingw32-glib2 >= 2.62.0
17 BuildRequires: crossmingw32-libsigc++ >= 2.10.0
18 BuildRequires: crossmingw32-std-threads
19 BuildRequires: libtool >= 2:2.0
21 BuildRequires: mm-common >= 0.9.10
22 BuildRequires: pkgconfig >= 1:0.15
23 BuildRequires: tar >= 1:1.22
25 Requires: crossmingw32-gcc-c++ >= 1:4.7
26 Requires: crossmingw32-glib2 >= 2.62.0
27 Requires: crossmingw32-libsigc++ >= 2.10.0
28 Requires: crossmingw32-std-threads
30 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 %define no_install_post_strip 1
33 %define _enable_debug_packages 0
35 %define target i386-mingw32
36 %define target_platform i386-pc-mingw32
38 %define _sysprefix /usr
39 %define _prefix %{_sysprefix}/%{target}
40 %define _libdir %{_prefix}/lib
41 %define _pkgconfigdir %{_prefix}/lib/pkgconfig
42 %define _dlldir /usr/share/wine/windows/system
43 %define __cc %{target}-gcc
44 %define __cxx %{target}-g++
45 %define __pkgconfig_provides %{nil}
46 %define __pkgconfig_requires %{nil}
49 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
50 # now at least i486 is required for atomic operations
51 %define optflags -O2 -march=i486
53 # -z options are invalid for mingw linker, most of -f options are Linux-specific
54 %define filterout_ld -Wl,-z,.*
55 %define filterout_c -f[-a-z0-9=]*
56 %define filterout_cxx -f[-a-z0-9=]*
59 A C++ interface for glib library - cross MinGW32 version.
61 %description -l pl.UTF-8
62 Interfejs C++ dla biblioteki glib - wersja skrośna MinGW32.
65 Summary: Static glibmm library (cross MinGW32 version)
66 Summary(pl.UTF-8): Statyczna biblioteka glibmm (wersja skrośna MinGW32)
67 Group: Development/Libraries
68 Requires: %{name} = %{version}-%{release}
71 Static glibmm library (cross MinGW32 version).
73 %description static -l pl.UTF-8
74 Statyczna biblioteka glibmm (wersja skrośna MinGW32).
77 Summary: DLL glibmm library for Windows
78 Summary(pl.UTF-8): Biblioteka DLL glibmm dla Windows
79 Group: Applications/Emulators
80 Requires: crossmingw32-glib2-dll >= 2.62.0
81 Requires: crossmingw32-libsigc++-dll >= 2.10.0
85 DLL glibmm library for Windows.
87 %description dll -l pl.UTF-8
88 Biblioteka DLL glibmm dla Windows.
91 %setup -q -n %{realname}-%{version}
95 export PKG_CONFIG_LIBDIR=%{_prefix}/lib/pkgconfig
96 mm-common-prepare --copy --force
102 # std-threads require at least WinXP API
103 CPPFLAGS="%{rpmcppflags} -DWINVER=0x0501"
104 # mingw32 requires gnu++11 (instead of c++11) for off[64]_t
105 CXXFLAGS="%{rpmcxxflags} -std=gnu++11"
109 --disable-documentation \
110 --enable-maintainer-mode \
111 --disable-silent-rules \
117 rm -rf $RPM_BUILD_ROOT
120 DESTDIR=$RPM_BUILD_ROOT
122 install -d $RPM_BUILD_ROOT%{_dlldir}
123 %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
125 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
128 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
129 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a
132 # use these from native glibmm if needed
133 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/glibmm-2.4/proc
136 rm -rf $RPM_BUILD_ROOT
139 %defattr(644,root,root,755)
140 %doc AUTHORS ChangeLog NEWS README
141 %{_libdir}/libgiomm-2.4.dll.a
142 %{_libdir}/libglibmm-2.4.dll.a
143 %{_libdir}/libglibmm_generate_extra_defs-2.4.dll.a
144 %dir %{_libdir}/giomm-2.4
145 %{_libdir}/giomm-2.4/include
146 %dir %{_libdir}/glibmm-2.4
147 %{_libdir}/glibmm-2.4/include
148 %{_includedir}/giomm-2.4
149 %{_includedir}/glibmm-2.4
150 %{_pkgconfigdir}/giomm-2.4.pc
151 %{_pkgconfigdir}/glibmm-2.4.pc
154 %defattr(644,root,root,755)
155 %{_libdir}/libgiomm-2.4.a
156 %{_libdir}/libglibmm-2.4.a
157 %{_libdir}/libglibmm_generate_extra_defs-2.4.a
160 %defattr(644,root,root,755)
161 %{_dlldir}/libgiomm-2.4-1.dll
162 %{_dlldir}/libglibmm-2.4-1.dll
163 %{_dlldir}/libglibmm_generate_extra_defs-2.4-1.dll