2.3.4-20
This commit is contained in:
parent
a2deec0522
commit
ced11a0e35
|
@ -3265,3 +3265,95 @@
|
|||
- exp2l;
|
||||
- }
|
||||
-}
|
||||
--- libc/fedora/glibc_post_upgrade.c 2004-12-20 08:56:38.000000000 +0100
|
||||
+++ libc/fedora/glibc_post_upgrade.c 2005-04-04 21:47:19.000000000 +0200
|
||||
@@ -30,10 +30,8 @@ __attribute__((noinline)) int check_elf
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
- int rerun_ldconfig = 0, rerun_cnt = 0;
|
||||
char initpath[256];
|
||||
|
||||
-#ifdef __i386__
|
||||
char buffer[4096];
|
||||
struct pref {
|
||||
char *p;
|
||||
@@ -44,10 +42,10 @@ main (void)
|
||||
int i, j, fd;
|
||||
off_t base;
|
||||
ssize_t ret;
|
||||
-#ifdef ARCH_386
|
||||
- const char *remove_dirs[] = { "/lib/i686", "/lib/tls" };
|
||||
+#ifdef __i386__
|
||||
+ const char *remove_dirs[] = { "/lib/tls", "/lib/i686", "/lib/tls/i486", "/lib/tls/i586", "/lib/tls/i686" };
|
||||
#else
|
||||
- const char *remove_dirs[] = { "/lib/tls/i686" };
|
||||
+ const char *remove_dirs[] = { "/lib/tls" };
|
||||
#endif
|
||||
for (j = 0; j < sizeof (remove_dirs) / sizeof (remove_dirs[0]); ++j)
|
||||
{
|
||||
@@ -83,7 +81,6 @@ main (void)
|
||||
close (fd);
|
||||
}
|
||||
}
|
||||
-#endif
|
||||
|
||||
int ldsocfd = open (LD_SO_CONF, O_RDONLY);
|
||||
struct stat ldsocst;
|
||||
@@ -111,51 +108,11 @@ main (void)
|
||||
close (ldsocfd);
|
||||
}
|
||||
|
||||
- do
|
||||
- {
|
||||
- char linkbuf[64], *linkp;
|
||||
- int linklen;
|
||||
-
|
||||
- /* If installing bi-arch glibc, rpm sometimes doesn't unpack all files
|
||||
- before running one of the lib's %post scriptlet. /sbin/ldconfig will
|
||||
- then be run by the other arch's %post. */
|
||||
- if (access ("/sbin/ldconfig", X_OK))
|
||||
- break;
|
||||
-
|
||||
- verbose_exec (110, "/sbin/ldconfig", "/sbin/ldconfig");
|
||||
-
|
||||
- rerun_ldconfig = 0;
|
||||
-#ifdef LIBTLS
|
||||
- linkp = linkbuf + strlen (LIBTLS);
|
||||
- linklen = readlink (LIBTLS "librt.so.1", linkp,
|
||||
- sizeof (linkbuf) - 1 - strlen (LIBTLS));
|
||||
- if (linklen == strlen ("librtkaio-2.3.X.so")
|
||||
- && memcmp (linkp, "librtkaio-2.3.", 14) == 0
|
||||
- && strchr ("23", linkp[14])
|
||||
- && memcmp (linkp + 15, ".so", 4) == 0)
|
||||
- {
|
||||
- memcpy (linkbuf, LIBTLS, strlen (LIBTLS));
|
||||
- unlink (linkbuf);
|
||||
- rerun_ldconfig = 1;
|
||||
- }
|
||||
-#endif
|
||||
-
|
||||
-#ifdef __i386__
|
||||
- linkp = linkbuf + strlen ("/lib/i686/");
|
||||
- linklen = readlink ("/lib/i686/librt.so.1", linkp,
|
||||
- sizeof (linkbuf) - 1 - strlen ("/lib/i686/"));
|
||||
- if (linklen == strlen ("librtkaio-2.3.X.so")
|
||||
- && memcmp (linkp, "librtkaio-2.3.", 14) == 0
|
||||
- && strchr ("23", linkp[14])
|
||||
- && memcmp (linkp + 15, ".so", 4) == 0)
|
||||
- {
|
||||
- memcpy (linkbuf, "/lib/i686/", strlen ("/lib/i686/"));
|
||||
- unlink (linkbuf);
|
||||
- rerun_ldconfig = 1;
|
||||
- }
|
||||
-#endif
|
||||
- }
|
||||
- while (rerun_ldconfig && ++rerun_cnt < 2);
|
||||
+ /* If installing bi-arch glibc, rpm sometimes doesn't unpack all files
|
||||
+ before running one of the lib's %post scriptlet. /sbin/ldconfig will
|
||||
+ then be run by the other arch's %post. */
|
||||
+ if (! access ("/sbin/ldconfig", X_OK))
|
||||
+ verbose_exec (110, "/sbin/ldconfig", "/sbin/ldconfig");
|
||||
|
||||
if (! utimes (GCONV_MODULES_DIR "/gconv-modules.cache", NULL))
|
||||
{
|
||||
|
|
123
glibc.spec
123
glibc.spec
|
@ -1,7 +1,7 @@
|
|||
%define glibcdate 20050401T1444
|
||||
%define glibcname glibc
|
||||
%define glibcversion 2.3.4
|
||||
%define glibcrelease 19
|
||||
%define glibcrelease 20
|
||||
%define auxarches i586 i686 athlon sparcv9 alphaev6
|
||||
%define prelinkarches noarch
|
||||
%define nptlarches i386 i686 athlon x86_64 ia64 s390 s390x sparcv9 ppc ppc64
|
||||
|
@ -68,10 +68,8 @@ Conflicts: kernel < 2.4.19
|
|||
%define enablekernelnptl 2.4.20
|
||||
%ifarch i386
|
||||
%define nptl_target_cpu i486
|
||||
%define tls_subdir tls/i486
|
||||
%else
|
||||
%define nptl_target_cpu %{_target_cpu}
|
||||
%define tls_subdir tls
|
||||
%endif
|
||||
%endif
|
||||
# Need AS_NEEDED directive
|
||||
|
@ -157,7 +155,10 @@ Autoreq: true
|
|||
%description -n linuxthreads-devel
|
||||
The linuxthreads-devel package contains the header and object files necessary
|
||||
for developing programs which can use the LinuxThreads library (normally
|
||||
newly linked programs will work only with NPTL).
|
||||
newly linked programs will work only with NPTL). To compile and link
|
||||
a program against LinuxThreads libraries, use
|
||||
-I/usr/include/linuxthreads -L/usr/%{_lib}/linuxthreads \\
|
||||
-Wl,-rpath-link,/usr/%{_lib}/linuxthreads
|
||||
%endif
|
||||
|
||||
%package profile
|
||||
|
@ -614,7 +615,11 @@ SubDir=
|
|||
%ifarch i686 athlon
|
||||
cd build-%{_target_cpu}-linuxltfs
|
||||
Pthreads=linuxthreads
|
||||
%ifarch %{nptlarches}
|
||||
SubDir=obsolete/linuxthreads/i686
|
||||
%else
|
||||
SubDir=i686
|
||||
%endif
|
||||
mkdir -p $RPM_BUILD_ROOT/lib/$SubDir/
|
||||
cp -a libc.so $RPM_BUILD_ROOT/lib/$SubDir/`basename $RPM_BUILD_ROOT/lib/libc-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/lib/libc-*.so` $RPM_BUILD_ROOT/lib/$SubDir/`basename $RPM_BUILD_ROOT/lib/libc.so.*`
|
||||
|
@ -637,54 +642,39 @@ cd ..
|
|||
|
||||
%ifarch %{nptlarches}
|
||||
cd build-%{nptl_target_cpu}-linuxnptl
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete/linuxthreads
|
||||
mv -f $RPM_BUILD_ROOT/%{_lib}/lib{c,m,pthread,rt,thread_db}[.-]*so* $RPM_BUILD_ROOT/%{_lib}/obsolete/linuxthreads/
|
||||
Pthreads=nptl
|
||||
SubDir=%{tls_subdir}
|
||||
SubDir=
|
||||
ObsDir=obsolete/linuxthreads
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_lib}/$SubDir/
|
||||
cp -a libc.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libc-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/libc-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libc.so.*`
|
||||
cp -a math/libm.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libm-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/libm-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libm.so.*`
|
||||
cp -a libc.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libc-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libc-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libc.so.*`
|
||||
cp -a math/libm.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libm-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libm-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libm.so.*`
|
||||
cp -a $Pthreads/libpthread.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/libpthread-%{version}.so
|
||||
pushd $RPM_BUILD_ROOT/%{_lib}/$SubDir
|
||||
ln -sf libpthread-*.so `basename $RPM_BUILD_ROOT/%{_lib}/libpthread.so.*`
|
||||
ln -sf libpthread-*.so `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libpthread.so.*`
|
||||
popd
|
||||
%ifarch %{rtkaioarches}
|
||||
cp -a rtkaio/librtkaio.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so | sed s/librt-/librtkaio-/`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so | sed s/librt-/librtkaio-/` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt.so.*`
|
||||
cp -a rtkaio/librtkaio.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt-*.so | sed s/librt-/librtkaio-/`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt-*.so | sed s/librt-/librtkaio-/` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt.so.*`
|
||||
%else
|
||||
cp -a rt/librt.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt.so.*`
|
||||
cp -a rt/librt.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/librt.so.*`
|
||||
%endif
|
||||
cp -a ${Pthreads}_db/libthread_db.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libthread_db-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/libthread_db-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/libthread_db.so.*`
|
||||
cp -a ${Pthreads}_db/libthread_db.so $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libthread_db-*.so`
|
||||
ln -sf `basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libthread_db-*.so` $RPM_BUILD_ROOT/%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/$ObsDir/libthread_db.so.*`
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads
|
||||
mv -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/{libc,libpthread,libpthread_nonshared,librt}.a \
|
||||
$RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/
|
||||
cp -a libc.a nptl/libpthread.a nptl/libpthread_nonshared.a rt/librt.a \
|
||||
$RPM_BUILD_ROOT%{_prefix}/%{_lib}/
|
||||
mv -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libc.so \
|
||||
$RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/
|
||||
sed "s|/libpthread_nonshared.a|/linuxthreads&|" $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libpthread.so \
|
||||
sed "s| /%{_lib}/| /%{_lib}/$ObsDir/|" $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libc.so \
|
||||
> $RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/libc.so
|
||||
sed "s| /%{_lib}/| /%{_lib}/$ObsDir/|;s|/libpthread_nonshared|/linuxthreads&|" $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libpthread.so \
|
||||
> $RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/libpthread.so
|
||||
rm -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libpthread.so
|
||||
sed "s| /%{_lib}/| /%{_lib}/$SubDir/|" $RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/libc.so \
|
||||
> $RPM_BUILD_ROOT/%{_lib}/tls/libc.so
|
||||
ln -sf /%{_lib}/tls/libc.so $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libc.so
|
||||
sed "s|^GROUP (.*)|GROUP ( /%{_lib}/$SubDir/"`basename $RPM_BUILD_ROOT/%{_lib}/libpthread.so.*`' %{_prefix}/%{_lib}/libpthread_nonshared.a )|' \
|
||||
$RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/libc.so \
|
||||
> $RPM_BUILD_ROOT/%{_lib}/tls/libpthread.so
|
||||
ln -sf /%{_lib}/tls/libpthread.so $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libpthread.so
|
||||
%ifarch %{rtkaioarches}
|
||||
ln -sf /%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so | sed 's/librt-/librtkaio-/'` \
|
||||
$RPM_BUILD_ROOT/%{_lib}/tls/librt.so
|
||||
%else
|
||||
ln -sf /%{_lib}/$SubDir/`basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so` \
|
||||
$RPM_BUILD_ROOT/%{_lib}/tls/librt.so
|
||||
%endif
|
||||
ln -sf /%{_lib}/`basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so` \
|
||||
$RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/librt.so
|
||||
ln -sf /%{_lib}/tls/librt.so $RPM_BUILD_ROOT%{_prefix}/%{_lib}/librt.so
|
||||
strip -g $RPM_BUILD_ROOT%{_prefix}/%{_lib}/linuxthreads/*.a
|
||||
mkdir -p $RPM_BUILD_ROOT/nptl $RPM_BUILD_ROOT%{_prefix}/include/linuxthreads
|
||||
make -j1 install_root=$RPM_BUILD_ROOT/nptl install-headers PARALLELMFLAGS=-s
|
||||
|
@ -704,15 +694,6 @@ rm -rf $RPM_BUILD_ROOT/nptl
|
|||
|
||||
cd ..
|
||||
|
||||
%ifarch i386
|
||||
for i in i586 i686; do
|
||||
mkdir $RPM_BUILD_ROOT/%{_lib}/tls/$i
|
||||
pushd $RPM_BUILD_ROOT/%{_lib}/tls/$i
|
||||
ln -sf ../i486/*.so .
|
||||
cp -a ../i486/*.so.* .
|
||||
popd
|
||||
done
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# compatibility hack: this locale has vanished from glibc, but some other
|
||||
|
@ -791,27 +772,6 @@ for i in *.a; do
|
|||
done
|
||||
popd
|
||||
|
||||
%ifarch %{prelinkarches}
|
||||
%ifarch i686 athlon
|
||||
# Prelink ld.so and libc.so
|
||||
> prelink.conf
|
||||
# For now disable prelinking of ld.so, as it breaks statically linked
|
||||
# binaries built against non-NDEBUG old glibcs (assert unknown dynamic tag)
|
||||
# /usr/sbin/prelink -c ./prelink.conf -C ./prelink.cache \
|
||||
# --mmap-region-start=0x00101000 $RPM_BUILD_ROOT/%{_lib}/ld-*.so
|
||||
/usr/sbin/prelink --reloc-only=0x00e80000 $RPM_BUILD_ROOT/%{_lib}/$SubDir/libc-*.so
|
||||
%endif
|
||||
%ifarch alpha alphaev6
|
||||
# Prelink ld.so and libc.so
|
||||
> prelink.conf
|
||||
# For now disable prelinking of ld.so, as it breaks statically linked
|
||||
# binaries built against non-NDEBUG old glibcs (assert unknown dynamic tag)
|
||||
# /usr/sbin/prelink -c ./prelink.conf -C ./prelink.cache \
|
||||
# --mmap-region-start=0x0000020000000000 $RPM_BUILD_ROOT/%{_lib}/ld-*.so
|
||||
/usr/sbin/prelink --reloc-only=0x0000020010000000 $RPM_BUILD_ROOT/%{_lib}/$SubDir/libc-*.so
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# rquota.x and rquota.h are now provided by quota
|
||||
rm -f $RPM_BUILD_ROOT%{_prefix}/include/rpcsvc/rquota.[hx]
|
||||
|
||||
|
@ -943,7 +903,7 @@ cp -r linuxthreads/Examples documentation/examples.threads
|
|||
cp crypt/README.ufc-crypt documentation/README.ufc-crypt
|
||||
cp timezone/README documentation/README.timezone
|
||||
cp ChangeLog{,.14,.15} documentation
|
||||
gzip -9n documentation/ChangeLog*
|
||||
bzip2 -9 documentation/ChangeLog*
|
||||
|
||||
%ifarch s390x
|
||||
# Compatibility symlink
|
||||
|
@ -1123,15 +1083,6 @@ cat $blf $cblf | LC_ALL=C sort -u > debuginfo.filelist
|
|||
echo '/usr/src/debug/%{glibcsrcdir}' >> debuginfo.filelist
|
||||
%endif
|
||||
|
||||
%ifarch i386
|
||||
%ifarch %{nptlarches}
|
||||
ln -sf i486 $RPM_BUILD_ROOT/usr/lib/debug/%{_lib}/tls/i586
|
||||
ln -sf i486 $RPM_BUILD_ROOT/usr/lib/debug/%{_lib}/tls/i686
|
||||
echo /usr/lib/debug/%{_lib}/tls/i586 >> debuginfo.filelist
|
||||
echo /usr/lib/debug/%{_lib}/tls/i686 >> debuginfo.filelist
|
||||
%endif
|
||||
%endif
|
||||
|
||||
[ "x$save_trace" = xyes ] && set -x
|
||||
|
||||
%endif
|
||||
|
@ -1208,15 +1159,16 @@ rm -f *.filelist*
|
|||
%files -f rpm.filelist
|
||||
%defattr(-,root,root)
|
||||
%ifarch %{nptlarches}
|
||||
%dir /%{_lib}/%{tls_subdir}
|
||||
%ifarch i386
|
||||
%dir /%{_lib}/tls/i586
|
||||
%dir /%{_lib}/tls/i686
|
||||
%endif
|
||||
%dir /%{_lib}/obsolete
|
||||
%dir /%{_lib}/obsolete/linuxthreads
|
||||
%ifarch i686 athlon
|
||||
%dir /%{_lib}/obsolete/linuxthreads/i686
|
||||
%endif
|
||||
%else
|
||||
%ifarch i686 athlon
|
||||
%dir /lib/i686
|
||||
%endif
|
||||
%endif
|
||||
%ifarch s390x
|
||||
%dir /lib
|
||||
/lib/ld64.so.1
|
||||
|
@ -1304,6 +1256,13 @@ rm -f *.filelist*
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Apr 4 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-20
|
||||
- move LinuxThreads libraries to /%{_lib}/obsolete/linuxthreads/
|
||||
and NPTL libraries to /%{_lib}. To run a program against LinuxThreads,
|
||||
LD_ASSUME_KERNEL=2.4.xx LD_LIBRARY_PATH=/%{_lib}/obsolete/linuxthreads/
|
||||
is now needed
|
||||
- bzip2 ChangeLog* files instead of gzipping them
|
||||
|
||||
* Sat Apr 2 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-19
|
||||
- update from CVS
|
||||
- fix nextafterl and several other libm routines on ia64
|
||||
|
|
Loading…
Reference in New Issue