X-Git-Url: https://git.hcoop.net/bpt/guile.git/blobdiff_plain/d4a5776ac5fd39fc65100d626ca3c147ca3dc2c2..9331f40a2ddc0db02a52f77063d915afe82efb49:/meta/Makefile.am diff --git a/meta/Makefile.am b/meta/Makefile.am index b96483bbd..d49ebd9ac 100644 --- a/meta/Makefile.am +++ b/meta/Makefile.am @@ -1,8 +1,8 @@ ## Process this file with Automake to create Makefile.in ## Jim Blandy --- September 1997 ## -## Copyright (C) 1998, 1999, 2001, 2006, 2007, 2008, 2009, 2011, -## 2012, 2013 Free Software Foundation, Inc. +## Copyright (C) 1998, 1999, 2001, 2006-2009, 2011-2015 +## Free Software Foundation, Inc. ## ## This file is part of GUILE. ## @@ -22,9 +22,10 @@ ## Fifth Floor, Boston, MA 02110-1301 USA bin_SCRIPTS = guile-config guild -EXTRA_DIST= \ - guile.m4 ChangeLog-2008 \ - guile-2.2.pc.in guile-2.2-uninstalled.pc.in \ +EXTRA_DIST= \ + guile.m4 ChangeLog-2008 \ + guile-$(GUILE_EFFECTIVE_VERSION).pc.in \ + guile-$(GUILE_EFFECTIVE_VERSION)-uninstalled.pc.in \ guild.in guile-config.in # What we now call `guild' used to be known as `guile-tools'. @@ -37,21 +38,81 @@ install-exec-hook: $(LN_S) "$$guild" "$$guile_tools" pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = guile-2.2.pc +pkgconfig_DATA = guile-$(GUILE_EFFECTIVE_VERSION).pc ## FIXME: in the future there will be direct automake support for ## doing this. When that happens, switch over. aclocaldir = $(datadir)/aclocal aclocal_DATA = guile.m4 +# Script to instantiate substitution variables found on the standard +# input. We do this from the Makefile because we need things like +# $(program_transform_name), which are not usable from 'configure.ac'. +# +# Some of these may include things like "-Wl,-rpath", which is why we do +# not use a comma to separate the 's' arguments. +substitute = \ + guile="`echo guile | $(SED) -e '$(program_transform_name)'`" ; \ + guild="`echo guild | $(SED) -e '$(program_transform_name)'`" ; \ + installed_guile="@bindir@/$$guile" ; \ + $(SED) -e "s|[@]PACKAGE_NAME[@]|$(PACKAGE_NAME)|g" \ + -e "s|[@]PACKAGE_BUGREPORT[@]|$(PACKAGE_BUGREPORT)|g" \ + -e "s|[@]GUILE_EFFECTIVE_VERSION[@]|$(GUILE_EFFECTIVE_VERSION)|g" \ + -e "s|[@]GUILE_VERSION[@]|$(GUILE_VERSION)|g" \ + -e "s|[@]GUILE_CFLAGS[@]|$(GUILE_CFLAGS)|g" \ + -e "s|[@]GUILE_LIBS[@]|$(GUILE_LIBS)|g" \ + -e "s|[@]LIBGUILE_INTERFACE[@]|$(LIBGUILE_INTERFACE)|g" \ + $(dependency_substitutions) \ + -e "s|[@]PKG_CONFIG[@]|$(PKG_CONFIG)|g" \ + -e "s|[@]pkgconfigdir[@]|$(pkgconfigdir)|g" \ + -e "s|[@]prefix[@]|$(prefix)|g" \ + -e "s|[@]exec_prefix[@]|$(exec_prefix)|g" \ + -e "s|[@]bindir[@]|$(bindir)|g" \ + -e "s|[@]libdir[@]|$(libdir)|g" \ + -e "s|[@]includedir[@]|$(includedir)|g" \ + -e "s|[@]datarootdir[@]|$(datarootdir)|g" \ + -e "s|[@]datadir[@]|$(datadir)|g" \ + -e "s|[@]sitedir[@]|$(sitedir)|g" \ + -e "s|[@]guile[@]|$$guile|g" \ + -e "s|[@]guild[@]|$$guild|g" \ + -e "s|[@]installed_guile[@]|$$installed_guile|g" + +# Substitutions for dependencies that appear in 'guile-2.0.pc'. +dependency_substitutions = \ + -e "s|[@]BDW_GC_CFLAGS[@]|$(BDW_GC_CFLAGS)|g" \ + -e "s|[@]BDW_GC_LIBS[@]|$(BDW_GC_LIBS)|g" \ + -e "s|[@]LIB_CLOCK_GETTIME[@]|$(LIB_CLOCK_GETTIME)|g" \ + -e "s|[@]LIBGMP[@]|$(LIBGMP)|g" \ + -e "s|[@]LIBLTDL[@]|$(LIBLTDL)|g" \ + -e "s|[@]LIBFFI_LIBS[@]|$(LIBFFI_LIBS)|g" \ + -e "s|[@]LIBUNISTRING[@]|$(LIBUNISTRING)|g" \ + -e "s|[@]LIBICONV[@]|$(LIBICONV)|g" \ + -e "s|[@]LIBINTL[@]|$(LIBINTL)|g" \ + -e "s|[@]LIBSOCKET[@]|$(LIBSOCKET)|g" \ + -e "s|[@]SERVENT_LIB[@]|$(SERVENT_LIB)|g" \ + -e "s|[@]HOSTENT_LIB[@]|$(HOSTENT_LIB)|g" \ + -e "s|[@]GETADDRINFO_LIB[@]|$(GETADDRINFO_LIB)|g" \ + -e "s|[@]INET_NTOP_LIB[@]|$(INET_NTOP_LIB)|g" \ + -e "s|[@]INET_PTON_LIB[@]|$(INET_PTON_LIB)|g" + +guile-$(GUILE_EFFECTIVE_VERSION).pc: guile-$(GUILE_EFFECTIVE_VERSION).pc.in + $(substitute) < "$<" > "$@.out" + mv "$@.out" "$@" + +guile-$(GUILE_EFFECTIVE_VERSION)-uninstalled.pc: guile-$(GUILE_EFFECTIVE_VERSION)-uninstalled.pc.in + $(substitute) < "$<" > "$@.out" + mv "$@.out" "$@" + guile-config: $(srcdir)/guile-config.in $(top_builddir)/config.status - guile="@bindir@/`echo guile | $(SED) -e '$(program_transform_name)'`" ; \ - cat $(srcdir)/guile-config.in \ - | $(SED) -e "s,@pkgconfigdir@,$(pkgconfigdir),g" \ - -e "s,@""PKG_CONFIG@,$(PKG_CONFIG),g" \ - -e "s,@installed_guile@,$$guile,g" \ - > guile-config.out - mv guile-config.out guile-config - chmod +x guile-config - -CLEANFILES = guile-config + $(substitute) < "$<" > "$@.out" + chmod +x "$@.out" + mv "$@.out" "$@" + +guild: $(srcdir)/guild.in $(top_builddir)/config.status + $(substitute) < "$<" > "$@.out" + chmod +x "$@.out" + mv "$@.out" "$@" + +CLEANFILES = \ + guile-config guild \ + guile-$(GUILE_EFFECTIVE_VERSION).pc guile-$(GUILE_EFFECTIVE_VERSION)-uninstalled.pc