203 lines
5.6 KiB
Plaintext
203 lines
5.6 KiB
Plaintext
# Configure script for Digital Bazaar Bitmunk product line
|
|
# Usage: Run ./configure once
|
|
# Author: Manu Sporny
|
|
|
|
AC_PREREQ([2.60])
|
|
AC_INIT([forge],[0.1.0],[support@digitalbazaar.com])
|
|
AC_CONFIG_AUX_DIR(setup)
|
|
|
|
# Setup standard build environment variables
|
|
# FIXME: allow changing via configure option
|
|
FORGE_DIR=`(cd ${srcdir} && pwd)`
|
|
AC_SUBST(FORGE_DIR)
|
|
DATE_YMD=`date +%Y%m%d`
|
|
PACKAGE_DATE_VERSION=${PACKAGE_VERSION}-${DATE_YMD}
|
|
AC_SUBST(DATE_RFC_2822)
|
|
AC_SUBST(PACKAGE_DATE_VERSION)
|
|
|
|
dnl ----------------- docs -----------------
|
|
|
|
AC_ARG_ENABLE([docs],
|
|
AS_HELP_STRING([--enable-docs], [build documentation [no]]),
|
|
[
|
|
case "${enableval}" in
|
|
yes) BUILD_DOCS=yes ;;
|
|
no) BUILD_DOCS=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-docs) ;;
|
|
esac
|
|
], [BUILD_DOCS=no]) dnl Default value
|
|
|
|
AC_SUBST(BUILD_DOCS)
|
|
|
|
dnl ----------------- tests -----------------
|
|
|
|
AC_ARG_ENABLE([tests],
|
|
AC_HELP_STRING([--disable-tests], [disable building test apps [no]]),
|
|
[
|
|
case "${enableval}" in
|
|
yes) BUILD_TESTS=yes ;;
|
|
no) BUILD_TESTS=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
|
|
esac
|
|
], [BUILD_TESTS=no]) dnl Default value
|
|
|
|
AC_SUBST(BUILD_TESTS)
|
|
|
|
dnl ----------------- build flash -----------------
|
|
|
|
AC_ARG_ENABLE([flash],
|
|
AC_HELP_STRING([--disable-flash], [disable building Flash [no]]),
|
|
[
|
|
case "${enableval}" in
|
|
yes) BUILD_FLASH=yes ;;
|
|
no) BUILD_FLASH=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --disable-flash) ;;
|
|
esac
|
|
], [BUILD_FLASH=yes]) dnl Default value
|
|
|
|
AC_ARG_ENABLE([pre-built-flash],
|
|
AC_HELP_STRING([--disable-pre-built-flash],
|
|
[disable use of pre-built Flash [no]]),
|
|
[
|
|
case "${enableval}" in
|
|
yes) USE_PRE_BUILT_FLASH=yes ;;
|
|
no) USE_PRE_BUILT_FLASH=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --disable-flash) ;;
|
|
esac
|
|
], [USE_PRE_BUILT_FLASH=yes]) dnl Default value
|
|
|
|
AC_SUBST(BUILD_FLASH)
|
|
AC_SUBST(USE_PRE_BUILT_FLASH)
|
|
|
|
dnl ----------------- mxmlc -----------------
|
|
|
|
AC_ARG_WITH([mxmlc],
|
|
AC_HELP_STRING([--with-mxmlc=PATH],
|
|
[use PATH for mxmlc]),
|
|
[
|
|
case "${withval}" in
|
|
yes|no) AC_MSG_ERROR(bad value ${withval} for --with-mxmlc) ;;
|
|
*) MXMLC="${withval}" ;;
|
|
esac
|
|
if test "x$MXMLC" = x -o ! -x "$MXMLC"; then
|
|
AC_MSG_ERROR([mxmlc not found at "$MXMLC"])
|
|
fi
|
|
])
|
|
|
|
if test "$BUILD_FLASH" = "yes" ; then
|
|
dnl Need to try to find mxmlc
|
|
if test "x$MXMLC" = x; then
|
|
AC_CHECK_PROGS(MXMLC, mxmlc /usr/lib/flex3/bin/mxmlc,, $PATH /)
|
|
fi
|
|
dnl Check that mxmlc was found
|
|
if test "x$MXMLC" = x; then
|
|
if test "$USE_PRE_BUILT_FLASH" = "yes"; then
|
|
dnl Check pre-built SWF is present
|
|
if test -r "$FORGE_DIR/swf/SocketPool.swf"; then
|
|
AC_MSG_NOTICE([Using pre-built Flash])
|
|
BUILD_FLASH=no
|
|
else
|
|
AC_MSG_ERROR([mxmlc and pre-built Flash not found])
|
|
fi
|
|
else
|
|
AC_MSG_ERROR([mxmlc not found, try --with-mxmlc])
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
AC_SUBST(MXMLC)
|
|
|
|
dnl ----------------- mxmlc debug -----------------
|
|
|
|
AC_ARG_ENABLE([mxmlc-debug],
|
|
AC_HELP_STRING([--enable-mxmlc-debug], [enable mxmlc debug mode [no]]),
|
|
[
|
|
case "${enableval}" in
|
|
yes) MXMLC_DEBUG_MODE=yes ;;
|
|
no) MXMLC_DEBUG_MODE=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-mxmlc-debug) ;;
|
|
esac
|
|
], [MXMLC_DEBUG_MODE=no]) dnl Default value
|
|
|
|
AC_SUBST(MXMLC_DEBUG_MODE)
|
|
|
|
dnl ----------------- end of options -----------------
|
|
|
|
echo -e "\n--------- Configuring Build Environment -----------"
|
|
|
|
PKG_PROG_PKG_CONFIG
|
|
|
|
# Checking for standard build tools
|
|
AC_PROG_CPP
|
|
AC_PROG_INSTALL
|
|
AS_PATH_PYTHON([2.7])
|
|
|
|
if test "x$PYTHON" != x; then
|
|
save_CPPFLAGS="$CPPFLAGS"
|
|
AC_CHECK_PROGS([PYTHON_CONFIG], [python-config])
|
|
if test "x$PYTHON_CONFIG" != x; then
|
|
CPPFLAGS="$CPPFLAGS `$PYTHON_CONFIG --cflags`"
|
|
fi
|
|
AC_CHECK_HEADERS([Python.h],
|
|
[BUILD_PYTHON_MODULES=yes],
|
|
[BUILD_PYTHON_MODULES=no
|
|
AC_MSG_WARN([Python.h not found, SSL bindings will not be build.])])
|
|
CPPFLAGS="$save_CPPFLAGS"
|
|
else
|
|
AC_MSG_WARN([Need at least Python 2.7 to build SSL bindings.])
|
|
fi
|
|
|
|
AC_SUBST(BUILD_PYTHON_MODULES)
|
|
|
|
dnl ----------------------------------
|
|
|
|
dnl NOTE:
|
|
dnl This code was used previously to autogenerate the .gitignore file but due
|
|
dnl to the current more common use of just the js files, it's likely people
|
|
dnl who checkout the code will never run the build scripts. The files are now
|
|
dnl just hardcoded into .gitignore and should be updated by hand as needed.
|
|
dnl
|
|
dnl # Generating files
|
|
dnl AC_CONFIG_FILES([
|
|
dnl .gitignore
|
|
dnl Makefile
|
|
dnl ])
|
|
dnl
|
|
dnl # add newlines to internal output file list
|
|
dnl CONFIGURE_GENERATED_FILES="`echo $ac_config_files | tr ' ' '\n'`"
|
|
dnl AC_SUBST(CONFIGURE_GENERATED_FILES)
|
|
|
|
AC_OUTPUT
|
|
|
|
# Dump the build configuration
|
|
|
|
echo -e "\n--------- Forge Build Environment -----------"
|
|
echo "Forge Version : $PACKAGE_NAME $PACKAGE_DATE_VERSION"
|
|
|
|
if test "x$BUILD_FLASH" = "xyes" ; then
|
|
echo "Adobe Flash : Flash building enabled"
|
|
echo "MXMLC : $MXMLC"
|
|
echo "MXMLC Debug flags : $MXMLC_DEBUG_MODE"
|
|
else
|
|
echo "Adobe Flash : using pre-built Flash"
|
|
fi
|
|
|
|
if test "x$BUILD_PYTHON_MODULES" = "xyes" ; then
|
|
echo "Python : $PYTHON (version $PYTHON_VERSION)"
|
|
else
|
|
echo "Python : development environment not found"
|
|
fi
|
|
|
|
if test "x$BUILD_DOCS" = "xyes"; then
|
|
echo "Documentation : enabled"
|
|
else
|
|
echo "Documentation : disabled (use --enable-docs to enable)"
|
|
fi
|
|
|
|
if test "x$BUILD_TESTS" = "xyes"; then
|
|
echo "Tests : enabled"
|
|
else
|
|
echo "Tests : disabled (use --enable-tests to enable)"
|
|
fi
|
|
|