]>
Commit | Line | Data |
---|---|---|
a1765662 | 1 | # Conditional build: |
a91f1e86 | 2 | %bcond_without doc # don't generate documentation (bootstrap build w/o gnustep-base) |
a1765662 | 3 | # |
3c50e9b5 | 4 | %define ver 1.16 |
776d94ab | 5 | Summary: GNUstep Base library package |
3bae497f | 6 | Summary(pl.UTF-8): Podstawowa biblioteka GNUstep |
776d94ab | 7 | Name: gnustep-base |
3c50e9b5 | 8 | Version: %{ver}.4 |
9 | Release: 1 | |
a1765662 | 10 | License: LGPL/GPL |
30ff75eb | 11 | Group: Libraries |
776d94ab | 12 | Source0: ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz |
3c50e9b5 | 13 | # Source0-md5: ba76a3a68fcb8849c19ef3b05daa3e59 |
aed1ee97 | 14 | Source1: %{name}.init |
2c5ee7c2 | 15 | Source2: %{name}.sysconfig |
b032aafd | 16 | Patch0: %{name}-pass-arguments.patch |
f2f9d7e3 | 17 | Patch1: %{name}-ac.patch |
b993d150 | 18 | URL: http://www.gnustep.org/ |
a2dbe50d | 19 | %{?with_doc:BuildRequires: docbook-dtd41-sgml} |
9a75922c JB |
20 | BuildRequires: gcc-objc |
21 | BuildRequires: gmp-devel | |
72cd19bf | 22 | BuildRequires: gnustep-make-devel >= 1.11.2 |
9e9cc6e4 | 23 | BuildRequires: libffi-devel |
aed1ee97 | 24 | BuildRequires: libxml2-devel >= 2.3.0 |
9e9cc6e4 | 25 | BuildRequires: libxslt-devel >= 1.1.21 |
c273ed87 | 26 | BuildRequires: openssl-devel >= 0.9.7d |
f2f9d7e3 | 27 | BuildRequires: texinfo-texi2dvi |
9a75922c | 28 | BuildRequires: zlib-devel |
81d534d8 | 29 | Requires(post): /sbin/ldconfig |
a2dbe50d | 30 | Requires(post,preun): /sbin/chkconfig |
81d534d8 ER |
31 | Requires(triggerpostun): sed >= 4.0 |
32 | Requires: glibc >= 6:2.3.5-7.6 | |
72cd19bf | 33 | Requires: gnustep-make >= 1.11.2 |
aed1ee97 JB |
34 | # with gdomap in /etc/services |
35 | Requires: setup >= 2.4.3 | |
9a75922c JB |
36 | Conflicts: gnustep-core |
37 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
38 | ||
b993d150 | 39 | %description |
776d94ab | 40 | The GNUstep Base Library is a library of general-purpose, |
41 | non-graphical Objective C objects. For example, it includes classes | |
42 | for strings, object collections, byte streams, typed coders, | |
43 | invocations, notifications, notification dispatchers, moments in time, | |
44 | network ports, remote object messaging support (distributed objects), | |
9a75922c | 45 | event loops, and random number generators. |
b993d150 | 46 | |
51f24a62 JR |
47 | %description -l pl.UTF-8 |
48 | Podstawowa biblioteka GNUstep jest biblioteką innych niż graficzne | |
49 | obiektów ogólnego przeznaczenia dla Objective C. Zawiera np. klasy dla | |
50 | stringów, kolekcji, strumieni, koderów typów, powiadamiania, portów | |
51 | sieci, obiektów rozproszonych, pętli zdarzeń, generatorów liczb | |
129467cf JB |
52 | losowych. |
53 | ||
b993d150 | 54 | %package devel |
129467cf | 55 | Summary: GNUstep Base headers |
3bae497f | 56 | Summary(pl.UTF-8): Pliki nagłówkowe podstawowej biblioteki GNUstep |
776d94ab | 57 | Group: Development/Libraries |
5f741c7a | 58 | Requires: %{name} = %{version}-%{release} |
a1765662 JB |
59 | Requires: ffcall-devel |
60 | Requires: gcc-objc | |
61 | Requires: gmp-devel | |
72cd19bf | 62 | Requires: gnustep-make-devel >= 1.11.2 |
a1765662 JB |
63 | Requires: libxml2-devel |
64 | Requires: zlib-devel | |
776d94ab | 65 | Conflicts: gnustep-core |
b993d150 | 66 | |
67 | %description devel | |
776d94ab | 68 | Header files required to build applications against the GNUstep Base |
9a75922c | 69 | library. |
b993d150 | 70 | |
51f24a62 JR |
71 | %description devel -l pl.UTF-8 |
72 | Pliki nagłówkowe potrzebne do budowania aplikacji używających | |
129467cf JB |
73 | podstawowej biblioteki GNUstep. |
74 | ||
b993d150 | 75 | %prep |
e372fffb | 76 | %setup -q |
81fa6835 | 77 | %patch0 -p1 |
f2f9d7e3 | 78 | %patch1 -p1 |
b993d150 | 79 | |
80 | %build | |
f2f9d7e3 PS |
81 | %{__autoconf} -Iconfig |
82 | ||
cd237fcd | 83 | # don't assume that GNUstep.sh is imported in environment |
9e9cc6e4 | 84 | export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles |
cd237fcd | 85 | export GNUSTEP_FLATTENED=yes |
72cd19bf | 86 | |
3de239d6 JB |
87 | # gnustep can use one of 3 ways of getting argc,argv,env: |
88 | # - /proc (default on Linux) - gnustep programs won't run in procless system | |
89 | # - fake-main hack (main is secretly renamed and wrapped) | |
90 | # - pass-arguments (program must call NSProcessInfo initialize) | |
91 | %configure \ | |
9e9cc6e4 JR |
92 | --enable-pass-arguments \ |
93 | --enable-libffi \ | |
94 | --disable-ffcall | |
e806eebd | 95 | |
cd237fcd | 96 | # fake GUI_MAKE_LOADED to avoid linking with gnustep-gui |
f2f9d7e3 | 97 | %{__make} -j1 \ |
cd237fcd | 98 | GUI_MAKE_LOADED=yes \ |
a91f1e86 | 99 | GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES` \ |
a1765662 | 100 | messages=yes |
b993d150 | 101 | |
8191a52b | 102 | %if %{with doc} |
1289291f | 103 | export LD_LIBRARY_PATH=`pwd`/Source/obj |
4041ff2d SS |
104 | # with __make -j2: |
105 | # mkdir: cannot create directory `../Documentation/BaseTools': File exists | |
106 | # make[1]: *** [../Documentation/BaseTools] Error 1 | |
107 | # make[1]: *** Waiting for unfinished jobs.... | |
9a75922c | 108 | # requires already installed gnustep-base |
4041ff2d | 109 | %{__make} -j1 -C Documentation \ |
a91f1e86 | 110 | GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES` |
f2f9d7e3 | 111 | %{__make} -j1 -C Documentation/manual \ |
a91f1e86 | 112 | GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES` |
a1765662 | 113 | %endif |
9a75922c | 114 | |
b993d150 | 115 | %install |
116 | rm -rf $RPM_BUILD_ROOT | |
9e9cc6e4 JR |
117 | install -d $RPM_BUILD_ROOT{%{_initrddir},/etc/sysconfig} |
118 | ||
119 | export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles | |
cd237fcd | 120 | export GNUSTEP_FLATTENED=yes |
72cd19bf | 121 | |
f2f9d7e3 | 122 | %{__make} -j1 install \ |
9e9cc6e4 JR |
123 | DESTDIR=$RPM_BUILD_ROOT |
124 | ||
125 | install %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/gnustep | |
126 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/gnustep | |
127 | ||
128 | echo 'GMT' > $RPM_BUILD_ROOT%{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/localtime | |
129 | ||
130 | # Fix .so symlink | |
131 | (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libgnustep-base.so.*.*.* libgnustep-base.so) | |
b993d150 | 132 | |
8191a52b | 133 | %if %{with doc} |
f2f9d7e3 | 134 | %{__make} -j1 -C Documentation install \ |
9e9cc6e4 JR |
135 | DESTDIR=$RPM_BUILD_ROOT |
136 | ||
f2f9d7e3 | 137 | %{__make} -j1 -C Documentation/manual install \ |
9e9cc6e4 JR |
138 | DESTDIR=$RPM_BUILD_ROOT |
139 | ||
a1765662 | 140 | # not (yet?) supported by rpm-compress-doc |
9e9cc6e4 | 141 | find $RPM_BUILD_ROOT%{_datadir}/GNUstep/Documentation \ |
1289291f | 142 | -type f -a ! -name '*.html' -a ! -name '*.gz' -a ! -name '*.jpg' -a ! -name '*.css' | xargs gzip -9nf |
a1765662 | 143 | %endif |
9a75922c | 144 | |
129467cf JB |
145 | %clean |
146 | rm -rf $RPM_BUILD_ROOT | |
147 | ||
b993d150 | 148 | %post |
b993d150 | 149 | /sbin/ldconfig |
be3ce200 | 150 | /sbin/chkconfig --add gnustep |
9a75922c JB |
151 | if [ -f /var/lock/subsys/gnustep ]; then |
152 | /etc/rc.d/init.d/gnustep restart 1>&2 | |
153 | else | |
154 | echo "Run \"/etc/rc.d/init.d/gnustep start\" to start gnustep services." | |
155 | fi | |
b993d150 | 156 | |
157 | %preun | |
9a75922c JB |
158 | if [ "$1" = "0" ]; then |
159 | if [ -f /var/lock/subsys/gnustep ]; then | |
160 | /etc/rc.d/init.d/gnustep stop 1>&2 | |
161 | fi | |
162 | /sbin/chkconfig --del gnustep | |
b993d150 | 163 | fi |
164 | ||
81d534d8 | 165 | %postun -p /sbin/ldconfig |
b993d150 | 166 | |
81d534d8 | 167 | %triggerpostun -- %{name} < 1.11.0-1.1 |
345013a9 | 168 | sed -i -e "/^%(echo %{_prefix}/Libraries/ | sed -e 's,/,\\/,g')$/d" /etc/ld.so.conf |
aed1ee97 | 169 | |
9a75922c | 170 | %files |
776d94ab | 171 | %defattr(644,root,root,755) |
a1765662 | 172 | %doc ChangeLog* |
9e9cc6e4 JR |
173 | %if %{with doc} |
174 | %docdir %{_datadir}/GNUstep/Documentation | |
175 | %{_datadir}/GNUstep/Documentation/*.jpg | |
176 | %{_datadir}/GNUstep/Documentation/index.html | |
177 | %{_datadir}/GNUstep/Documentation/style.css | |
8f9f379a | 178 | %dir %{_datadir}/GNUstep/Documentation |
9e9cc6e4 JR |
179 | %dir %{_datadir}/GNUstep/Documentation/Developer |
180 | %dir %{_datadir}/GNUstep/Documentation/Developer/Base | |
181 | %{_datadir}/GNUstep/Documentation/Developer/Base/ReleaseNotes | |
182 | %endif | |
183 | ||
aed1ee97 | 184 | %attr(754,root,root) %{_initrddir}/gnustep |
2c5ee7c2 | 185 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gnustep |
9a75922c | 186 | |
9e9cc6e4 JR |
187 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle |
188 | %attr(755,root,root) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle/SSL | |
189 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle/Resources | |
190 | ||
191 | %dir %{_libdir}/GNUstep/DTDs | |
192 | %{_libdir}/GNUstep/DTDs/*.dtd | |
193 | %{_libdir}/GNUstep/DTDs/*.rnc | |
194 | ||
195 | %dir %{_libdir}/GNUstep/Libraries | |
196 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base | |
197 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions | |
198 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver} | |
199 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources | |
200 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages | |
201 | %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones | |
202 | ||
203 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/*.plist | |
204 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/English.lproj | |
205 | %lang(eo) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Esperanto.lproj | |
206 | %lang(fr) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/French.lproj | |
207 | %lang(de) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/German.lproj | |
208 | %lang(it) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Italian.lproj | |
209 | %lang(ko) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Korean.lproj | |
210 | %lang(es) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Spanish.lproj | |
211 | %lang(zh_TW) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/TraditionalChinese.lproj | |
212 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Locale.* | |
213 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/English | |
214 | %lang(nl) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Dutch | |
215 | %lang(eo) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Esperanto | |
216 | %lang(fr) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/French | |
217 | %lang(de) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/German | |
218 | %lang(hu) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Hungarian | |
219 | %lang(it) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Italian | |
220 | %lang(ko) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Korean | |
221 | %lang(ru) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Russian | |
222 | %lang(sk) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Slovak | |
223 | %lang(es) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Spanish | |
224 | %lang(zh_TW) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/TraditionalChinese | |
225 | %lang(uk) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Ukrainian | |
226 | ||
227 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/GNUmakefile | |
228 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/GNUstep_zones | |
229 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/README | |
230 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/abbreviations | |
231 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/regions | |
232 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/zones | |
233 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/*.m | |
234 | %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/*.plist | |
235 | %config(noreplace) %verify(not md5 mtime size) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/localtime | |
236 | ||
237 | %attr(755,root,root) %{_libdir}/libgnustep-base.so.*.*.* | |
aed1ee97 | 238 | |
9a75922c | 239 | # is suid necessary here??? it runs as daemon... |
9e9cc6e4 JR |
240 | #%attr(4755,root,root) %{_bindir}/gdomap |
241 | %attr(755,root,root) %{_bindir}/* | |
242 | ||
243 | %{_mandir}/man1/*.1* | |
244 | %{_mandir}/man8/*.8* | |
9a75922c JB |
245 | |
246 | %files devel | |
776d94ab | 247 | %defattr(644,root,root,755) |
a91f1e86 | 248 | %dir %{_datadir}/GNUstep/Makefiles/Additional |
249 | %{_datadir}/GNUstep/Makefiles/Additional/base.make | |
8191a52b | 250 | %if %{with doc} |
9e9cc6e4 JR |
251 | %docdir %{_datadir}/GNUstep/Documentation |
252 | %{_datadir}/GNUstep/Documentation/Developer/Base/General | |
253 | %{_datadir}/GNUstep/Documentation/Developer/Base/ProgrammingManual | |
254 | %{_datadir}/GNUstep/Documentation/Developer/Base/Reference | |
255 | %{_datadir}/GNUstep/Documentation/Developer/BaseAdditions | |
256 | %{_datadir}/GNUstep/Documentation/Developer/CodingStandards | |
257 | %{_datadir}/GNUstep/Documentation/Developer/Tools | |
258 | %{_infodir}/*.info* | |
aed1ee97 JB |
259 | %endif |
260 | ||
9e9cc6e4 JR |
261 | %{_includedir}/Foundation |
262 | %{_includedir}/GNUstepBase | |
263 | %{_includedir}/gnustep | |
264 | ||
265 | %attr(755,root,root) %{_libdir}/libgnustep-base.so | |
aed1ee97 | 266 | |
9e9cc6e4 JR |
267 | %dir %{_datadir}/GNUstep/Makefiles/Additional |
268 | %{_datadir}/GNUstep/Makefiles/Additional/base.make |