]> git.pld-linux.org Git - packages/gnustep-base.git/blob - gnustep-base.spec
- release 3
[packages/gnustep-base.git] / gnustep-base.spec
1 # Conditional build:
2 %bcond_without doc     # don't generate documentation (bootstrap build w/o gnustep-base)
3 #
4 %define          ver 1.19
5 Summary:        GNUstep Base library package
6 Summary(pl.UTF-8):      Podstawowa biblioteka GNUstep
7 Name:           gnustep-base
8 Version:        %{ver}.1
9 Release:        3
10 License:        LGPL/GPL
11 Group:          Libraries
12 Source0:        ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz
13 # Source0-md5:  100e433a7e0624a6e4e5727b87e48c82
14 Source1:        %{name}.init
15 Source2:        %{name}.sysconfig
16 Patch0:         %{name}-pass-arguments.patch
17 Patch1:         %{name}-ac.patch
18 URL:            http://www.gnustep.org/
19 %{?with_doc:BuildRequires:      docbook-dtd41-sgml}
20 BuildRequires:  gcc-objc
21 BuildRequires:  gmp-devel
22 BuildRequires:  gnustep-make-devel >= 1.11.2
23 BuildRequires:  libffi-devel
24 BuildRequires:  libxml2-devel >= 2.3.0
25 BuildRequires:  libxslt-devel >= 1.1.21
26 BuildRequires:  openssl-devel >= 0.9.7d
27 BuildRequires:  texinfo-texi2dvi
28 BuildRequires:  zlib-devel
29 Requires(post): /sbin/ldconfig
30 Requires(post,preun):   /sbin/chkconfig
31 Requires(triggerpostun):        sed >= 4.0
32 Requires:       glibc >= 6:2.3.5-7.6
33 Requires:       gnustep-make >= 1.11.2
34 # with gdomap in /etc/services
35 Requires:       setup >= 2.4.3
36 Conflicts:      gnustep-core
37 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38
39 %description
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),
45 event loops, and random number generators.
46
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
52 losowych.
53
54 %package devel
55 Summary:        GNUstep Base headers
56 Summary(pl.UTF-8):      Pliki nagłówkowe podstawowej biblioteki GNUstep
57 Group:          Development/Libraries
58 Requires:       %{name} = %{version}-%{release}
59 Requires:       ffcall-devel
60 Requires:       gcc-objc
61 Requires:       gmp-devel
62 Requires:       gnustep-make-devel >= 1.11.2
63 Requires:       libxml2-devel
64 Requires:       zlib-devel
65 Conflicts:      gnustep-core
66
67 %description devel
68 Header files required to build applications against the GNUstep Base
69 library.
70
71 %description devel -l pl.UTF-8
72 Pliki nagłówkowe potrzebne do budowania aplikacji używających
73 podstawowej biblioteki GNUstep.
74
75 %prep
76 %setup -q
77 %patch0 -p1
78 %patch1 -p1
79
80 %build
81 %{__autoconf} -Iconfig
82
83 # don't assume that GNUstep.sh is imported in environment
84 export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles
85 export GNUSTEP_FLATTENED=yes
86
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 GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
92 %configure \
93         --enable-pass-arguments \
94         --enable-libffi \
95         --disable-ffcall
96
97 # fake GUI_MAKE_LOADED to avoid linking with gnustep-gui
98 %{__make} -j1 \
99         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
100         GUI_MAKE_LOADED=yes \
101         GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES` \
102         messages=yes
103
104 %if %{with doc}
105 export LD_LIBRARY_PATH=`pwd`/Source/obj
106 # with __make -j2:
107 #       mkdir: cannot create directory `../Documentation/BaseTools': File exists
108 #       make[1]: *** [../Documentation/BaseTools] Error 1
109 #       make[1]: *** Waiting for unfinished jobs....
110 # requires already installed gnustep-base
111 %{__make} -j1 -C Documentation \
112         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
113         GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES`
114 %{__make} -j1 -C Documentation/manual \
115         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
116         GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES`
117 %endif
118
119 %install
120 rm -rf $RPM_BUILD_ROOT
121 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/sysconfig}
122
123 export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles
124 export GNUSTEP_FLATTENED=yes
125
126 %{__make} -j1 install \
127         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
128         DESTDIR=$RPM_BUILD_ROOT
129
130 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gnustep
131 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/gnustep
132
133 echo 'GMT' > $RPM_BUILD_ROOT%{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/localtime
134
135 # Fix .so symlink
136 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libgnustep-base.so.*.*.* libgnustep-base.so)
137
138 %if %{with doc}
139 %{__make} -j1 -C Documentation install \
140         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
141         DESTDIR=$RPM_BUILD_ROOT
142
143 %{__make} -j1 -C Documentation/manual install \
144         GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
145         DESTDIR=$RPM_BUILD_ROOT
146
147 # not (yet?) supported by rpm-compress-doc
148 find $RPM_BUILD_ROOT%{_datadir}/GNUstep/Documentation \
149         -type f -a ! -name '*.html' -a ! -name '*.gz' -a ! -name '*.jpg' -a ! -name '*.css' | xargs gzip -9nf
150 %endif
151
152 %clean
153 rm -rf $RPM_BUILD_ROOT
154
155 %post
156 /sbin/ldconfig
157 /sbin/chkconfig --add gnustep
158 if [ -f /var/lock/subsys/gnustep ]; then
159         /etc/rc.d/init.d/gnustep restart 1>&2
160 else
161         echo "Run \"/etc/rc.d/init.d/gnustep start\" to start gnustep services."
162 fi
163
164 %preun
165 if [ "$1" = "0" ]; then
166         if [ -f /var/lock/subsys/gnustep ]; then
167                 /etc/rc.d/init.d/gnustep stop 1>&2
168         fi
169         /sbin/chkconfig --del gnustep
170 fi
171
172 %postun -p /sbin/ldconfig
173
174 %triggerpostun -- %{name} < 1.11.0-1.1
175 sed -i -e "/^%(echo %{_prefix}/Libraries/ | sed -e 's,/,\\/,g')$/d" /etc/ld.so.conf
176
177 %files
178 %defattr(644,root,root,755)
179 %doc ChangeLog*
180 %if %{with doc}
181 %docdir %{_datadir}/GNUstep/Documentation
182 %{_datadir}/GNUstep/Documentation/*.jpg
183 %{_datadir}/GNUstep/Documentation/index.html
184 %{_datadir}/GNUstep/Documentation/style.css
185 %dir %{_datadir}/GNUstep/Documentation
186 %dir %{_datadir}/GNUstep/Documentation/Developer
187 %dir %{_datadir}/GNUstep/Documentation/Developer/Base
188 %{_datadir}/GNUstep/Documentation/Developer/Base/ReleaseNotes
189 %endif
190
191 %attr(754,root,root) /etc/rc.d/init.d/gnustep
192 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gnustep
193
194 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle
195 %attr(755,root,root) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle/SSL
196 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/SSL.bundle/Resources
197
198 %dir %{_libdir}/GNUstep/DTDs
199 %{_libdir}/GNUstep/DTDs/*.dtd
200 %{_libdir}/GNUstep/DTDs/*.rnc
201
202 %dir %{_libdir}/GNUstep/Libraries
203 %dir %{_libdir}/GNUstep/Libraries/gnustep-base
204 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions
205 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}
206 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources
207 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages
208 %dir %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones
209
210 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/*.plist
211 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/English.lproj
212 %lang(eo) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Esperanto.lproj
213 %lang(fr) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/French.lproj
214 %lang(de) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/German.lproj
215 %lang(it) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Italian.lproj
216 %lang(ko) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Korean.lproj
217 %lang(es) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Spanish.lproj
218 %lang(zh_TW) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/TraditionalChinese.lproj
219 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Locale.*
220 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/English
221 %lang(nl) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Dutch
222 %lang(eo) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Esperanto
223 %lang(fr) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/French
224 %lang(de) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/German
225 %lang(hu) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Hungarian
226 %lang(it) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Italian
227 %lang(ko) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Korean
228 %lang(ru) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Russian
229 %lang(sk) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Slovak
230 %lang(es) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Spanish
231 %lang(zh_TW) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/TraditionalChinese
232 %lang(uk) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/Languages/Ukrainian
233
234 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/GNUmakefile
235 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/GNUstep_zones
236 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/README
237 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/abbreviations
238 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/regions
239 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/zones
240 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/*.m
241 %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/*.plist
242 %config(noreplace) %verify(not md5 mtime size) %{_libdir}/GNUstep/Libraries/gnustep-base/Versions/%{ver}/Resources/NSTimeZones/localtime
243
244 %attr(755,root,root) %{_libdir}/libgnustep-base.so.*.*.*
245 %attr(755,root,root) %ghost %{_libdir}/libgnustep-base.so.%{ver}
246
247 # is suid necessary here??? it runs as daemon...
248 #%attr(4755,root,root) %{_bindir}/gdomap
249 %attr(755,root,root) %{_bindir}/*
250
251 %{_mandir}/man1/*.1*
252 %{_mandir}/man8/*.8*
253
254 %files devel
255 %defattr(644,root,root,755)
256 %dir %{_datadir}/GNUstep/Makefiles/Additional
257 %{_datadir}/GNUstep/Makefiles/Additional/base.make
258 %if %{with doc}
259 %docdir %{_datadir}/GNUstep/Documentation
260 %{_datadir}/GNUstep/Documentation/Developer/Base/General
261 %{_datadir}/GNUstep/Documentation/Developer/Base/ProgrammingManual
262 %{_datadir}/GNUstep/Documentation/Developer/Base/Reference
263 %{_datadir}/GNUstep/Documentation/Developer/BaseAdditions
264 %{_datadir}/GNUstep/Documentation/Developer/CodingStandards
265 %{_datadir}/GNUstep/Documentation/Developer/Tools
266 %{_infodir}/*.info*
267 %endif
268
269 %{_includedir}/Foundation
270 %{_includedir}/GNUstepBase
271 %{_includedir}/gnustep
272
273 %attr(755,root,root) %{_libdir}/libgnustep-base.so
274
275 %dir %{_datadir}/GNUstep/Makefiles/Additional
276 %{_datadir}/GNUstep/Makefiles/Additional/base.make
This page took 0.879116 seconds and 3 git commands to generate.