Rev 301 | Blame | Compare with Previous | Last modification | View Log | RSS feed
AC_DEFUN([FB_INITIALIZE],[AM_INIT_AUTOMAKE([ foreign 1.9.5 no-define ])if test "x$1" = "xlocalinstall"; thenwdir=`pwd`# To use $wdir undef quote.###########AC_PREFIX_DEFAULT([`pwd`/install])echofiAC_PROG_CCAC_PROG_CXXAC_PROG_RANLIB(RANLIB, ranlib)AC_PATH_PROGS(BASH, bash)AC_PATH_PROGS(PERL, perl)AC_PATH_PROGS(PYTHON, python)AC_PATH_PROGS(AR, ar)AC_PATH_PROGS(ANT, ant)PRODUCT_MK=""])AC_DEFUN([FB_WITH_EXTERNAL_PATH],[cdir=`pwd`AC_MSG_CHECKING([Checking EXTERNAL_PATH set to])AC_ARG_WITH([externalpath],[ --with-externalpath=DIR User specified path to external facebook components.],[if test "x${EXTERNAL_PATH}" != "x"; thenecho ""echo "ERROR: You have already set EXTERNAL_PATH in your environment"echo "Cannot override it using --with-externalpath. Unset EXTERNAL_PATH to use this option"exit 1fiEXTERNAL_PATH=$withval],[if test "x${EXTERNAL_PATH}" = "x"; thenEXTERNAL_PATH=$1fi])if test "x${EXTERNAL_PATH}" = "x"; thenexport EXTERNAL_PATH="$cdir/external"GLOBAL_HEADER_MK="include ${EXTERNAL_PATH}/global_header.mk"GLOBAL_FOOTER_MK="include ${EXTERNAL_PATH}/global_footer.mk"elseexport EXTERNAL_PATHGLOBAL_HEADER_MK="include ${EXTERNAL_PATH}/global_header.mk"GLOBAL_FOOTER_MK="include ${EXTERNAL_PATH}/global_footer.mk"fiAC_MSG_RESULT($EXTERNAL_PATH)if test ! -d ${EXTERNAL_PATH}; thenecho ""echo "ERROR: EXTERNAL_PATH set to an nonexistent directory ${EXTERNAL_PATH}"exit 1fiAC_SUBST(EXTERNAL_PATH)AC_SUBST(GLOBAL_HEADER_MK)AC_SUBST(GLOBAL_FOOTER_MK)])# Set option to enable shared mode. Set DEBUG and OPT for use in Makefile.am.AC_DEFUN([FB_ENABLE_DEFAULT_OPT_BUILD],[AC_MSG_CHECKING([whether to enable optimized build])AC_ARG_ENABLE([opt],[ --disable-opt Set up debug mode.],[ENABLED_OPT=$enableval],[ENABLED_OPT="yes"])if test "$ENABLED_OPT" = "yes"thenCFLAGS="-Wall -O3"CXXFLAGS="-Wall -O3"elseCFLAGS="-Wall -g"CXXFLAGS="-Wall -g"fiAC_MSG_RESULT($ENABLED_OPT)AM_CONDITIONAL([OPT], [test "$ENABLED_OPT" = yes])AM_CONDITIONAL([DEBUG], [test "$ENABLED_OPT" = no])])# Set option to enable debug mode. Set DEBUG and OPT for use in Makefile.am.AC_DEFUN([FB_ENABLE_DEFAULT_DEBUG_BUILD],[AC_MSG_CHECKING([whether to enable debug build])AC_ARG_ENABLE([debug],[ --disable-debug Set up opt mode.],[ENABLED_DEBUG=$enableval],[ENABLED_DEBUG="yes"])if test "$ENABLED_DEBUG" = "yes"thenCFLAGS="-Wall -g"CXXFLAGS="-Wall -g"elseCFLAGS="-Wall -O3"CXXFLAGS="-Wall -O3"fiAC_MSG_RESULT($ENABLED_DEBUG)AM_CONDITIONAL([DEBUG], [test "$ENABLED_DEBUG" = yes])AM_CONDITIONAL([OPT], [test "$ENABLED_DEBUG" = no])])# Set option to enable static libs.AC_DEFUN([FB_ENABLE_DEFAULT_STATIC],[SHARED=""STATIC=""AC_MSG_CHECKING([whether to enable static mode])AC_ARG_ENABLE([static],[ --disable-static Set up shared mode.],[ENABLED_STATIC=$enableval],[ENABLED_STATIC="yes"])if test "$ENABLED_STATIC" = "yes"thenLTYPE=".a"elseLTYPE=".so"SHARED_CXXFLAGS="-fPIC"SHARED_CFLAGS="-fPIC"SHARED_LDFLAGS="-shared -fPIC"AC_SUBST(SHARED_CXXFLAGS)AC_SUBST(SHARED_CFLAGS)AC_SUBST(SHARED_LDFLAGS)fiAC_MSG_RESULT($ENABLED_STATIC)AC_SUBST(LTYPE)AM_CONDITIONAL([STATIC], [test "$ENABLED_STATIC" = yes])AM_CONDITIONAL([SHARED], [test "$ENABLED_STATIC" = no])])# Set option to enable shared libs.AC_DEFUN([FB_ENABLE_DEFAULT_SHARED],[SHARED=""STATIC=""AC_MSG_CHECKING([whether to enable shared mode])AC_ARG_ENABLE([shared],[ --disable-shared Set up static mode.],[ENABLED_SHARED=$enableval],[ENABLED_SHARED="yes"])if test "$ENABLED_SHARED" = "yes"thenLTYPE=".so"SHARED_CXXFLAGS="-fPIC"SHARED_CFLAGS="-fPIC"SHARED_LDFLAGS="-shared -fPIC"AC_SUBST(SHARED_CXXFLAGS)AC_SUBST(SHARED_CFLAGS)AC_SUBST(SHARED_LDFLAGS)elseLTYPE=".a"fiAC_MSG_RESULT($ENABLED_SHARED)AC_SUBST(LTYPE)AM_CONDITIONAL([SHARED], [test "$ENABLED_SHARED" = yes])AM_CONDITIONAL([STATIC], [test "$ENABLED_SHARED" = no])])# Generates define flags and conditionals as specified by user.# This gets enabled *only* if user selects --enable-<FEATURE> otion.AC_DEFUN([FB_ENABLE_FEATURE],[ENABLE=""flag="$1"value="$3"AC_MSG_CHECKING([whether to enable $1])AC_ARG_ENABLE([$2],[ --enable-$2 Enable $2.],[ENABLE=$enableval],[ENABLE="no"])AM_CONDITIONAL([$1], [test "$ENABLE" = yes])if test "$ENABLE" = "yes"thenif test "x${value}" = "x"thenAC_DEFINE([$1])elseAC_DEFINE_UNQUOTED([$1], [$value])fifiAC_MSG_RESULT($ENABLE)])# can also use eval $2=$withval;AC_SUBST($2)AC_DEFUN([FB_WITH_PATH],[USRFLAG=""USRFLAG=$1AC_MSG_CHECKING([Checking $1 set to])AC_ARG_WITH([$2],[ --with-$2=DIR User specified path.],[LOC=$withvaleval $USRFLAG=$withval],[LOC=$3eval $USRFLAG=$3])AC_SUBST([$1])AC_MSG_RESULT($LOC)])AC_DEFUN([FB_SET_FLAG_VALUE],[SETFLAG=""AC_MSG_CHECKING([Checking $1 set to])SETFLAG=$1eval $SETFLAG=\"$2\"AC_SUBST([$SETFLAG])AC_MSG_RESULT($2)])# NOTES# if using if else bourne stmt you must have more than a macro in it.# EX1 is not correct. EX2 is correct# EX1: if test "$XX" = "yes"; then# AC_SUBST(xx)# fi# EX2: if test "$XX" = "yes"; then# xx="foo"# AC_SUBST(xx)# fi