orig rh72
[nethome.git] / src / rpm / SPECS / glibc.spec
1 %define glibcrelease 10
2 %define auxarches sparcv9 alphaev6
3 Summary: The GNU libc libraries.
4 Name: glibc
5 Version: 2.2.2
6 Release: %{glibcrelease}_staticnss
7 Copyright: LGPL
8 Group: System Environment/Libraries
9 Source: %{name}-%{version}.tar.bz2
10 # In the source tarball the file diff-CYGNUS-to-REDHAT.patch contains all
11 # diffs applied by Red Hat to the current CVS version of glibc
12 Buildroot: %{_tmppath}/glibc-%{PACKAGE_VERSION}-root
13 Obsoletes: zoneinfo, libc-static, libc-devel, libc-profile, libc-headers,
14 Obsoletes:  linuxthreads, gencat, locale, ldconfig, locale-ja
15 Provides: ldconfig
16 Autoreq: false
17 Requires: glibc-common = %{version}-%{release}
18 %ifarch alpha
19 Provides: ld.so.2
20 %else
21 %endif
22 %ifarch sparc
23 Obsoletes: libc
24 %endif
25 Prereq: basesystem
26 Conflicts: rpm <= 4.0-0.65
27 Patch: glibc-kernel-2.4.patch
28 %ifarch ia64 sparc64 s390x
29 Conflicts: kernel < 2.4.0
30 %define enablekernel 2.4.0
31 %else
32 %define enablekernel 2.2.5
33 %endif
34 %define enablekernel2 2.4.1
35 %define __find_provides %{_builddir}/%{name}-%{version}/find_provides.sh
36
37 %description
38 The glibc package contains standard libraries which are used by
39 multiple programs on the system. In order to save disk space and
40 memory, as well as to make upgrading easier, common system code is
41 kept in one place and shared between programs. This particular package
42 contains the most important sets of shared libraries: the standard C
43 library and the standard math library. Without these two libraries, a
44 Linux system will not function.
45
46 %package devel
47 Summary: Header and object files for development using standard C libraries.
48 Group: Development/Libraries
49 Conflicts: texinfo < 3.11
50 Prereq: /sbin/install-info
51 Obsoletes: libc-debug, libc-headers, libc-devel, linuxthreads-devel
52 Obsoletes: glibc-debug
53 Prereq: kernel-headers
54 Requires: kernel-headers >= 2.2.1, %{name} = %{version}
55 Autoreq: true
56
57 %description devel
58 The glibc-devel package contains the header and object files necessary
59 for developing programs which use the standard C libraries (which are
60 used by nearly all programs).  If you are developing programs which
61 will use the standard C libraries, your system needs to have these
62 standard header and object files available in order to create the
63 executables.
64
65 Install glibc-devel if you are going to develop programs which will
66 use the standard C libraries.
67
68 %package profile
69 Summary: The GNU libc libraries, including support for gprof profiling.
70 Group: Development/Libraries
71 Obsoletes: libc-profile
72 Autoreq: true
73
74 %description profile
75 The glibc-profile package includes the GNU libc libraries and support
76 for profiling using the gprof program.  Profiling is analyzing a
77 program's functions to see how much CPU time they use and determining
78 which functions are calling other functions during execution.  To use
79 gprof to profile a program, your program needs to use the GNU libc
80 libraries included in glibc-profile (instead of the standard GNU libc
81 libraries included in the glibc package).
82
83 If you are going to use the gprof program to profile a program, you'll
84 need to install the glibc-profile program.
85
86 %package common
87 Summary: Common binaries and locale data for glibc
88 Conflicts: %{name} < %{version}
89 Conflicts: %{name} > %{version} 
90 Autoreq: false
91 Group: System Environment/Base
92
93 %description common
94 The glibc-common package includes common binaries for the GNU libc
95 libraries, as well as national language (locale) support and timezone
96 databases.
97
98 %package -n nscd
99 Summary: A Name Service Caching Daemon (nscd).
100 Group: System Environment/Daemons
101 Conflicts: kernel < 2.2.0
102 Prereq: /sbin/chkconfig, /usr/sbin/useradd, /usr/sbin/userdel
103 Autoreq: true
104
105 %description -n nscd
106 Nscd caches name service lookups and can dramatically improve
107 performance with NIS+, and may help with DNS as well. Note that you
108 can't use nscd with 2.0 kernels because of bugs in the kernel-side
109 thread support. Unfortunately, nscd happens to hit these bugs
110 particularly hard.
111
112 Install nscd if you need a name service lookup caching daemon, and
113 you're not using a version 2.0 kernel.
114
115 %prep
116 %setup -q
117 %ifarch ia64 sparc64 s390x %{auxarches}
118 # If we are building enablekernel 2.4.1 glibc on older kernel,
119 # we have to make sure no binaries compiled against that glibc
120 # are ever run
121 case `uname -r` in
122 [01].*|2.[0-3]*|2.4.0*)
123 %patch -p1
124 ;; esac
125 %endif
126
127 %ifarch armv4l sparc64 ia64 s390 s390x
128 rm -rf glibc-compat
129 %endif
130
131 find . -type f -size 0 -o -name "*.orig" -exec rm -f {} \;
132
133 cat > find_provides.sh <<EOF
134 #!/bin/sh
135 /usr/lib/rpm/find-provides | grep -v GLIBC_2.2.3
136 EOF
137 chmod +x find_provides.sh
138
139 %build
140 rm -rf build-%{_target_cpu}-linux
141 mkdir build-%{_target_cpu}-linux ; cd build-%{_target_cpu}-linux
142 GCC=gcc
143 %ifarch %{ix86}
144 BuildFlags="-march=%{_target_cpu} -D__USE_STRING_INLINES -fstrict-aliasing"
145 %endif
146 %ifarch alphaev6
147 BuildFlags="-mcpu=ev6"
148 %endif
149 %ifarch sparc
150 BuildFlags="-fcall-used-g7"
151 GCC="gcc -m32"
152 %endif
153 %ifarch sparcv9
154 BuildFlags="-mcpu=ultrasparc -fcall-used-g7"
155 GCC="gcc -m32"
156 %endif
157 %ifarch sparc64
158 BuildFlags="-mcpu=ultrasparc -mvis -fcall-used-g7"
159 GCC="gcc -m64"
160 %endif
161 # Temporarily don't do this on ia64 and s390
162 %ifnarch ia64 s390 s390x
163 BuildFlags="$BuildFlags -freorder-blocks"
164 %endif
165 BuildFlags="$BuildFlags -DNDEBUG=1"
166 EnableKernel="--enable-kernel=%{enablekernel}"
167 %ifarch %{auxarches}
168 EnableKernel="$EnableKernel --disable-profile"
169 %endif
170 echo "$BuildFlags" > ../BuildFlags
171 CC="$GCC -Lnss -Lbuild-%{_target_cpu}-linux/nss" CFLAGS="$BuildFlags -g -O3" ../configure --prefix=%{_prefix} \
172         --enable-add-ons=yes --without-cvs $EnableKernel \
173         --enable-static-nss \
174         %{_target_cpu}-redhat-linux
175 if [ -x /usr/bin/getconf ] ; then
176   numprocs=$(/usr/bin/getconf _NPROCESSORS_ONLN)
177   if [ $numprocs -eq 0 ]; then
178     numprocs=1
179   fi
180 else
181   numprocs=1
182 fi
183 make -j$numprocs -r CFLAGS="$BuildFlags -g -O3" PARALLELMFLAGS=-s
184 gcc -static -Os ../redhat/glibc_post_upgrade.c -o glibc_post_upgrade
185
186 %install
187 rm -rf $RPM_BUILD_ROOT
188 mkdir -p $RPM_BUILD_ROOT
189 make install_root=$RPM_BUILD_ROOT install -C build-%{_target_cpu}-linux
190 cd build-%{_target_cpu}-linux && \
191     make install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` && \
192     cd ..
193
194 %ifarch i686
195 rm -rf build-%{_target_cpu}-linux2.4
196 mkdir build-%{_target_cpu}-linux2.4 ; cd build-%{_target_cpu}-linux2.4
197 GCC=gcc
198 BuildFlags=`cat ../BuildFlags`
199 EnableKernel="--enable-kernel=%{enablekernel2} --disable-profile"
200 CC="$GCC" CFLAGS="$BuildFlags -g -O3" ../configure --prefix=%{_prefix} \
201         --enable-add-ons=yes --without-cvs $EnableKernel \
202         --enable-static-nss \
203         %{_target_cpu}-redhat-linux
204 if [ -x /usr/bin/getconf ] ; then
205   numprocs=$(/usr/bin/getconf _NPROCESSORS_ONLN)
206   if [ $numprocs -eq 0 ]; then
207     numprocs=1
208   fi
209 else
210   numprocs=1
211 fi
212 make -j$numprocs -r CFLAGS="$BuildFlags -g -O3" PARALLELMFLAGS=-s
213 mkdir -p $RPM_BUILD_ROOT/lib/%{_target_cpu}/
214 cp -a libc.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libc-*.so`
215 ln -sf `basename $RPM_BUILD_ROOT/lib/libc-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libc.so.*`
216 cp -a math/libm.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libm-*.so`
217 ln -sf `basename $RPM_BUILD_ROOT/lib/libm-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libm.so.*`
218 cp -a linuxthreads/libpthread.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libpthread-*.so`
219 ln -sf `basename $RPM_BUILD_ROOT/lib/libpthread-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libpthread.so.*`
220 strip -R .comment $RPM_BUILD_ROOT/lib/{libc,libm,libpthread}-*.so
221 cd ..
222 %endif
223
224 # compatibility hack: this locale has vanished from glibc, but some other
225 # programs are still using it. Normally we would handle it in the %pre
226 # section but with glibc that is simply not an option
227 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/locale/ru_RU/LC_MESSAGES
228
229 # Remove the files we don't want to distribute
230 rm -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libNoVersion*
231 %ifarch sparc64 ia64 s390 s390x
232 rm -f $RPM_BUILD_ROOT/%{_lib}/libNoVersion*
233 %endif
234
235 # the man pages for the linuxthreads require special attention
236 make -C linuxthreads/man
237 mkdir -p $RPM_BUILD_ROOT%{_mandir}/man3
238 install -m 0644 linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
239 gzip -9nvf $RPM_BUILD_ROOT%{_mandir}/man3/*
240
241 if [ -d $RPM_BUILD_ROOT%{_prefix}/info -a "%{_infodir}" != "%{_prefix}/info" ]; then
242     mkdir -p $RPM_BUILD_ROOT%{_infodir}
243     mv -f $RPM_BUILD_ROOT%{_prefix}/info/* $RPM_BUILD_ROOT%{_infodir}
244     rm -rf $RPM_BUILD_ROOT%{_prefix}/info
245 fi
246
247 gzip -9nvf $RPM_BUILD_ROOT%{_infodir}/libc*
248
249 ln -sf libbsd-compat.a $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libbsd.a
250
251 install -m 644 redhat/nsswitch.conf $RPM_BUILD_ROOT/etc/nsswitch.conf
252
253 # Take care of setuids
254 # -- new security review sez that this shouldn't be needed anymore
255 #chmod 755 $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown
256
257 # This is for ncsd - in glibc 2.2
258 install -m 644 nscd/nscd.conf $RPM_BUILD_ROOT/etc
259 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
260 install -m 755 nscd/nscd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
261
262 # Don't include ld.so.cache
263 rm -f $RPM_BUILD_ROOT/etc/ld.so.cache
264
265 # Include ld.so.conf
266 > $RPM_BUILD_ROOT/etc/ld.so.conf
267 chmod 644 $RPM_BUILD_ROOT/etc/ld.so.conf
268
269 # Install the upgrade program
270 install -m 700 build-%{_target_cpu}-linux/glibc_post_upgrade $RPM_BUILD_ROOT/usr/sbin/glibc_post_upgrade
271
272 # Strip binaries
273 strip -R .comment $RPM_BUILD_ROOT/sbin/* || :
274 strip -R .comment $RPM_BUILD_ROOT%{_prefix}/bin/* || :
275 strip -R .comment $RPM_BUILD_ROOT%{_prefix}/sbin/* || :
276 strip -R .comment $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown || :
277 strip -R .comment $RPM_BUILD_ROOT%{_prefix}/%{_lib}/gconv/* || :
278
279 # Hardlink identical locale files together
280 ALL_LC="LC_ADDRESS LC_COLLATE LC_CTYPE LC_IDENTIFICATION LC_MEASUREMENT \
281         LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME \
282         LC_MESSAGES/SYS_LC_MESSAGES"
283 for i in $RPM_BUILD_ROOT%{_prefix}/lib/locale/*; do
284   if [ ! -d $i ]; then continue; fi
285   for j in $ALL_LC; do
286     for k in $RPM_BUILD_ROOT%{_prefix}/lib/locale/*; do
287       if [ ! -d $k ]; then continue; fi
288       if [ $i = $k ]; then break; fi
289       if cmp -s $i/$j $k/$j; then ln -f $k/$j $i/$j; break; fi
290     done
291   done
292 done
293
294 # BUILD THE FILE LIST
295 find $RPM_BUILD_ROOT -type f -or -type l |
296         sed -e 's|.*/etc|%config &|' \
297             -e 's|.*/gconv/gconv-modules|%verify(not md5 size mtime) %config(noreplace) &|' > rpm.filelist.in
298 for n in %{_prefix}/share %{_prefix}/include %{_prefix}/lib/locale; do 
299     find ${RPM_BUILD_ROOT}${n} -type d | \
300         grep -v '%{_prefix}/share$' | \
301         sed "s/^/%dir /" >> rpm.filelist.in
302 done
303
304 # primary filelist
305 SHARE_LANG='s|.*/share/locale/\([^/_]\+\).*/LC_MESSAGES/.*\.mo|%lang(\1) &|'
306 LIB_LANG='s|.*/lib/locale/\([^/_]\+\)|%lang(\1) &|'
307 # rpm does not handle %lang() tagged files hardlinked together accross
308 # languages very well, temporarily disable
309 LIB_LANG=''
310 sed -e "s|$RPM_BUILD_ROOT||" -e "$LIB_LANG" -e "$SHARE_LANG" < rpm.filelist.in |
311         grep -v '/etc/localtime'  | \
312         grep -v '/etc/nsswitch.conf'  | \
313         grep -v '/etc/ld.so.conf'  | \
314         sort > rpm.filelist
315
316 grep '%{_prefix}/%{_lib}/lib.*_p\.a' < rpm.filelist > profile.filelist || :
317 egrep "(%{_prefix}/include)|(%{_infodir})" < rpm.filelist | 
318         grep -v %{_infodir}/dir > devel.filelist
319
320 mv rpm.filelist rpm.filelist.full
321 grep -v '%{_prefix}/%{_lib}/lib.*_p.a' rpm.filelist.full | 
322         egrep -v "(%{_prefix}/include)|(%{_infodir})" > rpm.filelist
323
324 grep '%{_prefix}/%{_lib}/lib.*\.a' < rpm.filelist >> devel.filelist
325 grep '%{_prefix}/%{_lib}/.*\.o' < rpm.filelist >> devel.filelist
326 grep '%{_prefix}/%{_lib}/lib.*\.so' < rpm.filelist >> devel.filelist
327 grep '%{_mandir}' < rpm.filelist >> devel.filelist
328
329 mv rpm.filelist rpm.filelist.full
330 grep -v '%{_prefix}/%{_lib}/lib.*\.a' < rpm.filelist.full |
331         grep -v '%{_prefix}/%{_lib}/.*\.o' |
332         grep -v '%{_prefix}/%{_lib}/lib.*\.so'|
333         grep -v '%{_mandir}' | 
334         grep -v 'nscd' > rpm.filelist
335         
336 grep '%{_prefix}/bin' < rpm.filelist >> common.filelist
337 grep '%{_prefix}/lib/locale' < rpm.filelist >> common.filelist
338 grep '%{_prefix}/libexec' < rpm.filelist >> common.filelist
339 grep '%{_prefix}/sbin/[^g]' < rpm.filelist >> common.filelist
340 grep '%{_prefix}/share' < rpm.filelist >> common.filelist
341
342 mv rpm.filelist rpm.filelist.full
343 grep -v '%{_prefix}/bin' < rpm.filelist.full |
344         grep -v '%{_prefix}/lib/locale' |
345         grep -v '%{_prefix}/libexec' | 
346         grep -v '%{_prefix}/sbin/[^g]' |
347         grep -v '%{_prefix}/share' > rpm.filelist
348
349 # /etc/localtime - we're proud of our timezone
350 rm -f $RPM_BUILD_ROOT/etc/localtime
351 cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
352 #ln -sf ..%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
353
354 # the last bit: more documentation
355 rm -rf documentation
356 mkdir documentation
357 cp linuxthreads/ChangeLog  documentation/ChangeLog.threads
358 cp linuxthreads/Changes documentation/Changes.threads
359 cp linuxthreads/README documentation/README.threads
360 cp linuxthreads/FAQ.html documentation/FAQ-threads.html
361 cp -r linuxthreads/Examples documentation/examples.threads
362 cp crypt/README.ufc-crypt documentation/README.ufc-crypt
363 cp timezone/README documentation/README.timezone
364 cp ChangeLog* documentation
365 gzip -9 documentation/ChangeLog*
366
367 %post -p /usr/sbin/glibc_post_upgrade
368
369 %postun -p /sbin/ldconfig
370
371 %post devel
372 /sbin/install-info %{_infodir}/libc.info.gz %{_infodir}/dir
373
374 %pre devel
375 # this used to be a link and it is causing nightmares now
376 if [ -L %{_prefix}/include/scsi ] ; then
377     rm -f %{_prefix}/include/scsi
378 fi
379
380 %preun devel
381 if [ "$1" = 0 ]; then
382     /sbin/install-info --delete %{_infodir}/libc.info.gz %{_infodir}/dir
383 fi
384
385 %pre -n nscd
386 /usr/sbin/useradd -M -o -r -d / -s /bin/false \
387         -c "NSCD Daemon" -u 28 nscd > /dev/null 2>&1 || :
388
389 %post -n nscd
390 /sbin/chkconfig --add nscd
391
392 %preun -n nscd
393 if [ $1 = 0 ] ; then
394     service nscd stop > /dev/null 2>&1
395     /sbin/chkconfig --del nscd
396 fi
397
398 %postun -n nscd
399 if [ $1 = 0 ] ; then
400     /usr/sbin/userdel nscd > /dev/null 2>&1 || :
401 fi
402 if [ "$1" -ge "1" ]; then
403     service nscd condrestart > /dev/null 2>&1 || :
404 fi
405
406 %clean
407 rm -rf "$RPM_BUILD_ROOT"
408 rm -f *.filelist*
409
410 %files -f rpm.filelist
411 %defattr(-,root,root)
412 %verify(not md5 size mtime) %config(noreplace) /etc/localtime
413 %verify(not md5 size mtime) %config(noreplace) /etc/nsswitch.conf
414 %verify(not md5 size mtime) %config(noreplace) /etc/ld.so.conf
415 %doc README NEWS INSTALL FAQ BUGS NOTES PROJECTS CONFORMANCE
416 %doc COPYING COPYING.LIB README.template README.libm
417 %doc hesiod/README.hesiod
418
419 %ifnarch %{auxarches}
420 %files -f common.filelist common
421 %defattr(-,root,root)
422 %doc documentation/*
423
424 %files -f devel.filelist devel
425 %defattr(-,root,root)
426
427 %files -f profile.filelist profile
428 %defattr(-,root,root)
429
430 %files -n nscd
431 %defattr(-,root,root)
432 %config(noreplace) /etc/nscd.conf
433 %config /etc/rc.d/init.d/nscd
434 %{_prefix}/sbin/nscd
435 %endif
436
437 %changelog
438 * Fri Apr  6 2001 Jakub Jelinek <jakub@redhat.com>
439 - support even 2.4.0 kernels on ia64, sparc64 and s390x
440 - include UTF-8 locales
441 - make gconv-modules %%config(noreplace)
442
443 * Fri Mar 23 2001 Jakub Jelinek <jakub@redhat.com>
444 - back out sunrpc changes
445
446 * Wed Mar 21 2001 Jakub Jelinek <jakub@redhat.com>
447 - update from CVS
448   - fix ia64 build
449   - fix pthread_getattr_np
450
451 * Fri Mar 16 2001 Jakub Jelinek <jakub@redhat.com>
452 - update from CVS
453   - run atexit() registered functions at dlclose time if they are in shared
454     libraries (#28625)
455   - add pthread_getattr_np API to make JVM folks happy
456
457 * Wed Mar 14 2001 Jakub Jelinek <jakub@redhat.com>
458 - require 2.4.1 instead of 2.4.0 on platforms where it required 2.4 kernel
459 - fix ldd behaviour on unresolved symbols
460 - remove nonsensical ldconfig warning, update osversion for the most
461   recent library with the same soname in the same directory instead (#31703)
462 - apply selected patches from CVS
463 - s390x spec file changes from Florian La Roche
464
465 * Wed Mar  7 2001 Jakub Jelinek <jakub@redhat.com>
466 - fix gencat (#30894)
467 - fix ldconfig changes from yesterday, fix LD_ASSUME_KERNEL handling
468
469 * Tue Mar  6 2001 Jakub Jelinek <jakub@redhat.com>
470 - update from CVS
471 - make pthread_attr_setstacksize consistent before and after pthread manager
472   is started (#28194)
473 - pass back struct sigcontext from pthread signal wrapper (on ia32 only so
474   far, #28493)
475 - on i686 ship both --enable-kernel 2.2.5 and 2.4.0 libc/libm/libpthread,
476   make ld.so pick the right one
477
478 * Sat Feb 17 2001 Preston Brown <pbrown@redhat.com>
479 - glib-common doesn't require glibc, until we can figure out how to get out of dependency hell.
480
481 * Sat Feb 17 2001 Jakub Jelinek <jakub@redhat.com>
482 - make glibc require particular version of glibc-common
483   and glibc-common prerequire glibc.
484
485 * Fri Feb 16 2001 Jakub Jelinek <jakub@redhat.com>
486 - glibc 2.2.2 release
487   - fix regex REG_ICASE bug seen in ksymoops
488
489 * Sat Feb 10 2001 Jakub Jelinek <jakub@redhat.com>
490 - fix regexec leaking memory (#26864)
491
492 * Fri Feb  9 2001 Jakub Jelinek <jakub@redhat.com>
493 - update from CVS
494   - fix ia64 build with gnupro
495   - make regex 64bit clean
496   - fix tgmath make check failures on alpha
497
498 * Tue Feb  6 2001 Jakub Jelinek <jakub@redhat.com>
499 - update again for ia64 DF_1_INITFIRST
500
501 * Fri Feb  2 2001 Jakub Jelinek <jakub@redhat.com>
502 - update from CVS
503   - fix getaddrinfo (#25437)
504   - support DF_1_INITFIRST (#25029)
505
506 * Wed Jan 24 2001 Jakub Jelinek <jakub@redhat.com>
507 - build all auxiliary arches with --enablekernel 2.4.0, those wanting
508   to run 2.2 kernels can downgrade to the base architecture glibc.
509
510 * Sat Jan 20 2001 Jakub Jelinek <jakub@redhat.com>
511 - remove %%lang() flags from %%{_prefix}/lib/locale files temporarily
512
513 * Sun Jan 14 2001 Jakub Jelinek <jakub@redhat.com>
514 - update to 2.2.1 final
515   - fix a pthread_kill_other_threads_np breakage (#23966)
516   - make static binaries using dlopen work on ia64 again
517 - fix a typo in glibc-common group
518
519 * Wed Jan 10 2001 Bernhard Rosenkraenzer <bero@redhat.com>
520 - devel requires glibc = %%{version}
521 - noreplace /etc/nscd.conf
522
523 * Wed Jan 10 2001 Jakub Jelinek <jakub@redhat.com>
524 - some more security fixes:
525   - don't look up LD_PRELOAD libs in cache for SUID apps
526     (because that bypasses SUID bit checking on the library)
527   - place output files for profiling SUID apps into /var/profile,
528     use O_NOFOLLOW for them
529   - add checks for $MEMUSAGE_OUTPUT and $SEGFAULT_OUTPUT_NAME
530 - hardlink identical locale files together
531 - add %%lang() tags to locale stuff
532 - remove ko_KR.utf8 for now, it is provided by locale-utf8 package
533
534 * Mon Jan  8 2001 Jakub Jelinek <jakub@redhat.com>
535 - add glibc-common subpackage
536 - fix alphaev6 memcpy (#22494)
537 - fix sys/cdefs.h (#22908)
538 - don't define stdin/stdout/stderr as macros for -traditional (#22913)
539 - work around a bug in IBM JDK (#22932, #23012)
540 - fix pmap_unset when network is down (#23176)
541 - move nscd in rc.d before netfs on shutdown
542 - fix $RESOLV_HOST_CONF in SUID apps (#23562)
543
544 * Fri Dec 15 2000 Jakub Jelinek <jakub@redhat.com>
545 - fix ftw and nftw
546
547 * Wed Dec 13 2000 Jakub Jelinek <jakub@redhat.com>
548 - fix fcvt (#22184)
549 - ldd /lib/ld-linux.so.2 is not crashing any longer again (#22197)
550 - fix gencat
551
552 * Mon Dec 11 2000 Jakub Jelinek <jakub@redhat.com>
553 - fix alpha htonl and alphaev6 stpcpy
554
555 * Sat Dec  9 2000 Jakub Jelinek <jakub@redhat.com>
556 - update to CVS to:
557   - fix getnameinfo (#21934)
558   - don't stomp on memory in rpath handling (#21544)
559   - fix setlocale (#21507)
560 - fix libNoVersion.so.1 loading code (#21579)
561 - use auxarches define in spec file for auxiliary
562   architectures (#21219)
563 - remove /usr/share directory from filelist (#21218)
564
565 * Sun Nov 19 2000 Jakub Jelinek <jakub@redhat.com>
566 - update to CVS to fix getaddrinfo
567
568 * Fri Nov 17 2000 Jakub Jelinek <jakub@redhat.com>
569 - update to CVS to fix freopen
570 - remove all alpha workarounds, not needed anymore
571
572 * Wed Nov 15 2000 Jakub Jelinek <jakub@redhat.com>
573 - fix dladdr bug on alpha/sparc32/sparc64
574 - fix Makefiles so that they run static tests properly
575
576 * Tue Nov 14 2000 Jakub Jelinek <jakub@redhat.com>
577 - update to CVS to fix ldconfig
578
579 * Thu Nov  9 2000 Jakub Jelinek <jakub@redhat.com>
580 - update to glibc 2.2 release
581
582 * Mon Nov  6 2000 Jakub Jelinek <jakub@redhat.com>
583 - update to CVS to:
584   - export __sysconf@@GLIBC_2.2 (#20417)
585
586 * Fri Nov  3 2000 Jakub Jelinek <jakub@redhat.com>
587 - merge to 2.1.97
588
589 * Mon Oct 30 2000 Jakub Jelinek <jakub@redhat.com>
590 - update to CVS, including:
591   - fix WORD_BIT/LONG_BIT definition in limits.h (#19088)
592   - fix hesiod (#19375)
593   - set LC_MESSAGES in zic/zdump for proper error message output (#19495)
594   - fix LFS fcntl when used with non-LFS aware kernels (#19730)
595
596 * Thu Oct 19 2000 Jakub Jelinek <jakub@redhat.com>
597 - fix alpha semctl (#19199)
598 - update to CVS, including:
599   - fix glibc headers for Compaq non-gcc compilers
600   - fix locale alias handling code (#18832)
601   - fix rexec on little endian machines (#18886)
602 - started writing changelog again
603
604 * Thu Aug 10 2000 Adrian Havill <havill@redhat.com>
605 - added ja ujis alias for backwards compatibility