view configure.in @ 437:06f944263d9a

Add gettext/autopoint to bootstrapping process to generate gettext-related files.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 01 Jan 2007 08:47:00 +0000
parents c016b0e2f758
children 62fc59951eda
line wrap: on
line source

dnl ***
dnl *** Process this file with autoconf to produce a configure script.
dnl ***

dnl Require autoconf 2.56 or later
AC_PREREQ([2.56])

dnl Initialize
AC_INIT([XMMS-SID], [0.8.0beta16], [ccr@tnsp.org])
AC_COPYRIGHT([[(C) 2003-2006 Matti 'ccr' Hämäläinen]])
AC_CONFIG_SRCDIR([src/xmms-sid.h])
AM_INIT_AUTOMAKE
AC_CONFIG_HEADERS([src/config.h])
AM_GNU_GETTEXT_VERSION([0.14.1])
AM_GNU_GETTEXT([external])


dnl ***
dnl *** Define some templates
dnl ***
AH_TEMPLATE([HAVE_SONG_POSITION],[Define if you have XMMS patched with the songpos patch.])
AH_TEMPLATE([HAVE_XMMSEXTRA],[Define if you have XMMS version 1.2.5 or later and you want XMMS-SID to support some extra features.])
AH_TEMPLATE([HAVE_SIDPLAY1],[Define if you have and want to use libSIDPlay 1])
AH_TEMPLATE([HAVE_SIDPLAY2],[Define if you have and want to use libSIDPlay 2])
AH_TEMPLATE([HAVE_RESID_BUILDER],[Define if you have reSID with libSIDPlay 2])
AH_TEMPLATE([HAVE_HARDSID_BUILDER],[Define if you have HardSID with libSIDPlay 2])
AH_TEMPLATE([HAVE_THEMETUNE],[Define if you want to build code to play XMMS-SID theme SID-tune. The tune needs to be installed too, though.])
AH_TEMPLATE([THEMETUNE_FILE],[Path and filename of the XMMS-SID theme song])


dnl ***
dnl *** Some general checks
dnl ***
AC_PREFIX_PROGRAM([xmms])
AC_DISABLE_STATIC
AC_LIBTOOL_DLOPEN
AC_LIB_RPATH
AM_PROG_LIBTOOL
AC_SYS_LARGEFILE
AC_TYPE_OFF_T
AC_FUNC_FSEEKO


dnl ***
dnl *** Checks for programs
dnl ***
AC_PROG_CC
AC_PROG_CPP
AC_PROG_CXX
AC_PROG_CXXCPP
AC_PROG_INSTALL


