Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Tag: Xalan-C_1_9_wi…
Fetching contributors…

Cannot retrieve contributors at this time

executable file 525 lines (447 sloc) 13.118 kB
#!/bin/sh
#
# Copyright 1999-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
# $Log$
# Revision 1.11 2004/04/19 14:54:08 dmitryh
# Fix for Bugzilla Bug 28452
#
# Revision 1.10 2004/04/06 15:08:44 dmitryh
# Changes for a cygwin build
#
# Revision 1.9 2004/03/03 15:06:39 mhoyt
# Patch for Bugzilla 27406 from Bjoern A. Zeeb: FreeBSD threading configuration
#
# Revision 1.8 2004/02/26 23:10:06 mhoyt
# Update to Apache 2.0 License
#
# Revision 1.7 2004/02/06 08:49:09 dbertoni
# Initial changes for HP-UX IA64 port.
#
# Revision 1.6 2004/02/06 08:39:35 dbertoni
# Initial changes for HP-UX IA64 port.
#
# Revision 1.5 2004/01/06 02:41:25 dbertoni
# Changes for Bugzilla 25914.
#
# Revision 1.4 2003/12/29 00:26:53 dbertoni
# Patches for Bugzilla 25361.
#
# Revision 1.3 2003/12/03 21:52:57 dbertoni
# Patch 25180 for iSeries support.
#
# Revision 1.2 2003/12/02 19:58:50 dbertoni
# Patch for Bugzilla 24567.
#
# Revision 1.1 2003/11/12 20:42:18 dbertoni
# Patches for bug 13238.
#
# Revision 1.4 2003/11/06 01:28:34 dbertoni
# Patch for bugzilla 13238.
#
# Revision 1.3 2003/09/19 20:33:04 dbertoni
# Massive copyright update.
#
# Revision 1.2 2003/07/22 10:59:40 blautenb
# FreeBSD and Install patch from Bjoern Zeeb - Bugzilla 13238
#
# Revision 1.1 2003/06/29 03:57:53 blautenb
# Moved source for sane includes
#
# Revision 1.19 2003/04/05 05:21:56 blautenb
# Fix for bug 18675
#
# Revision 1.18 2003/03/20 16:38:32 dbertoni
# Updates for Intel compiler on Linux.
#
# Revision 1.17 2003/02/08 01:39:33 dbertoni
# Don't add bitstobuildLink on AIX.
#
# Revision 1.16 2003/01/05 18:29:54 dbertoni
# Bump optimization level on Linux.
#
# Revision 1.15 2002/12/12 20:58:06 dbertoni
# Changes to build outside of the source tree. Fixes Bugzilla 4627.
#
# Revision 1.14 2002/11/05 05:15:59 dbertoni
# Add extra hint about using GNU make.
#
# Revision 1.13 2002/10/04 23:42:48 dbertoni
# Fixed getop problem.
#
# Revision 1.12 2002/08/05 21:21:02 dbertoni
# Fixed statement termination problem.
#
# Revision 1.11 2002/08/05 20:41:24 dbertoni
# Merge in HP changes.
#
# Revision 1.10 2002/08/05 20:33:54 dbertoni
# Changes to implement 32 and 64-bit builds.
#
# Revision 1.9 2002/08/01 18:36:38 dbertoni
# Added support for Intel compiler.
#
# Revision 1.8 2002/05/06 05:34:06 dbertoni
# Implemented multiple compiler options.
#
# Revision 1.7 2001/11/27 14:29:43 dbertoni
# Reverted previous changes.
#
# Revision 1.5 2001/08/14 16:10:18 dbertoni
# Changes from James Berry <jberry@criticalpath.com> for Mac OS X support.
#
# Revision 1.4 2001/05/18 18:24:12 dbertoni
# Added $compileroption to CXXFLAGS and CFLAGS. Bug 1810
#
# Revision 1.3 2001/04/13 02:53:20 dbertoni
# Changes for the TRU64 port.
#
# Revision 1.2 2001/03/15 15:56:36 dbertoni
# Add -D NDEBUG to release builds to disable assertions.
#
# Revision 1.1 2000/01/27 19:57:43 jdonohue
# Preliminary based on Xerces
#
# Revision 1.1 1999/12/21 01:13:53 jdonohue
# Make for linux, etc
#
#
#
#
# runConfigure:
# This script will run the "configure" script for the appropriate
# platform. Only supported platforms are recognized.
#
# The following variables are defined and exported at the end of this
# script.
#
# LIBS
# LDFLAGS
# CXXFLAGS
#
usage()
{
echo "runConfigure: Helper script to run \"configure\" for one of the supported platforms"
echo "Usage: runConfigure \"options\""
echo " where options may be any of the following:"
echo " -p <platform> (accepts 'aix', 'linux', 'freebsd', 'netbsd', 'solaris',
'hp-10', 'hp-11', 'hp-11-ia64', 'irix', 'tru64', 'macosx', 'os400', 'cygwin')"
echo " -c <C compiler name> (e.g. gcc, cc, xlc)"
echo " -x <C++ compiler name> (e.g. g++, CC, xlC)"
echo " -d (specifies that you want to build debug version)"
echo " -t <transcoder> can be 'icu' (everything else means default)"
echo " -m <msg locale system> (accepts 'inmem', 'icu','nls')"
echo " -M <locale> (example: 'fr_FR'. Default: 'en_US')"
echo " -r <thread option> can be 'pthread' or 'dce' (only used on HP-11)"
echo " -b <bitsToBuild> (accepts '64', '32')"
echo " -P <install-prefix>"
echo " -l <extra linker options>"
echo " -z <extra compiler options>"
echo " -C <any one extra configure options>"
echo " -h (to get help on the above commands)"
}
ERROR_EXIT_CODE=1
if test ${1}o = "o"; then
usage
exit ${ERROR_EXIT_CODE}
fi
if test ${XALANCROOT}o = "o"; then
echo ERROR : You have not set your XALANCROOT environment variable
echo Though this environment variable has nothing to do with creating makefiles,
echo this is just a general warning to prevent you from pitfalls in future. Please
echo set an environment variable called XALANCROOT to indicate where you installed
echo the XALAN-C files, and run this command again to proceed. See the documentation
echo for an example if you are still confused.
exit ${ERROR_EXIT_CODE}
fi
if test $1 = "-h"; then
usage
exit ${ERROR_EXIT_CODE}
fi
# Get the command line parameters
if test -x /bin/getopt -o -x /usr/bin/getopt; then
set -- `getopt C:p:P:c:x:dm:n:t:m:M:r:b:l:z:h $*`
else
set -- `getopts C:p:P:c:x:dm:n:t:m:M:r:b:l:z:h $*`
fi
if [ $? != 0 ]
then
usage
exit ${ERROR_EXIT_CODE}
fi
# Set up the default values for each parameter
debug=off # by default debug is off
bitsToBuild=32 # by default 32 bit build assumed
transcoder=default # by default use default transcoder
localSys=inmem # by default use inmem locale
locale=en_US # by default use US locale
while [ $# -gt 0 ]
do
case $1 in
-p)
platform=$2; shift 2;;
-c)
ccompiler=$2; shift 2;;
-x)
cppcompiler=$2; shift 2;;
-d)
debug=on; shift;;
-t)
transcoder=$2; shift 2;;
-m)
localSys=$2; shift 2;;
-M)
locale=$2; shift 2;;
-r)
thread=$2; shift 2;;
-b)
bitsToBuild=$2; shift 2;;
-P)
configureoptions="$configureoptions --prefix=$2"; shift 2;;
-l)
linkeroptions="$linkeroptions $2"; shift 2;;
-z)
compileroptions="$compileroptions $2"; shift 2;;
-C)
configureoptions="$configureoptions $2"; shift 2;;
-h)
usage
exit ${ERROR_EXIT_CODE};;
--)
shift; break;;
*)
echo "unknown option $1"
usage
exit ${ERROR_EXIT_CODE};;
esac
done
echo "Generating makefiles with the following options ..."
echo "Platform: $platform"
echo "C Compiler: $ccompiler"
echo "C++ Compiler: $cppcompiler"
echo "Extra compile options: $compileroptions"
echo "Extra link options: $linkeroptions"
echo "Transcoder: $transcoder"
echo "Localization system: $localSys"
echo "Locale: $locale"
echo "Thread option: $thread"
echo "bitsToBuild option: $bitsToBuild"
echo "Extra configure options: $configureoptions"
#
# Now check if the options are correct or not, bail out if incorrect
#
case $platform in
aix | linux | freebsd | netbsd | solaris | hp-11 | hp-11-ia64 | irix | tru64 | macosx | os400 | cygwin)
# platform has been recognized
;;
*)
echo "I do not recognize the platform '$platform'. Please type '${0} -h' for help."
exit ${ERROR_EXIT_CODE};;
esac
#
# Enable debugging or not...
#
if test $debug = "off"; then
echo "Debug is OFF"
if test $platform = "os400"; then
debugflag="";
elif test $platform = "linux"; then
if test $cppcompiler = "icpc"; then
debugflag="-O3 -DNDEBUG";
else
debugflag="-O2 -DNDEBUG";
fi
else
debugflag="-O -DNDEBUG";
fi
else
echo "Debug is ON"
debugflag="-g";
fi
#
# Check for the bitsToBuild option
#
#
# aix | linux | hp-11 | hp-11-ia64 | solaris |
# freebsd | netbsd | irix | openserver | unixware | os400 | ptx | tru64 | macosx
#
if test $bitsToBuild = 64; then
bitstobuildDefines=" -DXML_BITSTOBUILD_64 "
bitstobuildLink=" "
if test $platform; then
case $platform in
solaris)
bitstobuildDefines=" $bitstobuildDefines -xarch=v9 "
bitstobuildLink=" -xarch=v9 " ;;
aix)
bitstobuildDefines=" $bitstobuildDefines -q64 -qwarn64 " ;;
hp-11)
bitstobuildDefines=" $bitstobuildDefines +DA2.0W "
bitstobuildLink=" +DA2.0W " ;;
hp-11-ia64)
bitstobuildDefines=" $bitstobuildDefines +DD64 "
bitstobuildLink=" +DD64 " ;;
linux)
bitstobuildDefines=" $bitstobuildDefines " ;;
*)
;;
esac
fi
elif test $bitsToBuild = 32; then
bitstobuildDefines=""
bitstobuildLink=""
if test $platform; then
case $platform in
solaris)
;;
aix)
;;
hp-11)
bitstobuildDefines="+DAportable "
;;
hp-11-ia64)
bitstobuildDefines="+DD32 "
;;
hp-11-ia64)
bitstobuildDefines=" $bitstobuildDefines +DD32 "
;;
linux)
;;
*)
;;
esac
fi
else
echo "I do not recognize the bitsToBuild '$bitsToBuild'. Please type '${0} -h' for help."
exit ${ERROR_EXIT_CODE};
fi
#
# to export in case it is needed in Makefile.in/Makefine.incl
#
BITSTOBUILD=$bitsToBuild
export BITSTOBUILD
#
# Now check whether to use 'icu' as transcoder
#
TRANSCODER=
if test $transcoder; then
case $transcoder in
icu)
if test ${ICUROOT}o = "o"; then
echo '***Error*** ICUROOT environment variable not defined. Exiting...';
exit ${ERROR_EXIT_CODE};
fi
transcodingDefines="-I${ICUROOT}/include";
transcodingLibs="-L${ICUROOT} -L${ICUROOT}/lib -L${ICUROOT}/data";
TRANSCODER=ICU;;
default)
;;
*)
echo "Unknown transcoder '$transcoder'. Using default."
;;
esac
fi
export TRANSCODER
XALAN_LOCALE_SYSTEM=
if test $localSys; then
case $localSys in
icu)
if test ${ICUROOT}o = "o"; then
echo '***Error*** ICUROOT environment variable not defined. Exiting...'
exit ${ERROR_EXIT_CODE};
fi
XALAN_LOCALE_SYSTEM=ICU;;
inmem)
XALAN_LOCALE_SYSTEM=INMEM;;
nls)
XALAN_LOCALE_SYSTEM=NLS;;
default)
XALAN_LOCALE_SYSTEM=INMEM;;
*)
echo "Unknown locale '$localSys'. Using default."
esac
fi
export XALAN_LOCALE_SYSTEM
XALAN_LOCALE=$locale
export XALAN_LOCALE
#
# Check for the threading option
#
threadingLibs="-lpthread"
if test $platform = "hp-11"; then
if test $thread; then
case $thread in
pthread)
;;
dce)
threadingLibs="-lcma";
threadingDefines="-D_PTHREADS_DRAFT4 -DXML_USE_DCE" ;;
*)
echo "I do not recognize the thread option '$thread'. Please type '${0} -h' for help."
exit ${ERROR_EXIT_CODE};;
esac
fi
elif test $platform = "aix"; then
threadingLibs="-lpthreads"
elif test $platform = "freebsd"; then
if test -n "${PTHREAD_LIBS}" ; then
threadingLibs="${PTHREAD_LIBS}"
threadingDefines="${PTHREAD_CFLAGS}"
else
threadingLibs="-lpthread"
threadingDefines=""
fi
elif test $platform = "netbsd"; then
threadingLibs="-pthread -lpthread"
elif test $platform = "os400"; then
threadingLibs=""
fi
#
# Set the C compiler and C++ compiler environment variables
#
case $cppcompiler in
xlC | xlc | xlC_r | xlc_r | g++ | c++ | cc | CC | aCC | cxx | icpc | icc)
;;
*)
echo "I do not recognize the C++ compiler '$cppcompiler'. Continuing anyway ..."
;;
esac
CC="$ccompiler"
export CC
CXX="$cppcompiler"
export CXX
#
# Set the extra C and C++ compiler flags
#
CXXFLAGS="$compileroptions $debugflag $transcodingDefines $threadingDefines $bitstobuildDefines "
export CXXFLAGS
CFLAGS="$compileroptions $debugflag $transcodingDefines $threadingDefines $bitstobuildDefines "
export CFLAGS
LDFLAGS="$LDFLAGS $linkeroptions $bitstobuildLink"
export LDFLAGS
LIBS="$transcodingLibs $threadingLibs "
export LIBS
echo
rm -f config.cache
rm -f config.log
rm -f config.status
`dirname $0`/configure $configureoptions
echo
echo If the result of the above commands look OK to you, go to the directory
echo ${XALANCROOT} and type \"gmake\" or \"make\" to make the XALAN-C system.
echo
echo Note: You must use GNU make to use the Xalan Makefile.
exit 0;
Jump to Line
Something went wrong with that request. Please try again.