]> git.pld-linux.org Git - packages/crossmingw32-glibmm.git/blob - crossmingw32-glibmm.spec
- updated to 2.66.7
[packages/crossmingw32-glibmm.git] / crossmingw32-glibmm.spec
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}
5 Version:        2.66.7
6 Release:        1
7 License:        LGPL v2+
8 Group:          Development/Libraries
9 Source0:        https://download.gnome.org/sources/glibmm/2.66/%{realname}-%{version}.tar.xz
10 # Source0-md5:  c6edf4cc986adec2a6d21e7423bad7d1
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
20 BuildRequires:  m4
21 BuildRequires:  mm-common >= 0.9.10
22 BuildRequires:  perl-XML-Parser
23 BuildRequires:  perl-base
24 BuildRequires:  pkgconfig >= 1:0.15
25 BuildRequires:  tar >= 1:1.22
26 BuildRequires:  xz
27 Requires:       crossmingw32-gcc-c++ >= 1:4.7
28 Requires:       crossmingw32-glib2 >= 2.62.0
29 Requires:       crossmingw32-libsigc++ >= 2.10.0
30 Requires:       crossmingw32-std-threads
31 ExcludeArch:    i386
32 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33
34 %define         no_install_post_strip   1
35 %define         _enable_debug_packages  0
36
37 %define         target                  i386-mingw32
38 %define         target_platform         i386-pc-mingw32
39
40 %define         _sysprefix              /usr
41 %define         _prefix                 %{_sysprefix}/%{target}
42 %define         _libdir                 %{_prefix}/lib
43 %define         _pkgconfigdir           %{_prefix}/lib/pkgconfig
44 %define         _dlldir                 /usr/share/wine/windows/system
45 %define         __cc                    %{target}-gcc
46 %define         __cxx                   %{target}-g++
47 %define         __pkgconfig_provides    %{nil}
48 %define         __pkgconfig_requires    %{nil}
49
50 %ifnarch %{ix86}
51 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
52 # now at least i486 is required for atomic operations
53 %define         optflags        -O2 -march=i486
54 %endif
55 # -z options are invalid for mingw linker, most of -f options are Linux-specific
56 %define         filterout_ld    -Wl,-z,.*
57 %define         filterout_c     -f[-a-z0-9=]*
58 %define         filterout_cxx   -f[-a-z0-9=]*
59
60 %description
61 A C++ interface for glib library - cross MinGW32 version.
62
63 %description -l pl.UTF-8
64 Interfejs C++ dla biblioteki glib - wersja skrośna MinGW32.
65
66 %package static
67 Summary:        Static glibmm library (cross MinGW32 version)
68 Summary(pl.UTF-8):      Statyczna biblioteka glibmm (wersja skrośna MinGW32)
69 Group:          Development/Libraries
70 Requires:       %{name} = %{version}-%{release}
71
72 %description static
73 Static glibmm library (cross MinGW32 version).
74
75 %description static -l pl.UTF-8
76 Statyczna biblioteka glibmm (wersja skrośna MinGW32).
77
78 %package dll
79 Summary:        DLL glibmm library for Windows
80 Summary(pl.UTF-8):      Biblioteka DLL glibmm dla Windows
81 Group:          Applications/Emulators
82 Requires:       crossmingw32-glib2-dll >= 2.62.0
83 Requires:       crossmingw32-libsigc++-dll >= 2.10.0
84 Requires:       wine
85
86 %description dll
87 DLL glibmm library for Windows.
88
89 %description dll -l pl.UTF-8
90 Biblioteka DLL glibmm dla Windows.
91
92 %prep
93 %setup -q -n %{realname}-%{version}
94 %patch0 -p1
95
96 %build
97 export PKG_CONFIG_LIBDIR=%{_prefix}/lib/pkgconfig
98 mm-common-prepare --copy --force
99 %{__libtoolize}
100 %{__aclocal} -I build
101 %{__autoconf}
102 %{__autoheader}
103 %{__automake}
104 # std-threads require at least WinXP API
105 CPPFLAGS="%{rpmcppflags} -DWINVER=0x0501"
106 # mingw32 requires gnu++11 (instead of c++11) for off[64]_t
107 CXXFLAGS="%{rpmcxxflags} -std=gnu++11"
108 %configure \
109         --target=%{target} \
110         --host=%{target} \
111         --disable-documentation \
112         --enable-maintainer-mode \
113         --disable-silent-rules \
114         --enable-static
115
116 %{__make}
117
118 %install
119 rm -rf $RPM_BUILD_ROOT
120
121 %{__make} install \
122         DESTDIR=$RPM_BUILD_ROOT
123
124 install -d $RPM_BUILD_ROOT%{_dlldir}
125 %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
126
127 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
128
129 %if 0%{!?debug:1}
130 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
131 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a
132 %endif
133
134 # use these from native glibmm if needed
135 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/glibmm-2.4/proc
136
137 %clean
138 rm -rf $RPM_BUILD_ROOT
139
140 %files
141 %defattr(644,root,root,755)
142 %doc ChangeLog NEWS README.md
143 %{_libdir}/libgiomm-2.4.dll.a
144 %{_libdir}/libglibmm-2.4.dll.a
145 %{_libdir}/libglibmm_generate_extra_defs-2.4.dll.a
146 %dir %{_libdir}/giomm-2.4
147 %{_libdir}/giomm-2.4/include
148 %dir %{_libdir}/glibmm-2.4
149 %{_libdir}/glibmm-2.4/include
150 %{_includedir}/giomm-2.4
151 %{_includedir}/glibmm-2.4
152 %{_pkgconfigdir}/giomm-2.4.pc
153 %{_pkgconfigdir}/glibmm-2.4.pc
154
155 %files static
156 %defattr(644,root,root,755)
157 %{_libdir}/libgiomm-2.4.a
158 %{_libdir}/libglibmm-2.4.a
159 %{_libdir}/libglibmm_generate_extra_defs-2.4.a
160
161 %files dll
162 %defattr(644,root,root,755)
163 %{_dlldir}/libgiomm-2.4-1.dll
164 %{_dlldir}/libglibmm-2.4-1.dll
165 %{_dlldir}/libglibmm_generate_extra_defs-2.4-1.dll
This page took 0.063423 seconds and 4 git commands to generate.