1 # This file is a shell script fragment that supplies the information
2 # necessary for a configure script to process the program in
3 # this directory. For more information, look at ../configure.
5 # If the language specific compiler does not exist, but the "gcc" directory
6 # does, we do not build anything. Note, $r is set by the top-level Makefile.
7 # Note that when we look for the compiler, we search both with and without
8 # extension to handle cross and canadian cross builds.
9 # Note that if $norecursion is set we're being called from config.status,
10 # so don't check for the compiler; we might be doing a make clean.
13 if test -n "$r" && [ -z "$norecursion" ] ; then
14 if test -d "$r"/gcc; then
15 if test -f "$r"/gcc/$compiler_name \
16 || test -f "$r"/gcc/$compiler_name.exe; then
19 echo "rm -f multilib.out" > skip-this-dir
24 if [ "${srcdir}" = "." ] ; then
25 if [ "${with_target_subdir}" != "." ] ; then
26 topsrcdir=${with_multisrctop}../..
28 topsrcdir=${with_multisrctop}..
31 topsrcdir=${srcdir}/..
34 if [ -d ${topsrcdir}/gcc ] ; then
35 configdirs="tests dbz stdio testsuite"
37 configdirs="tests dbz stdio"
40 srcname="input/output library"
41 package_makefile_frag=Make.pack
42 package_makefile_rules_frag=Make.pack.r
48 echo "# Warning: this fragment is automatically generated" > temp.mt
52 *-mpeix*) frags="mpeix.mt" ;;
53 *-hpux*) frags=hpux.mt ;;
54 alpha*-*-linux-gnulibc1)
55 frags="linux.mt linuxaxp1.mt mtsafe.mt" ;;
56 powerpc*-*-linux-gnulibc1)
57 frags="linux.mt linuxaxp1.mt mtsafe.mt" ;;
59 frags=linuxlibc1.mt ;;
60 *-linux-gnu*) frags="linux.mt mtsafe.mt" ;;
61 *-sco3.2v[45]*) frags=sco4.mt ;;
62 *-isc*) frags=isc.mt ;;
63 *-netware*) frags=netware.mt ;;
64 *-dgux*) frags=dgux.mt ;;
65 *vxworks*) frags="vxworks.mt" ;;
66 *-beos*) frags="beos.mt mtsafe.mt" ;;
67 *) frags=${target_cpu}.mt ;;
70 case "${enable_shared}" in
73 *libio*) shared=yes ;;
77 if [ "${shared}" = "yes" ]; then
79 alpha*-*-linux*) frags="${frags} ../../config/mh-elfalphapic" ;;
80 arm*-*-*) frags="${frags} ../../config/mh-armpic" ;;
81 hppa*-*-*) frags="${frags} ../../config/mh-papic" ;;
82 i[3456]86-*-*) frags="${frags} ../../config/mh-x86pic" ;;
84 powerpc*-*-*) frags="${frags} ../../config/mh-ppcpic" ;;
85 *-*-*) frags="${frags} ../../config/mh-${target_cpu}pic" ;;
89 # Take care of header file lossage.
91 alpha*-*-linux-gnulibc1)
92 # For some reason stdio-lock.h is not installed on Red Hat systems.
93 # Further, libc-lock.h needs to define the pthreads stuff weak, and
94 # fails to do this for other than _LIBC. Install our own versions
96 cp ${srcdir}/config/linuxaxp1-libc-lock.h libc-lock.h
97 cp ${srcdir}/config/linuxaxp1-stdio-lock.h stdio-lock.h
99 powerpc*-*-linux-gnulibc1)
100 # For some reason stdio-lock.h is not installed on Red Hat systems.
101 # Further, libc-lock.h needs to define the pthreads stuff weak, and
102 # fails to do this for other than _LIBC. Install our own versions
104 cp ${srcdir}/config/linuxaxp1-libc-lock.h libc-lock.h
105 cp ${srcdir}/config/linuxaxp1-stdio-lock.h stdio-lock.h
108 # We have a correct libc-lock.h in glibc 2.1 but not all glibc 2.0.
109 # Create a wrapper if necessary.
110 (echo "#include <bits/libc-lock.h>" | ${CC-cc} -E -) >/dev/null 2>&1 ||
112 echo "#include_next <libc-lock.h>" > libc-lock.h
113 echo 'asm (".weak _pthread_cleanup_pop_restore");' >> libc-lock.h
114 echo 'asm (".weak _pthread_cleanup_push_defer");' >> libc-lock.h
120 for frag in ${frags}; do
123 if [ ${srcdir} = . ]; then
124 [ -n "${with_target_subdir}" ] && frag=../${frag}
125 [ -n "${with_multisrctop}" ] && frag=${with_multisrctop}${frag}
129 frag=${srcdir}/config/$frag
130 if [ -f ${frag} ]; then
131 echo "Appending ${frag} to target-mkfrag"
132 echo "# Following fragment copied from ${frag}" >> temp.mt
133 cat ${frag} >> temp.mt
137 target_makefile_frag=target-mkfrag
138 ${moveifchange} temp.mt target-mkfrag
142 ALL='$(_G_CONFIG_H) libio.a libiostream.a iostream.list'
145 XCINCLUDES='-I. -I$(srcdir) -I$(srcdir)/../winsup/include'
146 XCXXINCLUDES='-I. -I$(srcdir) -I$(srcdir)/../winsup/include'
149 XCINCLUDES='-I. -I$(srcdir)'
150 XCXXINCLUDES='-I. -I$(srcdir)'
153 MOSTLYCLEAN='*.o pic stamp-picdir core iostream.list'
154 DISTCLEAN='config.status Makefile *~ Make.pack target-mkfrag multilib.out'
155 CLEAN='_G_config.h *.a'
157 if [ -n "${with_cross_host}" -a -d ${topsrcdir}/gcc ]; then
158 CHECK_SUBDIRS=testsuite
160 (. ${srcdir}/config.shared) >${package_makefile_frag} 2>${package_makefile_rules_frag}
164 # If cross-compiling, we install in $(tooldir)/lib or in $(libsubdir)
165 # depending on --enable-version-specific-runtime-libs.
166 if [ -n "${with_cross_host}" ] ; then
169 -e 's|\(^[ ]*INSTALLDIR[ ]*=[ ]*\)\$(libdir)|\1$(tooldir)/lib|' \
170 Makefile >Makefile.tem
171 mv -f Makefile.tem Makefile
174 . ${topsrcdir}/config-ml.in
177 # Specify the g++ header file directory
178 # Check whether --with-gxx-include-dir or --without-gxx-include-dir was given.
179 if test "${with_gxx_include_dir+set}" = set; then
180 withval="$with_gxx_include_dir"
183 echo "configure.in: error: bad value ${withval} given for g++ include directory" 1>&2
187 *) gxx_include_dir=$with_gxx_include_dir ;;
191 if test x${gxx_include_dir} = x; then
192 if test x${enable_version_specific_runtime_libs} = xyes; then
193 gxx_include_dir='${libsubdir}/include/g++'
195 . ${topsrcdir}/config.if
196 gxx_include_dir='${prefix}/include/g++'-${libstdcxx_interface}
201 sed -e "s%^gxx_include_dir[ ]*=.*$%gxx_include_dir=${gxx_include_dir}%" \
202 Makefile >Makefile.tem
203 mv -f Makefile.tem Makefile