[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.
This commit is contained in:
Paul Smith 2013-10-19 12:21:09 -04:00
parent d7f25cfda5
commit f4b746b8c2
4 changed files with 18 additions and 11 deletions

View File

@ -40,15 +40,11 @@ else
endif endif
make_SOURCES = ar.c arscan.c commands.c default.c dir.c expand.c file.c \ 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 \ 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 \ signame.c strcache.c variable.c version.c vpath.c hash.c \
$(remote) $(remote)
if HAVE_GUILE
make_SOURCES += guile.c
endif
EXTRA_make_SOURCES = vmsjobs.c remote-stub.c remote-cstms.c 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 \ noinst_HEADERS = commands.h dep.h filedef.h job.h makeint.h rule.h variable.h \

View File

@ -22,11 +22,11 @@
srcdir='@srcdir@' srcdir='@srcdir@'
CC='@CC@' CC='@CC@'
CFLAGS='@CFLAGS@' CFLAGS='@CFLAGS@ @GUILE_CFLAGS@'
CPPFLAGS='@CPPFLAGS@' CPPFLAGS='@CPPFLAGS@'
LDFLAGS='@LDFLAGS@' LDFLAGS='@AM_LDFLAGS@ @LDFLAGS@'
ALLOCA='@ALLOCA@' ALLOCA='@ALLOCA@'
LOADLIBES='@LIBS@ @LIBINTL@' LOADLIBES='@LIBS@ @GUILE_LIBS@ @LIBINTL@'
eval extras=\'@LIBOBJS@\' eval extras=\'@LIBOBJS@\'
REMOTE='@REMOTE@' REMOTE='@REMOTE@'
GLOBLIB='@GLOBLIB@' GLOBLIB='@GLOBLIB@'
@ -46,7 +46,7 @@ includedir=${prefix}/include
localedir=${prefix}/share/locale localedir=${prefix}/share/locale
aliaspath=${localedir}${PATH_SEPARATOR}. 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. # Exit as soon as any command fails.
set -e set -e

13
guile.c
View File

@ -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/>. */ this program. If not, see <http://www.gnu.org/licenses/>. */
#include "makeint.h" #include "makeint.h"
#ifdef HAVE_GUILE
#include "gnumake.h" #include "gnumake.h"
#include "debug.h" #include "debug.h"
@ -144,3 +147,13 @@ guile_gmake_setup (const gmk_floc *flocp UNUSED)
return 1; return 1;
} }
#else
int
guile_gmake_setup (const gmk_floc *flocp UNUSED)
{
return 1;
}
#endif

2
main.c
View File

@ -1286,10 +1286,8 @@ main (int argc, char **argv, char **envp)
define_variable_cname (".FEATURES", features, o_default, 0); define_variable_cname (".FEATURES", features, o_default, 0);
} }
#ifdef HAVE_GUILE
/* Configure GNU Guile support */ /* Configure GNU Guile support */
guile_gmake_setup (NILF); guile_gmake_setup (NILF);
#endif
/* Read in variables from the environment. It is important that this be /* Read in variables from the environment. It is important that this be
done before $(MAKE) is figured out so its definitions will not be done before $(MAKE) is figured out so its definitions will not be