# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.68)
-AC_INIT([GNU Guix], [0.7], [bug-guix@gnu.org], [guix],
+AC_INIT([GNU Guix], [0.8.2], [bug-guix@gnu.org], [guix],
[http://www.gnu.org/software/guix/])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects \
- color-tests parallel-tests -Woverride])
+ color-tests parallel-tests -Woverride -Wno-portability])
+
+# Enable silent rules by default.
+AM_SILENT_RULES([yes])
AC_CONFIG_SRCDIR([guix.scm])
AC_CONFIG_MACRO_DIR([m4])
[storedir="/gnu/store"])
AC_SUBST(storedir)
+AC_ARG_WITH([bash-completion-dir],
+ AC_HELP_STRING([--with-bash-completion-dir=DIR],
+ [name of the Bash completion directory]),
+ [bashcompletiondir="$withval"],
+ [bashcompletiondir='${sysconfdir}/bash_completion.d'])
+AC_SUBST([bashcompletiondir])
+
dnl Better be verbose.
AC_MSG_CHECKING([for the store directory])
AC_MSG_RESULT([$storedir])
AC_SUBST([guix_sysconfdir])
AC_SUBST([guix_sbindir])
-dnl We require the pkg.m4 set of macros from pkg-config.
-dnl Make sure it's available.
+GUIX_CHECK_FILE_NAME_LIMITS
+
+dnl We require pkg.m4 (from pkg-config) and guile.m4 (from Guile.)
+dnl Make sure they are available.
m4_pattern_forbid([PKG_CHECK_MODULES])
+m4_pattern_forbid([GUILE_MODULE_AVAILABLE])
PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.5])
AC_PATH_PROG([GUILE], [guile])
AC_MSG_ERROR(['guild' binary not found; please check your guile-2.x installation.])
fi
+dnl guile-json is used for the PyPI package importer
+GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
+AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
+
dnl Make sure we have a full-fledged Guile.
GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads])
yes|no)
LIBGCRYPT="libgcrypt"
LIBGCRYPT_PREFIX="no"
+ LIBGCRYPT_LIBDIR="no"
;;
*)
LIBGCRYPT="$withval/lib/libgcrypt"
LIBGCRYPT_PREFIX="$withval"
+ LIBGCRYPT_LIBDIR="$withval/lib"
;;
esac],
- [LIBGCRYPT="libgcrypt"])
+ [LIBGCRYPT="libgcrypt"
+ LIBGCRYPT_PREFIX="no"
+ LIBGCRYPT_LIBDIR="no"])
+
+AC_ARG_WITH([libgcrypt-libdir],
+ [AS_HELP_STRING([--with-libgcrypt-libdir=DIR],
+ [search for GNU libgcrypt's shared library in DIR])],
+ [case "$withval" in
+ yes|no)
+ LIBGCRYPT="libgcrypt"
+ LIBGCRYPT_LIBDIR="no"
+ ;;
+ *)
+ LIBGCRYPT="$withval/libgcrypt"
+ LIBGCRYPT_LIBDIR="$withval"
+ ;;
+ esac],
+ [if test "x$LIBGCRYPT" = x; then
+ LIBGCRYPT="libgcrypt"
+ fi
+ if test "x$LIBGCRYPT_LIBDIR" = x; then
+ LIBGCRYPT_LIBDIR="no"
+ fi])
dnl Library name suitable for `dynamic-link'.
AC_MSG_CHECKING([for libgcrypt shared library name])
AC_MSG_RESULT([$LIBGCRYPT])
AC_SUBST([LIBGCRYPT])
AC_SUBST([LIBGCRYPT_PREFIX])
+AC_SUBST([LIBGCRYPT_LIBDIR])
GUIX_ASSERT_LIBGCRYPT_USABLE
AM_MISSING_PROG([DOT], [dot])
AC_CONFIG_FILES([Makefile
- po/Makefile.in
+ po/guix/Makefile.in
+ po/packages/Makefile.in
guix/config.scm])
AC_CONFIG_FILES([scripts/guix], [chmod +x scripts/guix])
AC_CONFIG_FILES([pre-inst-env], [chmod +x pre-inst-env])
AC_CONFIG_FILES([test-env], [chmod +x test-env])
+dnl Emacs interface.
+AM_PATH_LISPDIR
+AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"])
+
+emacsuidir="${guilemoduledir}/guix/emacs"
+AC_SUBST([emacsuidir])
+AC_CONFIG_FILES([emacs/guix-init.el
+ emacs/guix-profiles.el
+ emacs/guix-helper.scm])
+
AC_OUTPUT