aboutsummaryrefslogtreecommitdiff
path: root/libstdc++/configure.in
blob: 09f645fd170730e12935bc4eb1e3e33c0a55d7c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# This file is a shell script fragment that supplies the information
# necessary for a configure script to process the program in
# this directory.  For more information, look at ../configure.

if [ "${srcdir}" = "." ] ; then
  if [ "${with_target_subdir}" != "." ] ; then
    topsrcdir=${with_multisrctop}../..
  else
    topsrcdir=${with_multisrctop}..
  fi
else
  topsrcdir=${srcdir}/..
fi

if [ -d ${topsrcdir}/gcc ] ; then
  configdirs="tests testsuite"
else
  configdirs="tests"
fi
srctrigger=sinst.cc
srcname="ANSI C++ library"
package_makefile_frag=Make.pack
package_makefile_rules_frag=Make.pack.r

# per-host:

# per-target:

echo "# Warning: this fragment is automatically generated" > temp.mt
frags=

# If they didn't specify --enable-shared, don't generate shared libs.
case "${enable_shared}" in
  yes) shared=yes ;;
  no) shared=no ;;
  *libstdc++*) shared=yes ;;
  *) shared=no ;;
esac

if [ "${shared}" = "yes" ]; then
  case "${target}" in
    hppa*-*-*)		frags=../../config/mh-papic ;;
    i[3456]86-*-*)	frags=../../config/mh-x86pic ;;
    *-*-*) 		frags=../../config/mh-${target_cpu}pic ;;
  esac
  case "${target}" in
    *-dec-osf*)		frags="${frags} dec-osf.ml";;
    *-*-hpux*)		frags="${frags} hpux.ml" ;;
    *-*-irix[56]*)	frags="${frags} irix5.ml" ;;
    *-*-linux*aout*)	;;
    *-*-linux*)		frags="${frags} linux.ml" ;;
    *-*-sysv4*)		frags="${frags} elf.ml" ;;
    *-*-solaris*)	frags="${frags} sol2shm.ml" ;;
    *-*-sunos4*)	frags="${frags} sunos4.ml" ;;
    *-*-aix*)		frags="${frags} aix.ml" ;;
  esac
fi

# Make sure the right flags are defined for multi-threading.
case "${target}" in
  alpha*-*-linux-gnulibc1)	frags="${frags} linux.mt" ;;
  powerpc*-*-linux-gnulibc1)	frags="${frags} linux.mt" ;;
  *-*-linux-gnu)		frags="${frags} linux.mt" ;;
  m68k-motorola-sysv)		frags="${frags} delta.mt" ;;
esac

for frag in ${frags}; do
  case ${frag} in
    ../* )
      if [ ${srcdir} = . ]; then
	[ -n "${with_target_subdir}" ] && frag=../${frag}
	[ -n "${with_multisrctop}" ] && frag=${with_multisrctop}${frag}
      fi
      ;;
  esac
  frag=${srcdir}/config/$frag
  if [ -f ${frag} ]; then
    echo "Appending ${frag} to target-mkfrag"
    echo "# Following fragment copied from ${frag}" >> temp.mt
    cat ${frag} >> temp.mt
  fi
done

target_makefile_frag=target-mkfrag
${moveifchange} temp.mt target-mkfrag

LIBDIR=yes
TO_TOPDIR=../
ALL='libs'
XCXXINCLUDES="-I${srcdir} -I${srcdir}/stl -I${TO_TOPDIR}libio -I${srcdir}/${TO_TOPDIR}libio"
MOSTLYCLEAN='*.o pic stamp-picdir core so_locations $(MOSTLYCLEAN_JUNK)'
CLEAN='$(CLEAN_JUNK)'
EXTRA_DISTCLEAN='target-mkfrag'

(. ${srcdir}/${TO_TOPDIR}libio/config.shared) >${package_makefile_frag} 2>${package_makefile_rules_frag}

. ${topsrcdir}/config.if
echo "
LIBSTDCXX_INTERFACE=${libstdcxx_interface}
CXX_INTERFACE=${cxx_interface}
LIBC_INTERFACE=${libc_interface}
" >> ${package_makefile_frag}

# post-target:

# If cross-compiling, we install in $(tooldir).
if [ -n "${with_cross_host}" ] ; then
    rm -f Makefile.tem
    sed \
	-e 's|\(^[ 	]*INSTALLDIR[ 	]*=[ 	]*\)[^ 	;]*|\1$(tooldir)/lib|' \
        Makefile >Makefile.tem
    mv -f Makefile.tem Makefile
fi

. ${topsrcdir}/config-ml.in