summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2013-10-19 12:21:09 -0400
committerPaul Smith <psmith@gnu.org>2013-10-19 12:24:14 -0400
commitf4b746b8c23c257574b44e6bc0ad830c754f0c6b (patch)
tree89712cdb955967aea092bfa7ef1d33da5c723681
parentd7f25cfda5806cb67dba012f0f9c715a9dcd65e4 (diff)
downloadgunmake-f4b746b8c23c257574b44e6bc0ad830c754f0c6b.tar.gz
[SV 40254] Modify build.sh to work properly with Guile support.
* guile.c (guile_gmake_setup) [HAVE_GUILE]: Define a stub function when Guile support is not enabled. * main.c (main) [HAVE_GUILE]: Always invoke guile_gmake_setup(). * Makefile.am: Make guile.c standard, not optional. * build.template: Add the Guile compiler and linker flags.
-rw-r--r--Makefile.am6
-rw-r--r--build.template8
-rw-r--r--guile.c13
-rw-r--r--main.c2
4 files changed, 18 insertions, 11 deletions
diff --git a/Makefile.am b/Makefile.am
index 8cbfe7e..6303d96 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -40,15 +40,11 @@ else
endif
make_SOURCES = ar.c arscan.c commands.c default.c dir.c expand.c file.c \
- function.c getopt.c getopt1.c implicit.c job.c load.c \
+ function.c getopt.c getopt1.c guile.c implicit.c job.c load.c \
loadapi.c main.c misc.c output.c read.c remake.c rule.c \
signame.c strcache.c variable.c version.c vpath.c hash.c \
$(remote)
-if HAVE_GUILE
- make_SOURCES += guile.c
-endif
-
EXTRA_make_SOURCES = vmsjobs.c remote-stub.c remote-cstms.c
noinst_HEADERS = commands.h dep.h filedef.h job.h makeint.h rule.h variable.h \
diff --git a/build.template b/build.template
index 1a06ec6..1565b72 100644
--- a/build.template
+++ b/build.template
@@ -22,11 +22,11 @@
srcdir='@srcdir@'
CC='@CC@'
-CFLAGS='@CFLAGS@'
+CFLAGS='@CFLAGS@ @GUILE_CFLAGS@'
CPPFLAGS='@CPPFLAGS@'
-LDFLAGS='@LDFLAGS@'
+LDFLAGS='@AM_LDFLAGS@ @LDFLAGS@'
ALLOCA='@ALLOCA@'
-LOADLIBES='@LIBS@ @LIBINTL@'
+LOADLIBES='@LIBS@ @GUILE_LIBS@ @LIBINTL@'
eval extras=\'@LIBOBJS@\'
REMOTE='@REMOTE@'
GLOBLIB='@GLOBLIB@'
@@ -46,7 +46,7 @@ includedir=${prefix}/include
localedir=${prefix}/share/locale
aliaspath=${localedir}${PATH_SEPARATOR}.
-defines="-DALIASPATH=\"${aliaspath}\" -DLOCALEDIR=\"${localedir}\" -DLIBDIR=\"${libdir}\" -DINCLUDEDIR=\"${includedir}\""' @DEFS@'
+defines="-DLOCALEDIR=\"${localedir}\" -DLIBDIR=\"${libdir}\" -DINCLUDEDIR=\"${includedir}\""' @DEFS@'
# Exit as soon as any command fails.
set -e
diff --git a/guile.c b/guile.c
index 499585c..40d99aa 100644
--- a/guile.c
+++ b/guile.c
@@ -15,6 +15,9 @@ You should have received a copy of the GNU General Public License along with
this program. If not, see <http://www.gnu.org/licenses/>. */
#include "makeint.h"
+
+#ifdef HAVE_GUILE
+
#include "gnumake.h"
#include "debug.h"
@@ -144,3 +147,13 @@ guile_gmake_setup (const gmk_floc *flocp UNUSED)
return 1;
}
+
+#else
+
+int
+guile_gmake_setup (const gmk_floc *flocp UNUSED)
+{
+ return 1;
+}
+
+#endif
diff --git a/main.c b/main.c
index e5fbefe..3b33ea5 100644
--- a/main.c
+++ b/main.c
@@ -1286,10 +1286,8 @@ main (int argc, char **argv, char **envp)
define_variable_cname (".FEATURES", features, o_default, 0);
}
-#ifdef HAVE_GUILE
/* Configure GNU Guile support */
guile_gmake_setup (NILF);
-#endif
/* Read in variables from the environment. It is important that this be
done before $(MAKE) is figured out so its definitions will not be