[project @ 2000-05-02 07:50:41 by chak]
[ghc-hetmet.git] / distrib / configure-bin.in
1 dnl
2 dnl Binary distribution configure script
3 dnl
4 #!/bin/sh
5 #
6
7 # Is it there?
8 AC_INIT(Makefile.in)
9
10 exeext=''
11
12 #
13 # First off, what system are we running under?
14 #
15 AC_CANONICAL_SYSTEM
16
17 dnl ** canonicalize platform names
18 # Canonicali[sz]e the platform name
19 TargetPlatform=`/bin/sh $srcdir/config.sub $target` || exit 1
20
21 #
22 # The following will be more difficult when we *are* cross-compiling.
23 # Suitable names to slam in *_CPP are in platform.h.in.
24 # We also record the architecture, vendor, and operating system (OS)
25 # separately.
26 case $TargetPlatform in
27 alpha-dec-osf[[12]]*)
28         TargetPlatform=alpha-dec-osf1;;
29 alpha-dec-osf[[34]]*)
30         TargetPlatform=alpha-dec-osf3;;
31 alpha-unknown-linux)
32         TargetPlatform=alpha-unknown-linux;;
33 alpha-unknown-freebsd*)
34         TargetPlatform=alpha-unknown-freebsd;;
35 hppa1.1-hp-hpux*)
36         TargetPlatform=hppa1.1-hp-hpux;;
37 i[[3456]]86-*-linuxaout*)
38         TargetPlatform=i386-unknown-linuxaout;;
39 i[[3456]]86-*-linux*)
40         TargetPlatform=i386-unknown-linux;;
41 i[[3456]]86-*-freebsd2*)
42         TargetPlatform=i386-unknown-freebsd2;;
43 i[[3456]]86-*-freebsd[[3-9]]*)
44         TargetPlatform=i386-unknown-freebsd;;
45 i[[3456]]86-*-netbsd*)
46         TargetPlatform=i386-unknown-netbsd;;
47 i[[3456]]86-*-solaris2*)
48         TargetPlatform=i386-unknown-solaris2;;
49 i[[3456]]86-*-cygwin32*)
50         exeext='.exe'
51         TargetPlatform=i386-unknown-cygwin32;;
52 i[[3456]]86-*-mingw32*)
53         exeext='.exe'
54         # We assume you're using mingw32 via the gcc that comes
55         # with cygwin, and not the native port, so let's augment
56         # the gcc command-line used here with -mno-cygwin to
57         # arrange for good things to happen.
58         CFLAGS="-mno-cygwin $CFLAGS"
59         TargetPlatform=i386-unknown-mingw32
60         ;;
61 m68k-next-nextstep2)
62         TargetPlatform=m68k-next-nextstep2;;
63 m68k-next-nextstep3)
64         TargetPlatform=m68k-next-nextstep3;;
65 i[[3456]]86-next-nextstep3)
66         TargetPlatform=i386-next-nextstep3;;
67 m68k-sun-sunos4*)
68         TargetPlatform=m68k-sun-sunos4;;
69 mips-dec-ultrix*)
70         TargetPlaformP=mips-dec-ultrix;;
71 mips-sgi-irix*)
72         TargetPlatform=mips-sgi-irix;;
73 powerpc-ibm-aix*)
74         TargetPlatform=powerpc-ibm-aix;;
75 rs6000-ibm-aix*)
76         TargetPlatform=rs6000-ibm-aix;;
77 sparc-sun-sunos4*)
78         TargetPlatform=sparc-sun-sunos4;;
79 sparc-sun-solaris2*)
80         TargetPlatform=sparc-sun-solaris2;;
81 *)
82         echo "Unrecognised platform: $TargetPlatform"
83         exit 1
84         ;;
85 esac
86 echo "Which we'll further canonicalise into: $TargetPlatform"
87
88 AC_SUBST(TargetPlatform)
89 AC_SUBST(exeext)
90
91 AC_CHECK_PROG(PerlCmd,perl,$ac_dir/$ac_word)
92 if test -z "$PerlCmd"; then
93     echo "You must install perl before you can continue"
94     echo "Perhaps it is already installed, but not in your PATH?"
95     echo ""
96     echo "Continuing, assuming perl will be available as: perl"
97 fi
98 #
99 dnl ** does #!.../perl work? (sometimes it's too long...)
100 echo "checking if \`#!$PerlCmd' works in shell scripts"
101 echo "#!$PerlCmd"'
102 exit $1;
103 ' > conftest
104 chmod u+x conftest
105 (SHELL=/bin/sh; export SHELL; ./conftest 69 > /dev/null)
106 if test $? -ne 69; then
107    echo "It does!"
108 else
109    echo "It doesn't!  Perhaps \`#!$PerlCmd' is too long (often 32 characters max).."
110 fi
111 rm -f conftest
112
113 #
114 dnl ** figure out how to do a BSD-ish install **
115 #
116 AC_PROG_INSTALL
117
118 #
119 dnl ** how to do symlinks **
120 #
121 AC_PROG_LN_S()
122
123 #
124 dnl ** Find the path to sed **
125 #
126 AC_PATH_PROG(SedCmd,sed)
127
128 #
129 dnl ** How to invoke cpp directly **
130 #
131 AC_PROG_CC
132 FPTOOLS_HAVE_GCC
133 AC_PROG_CPP
134
135 #
136 AC_OUTPUT(Makefile)
137
138 echo "****************************************************"
139 echo "Configuration done, ready to either 'make install'"
140 echo "or 'make in-place', followed by 'make install-docs'."
141 echo "(see README and INSTALL files for more info.)"
142 echo "****************************************************"