/[smeserver]/rpms/dietlibc/sme10/dietlibc.spec
ViewVC logotype

Contents of /rpms/dietlibc/sme10/dietlibc.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (show annotations) (download)
Fri Jul 14 12:30:13 2023 UTC (16 months, 2 weeks ago) by brianr
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +5 -3 lines
* Fri Jul 14 2023 brian read  <brianr@koozali.org>
- add {} round vars in source lines so that can be converted to git [SME: 12380]

1 ## This package understands the following switches:
2 ## --with[out] ssp ... enable/disable SSP; default depends
3 ## on target architecture
4 ## --with dynamic ... enable dynamic lib support
5
6 ## Fedora Extras specific customization below...
7 %bcond_without noarch
8 ##
9
10 %global prerelease 20110311
11 %global pkglibdir %_prefix/lib/dietlibc
12
13 %ifarch %ix86 x86_64
14 %bcond_without ssp
15 %else
16 %bcond_with ssp
17 %endif
18
19 %ifarch %ix86 x86_64 arm
20 %bcond_with dynamic
21 %endif
22
23 %ifarch %ix86
24 %global target_cpu i386
25 %else
26 %global target_cpu %_target_cpu
27 %endif
28
29 %{?with_noarch:%global noarch BuildArch: noarch}
30 %{!?release_func:%global release_func() %%{?prerelease:0.}%1%%{?prerelease:.%%prerelease}%%{?dist}}
31 %{!?apply:%global apply(p:n:b:) %patch%%{-n:%%{-n*}} %%{-p:-p %%{-p*}} %%{-b:-b %%{-b*}} \
32 %nil}
33
34 Summary: Small libc implementation
35 Name: dietlibc
36 Version: 0.33
37 Release: %release_func 1600
38 License: GPLv2
39 Group: Development/Libraries
40 URL: http://www.fefe.de/dietlibc/
41 %if !0%{?prerelease:1}
42 Source0: http://www.kernel.org/pub/linux/libs/dietlibc/%{name}-%{version}.tar.bz2
43 Source1: http://www.fefe.de/dietlibc/%{name}-%{version}.tar.bz2.sig
44 %else
45 # generated by 'make cvs-sources [CVS_DATE=....]'
46 Source0: %name-%version.%prerelease.tar.bz2
47 %endif
48 Source10: runtests-X.sh
49 ## CVS..master diff from https://github.com/ensc/dietlibc
50 Patch0: dietlibc-github.patch
51 BuildRoot: %_tmppath/%name-%version-%release-buildroot
52 %{?with_dynamic:Requires: dietlibc-lib = %version-%release}
53 %{!?with_dynamic:Obsoletes: dietlibc-lib < %version-%release}
54
55 Requires: %name-devel = %version-%release
56 BuildRequires: gdb
57
58 %package devel
59 Summary: dietlibc development files
60 Group: Development/Libraries
61 Requires: %name = %version-%release
62 Requires: %name-header = %version-%release
63 Provides: %name-static = %version-%release
64 Provides: %name-static%{?_isa} = %version-%release
65
66 %package header
67 Summary: dietlibc header files
68 Group: Development/Libraries
69 Requires: %name = %version-%release
70 Requires(pre): %name-devel = %version-%release
71 Requires: %name-devel = %version-%release
72 %{?noarch}
73
74 %package lib
75 Summary: Dynamic libraries for dietlibc
76 Group: System Environment/Libraries
77 Conflicts: %name < %version-%release
78 Conflicts: %name > %version-%release
79
80 %description
81 The diet libc is a libc that is optimized for small size. It can be
82 used to create small statically linked binaries for Linux on alpha,
83 arm, hppa, ia64, i386, mips, s390, sparc, sparc64, ppc and x86_64.
84
85 %description devel
86 The diet libc is a libc that is optimized for small size. It can be
87 used to create small statically linked binaries for Linux on alpha,
88 arm, hppa, ia64, i386, mips, s390, sparc, sparc64, ppc and x86_64.
89
90 This package contains the object files for dietlibc.
91
92 %description header
93 The diet libc is a libc that is optimized for small size. It can be
94 used to create small statically linked binaries for Linux on alpha,
95 arm, hppa, ia64, i386, mips, s390, sparc, sparc64, ppc and x86_64.
96
97 This package contains the header files for dietlibc.
98
99 %description lib
100 The diet libc is a libc that is optimized for small size. It can be
101 used to create small statically linked binaries for Linux on alpha,
102 arm, hppa, ia64, i386, mips, s390, sparc, sparc64, ppc and x86_64.
103
104 This package contains the dynamic libraries for dietlibc.
105
106
107 %prep
108 %setup -q %{?prerelease:-n %name-%version.%prerelease}
109
110 %apply -n0 -p1
111
112 %if %{without ssp}
113 sed -i -e 's!^#define WANT_SSP$!// \0!g;
114 s!.*\(#define WANT_STACKGAP\).*!\1!g' dietfeatures.h
115 %global xtra_fixcflags -fno-stack-protector
116 %else
117 %global xtra_fixcflags %nil
118 %endif
119
120 sed -i \
121 -e '/#define \(WANT_LARGEFILE_BACKCOMPAT\|WANT_VALGRIND_SUPPORT\)/d' \
122 dietfeatures.h
123
124 %ifarch %ix86 arm
125 sed -i \
126 -e '/#define WANT_DYN_PAGESIZE/{c\' \
127 -e '#define WANT_ELFINFO' \
128 -e '}' \
129 dietfeatures.h
130 %endif
131
132 %global fixcflags -fomit-frame-pointer -fno-exceptions -fno-asynchronous-unwind-tables %xtra_fixcflags -Os -g3 -Werror-implicit-function-declaration
133 %global basemakeflags prefix=%pkglibdir BINDIR=%_bindir MAN1DIR=%_mandir/man1 CFLAGS="$RPM_OPT_FLAGS %fixcflags $XTRA_CFLAGS" PDIET=%pkglibdir STRIP=:
134 %global makeflags %basemakeflags
135
136 for i in `find test -name 'runtests.sh'`; do
137 ln -s %SOURCE10 `dirname $i`/runtests-X.sh
138 done
139
140
141 %build
142 make %makeflags all %{?_smp_mflags}
143
144 # 'dyn' target is not SMP safe
145 %{?with_dynamic:make %makeflags dyn}
146
147
148 %install
149 rm -rf $RPM_BUILD_ROOT
150
151 install -d -m755 $RPM_BUILD_ROOT/etc
152 make %makeflags DESTDIR=$RPM_BUILD_ROOT install
153
154 ln -s lib-%_arch ${RPM_BUILD_ROOT}%pkglibdir/lib-%_arch-%_vendor
155
156 chmod a-x $RPM_BUILD_ROOT%pkglibdir/lib-*/*.o
157 rm -f $RPM_BUILD_ROOT%_bindir/dnsd
158
159
160 %check
161 XTRA_CFLAGS='-fno-builtin'
162 make %makeflags -C test all %{?_smp_mflags} DIET=$(echo `pwd`/bin-*/diet) -k || :
163 make %makeflags -C test/inet all %{?_smp_mflags} DIET=$(echo `pwd`/bin-*/diet) || :
164
165 cd test
166 ulimit -m $[ 128*1024 ] -v $[ 256*1024 ] -d $[ 128*1024 ] -s 512
167
168 bash ./runtests-X.sh
169
170
171 %clean
172 rm -rf $RPM_BUILD_ROOT
173
174 %files
175 %defattr(-,root,root,-)
176 %doc AUTHOR BUGS CAVEAT CHANGES COPYING FAQ PORTING README*
177 %doc SECURITY THANKS TODO
178 %doc %_mandir/*/*
179 %_bindir/*
180
181
182 %files header
183 %defattr(-,root,root,-)
184 %pkglibdir/include
185
186
187 %files devel
188 %defattr(-,root,root,-)
189 %pkglibdir
190 %exclude %pkglibdir/include
191 %{?with_dynamic:%exclude %pkglibdir/*/*.so}
192
193
194 %if %{with dynamic}
195 %files lib
196 %defattr(-,root,root,-)
197 %config(noreplace) %_sysconfdir/*
198 %dir %pkglibdir
199 %dir %pkglibdir/lib-*
200 %pkglibdir/lib-%target_cpu/*.so
201 %endif
202
203
204 %changelog
205 * Fri Jul 14 2023 brian read <brianr@koozali.org>
206 - add {} round vars in source lines so that can be converted to git [SME: 12380]
207
208 * Sat Mar 12 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1600.20110311
209 - updated to 20110311 CVS snapshot
210 - set fixed page size for arm
211 - disabled linux 2.2/2.4 compatibility code + valgrind nice mode
212 - reduced stack size for testsuite
213 - rediffed patches
214
215 * Sun Feb 20 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1600.20101223
216 - other ARM enhancements
217 - fixed missing headers in last utime(2) + fadvise(2) patches
218
219 * Sun Feb 20 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1505.20101223
220 - further ARM fixes
221 - global fixes for utime(2), fadvise*(2)
222
223 * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.33-0.1504.20101223
224 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
225
226 * Fri Jan 14 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
227 - added common alarm(2) implementation
228
229 * Sun Jan 9 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1502.20101223
230 - replaced all the single patches with a big one from
231 https://github.com/ensc/dietlibc/commits/rebase
232 - various ARM-EABI fixes (667852)
233
234 * Fri Dec 24 2010 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1500.20101223
235 - updated to 20101223 CVS snapshot
236
237 * Fri Jul 9 2010 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.32-1400
238 - added -static provides (#609606)
239 - use %%apply, not %%patch
240 - updated %%release_func macro
241
242 * Sat Jul 25 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.32-0
243 - updated to 0.32
244 - fixed stackgap/auxvec patch
245 - added patches to fix SMP builds and to prevent object file stripping
246 - moved %%changelog entries from 2005 and before into ChangeLog.2005 file
247
248 * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.31-9.20090228
249 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
250
251 * Sun Mar 1 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-8.20090228
252 - splitted a noarch -header subpackage out of -devel
253
254 * Sun Mar 1 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-7.20090228
255 - updated to 20090228
256 - updated patches
257
258 * Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.31-7.20081017
259 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
260
261 * Sat Oct 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-6.20081017
262 - updated to 20081017 CVS snapshot
263 - relaxed some sanity checks on architecture not supported by Fedora
264 and use '#warning' instead of '#error'
265 - fixed ARM dynlib code
266
267 * Wed Jul 16 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.31-6.20080517
268 - fix license tag
269
270 * Sun May 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-5.20080517
271 - updated to 20080517 snapshot
272 - use patches from git repository
273
274 * Sun May 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-5.20080409
275 - fixed __signalfd() prototype
276
277 * Sat Apr 19 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-4.20080409
278 - update -pagesize patch
279
280 * Mon Apr 14 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-3.20080409
281 - removed debug stuff from specfile
282 - updated patches to work with new isinf() behavior of gcc 4.3
283
284 * Sun Apr 13 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-2.20080409
285 - added patch for dynamic PAGE_SIZE support
286 - fixed/enhanced testsuite and removed the '|| :' in %%check
287 - improved/fixed floating point support *printf(3)
288
289 * Thu Apr 10 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080409
290 - updated to CVS snapshot 20080409
291
292 * Fri Feb 22 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080221
293 - updated to CVS snapshot 20080221; removed most of the last patches
294 as they are now in upstream
295 - moved files into platform neutral /usr/lib dir (not using %%_lib or
296 %%_libdir macro)
297 - added -devel subpackage due to multiarch issues; main package contains
298 only the 'diet' binary plus some tools while -devel holds all the
299 header and object files.
300 - fixed optimized memcpy(3)
301
302 * Wed Feb 13 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080212
303 - updated to CVS snapshot 20080212
304 - fixed printf regression for '%+04i' style formats
305 - added %%check and run a testsuite; it does not succeed now so it is
306 for informational purposes only...
307 - added bunch of patches to fixes big-endian issues in string routines
308
309 * Sat Sep 1 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1
310 - updated to 0.31
311 - removed the no-stack-protector bits for i386 and x86_64 archs
312 - improved stack-smash code a little bit
313 - disabled dynamic lib for all arches
314 - made objects non-executable to avoid "No build ID note" errors
315
316 * Wed Jan 17 2007 David Woodhouse <dwmw2@infradead.org> 0.30-4
317 - Bump release to be higher than unexplained 0.30-3.fc6
318
319 * Wed Jan 17 2007 David Woodhouse <dwmw2@infradead.org> 0.30-3
320 - Apply workaround for GCC PR26374 to build on PPC again (#182118)
321
322 * Fri Sep 15 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30-2
323 - rebuilt
324
325 * Sun Jul 9 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30-1
326 - updated to 0.30
327 - removed cross-arch support
328 - disable (non-working) SSP support; enable old stackgap code instead of
329
330 * Sat Feb 18 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.29-6
331 - added '-Os' to the CFLAGS
332 - exclude PPC arch due to strange compilation errors

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed