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