Makefile.in: Change mkstemp -> mkstemps.
[gcc.git] / libstdc++ / configure.in
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.
4
5 # If the language specific compiler does not exist, but the "gcc" directory does,
6 # we do not build anything. Note, $r is set by the top-level Makefile.
7 compiler_name=cc1plus
8 rm -f skip-this-dir
9 if test -n "$r"; then
10 if test -d "$r"/gcc; then
11 if test -f "$r"/gcc/$compiler_name; then
12 true
13 else
14 echo "rm -f multilib.out" > skip-this-dir
15 fi
16 fi
17 fi
18
19 if [ "${srcdir}" = "." ] ; then
20 if [ "${with_target_subdir}" != "." ] ; then
21 topsrcdir=${with_multisrctop}../..
22 else
23 topsrcdir=${with_multisrctop}..
24 fi
25 else
26 topsrcdir=${srcdir}/..
27 fi
28
29 if [ -d ${topsrcdir}/gcc ] ; then
30 configdirs="tests testsuite"
31 else
32 configdirs="tests"
33 fi
34 srctrigger=sinst.cc
35 srcname="ANSI C++ library"
36 package_makefile_frag=Make.pack
37 package_makefile_rules_frag=Make.pack.r
38
39 # per-host:
40
41 # per-target:
42
43 echo "# Warning: this fragment is automatically generated" > temp.mt
44 frags=
45
46 # If they didn't specify --enable-shared, don't generate shared libs.
47 case "${enable_shared}" in
48 yes) shared=yes ;;
49 no) shared=no ;;
50 *libstdc++*) shared=yes ;;
51 *) shared=no ;;
52 esac
53
54 if [ "${shared}" = "yes" ]; then
55 case "${target}" in
56 hppa*-*-*) frags=../../config/mh-papic ;;
57 i[3456]86-*-*) frags=../../config/mh-x86pic ;;
58 *-*-*) frags=../../config/mh-${target_cpu}pic ;;
59 esac
60 case "${target}" in
61 *-dec-osf*) frags="${frags} dec-osf.ml";;
62 *-*-hpux*) frags="${frags} hpux.ml" ;;
63 *-*-irix[56]*) frags="${frags} irix5.ml" ;;
64 *-*-linux*aout*) ;;
65 *-*-linux*) frags="${frags} linux.ml" ;;
66 *-*-sysv[45]*|*-*-udk*) frags="${frags} elf.ml" ;;
67 *-*-solaris*) frags="${frags} sol2shm.ml" ;;
68 *-*-sunos4*) frags="${frags} sunos4.ml" ;;
69 *-*-aix*) frags="${frags} aix.ml" ;;
70 i[3456]86-*-interix*) frags="${frags} x86-interix.ml" ;;
71 esac
72 fi
73
74 # Make sure the right flags are defined for multi-threading.
75 case "${target}" in
76 alpha*-*-linux-gnulibc1) frags="${frags} linux.mt" ;;
77 powerpc*-*-linux-gnulibc1) frags="${frags} linux.mt" ;;
78 *-*-linux-gnu) frags="${frags} linux.mt" ;;
79 m68k-motorola-sysv) frags="${frags} delta.mt" ;;
80 *-*-solaris*)
81 case "x${enable_threads}" in
82 xposix) frags="${frags} sol2pth.mt" ;;
83 xsolaris) frags="${frags} sol2solth.mt" ;;
84 esac ;;
85 *)
86 case "x${enable_threads}" in
87 xposix) frags="${frags} posix.mt" ;;
88 esac ;;
89 esac
90
91 for frag in ${frags}; do
92 case ${frag} in
93 ../* )
94 if [ ${srcdir} = . ]; then
95 [ -n "${with_target_subdir}" ] && frag=../${frag}
96 [ -n "${with_multisrctop}" ] && frag=${with_multisrctop}${frag}
97 fi
98 ;;
99 esac
100 frag=${srcdir}/config/$frag
101 if [ -f ${frag} ]; then
102 echo "Appending ${frag} to target-mkfrag"
103 echo "# Following fragment copied from ${frag}" >> temp.mt
104 cat ${frag} >> temp.mt
105 fi
106 done
107
108 target_makefile_frag=target-mkfrag
109 ${moveifchange} temp.mt target-mkfrag
110
111 LIBDIR=yes
112 TO_TOPDIR=../
113 ALL='libs'
114 XCXXINCLUDES="-I${srcdir} -I${srcdir}/stl -I${TO_TOPDIR}libio -I${srcdir}/${TO_TOPDIR}libio"
115 MOSTLYCLEAN='*.o pic stamp-picdir core so_locations $(MOSTLYCLEAN_JUNK)'
116 CLEAN='$(CLEAN_JUNK)'
117 EXTRA_DISTCLEAN='target-mkfrag'
118
119 (. ${srcdir}/${TO_TOPDIR}libio/config.shared) >${package_makefile_frag} 2>${package_makefile_rules_frag}
120
121 . ${topsrcdir}/config.if
122 echo "
123 LIBSTDCXX_INTERFACE=${libstdcxx_interface}
124 CXX_INTERFACE=${cxx_interface}
125 LIBC_INTERFACE=${libc_interface}
126 " >> ${package_makefile_frag}
127
128 # This duplicated the AC_PROG_LN_S macro in GNU autoconf.
129 rm -f conttestdata
130 if ln -s X conftestdata 2>/dev/null
131 then
132 rm -f conftestdata
133 LN_S="ln -s"
134 else
135 LN_S=ln
136 fi
137 echo "
138 LN_S=$LN_S
139 " >> ${package_makefile_frag}
140
141 # post-target:
142
143 # If cross-compiling, we install in $(tooldir)/lib or in $(libsubdir)
144 # depending on --enable-version-specific-runtime-libs.
145 if [ -n "${with_cross_host}" ] ; then
146 rm -f Makefile.tem
147 sed \
148 -e 's|\(^[ ]*INSTALLDIR[ ]*=[ ]*\)\$(libdir)|\1$(tooldir)/lib|' \
149 Makefile >Makefile.tem
150 mv -f Makefile.tem Makefile
151 fi
152
153 . ${topsrcdir}/config-ml.in