dnl ***
dnl *** Checks for generic libraries
dnl ***
AC_CHECK_HEADER([pthread.h],,AC_MSG_ERROR([[*** POSIX thread support not found. Strange, maybe you don't have some development packages installed?]]))
AM_PATH_GLIB([1.2.5],,AC_MSG_ERROR([[*** GLib >= 1.2.5 not found. You either don't have GLib at all or your GLib is too old. Latest GLib can be found from Gtk+ homepages (http://www.gtk.org/)]]))
AM_PATH_GTK([1.2.5],,AC_MSG_ERROR([[*** Gtk+ >= 1.2.5 not found. You either don't have Gtk+ at all or your Gtk+ is too old. Latest Gtk+ can be found from Gtk+ homepages (http://www.gtk.org/)]]), gthread)


dnl ***
dnl *** Checks for header files, types and functions
dnl ***
AC_HEADER_STDC
AC_CHECK_HEADERS([stdlib.h string.h unistd.h])

AC_HEADER_STDBOOL
AC_TYPE_SIZE_T
AC_C_CONST
AC_C_INLINE
AC_C_VOLATILE
AC_C_BIGENDIAN

AC_FUNC_MALLOC
AC_TYPE_SIGNAL
AC_FUNC_STAT
AC_CHECK_FUNCS([memset strcasecmp strerror])


dnl ***
dnl *** Enable or disable themetune support/installation
dnl ***
AC_ARG_ENABLE(themetune,
[
  --disable-themetune   Disable XMMS-SID theme song-related code and
                        installation of the SID-tune file. The tune is
                        not under GNU GPL, refer to README for license.
],
[
if test "x$enableval" = "xyes"; then
OPT_THEMETUNE=yes
else
if test "x$enableval" = "xno"; then
	OPT_THEMETUNE=no
	else
	OPT_THEMETUNE=no
	fi
fi
],[
OPT_THEMETUNE=yes
])

dnl *** Bits and pieces stolen from Glade generated configure.in
if test "x$OPT_THEMETUNE" = "xyes"; then
	THEMETUNE_FILE="Kummatti_City.sid"

	if test "x${datadir}" = 'x${prefix}/share'; then
		if test "x${prefix}" = "xNONE"; then
		AC_DEFINE_UNQUOTED([THEMETUNE_FILE], "${ac_default_prefix}/share/${PACKAGE}/${THEMETUNE_FILE}")
		else
		AC_DEFINE_UNQUOTED([THEMETUNE_FILE], "${prefix}/share/${PACKAGE}/${THEMETUNE_FILE}")
		fi
	else
	AC_DEFINE_UNQUOTED([THEMETUNE_FILE], "${datadir}/${PACKAGE}/${THEMETUNE_FILE}")
	fi

	AC_DEFINE([HAVE_THEMETUNE])
else
	THEMETUNE_FILE=""
fi
AC_SUBST([THEMETUNE_FILE])


dnl ***
dnl *** libSIDPlay 1 options
dnl ***
AC_ARG_WITH(sidplay1,
[
  --with-sidplay1=PREFIX   Enable SIDPlay1 with install-PREFIX],
[
if test "x$withval" = "xyes"; then
xs_sidplay1=yes
xs_sidplay1_library=""
xs_sidplay1_includes=""
else
if test "x$withval" = "xno"; then
	xs_sidplay1=no
	else
	xs_sidplay1=yes
	xs_sidplay1_includes="$withval/include"
	xs_sidplay1_library="$withval/lib"
	fi
fi
],[
xs_sidplay1=try
xs_sidplay1_library=""
xs_sidplay1_includes=""
])


AC_ARG_WITH(sidplay1-inc,
[  --with-sidplay1-inc=DIR    Where the SIDPlay1 headers are located],
[xs_sidplay1_includes="$withval"],)

AC_ARG_WITH(sidplay1-lib,
[  --with-sidplay1-lib=DIR    Where the SIDPlay1 library is installed],
[xs_sidplay1_library="$withval"],)


dnl ***
dnl *** libSIDPlay 2 options
dnl ***
AC_ARG_WITH(sidplay2,
[
  --with-sidplay2=PREFIX   Enable SIDPlay2 with install-PREFIX],
[
if test "x$withval" = "xyes"; then
xs_sidplay2=yes
xs_sidplay2_library=""
xs_sidplay2_includes=""
else
if test "x$withval" = "xno"; then
	xs_sidplay2=no
	else
	xs_sidplay2=yes
	xs_sidplay2_includes="$withval/include"
	xs_sidplay2_library="$withval/lib"
	fi
fi
],[
xs_sidplay2=try
xs_sidplay2_library=""
xs_sidplay2_includes=""
])


AC_ARG_WITH(sidplay2-inc,
[  --with-sidplay2-inc=DIR    Where the SIDPlay2 headers are located],
[xs_sidplay2_includes="$withval"],)


AC_ARG_WITH(sidplay2-lib,
[  --with-sidplay2-lib=DIR    Where the SIDPlay2 library is installed],
[xs_sidplay2_library="$withval"],)


dnl ***
dnl *** Determine if libraries are wanted and available
dnl ***
OPT_SIDPLAY1="no"
if test "x$xs_sidplay1" = "xtry"; then
	XS_PATH_LIBSIDPLAY1
	else
	if test "x$xs_sidplay1" = "xyes"; then
		XS_PATH_LIBSIDPLAY1
		if test "x$xs_have_sidplay1" = "xno"; then
		AC_MSG_ERROR([libSIDPlay1 library and/or headers were not found!])
		fi
	fi
fi
if test "x$xs_have_sidplay1" = "xyes"; then
	AC_DEFINE([HAVE_SIDPLAY1])
	OPT_SIDPLAY1="yes"
fi



OPT_SIDPLAY2="no"
LIBSIDPLAY2_REQUIRED_VERSION="2.1.0"
if test "x$xs_sidplay2" = "xtry"; then
	XS_PATH_LIBSIDPLAY2
	else
	if test "x$xs_sidplay2" = "xyes"; then
		XS_PATH_LIBSIDPLAY2
		if test "x$xs_have_sidplay2" = "xno"; then
		AC_MSG_ERROR([libSIDPlay2 library and/or headers were not found!])
		fi
	fi
fi
if test "x$xs_have_sidplay2" = "xyes"; then
	AC_DEFINE([HAVE_SIDPLAY2])
	OPT_SIDPLAY2="yes"
	BUILDERS_FIND
	BUILDERS_FIND_RESID
	BUILDERS_FIND_HARDSID
	if test "x$builders_available" = "xno"; then
		AC_MSG_ERROR([No builder modules were found in the sidbuilders directory!]);
	fi
fi


dnl ***
dnl *** Check if we have some emulator library available?
dnl ***
if test "x$OPT_SIDPLAY1" = "xno"; then
if test "x$OPT_SIDPLAY2" = "xno"; then
AC_MSG_ERROR([Either libSIDPlay1 or libSIDPlay2 is required! Please read INSTALL for more information!])
fi
fi


dnl ***
dnl *** Song position patch check
dnl ***
AC_MSG_CHECKING([for song position patch])
tmp_CPPFLAGS=$CPPFLAGS
if test -d "$prefix"; then
  CPPFLAGS="$CPPFLAGS -I${prefix}/include"
fi

AC_EGREP_HEADER([set_song_position],[xmms/plugin.h],[
OPT_SONGPOS="yes"
AC_DEFINE(HAVE_SONG_POSITION)
AC_MSG_RESULT([yes])
],[
OPT_SONGPOS="no"
AC_MSG_RESULT([no])
])

CPPFLAGS=$tmp_CPPFLAGS


dnl ***
dnl *** Check XMMS version
dnl ***
AM_PATH_XMMS(1.2.0,, [
AC_MSG_ERROR([*** XMMS >= 1.2.0 not found. You need XMMS v1.2.0 or later to use XMMS-SID plugin.])
])
libdir=$XMMS_INPUT_PLUGIN_DIR

XMMS_TEST_VERSION($XMMS_VERSION, 1.2.5, [
AC_DEFINE(HAVE_XMMSEXTRA)
OPT_XMMSEXTRA="yes"
], [
OPT_XMMSEXTRA="no"
])


dnl ***
dnl *** And finally, output the all generatable files!
dnl ***
AC_CONFIG_FILES([
Makefile
xmms-sid.spec
po/Makefile.in
m4/Makefile 
])
AC_OUTPUT


dnl ***
dnl *** Show the result message
dnl ***
AC_MSG_RESULT([
	XMMS-SID has been configured successfully:

	Installation directory        : $libdir
	XMMS >= v1.2.5 extra features : $OPT_XMMSEXTRA
	Song-position patch           : $OPT_SONGPOS
	libSIDPlay 1 support          : $OPT_SIDPLAY1
	libSIDPlay 2 support          : $OPT_SIDPLAY2
		Included builders     : $xs_builders
	XMMS-SID theme SID-tune       : $OPT_THEMETUNE
])