e16-epplets/configure.in

357 lines
9.6 KiB
Plaintext
Raw Normal View History

dnl# $Id$
AC_INIT(api/epplet.c)
AM_INIT_AUTOMAKE(Epplets, 0.6)
dnl# Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
if test ! -z "${CFLAGS}" -o ! -z "${CCOPTS}"; then
CFLAGS_GIVEN="${CFLAGS} ${CCOPTS}"
else
CFLAGS_GIVEN=""
fi
if test -z "${CFLAGS}"; then
if test -z "${CCOPTS}"; then
CCOPTS="-O"
fi
CFLAGS="$CCOPTS"
fi
AC_PROG_CC
AC_PROG_CPP
dnl# These must be run after AC_PROG_CC but before any other macros that use
dnl# the C compiler
AC_AIX
AC_ISC_POSIX
AC_MINIX
dnl# At least make the attempt to support CygWin32
AC_CYGWIN
AC_ARG_PROGRAM
AM_PROG_LIBTOOL
AC_GCC_TRADITIONAL
dnl # If using gcc, use -O2. If -g works with it, use that too
if test -z "$CFLAGS_GIVEN"; then
if test "$GCC" = "yes"; then
if test "$ac_cv_prog_cc_g" = "yes"; then
CCOPTS='-g -O2'
else
CCOPTS='-O2'
fi
CFLAGS="$CCOPTS"
fi
else
CFLAGS="$CFLAGS_GIVEN"
fi
AC_PROG_INSTALL
dnl# Check the sanity of what we've done so far
AM_SANITY_CHECK
dnl# Most people don't want the developer-only clutter
AM_MAINTAINER_MODE
dnl# If it's there, what the hell?
AM_WITH_DMALLOC
dnl# Look for needed programs
AC_CHECK_PROG(RM, rm, rm, true)
AC_CHECK_PROG(CP, cp, cp, false)
AC_CHECK_PROG(CHMOD, chmod, chmod, true)
AC_CHECK_PROG(TAR, tar, tar, tar)
AC_CHECK_PROG(MKDIR, mkdir, mkdir, false)
AC_CHECK_PROG(AR, ar, ar, false)
AC_CHECK_PROG(MV, mv, mv, true)
AC_LN_S
AC_C_CONST
AC_C_INLINE
AC_PATH_XTRA
if test "$ac_cv_lib_socket_connect" = "yes" ; then
SUBLIBS="-lsocket"
fi
if test "$ac_cv_lib_nsl_gethostbyname" = "yes" ; then
SUBLIBS="$SUBLIBS -lnsl"
fi
dnl# Checks for header files.
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(unistd.h time.h math.h pwd.h sys/types.h varargs.h stdarg.h)
AC_HEADER_TIME
dnl# Missing typedefs and replacements
AC_TYPE_MODE_T
AC_TYPE_PID_T
AC_TYPE_UID_T
dnl# Checks for library functions.
AC_TYPE_SIGNAL
dnl#AC_CHECK_FUNCS()
dnl#
dnl# X LIBRARIES
dnl#
AC_CHECK_LIB(X11, XOpenDisplay, X_LIBS="$X_LIBS -lX11", [
echo "ERROR: You need libX11 to build Epplets. Verify that you have libX11.a or";
echo " libX11.so installed and that it is located in the X libraries";
echo " directory shown above. If it is in a different directory, try using";
echo " the --x-libraries parameter to configure.";
AC_MSG_ERROR([Fatal: libX11 not found.])], $X_LIBS $SUBLIBS)
AC_CHECK_LIB(Xext, XextAddDisplay, X_LIBS="-lXext $X_LIBS", [
echo "ERROR: You need libXext to build Epplets. Verify that you have libXext.a or";
echo " libXext.so installed and that it is located in the X libraries";
echo " directory shown above. If it is in a different directory, try using";
echo " the --x-libraries parameter to configure.";
AC_MSG_ERROR([Fatal: libXext not found.])], $X_LIBS $SUBLIBS)
dnl#
dnl* I hope I'm doing this right
dnl#
AC_CHECK_LIB(GL, glXChooseVisual, GL_LIBS="GL", [
echo "Warning Will Robinson. No OpenGL! Install Mesa or you favorite hardware GLX.";
], $X_LIBS $SUBLIBS)
GL_PROGS=""
if test "$GL_LIBS" = "GL"; then
AC_CHECK_HEADERS(GL/glx.h,[P_GL="GL"], [echo "Warning Will Robinson. No OpenGL headers! Install Mesa our your favorite hardware GLX."])
if test "$P_GL" = "GL"; then
X_LIBS="-lGL -lGLU $X_LIBS"
AC_DEFINE(HAVE_LIBGL)
GL_PROGS="E-OpenGL-Demo.epplet"
AC_MSG_WARN([*** Building for GLX. Grab your ankles and kiss your ass goodbye! ***])
fi
fi
AC_CHECK_PROG(IMLIB_CONFIG, imlib-config, imlib-config, no)
if test "$IMLIB_CONFIG" != "no"; then
if test "$prefix" = "NONE"; then
AC_MSG_CHECKING(imlib-config for prefix)
prefix="`$IMLIB_CONFIG --prefix`"
AC_MSG_RESULT($prefix)
fi
AC_MSG_CHECKING(imlib-config for the value of CFLAGS)
CFLAGS="$CFLAGS `$IMLIB_CONFIG --cflags`"
AC_MSG_RESULT($CFLAGS)
AC_MSG_CHECKING(imlib-config for the value of GRLIBS)
GRLIBS="$GRLIBS `$IMLIB_CONFIG --libs`"
AC_MSG_RESULT($GRLIBS)
SAVE_LIBS="$LIBS"
LIBS="$GRLIBS"
AC_MSG_CHECKING(the sanity of new compile/link flags)
AC_TRY_LINK(, , echo "yes", echo "no" ; IMLIB_CONFIG="no" ;
AC_WARN(Compile/link failed. Reverting to manual method.)
)
LIBS="$SAVE_LIBS"
fi
if test "$IMLIB_CONFIG" = "no"; then
AC_CHECK_LIB(png, png_get_valid, GRLIBS="$GRLIBS -lpng -lz -lm", ,
$SUBLIBS $X_LIBS -lz -lm)
AC_CHECK_LIB(jpeg, jpeg_read_scanlines, GRLIBS="$GRLIBS -ljpeg", ,
$SUBLIBS $X_LIBS)
AC_CHECK_LIB(tiff, TIFFOpen, GRLIBS="$GRLIBS -ltiff", ,
$SUBLIBS $X_LIBS -lm)
AC_CHECK_LIB(gif, DGifOpenFileName, GRLIBS="$GRLIBS -lgif", ,
$SUBLIBS $X_LIBS)
AC_CHECK_LIB(ungif, DGifOpenFileName, GRLIBS="$GRLIBS -lungif", ,
$SUBLIBS $X_LIBS)
AC_CHECK_LIB(Imlib, Imlib_init, , [
echo "WARNING: Imlib was not found or did not correctly link.";
echo " Please check config.log to see what the error was.";
echo " I will attempt to continue, but things may go wrong.";
AC_MSG_WARN([WARNING: libImlib not found. Attempting to continue anyway.])],
$GRLIBS $SUBLIBS $X_LIBS)
fi
AC_CHECK_LIB(kstat, kstat_open, LIBS="$LIBS -lkstat")
AC_MSG_CHECKING(for Linux)
if test "`uname -s`" != "Linux"; then
AC_MSG_RESULT(no)
AC_CHECK_PROG(LIBGTOP_CONFIG, libgtop-config, libgtop-config, no)
else
AC_MSG_RESULT(yes)
LIBGTOP_CONFIG=no
fi
if test "$LIBGTOP_CONFIG" != "no"; then
LIBGTOP_CONF_SH="`$LIBGTOP_CONFIG --config`"
if test ! -z "$LIBGTOP_CONF_SH"; then
. $LIBGTOP_CONF_SH
AC_MSG_CHECKING(libgtop-config for the value of CFLAGS)
CFLAGS="$CFLAGS $LIBGTOP_INCS"
AC_DEFINE(HAVE_LIBGTOP)
AC_MSG_RESULT($CFLAGS)
AC_MSG_CHECKING(libgtop-config for the value of LIBS)
GTLIBS="$GTLIBS $LIBGTOP_LIBS $LIBGTOP_EXTRA_LIBS"
AC_MSG_RESULT($GTLIBS)
SAVE_LIBS="$LIBS"
LIBS="$GTLIBS"
AC_MSG_CHECKING(the sanity of new compile/link flags)
AC_TRY_LINK(, , echo "yes", echo "no" ; LIBGTOP_CONFIG="no" ;
AC_WARN(Compile/link failed.)
)
LIBS="$SAVE_LIBS"
fi
else
GTLIBS=""
fi
# Build test programs?
AC_ARG_WITH(test-programs, [ --with-test-programs Builds the test programs [default=no]],
TEST_PROGS="EppletTest.epplet EppletConfigTest.epplet",TEST_PROGS="")
# ok enlightenment d00ds want to ignore civilization and install
# everything in one place. The rest of use prefer sanity.
#
AC_ARG_ENABLE(fsstd, [ --enable-fsstd install files following FSSTD [default=no]], ,enable_fsstd=no)
if test "x$enable_fsstd" = "xyes"; then
ENLIGHTENMENT_ROOT=${datadir}/enlightenment
ENLIGHTENMENT_BIN=${bindir}
USE_FSSTD=yes
else
ENLIGHTENMENT_ROOT=${prefix}/enlightenment
ENLIGHTENMENT_BIN=${prefix}/enlightenment/bin
USE_FSSTD=no
fi
# Be friendly to gnome-session
AC_ARG_ENABLE(auto-respawn, [ --disable-auto-respawn Be gnome-session friendly, and don't respawn
epplets through e by default [default=no]],
no_respawn=yes,)
if test ! -z "$no_respawn"; then
AC_DEFINE(NO_AUTO_RESPAWN)
fi
AC_ARG_ENABLE(new-remember,
[ --enable-new-remember use if you have a version of enlightenment >= 0.16.4],
if test "$enableval" = "yes"; then
AC_MSG_RESULT(yes)
AC_DEFINE(NEW_REMEMBER)
else
AC_MSG_RESULT(no)
fi,
AC_MSG_RESULT(no)
)
AC_MSG_CHECKING(for Enlightenment location)
if test ! -z "$EROOT"; then
AC_SUBST(EROOT)
AC_MSG_RESULT($EROOT)
else
EROOT=$ENLIGHTENMENT_ROOT
AC_MSG_RESULT(warning: EROOT environment variable not detected. Using $EROOT)
AC_SUBST(EROOT)
fi
AC_MSG_CHECKING(for Enlightenment binary location)
if test ! -z "$EBIN"; then
AC_SUBST(EBIN)
AC_MSG_RESULT($EBIN)
else
EBIN=$ENLIGHTENMENT_BIN
AC_MSG_RESULT(warning: EBIN environment variable not detected. Using $EBIN)
AC_SUBST(EBIN)
fi
AC_DEFINE_UNQUOTED(EROOT, "$EROOT")
AC_DEFINE_UNQUOTED(EBIN, "$EBIN")
# Should we install E-Mixer?
# Probably not ;-) But we may as well check!
P_MIXER=
AC_CHECK_HEADERS(linux/soundcard.h,[P_MIXER=mixer],[
AC_CHECK_HEADERS(machine/soundcard.h, [P_MIXER=mixer],[
AC_CHECK_HEADERS(dmedia/audio.h, [P_MIXER=mixer],[
AC_CHECK_HEADERS(sys/soundcard.h, [P_MIXER=mixer]) ]) ]) ])
if test "$P_MIXER" = "mixer"; then
MIXER_PROGS="E-Mixer.epplet Emix.epplet"
else
AC_MSG_WARN([*** Mixer epplets will not be built ***])
MIXER_PROGS=""
fi
SGI=
AC_CHECK_HEADERS(dmedia/audio.h,[SGI=sgi])
if test "$SGI" = "sgi"; then
SGI_LIBS="-laudio"
SGI_DEFINES="-DSGI_AUDIO"
else
SGI_LIBS=""
SGI_DEFINES=""
fi
AC_CHECK_LIB(cdaudio, cd_advance, PLAYCD_PROGS=E-PlayCD.epplet, PLAYCD_PROGS="")
AC_SUBST(PLAYCD_PROGS)
# Stuff for E-Mountbox
AC_PATH_PROG(MOUNT, mount)
AC_PATH_PROG(UMOUNT, umount)
AC_PATH_PROG(EJECT, eject)
AC_DEFINE_UNQUOTED(MOUNT, "$MOUNT")
AC_DEFINE_UNQUOTED(UMOUNT, "$UMOUNT")
AC_DEFINE_UNQUOTED(EJECT, "$EJECT")
if test -n "$EJECT"; then
AC_DEFINE(HAVE_EJECT, 1)
fi
CFLAGS=${CFLAGS--O}
LDFLAGS=${LDFLAGS--O}
LIBS="$LIBS $GRLIBS"
CPPFLAGS="$CPPFLAGS"
AC_SUBST(CC)
AC_SUBST(CFLAGS)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(LIBS)
AC_SUBST(GTLIBS)
AC_SUBST(THREADLIBS)
AC_SUBST(TEST_PROGS)
AC_SUBST(MIXER_PROGS)
AC_SUBST(GL_PROGS)
AC_SUBST(SGI_LIBS)
AC_SUBST(SGI_DEFINES)
basedir=.
AM_CONFIG_HEADER(config.h)
AC_OUTPUT(Epplets.spec Makefile api/Makefile epplets/Makefile)
echo "creating api/epplet.h"
1999-10-21 04:26:10 -07:00
sed -e "s%@EROOT@%$EROOT%g" -e "s%@EBIN@%$EBIN%g" -e "s%\${exec_prefix}%${exec_prefix}%g" -e "s%\${prefix}%${prefix}%g" ${srcdir}/api/epplet.h.in > api/epplet.h.new
if (diff api/epplet.h.new api/epplet.h >/dev/null 2>&1); then
echo "api/epplet.h unchanged."
rm -f api/epplet.h.new
else
rm -f api/epplet.h
mv api/epplet.h.new api/epplet.h
fi
echo "Now type 'make' to build $PACKAGE $VERSION."