diff options
Diffstat (limited to 'Makefile.am')
-rw-r--r-- | Makefile.am | 58 |
1 files changed, 37 insertions, 21 deletions
diff --git a/Makefile.am b/Makefile.am index 92acdc2..5156f47 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,6 @@ # This is a -*-Makefile-*-, or close enough # -# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, -# 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 1997-2013 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under @@ -32,6 +31,7 @@ endif SUBDIRS = glob config po doc $(MAYBE_W32) bin_PROGRAMS = make +include_HEADERS = gnumake.h if USE_CUSTOMS remote = remote-cstms.c @@ -39,18 +39,23 @@ else remote = remote-stub.c 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 main.c \ - misc.c read.c remake.c $(remote) rule.c signame.c \ - strcache.c variable.c version.c vpath.c hash.c + function.c getopt.c getopt1.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 make.h rule.h variable.h \ - debug.h getopt.h gettext.h hash.h +noinst_HEADERS = commands.h dep.h filedef.h job.h makeint.h rule.h variable.h \ + debug.h getopt.h gettext.h hash.h output.h -make_LDADD = @LIBOBJS@ @ALLOCA@ $(GLOBLIB) @GETLOADAVG_LIBS@ @LIBINTL@ +make_LDADD = @LIBOBJS@ @ALLOCA@ $(GLOBLIB) @GETLOADAVG_LIBS@ @LIBINTL@ \ + $(GUILE_LIBS) # Only process if target is MS-Windows if WINDOWSENV make_LDADD += $(W32LIB) @@ -61,6 +66,7 @@ man_MANS = make.1 DEFS = -DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@ AM_CPPFLAGS = $(GLOBINC) +AM_CFLAGS = $(GUILE_CFLAGS) # Only process if target is MS-Windows if WINDOWSENV AM_CPPFLAGS += $(W32INC) @@ -76,8 +82,9 @@ EXTRA_DIST = README build.sh.in $(man_MANS) \ README.DOS Makefile.DOS configure.bat dosbuild.bat configh.dos\ README.W32 NMakefile config.h.W32 build_w32.bat subproc.bat \ make_msvc_net2003.sln make_msvc_net2003.vcproj \ - readme.vms makefile.vms makefile.com config.h-vms \ - vmsdir.h vmsfunctions.c vmsify.c + README.VMS makefile.vms makefile.com config.h-vms \ + vmsdir.h vmsfunctions.c vmsify.c \ + gmk-default.scm gmk-default.h # This is built during configure, but behind configure's back @@ -100,8 +107,8 @@ localedir = $(datadir)/locale # # Whether or not make needs to be installed setgid. -# The value should be either `true' or `false'. -# On many systems, the getloadavg function (used to implement the `-l' +# The value should be either 'true' or 'false'. +# On many systems, the getloadavg function (used to implement the '-l' # switch) will not work unless make is installed setgid kmem. # inst_setgid = @NEED_SETGID@ @@ -117,19 +124,28 @@ install-exec-local: echo "chgrp $(inst_group) $$app && chmod g+s $$app"; \ else \ echo "$$app needs to be owned by group $(inst_group) and setgid;"; \ - echo "otherwise the \`-l' option will probably not work."; \ + echo "otherwise the '-l' option will probably not work."; \ echo "You may need special privileges to complete the installation"; \ echo "of $$app."; \ fi; \ else true; fi +# --------------- Generate the Guile default module content + +guile.$(OBJEXT): gmk-default.h +gmk-default.h: $(srcdir)/gmk-default.scm + (echo 'static const char *const GUILE_module_defn = " '\\ \ + && sed -e 's/;.*//' -e '/^[ \t]*$$/d' -e 's/"/\\"/g' -e 's/$$/ \\/' \ + $(srcdir)/gmk-default.scm \ + && echo '";') > $@ + # --------------- Local DIST Section # Install the w32 and tests subdirectories # dist-hook: (cd $(srcdir); \ - sub=`find w32 tests -follow \( -name CVS -prune -o -name .cvsignore -o -name work -prune \) -o \( -name \*.orig -o -name \*.rej -o -name \*~ -prune \) -o -type f -print`; \ + sub=`find w32 tests -follow \( -name .git -o -name .deps -o -name work -o -name .gitignore -o -name \*.orig -o -name \*.rej -o -name \*~ -o -name Makefile \) -prune -o -type f -print`; \ tar chf - $$sub) \ | (cd $(distdir); tar xfBp -) @@ -168,18 +184,18 @@ loadavg_LDADD = @GETLOADAVG_LIBS@ MAKETESTFLAGS = check-regression: - @if test -f "$(srcdir)/tests/run_make_tests"; then \ + @if test -f '$(srcdir)/tests/run_make_tests'; then \ if $(PERL) -v >/dev/null 2>&1; then \ - case `cd $(srcdir); pwd` in `pwd`) : ;; \ + case `cd '$(srcdir)'; pwd` in `pwd`) : ;; \ *) test -d tests || mkdir tests; \ rm -f srctests; \ - if ln -s "$(srcdir)/tests" srctests; then \ + if ln -s '$(srcdir)/tests' srctests; then \ for f in run_make_tests run_make_tests.pl test_driver.pl scripts; do \ rm -f tests/$$f; ln -s ../srctests/$$f tests; \ done; fi ;; \ esac; \ - echo "cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS)"; \ - cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS); \ + echo "cd tests && $(PERL) ./run_make_tests.pl -srcdir $(abs_srcdir) -make ../make$(EXEEXT) $(MAKETESTFLAGS)"; \ + cd tests && $(PERL) ./run_make_tests.pl -srcdir '$(abs_srcdir)' -make '../make$(EXEEXT)' $(MAKETESTFLAGS); \ else \ echo "Can't find a working Perl ($(PERL)); the test suite requires Perl."; \ fi; \ @@ -191,7 +207,7 @@ check-regression: # --------------- Maintainer's Section # Tell automake that I haven't forgotten about this file and it will be -# created before we build a distribution (see maintMakefile in the CVS +# created before we build a distribution (see maintMakefile in the Git # distribution). README: |