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

Annotation of /rpms/dietlibc/sme9/dietlibc.spec

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


Revision 1.1 - (hide annotations) (download)
Fri Jan 25 19:22:17 2013 UTC (11 years, 10 months ago) by slords
Branch: MAIN
CVS Tags: dietlibc-0_33-0_1600_20110311_el6_sme, HEAD
Initial import

1 slords 1.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     * Sat Mar 12 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1600.20110311
206     - updated to 20110311 CVS snapshot
207     - set fixed page size for arm
208     - disabled linux 2.2/2.4 compatibility code + valgrind nice mode
209     - reduced stack size for testsuite
210     - rediffed patches
211    
212     * Sun Feb 20 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1600.20101223
213     - other ARM enhancements
214     - fixed missing headers in last utime(2) + fadvise(2) patches
215    
216     * Sun Feb 20 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1505.20101223
217     - further ARM fixes
218     - global fixes for utime(2), fadvise*(2)
219    
220     * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.33-0.1504.20101223
221     - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
222    
223     * Fri Jan 14 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
224     - added common alarm(2) implementation
225    
226     * Sun Jan 9 2011 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1502.20101223
227     - replaced all the single patches with a big one from
228     https://github.com/ensc/dietlibc/commits/rebase
229     - various ARM-EABI fixes (667852)
230    
231     * Fri Dec 24 2010 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.33-0.1500.20101223
232     - updated to 20101223 CVS snapshot
233    
234     %changelog
235     * Fri Jul 9 2010 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.32-1400
236     - added -static provides (#609606)
237     - use %%apply, not %%patch
238     - updated %%release_func macro
239    
240     * Sat Jul 25 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.32-0
241     - updated to 0.32
242     - fixed stackgap/auxvec patch
243     - added patches to fix SMP builds and to prevent object file stripping
244     - moved %%changelog entries from 2005 and before into ChangeLog.2005 file
245    
246     * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.31-9.20090228
247     - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
248    
249     * Sun Mar 1 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-8.20090228
250     - splitted a noarch -header subpackage out of -devel
251    
252     * Sun Mar 1 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-7.20090228
253     - updated to 20090228
254     - updated patches
255    
256     * Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.31-7.20081017
257     - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
258    
259     * Sat Oct 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-6.20081017
260     - updated to 20081017 CVS snapshot
261     - relaxed some sanity checks on architecture not supported by Fedora
262     and use '#warning' instead of '#error'
263     - fixed ARM dynlib code
264    
265     * Wed Jul 16 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.31-6.20080517
266     - fix license tag
267    
268     * Sun May 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-5.20080517
269     - updated to 20080517 snapshot
270     - use patches from git repository
271    
272     * Sun May 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-5.20080409
273     - fixed __signalfd() prototype
274    
275     * Sat Apr 19 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-4.20080409
276     - update -pagesize patch
277    
278     * Mon Apr 14 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-3.20080409
279     - removed debug stuff from specfile
280     - updated patches to work with new isinf() behavior of gcc 4.3
281    
282     * Sun Apr 13 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-2.20080409
283     - added patch for dynamic PAGE_SIZE support
284     - fixed/enhanced testsuite and removed the '|| :' in %%check
285     - improved/fixed floating point support *printf(3)
286    
287     * Thu Apr 10 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080409
288     - updated to CVS snapshot 20080409
289    
290     * Fri Feb 22 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080221
291     - updated to CVS snapshot 20080221; removed most of the last patches
292     as they are now in upstream
293     - moved files into platform neutral /usr/lib dir (not using %%_lib or
294     %%_libdir macro)
295     - added -devel subpackage due to multiarch issues; main package contains
296     only the 'diet' binary plus some tools while -devel holds all the
297     header and object files.
298     - fixed optimized memcpy(3)
299    
300     * Wed Feb 13 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1.20080212
301     - updated to CVS snapshot 20080212
302     - fixed printf regression for '%+04i' style formats
303     - added %%check and run a testsuite; it does not succeed now so it is
304     for informational purposes only...
305     - added bunch of patches to fixes big-endian issues in string routines
306    
307     * Sat Sep 1 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.31-1
308     - updated to 0.31
309     - removed the no-stack-protector bits for i386 and x86_64 archs
310     - improved stack-smash code a little bit
311     - disabled dynamic lib for all arches
312     - made objects non-executable to avoid "No build ID note" errors
313    
314     * Wed Jan 17 2007 David Woodhouse <dwmw2@infradead.org> 0.30-4
315     - Bump release to be higher than unexplained 0.30-3.fc6
316    
317     * Wed Jan 17 2007 David Woodhouse <dwmw2@infradead.org> 0.30-3
318     - Apply workaround for GCC PR26374 to build on PPC again (#182118)
319    
320     * Fri Sep 15 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30-2
321     - rebuilt
322    
323     * Sun Jul 9 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30-1
324     - updated to 0.30
325     - removed cross-arch support
326     - disable (non-working) SSP support; enable old stackgap code instead of
327    
328     * Sat Feb 18 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.29-6
329     - added '-Os' to the CFLAGS
330     - exclude PPC arch due to strange compilation errors

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