22 TEMP_DIR=".tmp-`uname -n`"
25 echo "Cannot create tmp dir"
28 touch $TEMP_DIR/options
29 touch $TEMP_DIR/features
36 echo "Usage: $0 [OPTIONS]..."
38 Installation directories:
39 --prefix=PREFIX path prefix for architecture-independent files
41 --exec-prefix=EPREFIX path prefix for architecture-dependent files
44 --bindir=DIR user executables [EPREFIX/bin]
45 --sbindir=DIR system admin executables [EPREFIX/sbin]
46 --libexecdir=DIR program executables [EPREFIX/libexec]
47 --sysconfdir=DIR system configuration files [PREFIX/etc]
48 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
49 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
50 --libdir=DIR object code libraries [EPREFIX/lib]
51 --includedir=DIR C header files [PREFIX/include]
52 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
53 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
54 --infodir=DIR info documentation [DATAROOTDIR/info]
55 --mandir=DIR man documentation [DATAROOTDIR/man]
66 "--prefix="*) PREFIX=${ARG#--prefix=} ;;
67 "--exec-prefix="*) EPREFIX=${ARG#--exec-prefix=} ;;
68 "--bindir="*) BINDIR=${ARG#----bindir=} ;;
69 "--sbindir="*) SBINDIR=${ARG#--sbindir=} ;;
70 "--libdir="*) LIBDIR=${ARG#--libdir=} ;;
71 "--libexecdir="*) LIBEXECDIR=${ARG#--libexecdir=} ;;
72 "--datadir="*) DATADIR=${ARG#--datadir=} ;;
73 "--sysconfdir="*) SYSCONFDIR=${ARG#--sysconfdir=} ;;
74 "--sharedstatedir="*) SHAREDSTATEDIR=${ARG#--sharedstatedir=} ;;
75 "--localstatedir="*) LOCALSTATEDIR=${ARG#--localstatedir=} ;;
76 "--includedir="*) INCLUDEDIR=${ARG#--includedir=} ;;
77 "--infodir="*) INFODIR=${ARG#--infodir=} ;;
78 "--mandir"*) MANDIR=${ARG#--mandir} ;;
79 "--help"*) printhelp; exit 1 ;;
80 "-"*) echo "unknown option: $ARG"; exit 1 ;;
85 if [ -z "$BINDIR" ]; then
88 if [ -z "$SBINDIR" ]; then
91 if [ -z "$LIBDIR" ]; then
94 if [ -z "$LIBEXEC" ]; then
95 LIBEXECDIR=$EPREFIX/libexec
97 if [ -z "$DATADIR" ]; then
100 if [ -z "$SYSCONFDIR" ]; then
101 SYSCONFDIR=$PREFIX/etc
103 if [ -z "$SHAREDSTATEDIR" ]; then
104 SHAREDSTATEDIR=$PREFIX/com
106 if [ -z "$LOCALSTATEDIR" ]; then
107 LOCALSTATEDIR=$PREFIX/var
109 if [ -z "$INCLUDEDIR" ]; then
110 INCLUDEDIR=$PREFIX/include
112 if [ -z "$INFODIR" ]; then
115 if [ -z "$MANDIR" ]; then
119 which pkg-config > /dev/null
120 if [ $? -eq 0 ]; then
121 PKG_CONFIG=pkg-config
126 # Simple uname based platform detection
127 # $PLATFORM is used for platform dependent dependency selection
128 printf "detect platform... "
129 if [ $OS = SunOS ]; then
130 PLATFORM="solaris sunos unix svr4"
132 if [ $OS = Linux ]; then
133 PLATFORM="linux unix"
135 if [ $OS = FreeBSD ]; then
136 PLATFORM="freebsd bsd unix"
138 if [ $OS = Darwin ]; then
139 PLATFORM="macos osx bsd unix"
141 echo $OS | grep "MINGW" > /dev/null
142 if [ $? -eq 0 ]; then
143 PLATFORM="windows mingw"
146 if [ -z "$PLATFORM" ]; then
178 # generate config.mk and config.h
179 cat > $TEMP_DIR/config.mk << __EOF__
181 # config.mk generated by configure
192 LIBEXECDIR=$LIBEXECDIR
194 SYSCONFDIR=$SYSCONFDIR
195 SHAREDSTATEDIR=$SHAREDSTATEDIR
196 LOCALSTATEDIR=$LOCALSTATEDIR
197 INCLUDEDIR=$INCLUDEDIR
203 echo > $TEMP_DIR/make.mk
207 ENV_CXXFLAGS=$CXXFLAGS
209 # Toolchain detection
210 # this will insert make vars to config.mk
213 # add user specified flags to config.mk
214 echo >> $TEMP_DIR/config.mk
215 if [ ! -z "${ENV_CFLAGS}" ]; then
216 echo "CFLAGS += $ENV_CFLAGS" >> $TEMP_DIR/config.mk
218 if [ ! -z "${ENV_CXXFLAGS}" ]; then
219 echo "CXXFLAGS += $ENV_CXXFLAGS" >> $TEMP_DIR/config.mk
221 if [ ! -z "${ENV_LDFLAGS}" ]; then
222 echo "LDFLAGS += $ENV_LDFLAGS" >> $TEMP_DIR/config.mk
231 printf "checking for xft... "
235 if [ -z "$PKG_CONFIG" ]; then
239 if [ $? -ne 0 ] ; then
242 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags xft`"
243 LDFLAGS="$LDFLAGS `$PKG_CONFIG --libs xft`"
244 $PKG_CONFIG fontconfig
245 if [ $? -ne 0 ] ; then
248 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags fontconfig`"
249 LDFLAGS="$LDFLAGS `$PKG_CONFIG --libs fontconfig`"
259 printf "checking for motif... "
263 CFLAGS="$CFLAGS -DUI_MOTIF"
264 LDFLAGS="$LDFLAGS -lXm -lXt -lX11"
275 # general dependencies
280 if isnotplatform "unix"; then
286 cat >> $TEMP_DIR/make.mk << __EOF__
289 PACKAGE_SCRIPT = package_unix.sh
303 LDFLAGS="$LDFLAGS -lpthread"
312 if isnotplatform "bsd"; then
318 CFLAGS="$CFLAGS -I/usr/local/include"
319 LDFLAGS="$LDFLAGS -L/usr/local/lib"
327 # add general dependency flags to config.mk
328 echo >> $TEMP_DIR/config.mk
329 if [ ! -z "${CFLAGS}" ]; then
330 echo "CFLAGS += $CFLAGS" >> $TEMP_DIR/config.mk
332 if [ ! -z "${CXXFLAGS}" ]; then
333 echo "CXXFLAGS += $CXXFLAGS" >> $TEMP_DIR/config.mk
335 if [ ! -z "${LDFLAGS}" ]; then
336 echo "LDFLAGS += $LDFLAGS" >> $TEMP_DIR/config.mk
356 if [ $? -ne 0 ]; then
357 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED motif "
361 if [ $? -ne 0 ]; then
362 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED xft "
369 echo >> $TEMP_DIR/config.mk
370 if [ ! -z "${CFLAGS}" ]; then
371 echo "APP_CFLAGS += $CFLAGS" >> $TEMP_DIR/config.mk
373 if [ ! -z "${CXXFLAGS}" ]; then
374 echo "APP_CXXFLAGS += $CXXFLAGS" >> $TEMP_DIR/config.mk
376 if [ ! -z "${LDFLAGS}" ]; then
377 echo "APP_LDFLAGS += $LDFLAGS" >> $TEMP_DIR/config.mk
380 if [ $ERROR -ne 0 ]; then
382 echo "Error: Unresolved dependencies"
383 echo $DEPENDENCIES_FAILED
388 echo "configure finished"
391 echo " PREFIX: $PREFIX"
392 echo " TOOLCHAIN: $TOOLCHAIN_NAME"
394 cat $TEMP_DIR/config.mk $TEMP_DIR/make.mk > config.mk