1b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#!/bin/sh
2b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho# Copyright (c) 1999-2011, International Business Machines Corporation and
3b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# others. All Rights Reserved.
4b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
5b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# runConfigureICU: This script will run the "configure" script for the appropriate platform
6b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# Only supported platforms are recognized
7b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
8b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querume=`basename $0`
9b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruOPTS=
10b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
11b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruusage()
12b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru{
13b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    ec=0$1
14b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test $ec -eq 0
15b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
16b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        uletter=U
17b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    else
18b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        uletter=u
19b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
20b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
21b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    echo "${uletter}sage: $me [ -h, --help ]  [ --enable-debug | --disable-release ] platform [ configurearg ... ]"
22b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test $ec -eq 0
23b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
24b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        cat <<EOE
25b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
26b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruOptions: -h, --help         Print this message and exit
27b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru         --enable-debug     Enable support for debugging
28b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru         --disable-release  Disable presetting optimization flags
29b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
30b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruThe following names can be supplied as the argument for platform:
31b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
32b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    AIX                 Use the IBM Visual Age xlc_r/xlC_r compilers on AIX
33b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    AIX/GCC             Use the GNU gcc/g++ compilers on AIX
34b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin              Use the GNU gcc/g++ compilers on Cygwin
35b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/MSVC         Use the Microsoft Visual C++ compiler on Cygwin
36b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/MSVC2005     Use the Microsoft Visual C++ 2005 compiler on Cygwin
37b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/ICL          Use the Intel C++ compiler on Cygwin
38b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    FreeBSD             Use the GNU gcc/g++ compilers on Free BSD
39b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    HP-UX/ACC           Use the HP ANSI C/Advanced C++ compilers on HP-UX 11
40c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru    IBMi                Use the iCC compilers on IBM i, i5/OS, OS/400
41b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux               Use the GNU gcc/g++ compilers on Linux
42b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/ECC           Use the Intel ECC compiler on Linux
43b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/ICC           Use the Intel ICC compiler on Linux
44b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/VA            Use the IBM Visual Age compiler on Power PC Linux
45b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    MacOSX              Use the GNU gcc/g++ compilers on MacOS X (Darwin)
46b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho    MinGW               Use the GNU gcc/g++ compilers on MinGW
47b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    QNX                 Use the QNX QCC compiler on QNX/Neutrino
48b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Solaris             Use the Sun cc/CC compilers on Solaris
49b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Solaris/GCC         Use the GNU gcc/g++ compilers on Solaris
50b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    SolarisX86          Use the Sun cc/CC compilers on Solaris x86
51b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    TRU64V5.1/CXX       Use the Compaq cxx compiler on Tru64 (OSF)
52b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    zOS                 Use the IBM cxx compiler on z/OS (os/390)
53b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    zOSV1R2             Use the IBM cxx compiler for z/OS 1.2
54b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruEOE
55b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
56b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
57b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    exit $ec
58b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru}
59b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
60b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# Parse arguments
61b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
62b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruplatform=
63b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querudebug=0
64b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querurelease=1
65b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
66b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruwhile test $# -ne 0
67b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querudo
68b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    case "$1" in
69b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    -h|--help)
70b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        usage 0
71b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
72b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    --enable-debug)
73b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        debug=1
74b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        OPTS="$OPTS --enable-debug"
75b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
76b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    --disable-release)
77b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        release=0
78b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        OPTS="$OPTS --disable-release"
79b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
80b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    *)
81b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        platform="$1"
82b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        shift
83b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        break
84b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
85b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    esac
86b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    shift
87b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querudone
88b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
89b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruif test x$platform = x
90b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruthen
91b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru   usage 1
92b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querufi
93b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
94b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# Go.
95b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
96b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querurm -f config.cache
97b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querurm -f config.log
98b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querurm -f config.status
99b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
100b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruDEBUG_CFLAGS='-g'
101b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruDEBUG_CXXFLAGS='-g'
102b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
103b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruif test x$configure = x
104b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruthen
105b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test -f ./configure
106b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
107b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        configuredir=.
108b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    else
109b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        configuredir=`echo $0 | sed 's,[^/]*$,,'`
110b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        if test x$configuredir = x$0
111b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        then
112b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru            configuredir=.
113b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        fi
114b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
115b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
116b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test x$configuredir = x
117b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
118b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        configuredir=.
119b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
120b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
121b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    configure=$configuredir/configure
122b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querufi
123b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
124b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querucase $platform in
125b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    AIX)
126b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS=AIX
127b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="xlC_r"
128b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=`which xlc_r`; export CC
12950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        if [ ! -x $CC ]; then
13050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho           echo "ERROR: xlc_r was not found, please check the PATH to make sure it is correct."; exit 1
13150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        fi
132b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=`which xlC_r`; export CXX
13350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        if [ ! -x $CXX ]; then
13450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho           echo "ERROR: xlC_r was not found, please check the PATH to make sure it is correct."; exit 1
13550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        fi
136b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS="-O2 -qmaxmem=-1"
137b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS="-O2 -qmaxmem=-1"
138b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
139b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    AIX/GCC)
140b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS=AIX
141b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
142b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=gcc; export CC
143b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=g++; export CXX
14427f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CFLAGS='-g -O0'
14527f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CXFLAGS='-g -O0'
146b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
147b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Solaris)
148b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS=SOLARIS
149b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Sun's CC"
150b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=`which cc`; export CC
151b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=`which CC`; export CXX
152b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        RELEASE_CFLAGS="-xO1 -xlibmil"
153b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS="-O4 -xlibmil"
154b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
155b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Solaris/GCC)
156b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS=SOLARIS
157b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
158b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=gcc; export CC
159b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=g++; export CXX
160b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS=-O1
161b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS=-O3
162b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
163b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    SolarisX86)
164b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="SOLARIS X86"
165b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Sun's CC"
166b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=`which cc`; export CC
167b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=`which CC`; export CXX
168b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        LDFLAGS="${LDFLAGS} -lCrun";export LDFLAGS
169b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS=-xO3
170b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS=-O3
171b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
172b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    HP-UX/ACC)
173b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="HP-UX 11"
174b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="aCC"
175b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cc; export CC
176b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=aCC; export CXX
177b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='+O2 +Ofltacc'
178b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='+O2 +Ofltacc'
179b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
180c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru    IBMi)
181c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru        THE_OS="IBM i"
182c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru        THE_COMP="the iCC C++"
183b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        CC=icc; export CC
184b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        CXX=icc; export CXX
18550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        CPP="$CC -c -qpponly"; export CPP
186b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        MAKE=gmake; export MAKE
187b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        U_MAKE=gmake; export U_MAKE
188b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        # gmake is a .pgm and may not be on the path.  Don't use a full path, just use gmake.
189b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        ac_cv_path_U_MAKE=gmake; export ac_cv_path_U_MAKE
190b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='-O4'
191b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='-O4'
192b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
193b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/ECC)
194b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Linux"
195b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Intel ECC 7.1"
196b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=ecc; export CC
197b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=ecpc; export CXX
198b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='-O2'
199b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='-O2'
200b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
201b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/ICC)
202b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Linux"
203b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=`which icc`; export CC
204b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=`which icpc`; export CXX
20550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho	ICC_VER=`${CC} -v 2>&1`
206b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='-O'
207b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='-O'
20850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        export CFLAGS="-fp-model precise"
20950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        export CXXFLAGS="-fp-model precise"
21050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho	if [ "${ICC_VER}" = "Version 9.0 " ]; then
21150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho		RELEASE_CFLAGS=''
21250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho		RELEASE_CXXFLAGS=''
21350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho		export CFLAGS="${CFLAGS} -O0"
21450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho		export CXXFLAGS="${CXXFLAGS} -O0"
21550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho		echo "ICC 9.0 does not work with optimization- disabling optimizations"
21650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho	fi
21750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        THE_COMP="Intel ${ICC_VER}"
218b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
219b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux/VA)
220b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Linux"
221b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="IBM Visual Age C++ Compiler"
222b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=`which xlc_r`; export CC
223b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=`which xlC_r`; export CXX
224b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS="-O2 -qmaxmem=-1"
225b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS="-O2 -qmaxmem=-1"
226b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
227b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Linux*)
228b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Linux"
229b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
230b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=gcc; export CC
231b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=g++; export CXX
23227f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CFLAGS='-g -O0'
23327f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CXFLAGS='-g -O0'
234b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
235b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin)
236b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Cygwin"
237b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
238b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='-O3'
239b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='-O3'
240b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
241b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/MSVC)
242b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Windows with Cygwin"
243b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Microsoft Visual C++"
244b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cl; export CC
245b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=cl; export CXX
24650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        RELEASE_CFLAGS='/Gy /MD'
24750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        RELEASE_CXXFLAGS='/Gy /MD'
24850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        DEBUG_CFLAGS='/Zi /MDd'
24950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        DEBUG_CXXFLAGS='/Zi /MDd'
250b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        DEBUG_LDFLAGS='/DEBUG'
251b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
252b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/MSVC2005)
253b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Windows with Cygwin"
254b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Microsoft Visual C++ 2005"
255b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cl; export CC
256b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=cl; export CXX
25750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        RELEASE_CFLAGS='/Gy /MD'
25850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        RELEASE_CXXFLAGS='/Gy /MD'
25950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        DEBUG_CFLAGS='/Zi /MDd'
26050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        DEBUG_CXXFLAGS='/Zi /MDd'
261b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        DEBUG_LDFLAGS='/DEBUG'
262b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
263b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    Cygwin/ICL)
264b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="Windows with Cygwin"
265b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Intel C++"
266b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=icl; export CC
267b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=icl; export CXX
268b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        # The Intel compiler has optimization bugs. So we disable optimization.
269b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='/Od'
270b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='/Od'
271b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        DEBUG_CFLAGS='/Zi'
272b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        DEBUG_CXXFLAGS='/Zi'
273b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        DEBUG_LDFLAGS='/DEBUG'
274b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
275b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    MacOSX)
276b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="MacOS X (Darwin)"
277b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
278b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS='-O2'
279b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS='-O2'
28027f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CFLAGS='-g -O0'
28127f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CXXFLAGS='-g -O0'
282b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
283b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho    MinGW)
284b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        THE_OS="MinGW"
285b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        THE_COMP="the GNU C++"
286b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        RELEASE_CFLAGS='-O3'
287b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        RELEASE_CXXFLAGS='-O3'
288b26ce3a7367e4ed2ee7ddddcdc3f3d3377a455c2claireho        ;;
289b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    *BSD)
290b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="BSD"
291b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="the GNU C++"
292b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=gcc; export CC
293b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=g++; export CXX
29427f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CFLAGS='-g -O0'
29527f654740f2a26ad62a5c155af9199af9e69b889claireho        DEBUG_CXFLAGS='-g -O0'
296b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
297b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    TRU64V5.1/CXX)
298b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="OSF1"
299b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="Compaq cxx"
300b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cc; export CC
301b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=cxx; export CXX
302b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
303b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    QNX)
304b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="QNX"
305b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="QNX cc"
306b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=qcc; export CC
307b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=QCC; export CXX
308b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
309b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    zOS)
310b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="z/OS (OS/390)"
311b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="z/OS C/C++"
312b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cc; export CC
313b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=cxx; export CXX
314b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CFLAGS="-2 -Wc,'inline(auto,noreport,500,4000)'"
315b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        RELEASE_CXXFLAGS="-2 -Wc,'inline(auto,noreport,500,4000)'"
316b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
317b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    zOSV1R2)
318b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_OS="z/OS 1.2"
319b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        THE_COMP="z/OS 1.2 C/C++"
320b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CC=cc; export CC
321b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXX=cxx; export CXX
32250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho        export COMPILE_LINK_ENVVAR='_CXX_CICC_VER}=0x41020000 _C89_CVERSION=0x41020000 _CC_CVERSION=0x41020000 _CXX_PVERSION=0x41020000 _C89_PVERSION=0x41020000 _CC_PVERSION=0x41020000'
323b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        export _CXX_CVERSION=0x41020000 _C89_CVERSION=0x41020000 _CC_CVERSION=0x41020000 _CXX_PVERSION=0x41020000 _C89_PVERSION=0x41020000 _CC_PVERSION=0x41020000
324b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        export LDFLAGS="-Wl,'compat=pm3'"
325b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        export CFLAGS="-Wc,'target(zOSV1R2)'"
326b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        export CXXFLAGS="-Wc,'target(zOSV1R2)'"
32727f654740f2a26ad62a5c155af9199af9e69b889claireho        RELEASE_CFLAGS="-2 -Wc,'inline(auto,noreport,500,4000)'"
32827f654740f2a26ad62a5c155af9199af9e69b889claireho        RELEASE_CXXFLAGS="-2 -Wc,'inline(auto,noreport,500,4000)'"
329b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        ;;
330b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    *)
331b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        >&2 echo "$me: unrecognized platform \"$platform\" (use --help for help)"
332b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        exit 1;;
333b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruesac
334b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
335b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
336b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# Tweak flags
337b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
338b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruif test $release -eq 1
339b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruthen
340b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$RELEASE_CFLAGS" = ""
341b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
342b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        case $CC in
343b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru            gcc|*/gcc|*-gcc-*|*/*-gcc-*)
344b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru                RELEASE_CFLAGS=-O3
345b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru                ;;
346b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        esac
347b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
348b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$RELEASE_CFLAGS" != ""
349b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
350b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CFLAGS="$CFLAGS $RELEASE_CFLAGS"
351b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
352b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$RELEASE_CXXFLAGS" = ""
353b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
354b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        case $CXX in
355b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru            g++|*/g++|*-g++-*|*/*-g++-*)
35650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho                RELEASE_CXXFLAGS=-O3
357b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru                ;;
358b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        esac
359b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
360b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$RELEASE_CXXFLAGS" != ""
361b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
362b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXXFLAGS="$CXXFLAGS $RELEASE_CXXFLAGS"
363b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
364b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$RELEASE_LDFLAGS" != ""
365b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
366b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        LDFLAGS="$LDFLAGS $RELEASE_LDFLAGS"
367b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
368b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querufi
369b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
370b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruif test $debug -eq 1
371b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruthen
372b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$DEBUG_CFLAGS" != ""
373b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
374b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CFLAGS="$CFLAGS $DEBUG_CFLAGS"
375b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
376b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$DEBUG_CXXFLAGS" != ""
377b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
378b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        CXXFLAGS="$CXXFLAGS $DEBUG_CXXFLAGS"
379b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
380b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    if test "$DEBUG_LDFLAGS" != ""
381b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    then
382b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru        LDFLAGS="$LDFLAGS $DEBUG_LDFLAGS"
383b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru    fi
384b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querufi
385b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
386b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruexport CFLAGS
387b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruexport CXXFLAGS
388b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruexport LDFLAGS
389b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
390b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru# Run configure
391b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru
39227f654740f2a26ad62a5c155af9199af9e69b889clairehoecho "export CPP=$CPP CC=$CC CXX=$CXX CPPFLAGS=$CPPFLAGS CFLAGS=$CFLAGS CXXFLAGS=$CXXFLAGS LDFLAGS=$LDFLAGS MAKE=$MAKE"
393b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruecho "Running ./configure $OPTS $@ for $THE_OS using $THE_COMP compiler"
394b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruecho
395b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queruif $configure $OPTS $@
396b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queruthen
397b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	echo
398b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	echo If the result of the above commands looks okay to you, go to the directory
399b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	echo source in the ICU distribution to build ICU. Please remember that ICU needs
400b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	echo GNU make to build properly...
401b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queruelse
402b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	echo $0: ./configure failed
403b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru	exit 1
404b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Querufi
405