2004-09-09 05:18:35 +00:00
|
|
|
%define glibcrelease 10
|
2004-09-09 05:18:27 +00:00
|
|
|
%define auxarches i586 i686 athlon sparcv9 alphaev6
|
|
|
|
Summary: The GNU libc libraries.
|
|
|
|
Name: glibc
|
2004-09-09 05:18:35 +00:00
|
|
|
Version: 2.2.2
|
2004-09-09 05:18:27 +00:00
|
|
|
Release: %{glibcrelease}
|
2004-09-09 05:16:54 +00:00
|
|
|
Copyright: LGPL
|
|
|
|
Group: System Environment/Libraries
|
2004-09-09 05:18:27 +00:00
|
|
|
Source: %{name}-%{version}.tar.bz2
|
2004-09-09 05:16:54 +00:00
|
|
|
# In the source tarball the file diff-CYGNUS-to-REDHAT.patch contains all
|
|
|
|
# diffs applied by Red Hat to the current CVS version of glibc
|
2004-09-09 05:18:35 +00:00
|
|
|
Buildroot: %{_tmppath}/glibc-%{PACKAGE_VERSION}-root
|
2004-09-09 05:16:54 +00:00
|
|
|
Obsoletes: zoneinfo, libc-static, libc-devel, libc-profile, libc-headers,
|
|
|
|
Obsoletes: linuxthreads, gencat, locale, ldconfig, locale-ja
|
|
|
|
Provides: ldconfig
|
|
|
|
Autoreq: false
|
2004-09-09 05:18:35 +00:00
|
|
|
Requires: glibc-common = %{version}-%{release}
|
2004-09-09 05:16:54 +00:00
|
|
|
%ifarch alpha
|
|
|
|
Provides: ld.so.2
|
|
|
|
%else
|
|
|
|
%endif
|
|
|
|
%ifarch sparc
|
|
|
|
Obsoletes: libc
|
|
|
|
%endif
|
|
|
|
Prereq: basesystem
|
|
|
|
Conflicts: rpm <= 4.0-0.65
|
|
|
|
Patch: glibc-kernel-2.4.patch
|
2004-09-09 05:18:35 +00:00
|
|
|
%ifarch ia64 sparc64 s390x
|
2004-09-09 05:17:39 +00:00
|
|
|
Conflicts: kernel < 2.4.0
|
|
|
|
%define enablekernel 2.4.0
|
2004-09-09 05:17:10 +00:00
|
|
|
%else
|
2004-09-09 05:16:54 +00:00
|
|
|
%define enablekernel 2.2.5
|
|
|
|
%endif
|
2004-09-09 05:18:35 +00:00
|
|
|
%define enablekernel2 2.4.1
|
|
|
|
%define __find_provides %{_builddir}/%{name}-%{version}/find_provides.sh
|
2004-09-09 05:16:54 +00:00
|
|
|
|
|
|
|
%description
|
|
|
|
The glibc package contains standard libraries which are used by
|
|
|
|
multiple programs on the system. In order to save disk space and
|
|
|
|
memory, as well as to make upgrading easier, common system code is
|
|
|
|
kept in one place and shared between programs. This particular package
|
|
|
|
contains the most important sets of shared libraries: the standard C
|
|
|
|
library and the standard math library. Without these two libraries, a
|
2004-09-09 05:18:27 +00:00
|
|
|
Linux system will not function.
|
2004-09-09 05:16:54 +00:00
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: Header and object files for development using standard C libraries.
|
|
|
|
Group: Development/Libraries
|
|
|
|
Conflicts: texinfo < 3.11
|
|
|
|
Prereq: /sbin/install-info
|
|
|
|
Obsoletes: libc-debug, libc-headers, libc-devel, linuxthreads-devel
|
|
|
|
Obsoletes: glibc-debug
|
|
|
|
Prereq: kernel-headers
|
2004-09-09 05:18:27 +00:00
|
|
|
Requires: kernel-headers >= 2.2.1, %{name} = %{version}
|
2004-09-09 05:16:54 +00:00
|
|
|
Autoreq: true
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
The glibc-devel package contains the header and object files necessary
|
|
|
|
for developing programs which use the standard C libraries (which are
|
|
|
|
used by nearly all programs). If you are developing programs which
|
|
|
|
will use the standard C libraries, your system needs to have these
|
|
|
|
standard header and object files available in order to create the
|
|
|
|
executables.
|
|
|
|
|
|
|
|
Install glibc-devel if you are going to develop programs which will
|
|
|
|
use the standard C libraries.
|
|
|
|
|
|
|
|
%package profile
|
|
|
|
Summary: The GNU libc libraries, including support for gprof profiling.
|
|
|
|
Group: Development/Libraries
|
|
|
|
Obsoletes: libc-profile
|
|
|
|
Autoreq: true
|
|
|
|
|
|
|
|
%description profile
|
|
|
|
The glibc-profile package includes the GNU libc libraries and support
|
|
|
|
for profiling using the gprof program. Profiling is analyzing a
|
|
|
|
program's functions to see how much CPU time they use and determining
|
|
|
|
which functions are calling other functions during execution. To use
|
|
|
|
gprof to profile a program, your program needs to use the GNU libc
|
|
|
|
libraries included in glibc-profile (instead of the standard GNU libc
|
|
|
|
libraries included in the glibc package).
|
|
|
|
|
|
|
|
If you are going to use the gprof program to profile a program, you'll
|
|
|
|
need to install the glibc-profile program.
|
|
|
|
|
2004-09-09 05:18:27 +00:00
|
|
|
%package common
|
|
|
|
Summary: Common binaries and locale data for glibc
|
2004-09-09 05:18:35 +00:00
|
|
|
Conflicts: %{name} < %{version}
|
|
|
|
Conflicts: %{name} > %{version}
|
2004-09-09 05:18:27 +00:00
|
|
|
Autoreq: false
|
|
|
|
Group: System Environment/Base
|
|
|
|
|
|
|
|
%description common
|
|
|
|
The glibc-common package includes common binaries for the GNU libc
|
|
|
|
libraries, as well as national language (locale) support and timezone
|
|
|
|
databases.
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
%package -n nscd
|
|
|
|
Summary: A Name Service Caching Daemon (nscd).
|
|
|
|
Group: System Environment/Daemons
|
|
|
|
Conflicts: kernel < 2.2.0
|
|
|
|
Prereq: /sbin/chkconfig, /usr/sbin/useradd, /usr/sbin/userdel
|
|
|
|
Autoreq: true
|
|
|
|
|
|
|
|
%description -n nscd
|
|
|
|
Nscd caches name service lookups and can dramatically improve
|
|
|
|
performance with NIS+, and may help with DNS as well. Note that you
|
|
|
|
can't use nscd with 2.0 kernels because of bugs in the kernel-side
|
|
|
|
thread support. Unfortunately, nscd happens to hit these bugs
|
|
|
|
particularly hard.
|
|
|
|
|
|
|
|
Install nscd if you need a name service lookup caching daemon, and
|
|
|
|
you're not using a version 2.0 kernel.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q
|
2004-09-09 05:18:35 +00:00
|
|
|
%ifarch ia64 sparc64 s390x %{auxarches}
|
|
|
|
# If we are building enablekernel 2.4.1 glibc on older kernel,
|
2004-09-09 05:16:54 +00:00
|
|
|
# we have to make sure no binaries compiled against that glibc
|
|
|
|
# are ever run
|
|
|
|
case `uname -r` in
|
2004-09-09 05:18:35 +00:00
|
|
|
[01].*|2.[0-3]*|2.4.0*)
|
2004-09-09 05:16:54 +00:00
|
|
|
%patch -p1
|
|
|
|
;; esac
|
|
|
|
%endif
|
2004-09-09 05:18:35 +00:00
|
|
|
|
|
|
|
%ifarch armv4l sparc64 ia64 s390 s390x
|
2004-09-09 05:16:54 +00:00
|
|
|
rm -rf glibc-compat
|
|
|
|
%endif
|
|
|
|
|
|
|
|
find . -type f -size 0 -o -name "*.orig" -exec rm -f {} \;
|
|
|
|
|
2004-09-09 05:18:35 +00:00
|
|
|
cat > find_provides.sh <<EOF
|
|
|
|
#!/bin/sh
|
|
|
|
/usr/lib/rpm/find-provides | grep -v GLIBC_2.2.3
|
|
|
|
EOF
|
|
|
|
chmod +x find_provides.sh
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
%build
|
|
|
|
rm -rf build-%{_target_cpu}-linux
|
|
|
|
mkdir build-%{_target_cpu}-linux ; cd build-%{_target_cpu}-linux
|
2004-09-09 05:18:16 +00:00
|
|
|
GCC=gcc
|
2004-09-09 05:16:54 +00:00
|
|
|
%ifarch %{ix86}
|
|
|
|
BuildFlags="-march=%{_target_cpu} -D__USE_STRING_INLINES -fstrict-aliasing"
|
|
|
|
%endif
|
2004-09-09 05:17:10 +00:00
|
|
|
%ifarch alphaev6
|
|
|
|
BuildFlags="-mcpu=ev6"
|
|
|
|
%endif
|
2004-09-09 05:18:16 +00:00
|
|
|
%ifarch sparc
|
|
|
|
BuildFlags="-fcall-used-g7"
|
|
|
|
GCC="gcc -m32"
|
|
|
|
%endif
|
2004-09-09 05:16:54 +00:00
|
|
|
%ifarch sparcv9
|
|
|
|
BuildFlags="-mcpu=ultrasparc -fcall-used-g7"
|
2004-09-09 05:18:16 +00:00
|
|
|
GCC="gcc -m32"
|
2004-09-09 05:16:54 +00:00
|
|
|
%endif
|
|
|
|
%ifarch sparc64
|
|
|
|
BuildFlags="-mcpu=ultrasparc -mvis -fcall-used-g7"
|
2004-09-09 05:18:16 +00:00
|
|
|
GCC="gcc -m64"
|
2004-09-09 05:16:54 +00:00
|
|
|
%endif
|
2004-09-09 05:18:27 +00:00
|
|
|
# Temporarily don't do this on ia64 and s390
|
2004-09-09 05:18:35 +00:00
|
|
|
%ifnarch ia64 s390 s390x
|
2004-09-09 05:18:27 +00:00
|
|
|
BuildFlags="$BuildFlags -freorder-blocks"
|
2004-09-09 05:17:10 +00:00
|
|
|
%endif
|
2004-09-09 05:18:27 +00:00
|
|
|
BuildFlags="$BuildFlags -DNDEBUG=1"
|
2004-09-09 05:16:54 +00:00
|
|
|
EnableKernel="--enable-kernel=%{enablekernel}"
|
2004-09-09 05:18:27 +00:00
|
|
|
%ifarch %{auxarches}
|
2004-09-09 05:17:10 +00:00
|
|
|
EnableKernel="$EnableKernel --disable-profile"
|
|
|
|
%endif
|
2004-09-09 05:18:35 +00:00
|
|
|
echo "$BuildFlags" > ../BuildFlags
|
2004-09-09 05:18:16 +00:00
|
|
|
CC="$GCC" CFLAGS="$BuildFlags -g -O3" ../configure --prefix=%{_prefix} \
|
2004-09-09 05:16:54 +00:00
|
|
|
--enable-add-ons=yes --without-cvs $EnableKernel \
|
|
|
|
%{_target_cpu}-redhat-linux
|
|
|
|
if [ -x /usr/bin/getconf ] ; then
|
|
|
|
numprocs=$(/usr/bin/getconf _NPROCESSORS_ONLN)
|
|
|
|
if [ $numprocs -eq 0 ]; then
|
|
|
|
numprocs=1
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
numprocs=1
|
|
|
|
fi
|
|
|
|
make -j$numprocs -r CFLAGS="$BuildFlags -g -O3" PARALLELMFLAGS=-s
|
2004-09-09 05:17:39 +00:00
|
|
|
gcc -static -Os ../redhat/glibc_post_upgrade.c -o glibc_post_upgrade
|
2004-09-09 05:16:54 +00:00
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
mkdir -p $RPM_BUILD_ROOT
|
|
|
|
make install_root=$RPM_BUILD_ROOT install -C build-%{_target_cpu}-linux
|
|
|
|
cd build-%{_target_cpu}-linux && \
|
|
|
|
make install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` && \
|
|
|
|
cd ..
|
|
|
|
|
2004-09-09 05:18:35 +00:00
|
|
|
%ifarch i686
|
|
|
|
rm -rf build-%{_target_cpu}-linux2.4
|
|
|
|
mkdir build-%{_target_cpu}-linux2.4 ; cd build-%{_target_cpu}-linux2.4
|
|
|
|
GCC=gcc
|
|
|
|
BuildFlags=`cat ../BuildFlags`
|
|
|
|
EnableKernel="--enable-kernel=%{enablekernel2} --disable-profile"
|
|
|
|
CC="$GCC" CFLAGS="$BuildFlags -g -O3" ../configure --prefix=%{_prefix} \
|
|
|
|
--enable-add-ons=yes --without-cvs $EnableKernel \
|
|
|
|
%{_target_cpu}-redhat-linux
|
|
|
|
if [ -x /usr/bin/getconf ] ; then
|
|
|
|
numprocs=$(/usr/bin/getconf _NPROCESSORS_ONLN)
|
|
|
|
if [ $numprocs -eq 0 ]; then
|
|
|
|
numprocs=1
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
numprocs=1
|
|
|
|
fi
|
|
|
|
make -j$numprocs -r CFLAGS="$BuildFlags -g -O3" PARALLELMFLAGS=-s
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/lib/%{_target_cpu}/
|
|
|
|
cp -a libc.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libc-*.so`
|
|
|
|
ln -sf `basename $RPM_BUILD_ROOT/lib/libc-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libc.so.*`
|
|
|
|
cp -a math/libm.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libm-*.so`
|
|
|
|
ln -sf `basename $RPM_BUILD_ROOT/lib/libm-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libm.so.*`
|
|
|
|
cp -a linuxthreads/libpthread.so $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libpthread-*.so`
|
|
|
|
ln -sf `basename $RPM_BUILD_ROOT/lib/libpthread-*.so` $RPM_BUILD_ROOT/lib/%{_target_cpu}/`basename $RPM_BUILD_ROOT/lib/libpthread.so.*`
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT/lib/{libc,libm,libpthread}-*.so
|
|
|
|
cd ..
|
|
|
|
%endif
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
# compatibility hack: this locale has vanished from glibc, but some other
|
|
|
|
# programs are still using it. Normally we would handle it in the %pre
|
|
|
|
# section but with glibc that is simply not an option
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/locale/ru_RU/LC_MESSAGES
|
|
|
|
|
|
|
|
# Remove the files we don't want to distribute
|
|
|
|
rm -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libNoVersion*
|
2004-09-09 05:18:35 +00:00
|
|
|
%ifarch sparc64 ia64 s390 s390x
|
2004-09-09 05:16:54 +00:00
|
|
|
rm -f $RPM_BUILD_ROOT/%{_lib}/libNoVersion*
|
|
|
|
%endif
|
|
|
|
|
|
|
|
# the man pages for the linuxthreads require special attention
|
|
|
|
make -C linuxthreads/man
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man3
|
|
|
|
install -m 0644 linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
|
|
|
|
gzip -9nvf $RPM_BUILD_ROOT%{_mandir}/man3/*
|
|
|
|
|
|
|
|
if [ -d $RPM_BUILD_ROOT%{_prefix}/info -a "%{_infodir}" != "%{_prefix}/info" ]; then
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_infodir}
|
|
|
|
mv -f $RPM_BUILD_ROOT%{_prefix}/info/* $RPM_BUILD_ROOT%{_infodir}
|
|
|
|
rm -rf $RPM_BUILD_ROOT%{_prefix}/info
|
|
|
|
fi
|
|
|
|
|
|
|
|
gzip -9nvf $RPM_BUILD_ROOT%{_infodir}/libc*
|
|
|
|
|
|
|
|
ln -sf libbsd-compat.a $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libbsd.a
|
|
|
|
|
|
|
|
install -m 644 redhat/nsswitch.conf $RPM_BUILD_ROOT/etc/nsswitch.conf
|
|
|
|
|
|
|
|
# Take care of setuids
|
|
|
|
# -- new security review sez that this shouldn't be needed anymore
|
|
|
|
#chmod 755 $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown
|
|
|
|
|
|
|
|
# This is for ncsd - in glibc 2.2
|
|
|
|
install -m 644 nscd/nscd.conf $RPM_BUILD_ROOT/etc
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
|
|
|
|
install -m 755 nscd/nscd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
|
|
|
|
|
|
|
|
# Don't include ld.so.cache
|
|
|
|
rm -f $RPM_BUILD_ROOT/etc/ld.so.cache
|
|
|
|
|
|
|
|
# Include ld.so.conf
|
|
|
|
> $RPM_BUILD_ROOT/etc/ld.so.conf
|
|
|
|
chmod 644 $RPM_BUILD_ROOT/etc/ld.so.conf
|
|
|
|
|
2004-09-09 05:17:10 +00:00
|
|
|
# Install the upgrade program
|
|
|
|
install -m 700 build-%{_target_cpu}-linux/glibc_post_upgrade $RPM_BUILD_ROOT/usr/sbin/glibc_post_upgrade
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
# Strip binaries
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT/sbin/* || :
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT%{_prefix}/bin/* || :
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT%{_prefix}/sbin/* || :
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown || :
|
|
|
|
strip -R .comment $RPM_BUILD_ROOT%{_prefix}/%{_lib}/gconv/* || :
|
|
|
|
|
2004-09-09 05:18:27 +00:00
|
|
|
# Hardlink identical locale files together
|
|
|
|
ALL_LC="LC_ADDRESS LC_COLLATE LC_CTYPE LC_IDENTIFICATION LC_MEASUREMENT \
|
|
|
|
LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME \
|
|
|
|
LC_MESSAGES/SYS_LC_MESSAGES"
|
|
|
|
for i in $RPM_BUILD_ROOT%{_prefix}/lib/locale/*; do
|
|
|
|
if [ ! -d $i ]; then continue; fi
|
|
|
|
for j in $ALL_LC; do
|
|
|
|
for k in $RPM_BUILD_ROOT%{_prefix}/lib/locale/*; do
|
|
|
|
if [ ! -d $k ]; then continue; fi
|
|
|
|
if [ $i = $k ]; then break; fi
|
|
|
|
if cmp -s $i/$j $k/$j; then ln -f $k/$j $i/$j; break; fi
|
|
|
|
done
|
|
|
|
done
|
|
|
|
done
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
# BUILD THE FILE LIST
|
|
|
|
find $RPM_BUILD_ROOT -type f -or -type l |
|
2004-09-09 05:18:35 +00:00
|
|
|
sed -e 's|.*/etc|%config &|' \
|
|
|
|
-e 's|.*/gconv/gconv-modules|%verify(not md5 size mtime) %config(noreplace) &|' > rpm.filelist.in
|
2004-09-09 05:16:54 +00:00
|
|
|
for n in %{_prefix}/share %{_prefix}/include %{_prefix}/lib/locale; do
|
|
|
|
find ${RPM_BUILD_ROOT}${n} -type d | \
|
2004-09-09 05:18:16 +00:00
|
|
|
grep -v '%{_prefix}/share$' | \
|
2004-09-09 05:16:54 +00:00
|
|
|
sed "s/^/%dir /" >> rpm.filelist.in
|
|
|
|
done
|
|
|
|
|
|
|
|
# primary filelist
|
2004-09-09 05:18:27 +00:00
|
|
|
SHARE_LANG='s|.*/share/locale/\([^/_]\+\).*/LC_MESSAGES/.*\.mo|%lang(\1) &|'
|
|
|
|
LIB_LANG='s|.*/lib/locale/\([^/_]\+\)|%lang(\1) &|'
|
|
|
|
# rpm does not handle %lang() tagged files hardlinked together accross
|
|
|
|
# languages very well, temporarily disable
|
|
|
|
LIB_LANG=''
|
|
|
|
sed -e "s|$RPM_BUILD_ROOT||" -e "$LIB_LANG" -e "$SHARE_LANG" < rpm.filelist.in |
|
2004-09-09 05:16:54 +00:00
|
|
|
grep -v '/etc/localtime' | \
|
|
|
|
grep -v '/etc/nsswitch.conf' | \
|
|
|
|
grep -v '/etc/ld.so.conf' | \
|
|
|
|
sort > rpm.filelist
|
|
|
|
|
2004-09-09 05:17:10 +00:00
|
|
|
grep '%{_prefix}/%{_lib}/lib.*_p\.a' < rpm.filelist > profile.filelist || :
|
2004-09-09 05:16:54 +00:00
|
|
|
egrep "(%{_prefix}/include)|(%{_infodir})" < rpm.filelist |
|
|
|
|
grep -v %{_infodir}/dir > devel.filelist
|
|
|
|
|
|
|
|
mv rpm.filelist rpm.filelist.full
|
|
|
|
grep -v '%{_prefix}/%{_lib}/lib.*_p.a' rpm.filelist.full |
|
|
|
|
egrep -v "(%{_prefix}/include)|(%{_infodir})" > rpm.filelist
|
|
|
|
|
|
|
|
grep '%{_prefix}/%{_lib}/lib.*\.a' < rpm.filelist >> devel.filelist
|
|
|
|
grep '%{_prefix}/%{_lib}/.*\.o' < rpm.filelist >> devel.filelist
|
|
|
|
grep '%{_prefix}/%{_lib}/lib.*\.so' < rpm.filelist >> devel.filelist
|
|
|
|
grep '%{_mandir}' < rpm.filelist >> devel.filelist
|
|
|
|
|
|
|
|
mv rpm.filelist rpm.filelist.full
|
|
|
|
grep -v '%{_prefix}/%{_lib}/lib.*\.a' < rpm.filelist.full |
|
|
|
|
grep -v '%{_prefix}/%{_lib}/.*\.o' |
|
|
|
|
grep -v '%{_prefix}/%{_lib}/lib.*\.so'|
|
|
|
|
grep -v '%{_mandir}' |
|
|
|
|
grep -v 'nscd' > rpm.filelist
|
2004-09-09 05:18:27 +00:00
|
|
|
|
|
|
|
grep '%{_prefix}/bin' < rpm.filelist >> common.filelist
|
|
|
|
grep '%{_prefix}/lib/locale' < rpm.filelist >> common.filelist
|
|
|
|
grep '%{_prefix}/libexec' < rpm.filelist >> common.filelist
|
|
|
|
grep '%{_prefix}/sbin/[^g]' < rpm.filelist >> common.filelist
|
|
|
|
grep '%{_prefix}/share' < rpm.filelist >> common.filelist
|
|
|
|
|
|
|
|
mv rpm.filelist rpm.filelist.full
|
|
|
|
grep -v '%{_prefix}/bin' < rpm.filelist.full |
|
|
|
|
grep -v '%{_prefix}/lib/locale' |
|
|
|
|
grep -v '%{_prefix}/libexec' |
|
|
|
|
grep -v '%{_prefix}/sbin/[^g]' |
|
|
|
|
grep -v '%{_prefix}/share' > rpm.filelist
|
2004-09-09 05:16:54 +00:00
|
|
|
|
|
|
|
# /etc/localtime - we're proud of our timezone
|
|
|
|
rm -f $RPM_BUILD_ROOT/etc/localtime
|
|
|
|
cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
|
|
|
|
#ln -sf ..%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
|
|
|
|
|
|
|
|
# the last bit: more documentation
|
|
|
|
rm -rf documentation
|
|
|
|
mkdir documentation
|
|
|
|
cp linuxthreads/ChangeLog documentation/ChangeLog.threads
|
|
|
|
cp linuxthreads/Changes documentation/Changes.threads
|
|
|
|
cp linuxthreads/README documentation/README.threads
|
|
|
|
cp linuxthreads/FAQ.html documentation/FAQ-threads.html
|
|
|
|
cp -r linuxthreads/Examples documentation/examples.threads
|
|
|
|
cp crypt/README.ufc-crypt documentation/README.ufc-crypt
|
|
|
|
cp timezone/README documentation/README.timezone
|
|
|
|
cp ChangeLog* documentation
|
|
|
|
gzip -9 documentation/ChangeLog*
|
|
|
|
|
2004-09-09 05:17:10 +00:00
|
|
|
%post -p /usr/sbin/glibc_post_upgrade
|
2004-09-09 05:16:54 +00:00
|
|
|
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
|
|
|
|
%post devel
|
|
|
|
/sbin/install-info %{_infodir}/libc.info.gz %{_infodir}/dir
|
|
|
|
|
|
|
|
%pre devel
|
|
|
|
# this used to be a link and it is causing nightmares now
|
|
|
|
if [ -L %{_prefix}/include/scsi ] ; then
|
|
|
|
rm -f %{_prefix}/include/scsi
|
|
|
|
fi
|
|
|
|
|
|
|
|
%preun devel
|
|
|
|
if [ "$1" = 0 ]; then
|
|
|
|
/sbin/install-info --delete %{_infodir}/libc.info.gz %{_infodir}/dir
|
|
|
|
fi
|
|
|
|
|
|
|
|
%pre -n nscd
|
|
|
|
/usr/sbin/useradd -M -o -r -d / -s /bin/false \
|
|
|
|
-c "NSCD Daemon" -u 28 nscd > /dev/null 2>&1 || :
|
|
|
|
|
|
|
|
%post -n nscd
|
|
|
|
/sbin/chkconfig --add nscd
|
|
|
|
|
|
|
|
%preun -n nscd
|
|
|
|
if [ $1 = 0 ] ; then
|
|
|
|
service nscd stop > /dev/null 2>&1
|
|
|
|
/sbin/chkconfig --del nscd
|
|
|
|
fi
|
|
|
|
|
|
|
|
%postun -n nscd
|
|
|
|
if [ $1 = 0 ] ; then
|
|
|
|
/usr/sbin/userdel nscd > /dev/null 2>&1 || :
|
|
|
|
fi
|
|
|
|
if [ "$1" -ge "1" ]; then
|
|
|
|
service nscd condrestart > /dev/null 2>&1 || :
|
|
|
|
fi
|
|
|
|
|
|
|
|
%clean
|
|
|
|
rm -rf "$RPM_BUILD_ROOT"
|
|
|
|
rm -f *.filelist*
|
|
|
|
|
|
|
|
%files -f rpm.filelist
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%verify(not md5 size mtime) %config(noreplace) /etc/localtime
|
|
|
|
%verify(not md5 size mtime) %config(noreplace) /etc/nsswitch.conf
|
|
|
|
%verify(not md5 size mtime) %config(noreplace) /etc/ld.so.conf
|
|
|
|
%doc README NEWS INSTALL FAQ BUGS NOTES PROJECTS CONFORMANCE
|
2004-09-09 05:18:27 +00:00
|
|
|
%doc COPYING COPYING.LIB README.template README.libm
|
2004-09-09 05:16:54 +00:00
|
|
|
%doc hesiod/README.hesiod
|
|
|
|
|
2004-09-09 05:18:16 +00:00
|
|
|
%ifnarch %{auxarches}
|
2004-09-09 05:18:27 +00:00
|
|
|
%files -f common.filelist common
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%doc documentation/*
|
|
|
|
|
2004-09-09 05:16:54 +00:00
|
|
|
%files -f devel.filelist devel
|
|
|
|
%defattr(-,root,root)
|
|
|
|
|
|
|
|
%files -f profile.filelist profile
|
|
|
|
%defattr(-,root,root)
|
|
|
|
|
|
|
|
%files -n nscd
|
|
|
|
%defattr(-,root,root)
|
2004-09-09 05:18:27 +00:00
|
|
|
%config(noreplace) /etc/nscd.conf
|
|
|
|
%config /etc/rc.d/init.d/nscd
|
2004-09-09 05:16:54 +00:00
|
|
|
%{_prefix}/sbin/nscd
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%changelog
|
2004-09-09 05:18:35 +00:00
|
|
|
* Fri Apr 6 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- support even 2.4.0 kernels on ia64, sparc64 and s390x
|
|
|
|
- include UTF-8 locales
|
|
|
|
- make gconv-modules %%config(noreplace)
|
|
|
|
|
|
|
|
* Fri Mar 23 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- back out sunrpc changes
|
|
|
|
|
|
|
|
* Wed Mar 21 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update from CVS
|
|
|
|
- fix ia64 build
|
|
|
|
- fix pthread_getattr_np
|
|
|
|
|
|
|
|
* Fri Mar 16 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update from CVS
|
|
|
|
- run atexit() registered functions at dlclose time if they are in shared
|
|
|
|
libraries (#28625)
|
|
|
|
- add pthread_getattr_np API to make JVM folks happy
|
|
|
|
|
|
|
|
* Wed Mar 14 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- require 2.4.1 instead of 2.4.0 on platforms where it required 2.4 kernel
|
|
|
|
- fix ldd behaviour on unresolved symbols
|
|
|
|
- remove nonsensical ldconfig warning, update osversion for the most
|
|
|
|
recent library with the same soname in the same directory instead (#31703)
|
|
|
|
- apply selected patches from CVS
|
|
|
|
- s390x spec file changes from Florian La Roche
|
|
|
|
|
|
|
|
* Wed Mar 7 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix gencat (#30894)
|
|
|
|
- fix ldconfig changes from yesterday, fix LD_ASSUME_KERNEL handling
|
|
|
|
|
|
|
|
* Tue Mar 6 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update from CVS
|
|
|
|
- make pthread_attr_setstacksize consistent before and after pthread manager
|
|
|
|
is started (#28194)
|
|
|
|
- pass back struct sigcontext from pthread signal wrapper (on ia32 only so
|
|
|
|
far, #28493)
|
|
|
|
- on i686 ship both --enable-kernel 2.2.5 and 2.4.0 libc/libm/libpthread,
|
|
|
|
make ld.so pick the right one
|
|
|
|
|
|
|
|
* Sat Feb 17 2001 Preston Brown <pbrown@redhat.com>
|
|
|
|
- glib-common doesn't require glibc, until we can figure out how to get out of dependency hell.
|
|
|
|
|
|
|
|
* Sat Feb 17 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- make glibc require particular version of glibc-common
|
|
|
|
and glibc-common prerequire glibc.
|
|
|
|
|
|
|
|
* Fri Feb 16 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- glibc 2.2.2 release
|
|
|
|
- fix regex REG_ICASE bug seen in ksymoops
|
|
|
|
|
|
|
|
* Sat Feb 10 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix regexec leaking memory (#26864)
|
|
|
|
|
|
|
|
* Fri Feb 9 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update from CVS
|
|
|
|
- fix ia64 build with gnupro
|
|
|
|
- make regex 64bit clean
|
|
|
|
- fix tgmath make check failures on alpha
|
|
|
|
|
|
|
|
* Tue Feb 6 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update again for ia64 DF_1_INITFIRST
|
|
|
|
|
|
|
|
* Fri Feb 2 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update from CVS
|
|
|
|
- fix getaddrinfo (#25437)
|
|
|
|
- support DF_1_INITFIRST (#25029)
|
|
|
|
|
2004-09-09 05:18:27 +00:00
|
|
|
* Wed Jan 24 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- build all auxiliary arches with --enablekernel 2.4.0, those wanting
|
|
|
|
to run 2.2 kernels can downgrade to the base architecture glibc.
|
|
|
|
|
|
|
|
* Sat Jan 20 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- remove %%lang() flags from %%{_prefix}/lib/locale files temporarily
|
|
|
|
|
|
|
|
* Sun Jan 14 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to 2.2.1 final
|
|
|
|
- fix a pthread_kill_other_threads_np breakage (#23966)
|
|
|
|
- make static binaries using dlopen work on ia64 again
|
|
|
|
- fix a typo in glibc-common group
|
|
|
|
|
|
|
|
* Wed Jan 10 2001 Bernhard Rosenkraenzer <bero@redhat.com>
|
|
|
|
- devel requires glibc = %%{version}
|
|
|
|
- noreplace /etc/nscd.conf
|
|
|
|
|
|
|
|
* Wed Jan 10 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- some more security fixes:
|
|
|
|
- don't look up LD_PRELOAD libs in cache for SUID apps
|
|
|
|
(because that bypasses SUID bit checking on the library)
|
|
|
|
- place output files for profiling SUID apps into /var/profile,
|
|
|
|
use O_NOFOLLOW for them
|
|
|
|
- add checks for $MEMUSAGE_OUTPUT and $SEGFAULT_OUTPUT_NAME
|
|
|
|
- hardlink identical locale files together
|
|
|
|
- add %%lang() tags to locale stuff
|
|
|
|
- remove ko_KR.utf8 for now, it is provided by locale-utf8 package
|
|
|
|
|
|
|
|
* Mon Jan 8 2001 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- add glibc-common subpackage
|
|
|
|
- fix alphaev6 memcpy (#22494)
|
|
|
|
- fix sys/cdefs.h (#22908)
|
|
|
|
- don't define stdin/stdout/stderr as macros for -traditional (#22913)
|
|
|
|
- work around a bug in IBM JDK (#22932, #23012)
|
|
|
|
- fix pmap_unset when network is down (#23176)
|
|
|
|
- move nscd in rc.d before netfs on shutdown
|
|
|
|
- fix $RESOLV_HOST_CONF in SUID apps (#23562)
|
|
|
|
|
2004-09-09 05:18:16 +00:00
|
|
|
* Fri Dec 15 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix ftw and nftw
|
|
|
|
|
|
|
|
* Wed Dec 13 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix fcvt (#22184)
|
|
|
|
- ldd /lib/ld-linux.so.2 is not crashing any longer again (#22197)
|
|
|
|
- fix gencat
|
|
|
|
|
|
|
|
* Mon Dec 11 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix alpha htonl and alphaev6 stpcpy
|
|
|
|
|
|
|
|
* Sat Dec 9 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS to:
|
|
|
|
- fix getnameinfo (#21934)
|
|
|
|
- don't stomp on memory in rpath handling (#21544)
|
|
|
|
- fix setlocale (#21507)
|
|
|
|
- fix libNoVersion.so.1 loading code (#21579)
|
|
|
|
- use auxarches define in spec file for auxiliary
|
|
|
|
architectures (#21219)
|
|
|
|
- remove /usr/share directory from filelist (#21218)
|
2004-09-09 05:18:04 +00:00
|
|
|
|
2004-09-09 05:17:59 +00:00
|
|
|
* Sun Nov 19 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS to fix getaddrinfo
|
|
|
|
|
|
|
|
* Fri Nov 17 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS to fix freopen
|
|
|
|
- remove all alpha workarounds, not needed anymore
|
|
|
|
|
|
|
|
* Wed Nov 15 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix dladdr bug on alpha/sparc32/sparc64
|
|
|
|
- fix Makefiles so that they run static tests properly
|
|
|
|
|
|
|
|
* Tue Nov 14 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS to fix ldconfig
|
|
|
|
|
|
|
|
* Thu Nov 9 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to glibc 2.2 release
|
|
|
|
|
|
|
|
* Mon Nov 6 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS to:
|
|
|
|
- export __sysconf@@GLIBC_2.2 (#20417)
|
|
|
|
|
|
|
|
* Fri Nov 3 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- merge to 2.1.97
|
|
|
|
|
|
|
|
* Mon Oct 30 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- update to CVS, including:
|
|
|
|
- fix WORD_BIT/LONG_BIT definition in limits.h (#19088)
|
|
|
|
- fix hesiod (#19375)
|
|
|
|
- set LC_MESSAGES in zic/zdump for proper error message output (#19495)
|
|
|
|
- fix LFS fcntl when used with non-LFS aware kernels (#19730)
|
|
|
|
|
2004-09-09 05:17:54 +00:00
|
|
|
* Thu Oct 19 2000 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
- fix alpha semctl (#19199)
|
|
|
|
- update to CVS, including:
|
|
|
|
- fix glibc headers for Compaq non-gcc compilers
|
|
|
|
- fix locale alias handling code (#18832)
|
|
|
|
- fix rexec on little endian machines (#18886)
|
|
|
|
- started writing changelog again
|
2004-09-09 05:17:59 +00:00
|
|
|
|
|
|
|
* Thu Aug 10 2000 Adrian Havill <havill@redhat.com>
|
|
|
|
- added ja ujis alias for backwards compatibility
|