mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-20 11:40:18 +02:00
Change the way we decide whether to build gtcltk-lib, so that it's
omitted from the build process when appropriate, but never from the dist process. * configure.in: Don't edit all_subdirs depending on the availability of Tk; let that be the list of all PLUGIN subdirectories present, as it used to be. Instead, edit a new variable, build_subdirs; write its final value, the list of subdirs we do want to compile in, to config.build-subdirs. Substitute that into the top-level Makefile too. * Makefile.in (subdirs): Set this to @build_subdirs@, so we only recurse on the subdirectories we should build. (distdirs): Set this to @existingdirs@, so it includes the subdirs we decided not to build. * configure.in: If we can find the library for tcl7.5, build gtcltk-lib. Call AC_PROG_CC, to help run that test with the right compiler (not sure this is necessary).
This commit is contained in:
parent
16ade06b31
commit
f9ec2ec8f0
1 changed files with 34 additions and 12 deletions
46
configure.in
46
configure.in
|
@ -1,23 +1,13 @@
|
||||||
AC_INIT(Makefile.in)
|
AC_INIT(Makefile.in)
|
||||||
|
|
||||||
|
rm -f config.build-subdirs
|
||||||
|
|
||||||
. $srcdir/GUILE-VERSION
|
. $srcdir/GUILE-VERSION
|
||||||
|
|
||||||
all_subdirs=`cat $srcdir/*/PLUGIN/REQ $srcdir/*/PLUGIN/OPT /dev/null | tsort | xargs echo`
|
all_subdirs=`cat $srcdir/*/PLUGIN/REQ $srcdir/*/PLUGIN/OPT /dev/null | tsort | xargs echo`
|
||||||
req_subdirs=`cat $srcdir/*/PLUGIN/REQ /dev/null | tsort | xargs echo`
|
req_subdirs=`cat $srcdir/*/PLUGIN/REQ /dev/null | tsort | xargs echo`
|
||||||
opt_subdirs=`cat $srcdir/*/PLUGIN/OPT /dev/null | tsort | xargs echo`
|
opt_subdirs=`cat $srcdir/*/PLUGIN/OPT /dev/null | tsort | xargs echo`
|
||||||
|
|
||||||
AC_PROG_CC
|
|
||||||
|
|
||||||
### Use gtcltk-lib only if we seem to have Tcl installed on the
|
|
||||||
### system. This way of doing this doesn't really fit into the PLUGIN
|
|
||||||
### approach, but I'm not sure how to do it more gracefully within
|
|
||||||
### that approach.
|
|
||||||
AC_CHECK_LIB(tcl7.5, Tcl_CreateInterp, have_tcl=true, have_tcl=false, -lm)
|
|
||||||
if $have_tcl; then :; else
|
|
||||||
all_subdirs="`echo $all_subdirs | sed s:gtcltk-lib::`"
|
|
||||||
req_subdirs="`echo $req_subdirs | sed s:gtcltk-lib::`"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_CONFIG_SUBDIRS($all_subdirs)
|
AC_CONFIG_SUBDIRS($all_subdirs)
|
||||||
existingdirs=
|
existingdirs=
|
||||||
for d in $all_subdirs; do
|
for d in $all_subdirs; do
|
||||||
|
@ -61,6 +51,38 @@ if test "x$verbose" = xyes; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
AC_PROG_CC
|
||||||
|
|
||||||
|
### build_subdirs is the list of directories we actually want to
|
||||||
|
### build. It's not equivalent to existingdirs: if we can't find the
|
||||||
|
### Tcl libraries, then we don't want to build in gtcltk-lib.
|
||||||
|
###
|
||||||
|
### So why can't we just forget about gtcltk-lib altogether, and
|
||||||
|
### delete it from existingdirs, in that case? Well, in order for
|
||||||
|
### 'make dist' to work, we still need to configure gtcltk-lib, and
|
||||||
|
### the top-level Makefile needs to know it exists,
|
||||||
|
build_subdirs="${existingdirs}"
|
||||||
|
|
||||||
|
### Decide which directories to build; remove the ones we don't want
|
||||||
|
### from build_subdirs.
|
||||||
|
|
||||||
|
### Use gtcltk-lib only if we seem to have Tcl installed on the
|
||||||
|
### system. We really should check for Tk as well, but that involves
|
||||||
|
### finding all the X libraries that we need to do a complete link.
|
||||||
|
AC_CHECK_LIB(tcl7.5, Tcl_CreateInterp, have_tcl=true, have_tcl=false, -lm)
|
||||||
|
if $have_tcl; then :; else
|
||||||
|
build_subdirs="`echo $build_subdirs | sed s:gtcltk-lib::`"
|
||||||
|
req_subdirs="`echo $req_subdirs | sed s:gtcltk-lib::`"
|
||||||
|
fi
|
||||||
|
|
||||||
|
### Write the list of survivors, the directories we do want to build,
|
||||||
|
### to a file in the top level, so the subdirectories' configuration
|
||||||
|
### scripts can find it. We don't want to pass the list in the
|
||||||
|
### environment, because the subdirectory configuration scripts can be
|
||||||
|
### run on their own.
|
||||||
|
echo "${build_subdirs}" > config.build-subdirs
|
||||||
|
|
||||||
AC_SUBST(existingdirs)
|
AC_SUBST(existingdirs)
|
||||||
|
AC_SUBST(build_subdirs)
|
||||||
AC_SUBST(GUILE_VERSION)
|
AC_SUBST(GUILE_VERSION)
|
||||||
AC_OUTPUT(Makefile doc/Makefile)
|
AC_OUTPUT(Makefile doc/Makefile)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue