* add-on sysdeps order changed (BZ#1089)
@ 2005-11-05 2:01 Roland McGrath
0 siblings, 0 replies; only message in thread
From: Roland McGrath @ 2005-11-05 2:01 UTC (permalink / raw)
To: libc-hacker
I've committed a configure change (trunk only) that affects the order of
sysdeps directories chosen. Previously add-on/sysdeps subdirs (and their
Implies) would always come before main tree sysdeps subdirs. Now, sysdeps
subdirs for add-ons are interleaved with the main tree's sysdep subdirs.
This is the necessary and right thing for add-ons to provide full ports.
It does potentially change some scenarios of what sysdeps files an add-on
has to provide to get its code used in preference to code in the main tree.
For example, in my build, the sysdeps list changed thusly:
sysdeps/i386/elf
-libidn/sysdeps/unix
nptl/sysdeps/unix/sysv/linux/i386/i686
nptl/sysdeps/unix/sysv/linux/i386
+sysdeps/unix/sysv/linux/i386
nptl/sysdeps/unix/sysv/linux
nptl/sysdeps/pthread
sysdeps/pthread
-nptl/sysdeps/unix/sysv
-nptl/sysdeps/unix
-nptl/sysdeps/i386/i686
-nptl/sysdeps/i386
-nptl/sysdeps/generic
-sysdeps/unix/sysv/linux/i386
sysdeps/unix/sysv/linux
sysdeps/gnu
sysdeps/unix/common
sysdeps/unix/mman
sysdeps/unix/inet
sysdeps/unix/sysv/i386
+nptl/sysdeps/unix/sysv
sysdeps/unix/sysv
sysdeps/unix/i386
+libidn/sysdeps/unix
+nptl/sysdeps/unix
sysdeps/unix
sysdeps/posix
sysdeps/i386/i686/fpu
+nptl/sysdeps/i386/i686
sysdeps/i386/i686
sysdeps/i386/i486
nptl/sysdeps/i386/i486
sysdeps/i386/fpu
+nptl/sysdeps/i386
sysdeps/i386
sysdeps/wordsize-32
sysdeps/ieee754/ldbl-96
sysdeps/ieee754/dbl-64
sysdeps/ieee754/flt-32
+nptl/sysdeps/generic
sysdeps/ieee754
sysdeps/generic/elf
sysdeps/generic
I used the following script to convince myself that this has no practical
effect for any of the add-ons we have now (except ports). The situation
that has changed would be if e.g. nptl/sysdeps/unix/sysv/linux/foobar.c
exists and you want that to override sysdeps/unix/sysv/linux/CPU/foobar.S;
unless my script is wrong, we don't have any cases like that at the moment.
If it comes up that an add-on has to provide lots of CPU/foobar.c files
doing #include "../foobar.c" or something of that nature, we can consider
giving add-ons a way to tweak the order further.
#!/bin/sh
find sysdeps -mindepth 1 -type d ! -name CVS | while read dir
do
if [ ! -d ../$dir ]; then
echo No main $dir
continue
fi
files=`(cd $dir; find *[!~] -maxdepth 0 -type f)` || { echo No files in $dir; continue; }
for f in $files; do
case $f in
Makefile|Versions|configure*|Implies) continue ;;
esac
b=${f%.*}
find ../$dir -mindepth 2 -name '$b.*'
done
done
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-11-05 2:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-05 2:01 add-on sysdeps order changed (BZ#1089) Roland McGrath
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).