aboutsummaryrefslogtreecommitdiff
path: root/libio/configure.in
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1997-11-26 15:54:30 -0800
committerJeff Law <law@gcc.gnu.org>1997-11-26 16:54:30 -0700
commit20a2fbe20e01a12d6b45782ed98d090ecd17caf3 (patch)
treeecb3a1ad37276540bbbf5b02dcf332f047b5bc19 /libio/configure.in
parent8fbd2dc7cbb6cd07133124ff9430a047f28f848b (diff)
downloadgcc-20a2fbe20e01a12d6b45782ed98d090ecd17caf3.zip
gcc-20a2fbe20e01a12d6b45782ed98d090ecd17caf3.tar.gz
gcc-20a2fbe20e01a12d6b45782ed98d090ecd17caf3.tar.bz2
configure.in (target frags): Add powerpc*-linux-gnulibc1.
* configure.in (target frags): Add powerpc*-linux-gnulibc1. (stdio-lock): Similarly. * configure.in (target frags): Add alpha*-linux-gnulibc1. (pic frags): Its alpha*- not alpha-. (stdio-lock): Kill everything. Add alpha*-linux-gnulibc1. * libio.h: Check __GLIBC_MINOR__ to find stdio-lock.h. If not _IO_MTSAFE_IO & GLIBC, make sure the lock pointer is still there. * libioP.h: Check __GLIBC_MINOR__ to find libc-lock.h. * config/linuxaxp1-libc-lock.h: New file. * config/linuxaxp1-stdio-lock.h: New file. * config/linuxaxp1.mt: New file. * gen-params (va_list): Check for and use __gnuc_va_list. (NULL): Work around some linux kernel headers and redefine NULL. From-SVN: r16769
Diffstat (limited to 'libio/configure.in')
-rw-r--r--libio/configure.in41
1 files changed, 20 insertions, 21 deletions
diff --git a/libio/configure.in b/libio/configure.in
index 2fc3a96..5de2dc1 100644
--- a/libio/configure.in
+++ b/libio/configure.in
@@ -16,6 +16,10 @@ frags=
case "${target}" in
*-hpux*) frags=hpux.mt ;;
+ alpha*-*-linux-gnulibc1)
+ frags="linux.mt linuxaxp1.mt mtsafe.mt" ;;
+ powerpc*-*-linux-gnulibc1)
+ frags="linux.mt linuxaxp1.mt mtsafe.mt" ;;
*-linux-gnulibc1)
frags=linuxlibc1.mt ;;
*-linux-gnu) frags="linux.mt mtsafe.mt" ;;
@@ -36,34 +40,29 @@ if [ "${shared}" = "yes" ]; then
case "${target}" in
hppa*-*) frags="${frags} ../../config/mh-papic" ;;
i[3456]86-*) frags="${frags} ../../config/mh-x86pic" ;;
- alpha-*-linux*)
+ alpha*-*-linux*)
frags="${frags} ../../config/mh-elfalphapic" ;;
*) frags="${frags} ../../config/mh-${target_cpu}pic" ;;
esac
fi
-# Make a link for the correct stdio-lock.h file.
+# Take care of header file lossage.
case "${target}" in
- *-linux-gnu)
- # We have a correct file in glibc but the libioP.h file is written
- # with glibc 2.1 in mind which has the internals headers in special
- # directory while glibc 2.0 has them in /usr/include. Create a wrapper
- # if necessary.
- (echo "#include <bits/libc-lock.h>" | ${CC-cc} -E -) >/dev/null 2>&1 ||
- {
- rm -fr bits
- mkdir bits
- echo "#include <libc-lock.h>" > bits/libc-lock.h
- echo 'asm (".weak _pthread_cleanup_pop_restore");' >> bits/libc-lock.h
- echo 'asm (".weak _pthread_cleanup_push_defer");' >> bits/libc-lock.h
-
- echo "#include <stdio-lock.h>" > bits/stdio-lock.h
- }
+ alpha*-*-linux-gnulibc1)
+ # For some reason stdio-lock.h is not installed on Red Hat systems.
+ # Further, libc-lock.h needs to define the pthreads stuff weak, and
+ # fails to do this for other than _LIBC. Install our own versions
+ # of these files.
+ cp ${srcdir}/config/linuxaxp1-libc-lock.h libc-lock.h
+ cp ${srcdir}/config/linuxaxp1-stdio-lock.h stdio-lock.h
;;
- *)
- rm -fr bits
- mkdir bits
- ln -s ${srcdir}/include/empty.h bits/stdio-lock.h
+ powerpc*-*-linux-gnulibc1)
+ # For some reason stdio-lock.h is not installed on Red Hat systems.
+ # Further, libc-lock.h needs to define the pthreads stuff weak, and
+ # fails to do this for other than _LIBC. Install our own versions
+ # of these files.
+ cp ${srcdir}/config/linuxaxp1-libc-lock.h libc-lock.h
+ cp ${srcdir}/config/linuxaxp1-stdio-lock.h stdio-lock.h
;;
esac