1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
|
# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008, 2009,
# 2010, 2013, 2014, 2015, 2019, 2020 Free Software Foundation, Inc.
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
AC_INIT([GNU MDK],1.2.11,[bug-mdk@gnu.org],mdk)
AC_CONFIG_SRCDIR([mixlib/mix.h])
AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
AC_ISC_POSIX
AC_PROG_CC
AM_PROG_CC_STDC
AC_HEADER_STDC
AM_PROG_LEX
AC_PROG_RANLIB
dnl additional c flags
AM_CFLAGS="$AM_CFLAGS -Wall -fno-strict-aliasing"
AC_ARG_WITH(werror,
[ --with-werror treat compilation warnings as errors],
[case "${withval}" in
yes) werr=true ;;
no) werr=false ;;
*) AC_MSG_ERROR(bad value ${withval} for --with-werror) ;;
esac], [werr=false])
if test x$werr = xtrue; then
AM_CFLAGS="$AM_CFLAGS -Werror"
fi
dnl i18n stuff
AM_GNU_GETTEXT_VERSION(0.14)
AM_GNU_GETTEXT
AC_PROG_INTLTOOL([0.37], [no-xml])
GETTEXT_PACKAGE=mdk
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Package Name for Gettext])
test "x$prefix" = xNONE && prefix=$ac_default_prefix
AH_TEMPLATE(LOCALEDIR,[locale directory])
AC_DEFINE_UNQUOTED(LOCALEDIR, "${prefix}/share/locale")
dnl Check for readline and history
AC_ARG_WITH(readline,
[ --without-readline build mixvm without readline support],
[case "${withval}" in
yes) readl=true ;;
no) readl=false ;;
*) AC_MSG_ERROR(bad value ${withval} for --with-readline) ;;
esac], [readl=true])
if test x$readl = xtrue; then
AC_CHECK_LIB(ncurses, initscr, ,
[AC_MSG_WARN(Cannot find ncurses lib); readl=false])
fi
if test x$readl = xtrue; then
AC_CHECK_LIB(readline, readline, ,
[AC_MSG_WARN(Cannot find GNU readline lib); readl=false])
fi
if test x$readl = xtrue; then
AC_CHECK_LIB(history, add_history, ,
[AC_MSG_WARN(Cannot find GNU history lib); readl=false])
dnl old versions of readline use completion_matches instead
dnl of rl_completion_matches
AC_CHECK_FUNCS(rl_completion_matches,,)
fi
dnl Check for glib
PKG_CHECK_MODULES(GLIB,glib-2.0 >= 2.0)
dnl Check for guile
AC_ARG_WITH(guile,
[ --without-guile build MDK without Guile support],
[case "${withval}" in
yes) wguile=true ;;
no) wguile=false ;;
*) AC_MSG_ERROR(bad value ${withval} for --with-guile) ;;
esac], [wguile=true])
if test x$wguile = xtrue; then
PKG_CHECK_MODULES(GUILE,guile-3.0 >= 3.0,[wguile=true],[wguile=false])
if test x$wguile = xfalse; then
PKG_CHECK_MODULES(GUILE,guile-2.2 >= 2.2,[wguile=true],[wguile=false])
if test x$wguile = xfalse; then
PKG_CHECK_MODULES(GUILE,guile-2.0 >= 2.0,[wguile=true],[wguile=false])
fi
fi
fi
if test x$wguile = xtrue; then
LIBS="$LIBS $GUILE_LIBS"
AM_CFLAGS="$AM_CFLAGS $GUILE_CFLAGS"
AC_SUBST(MAKE_GUILE)
fi
AM_CONDITIONAL(MAKE_GUILE, test x$wguile = xtrue)
LIBS="$LIBS $GLIB_LIBS"
AM_CFLAGS="$AM_CFLAGS $GLIB_CFLAGS -DG_DISABLE_DEPRECATED"
dnl Check if the gtk gui is required
AC_ARG_ENABLE(gui,
[ --disable-gui do not build the GTK+ GUI for mixvm (gmixvm)],
[case "${enableval}" in
yes) gui=true ;;
no) gui=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-gui) ;;
esac],[gui=true])
dnl Check for gtk+
if test x$gui = xtrue; then
PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.6.0 libglade-2.0 >= 2.0.0 pango >= 1.4,
[LIBS="$LIBS $GTK_LIBS" AM_CFLAGS="$AM_CFLAGS $GTK_CFLAGS"],
[AC_MSG_WARN(Cannot find GTK+/Glade/Pango: the GUI shall not be built)
gui=false])
fi
if test x$gui = xtrue; then
AM_CFLAGS="$AM_CFLAGS -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED"
fi
dnl Are we in a darwin system?
case "${host_os}" in
darwin*) darwin_system=true;;
*) darwin_system=false;
esac
AM_CONDITIONAL(MAKE_GUI, test x$gui = xtrue)
AM_CONDITIONAL(DARWIN_SYSTEM, test x$darwin_system = xtrue)
dnl use the provided getopt if gnu getopt is not available
AC_REPLACE_FUNCS(getopt_long)
AC_SUBST(AM_CFLAGS)
AC_CONFIG_FILES([
Makefile
doc/Makefile
doc/img/Makefile
mixlib/Makefile
mixlib/testsuite/Makefile
mixguile/Makefile
mixutils/Makefile
mixgtk/Makefile
lib/Makefile
misc/Makefile
samples/Makefile
samples/tests/Makefile
po/Makefile.in
intl/Makefile
])
AC_OUTPUT
if test x$readl = xtrue; then
rlinfo=", with readline support"
fi
if test x$wguile = xtrue; then
guileinfo=", with guile support"
fi
echo
echo "*** $PACKAGE_NAME $VERSION has been successfully configured. ***"
echo
echo "Type 'make' to build the following utilities:"
echo " - mixasm (MIX assembler)"
echo " - mixvm (MIX virtual machine${rlinfo}${guileinfo})"
if test x$gui = xtrue; then
echo " - gmixvm (mixvm GTK+ GUI${guileinfo})"
fi
if test x$wguile = xtrue; then
echo " - mixguile (the mixvm guile shell)"
fi
echo
|