From 1049583ecc26a32b5afdedd7c49cd252a1aab74a Mon Sep 17 00:00:00 2001 From: Maxime Devos Date: Sun, 6 Dec 2020 11:29:25 +0100 Subject: [PATCH 27/27] build: Install *.go and *.scm in separate directories * Makefile.am (moduledir): new variable * Makefile.am (objectdir): new variable * Makefile.am: install *.scm and *.go separately * configure.ac: determine the installation directory for module source code and compiled code --- Makefile.am | 5 ++++- configure.ac | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/Makefile.am b/Makefile.am index 93c7029..ba7253d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,6 @@ # Guile-GNUnet --- Guile bindings for GNUnet. # Copyright © 2015 Ludovic Courtès +# Copyright © 2020 Maxime Devos # # This file is part of Guile-GNUnet. # @@ -31,8 +32,10 @@ MODULES = \ GOBJECTS = $(MODULES:%.scm=%.go) gnu/gnunet/config.go +moduledir = @guilemoduledir@ +objectdir = @guileobjectdir@ nobase_dist_guilemodule_DATA = $(MODULES) -nobase_nodist_guilemodule_DATA = $(GOBJECTS) +nobase_nodist_object_DATA = $(GOBJECTS) # TODO: Handle tests. diff --git a/configure.ac b/configure.ac index b4405c1..a309220 100644 --- a/configure.ac +++ b/configure.ac @@ -21,16 +21,23 @@ 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]) +m4_pattern_forbid([GUILE_PKG]) +m4_pattern_forbid([GUILE_PROGS]) +m4_pattern_allow([GUILE_PKG_ERRORS]) +GUILE_PKG([2.0]) +GUILE_PROGS -PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.7]) -AC_PATH_PROG([GUILE], [guile]) -AC_PATH_PROG([GUILD], [guild]) if test "x$GUILD" = "x"; then AC_MSG_ERROR(['guild' binary not found; please check your Guile 2.x installation.]) fi - -guilemoduledir="${datarootdir}/guile/site/2.0" +if test "x$GUILE_EFFECTIVE_VERSION" = "x2.0"; then + PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.7]) +fi +dnl Installation directories for .scm and .go files. +guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION" +guileobjectdir="${libdir}/guile/$GUILE_EFFECTIVE_VERSION/site-ccache" AC_SUBST([guilemoduledir]) +AC_SUBST([guileobjectdir]) AC_CACHE_SAVE -- 2.29.2