summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-12-03 18:59:00 +0100
committerLudovic Courtès <ludo@gnu.org>2014-12-03 18:59:36 +0100
commit5fac1a7ada362d78f13143acbc0ceca7f2f101de (patch)
tree607560646567ba87319946b4971ea514335b045e /meta
parent8cf2a7ba7432d68b9a055d29f18117be70375af9 (diff)
downloadguile-5fac1a7ada362d78f13143acbc0ceca7f2f101de.tar.gz
Add the 'guild' and 'guile' variables to 'guile-2.0.pc'.
* configure.ac: Remove meta/guile-2.0.pc and meta/guile-2.0-uninstalled.pc from 'AC_CONFIG_FILES'. * meta/Makefile.am (substitute): New variable. (guile-2.0.pc, guile-2.0-uninstalled.pc): New targets. (guile-config, guild): Use $(substitute) instead of duplicated sed script. (CLEANFILES): Add the .pc files. * meta/guile-2.0.pc.in (bindir, guild, guile): New variables. * doc/ref/libguile-parallel.texi (Parallel Installations): Document the 'guild' and 'guile' pkg-config variables.
Diffstat (limited to 'meta')
-rw-r--r--meta/Makefile.am49
-rw-r--r--meta/guile-2.0.pc.in7
2 files changed, 43 insertions, 13 deletions
diff --git a/meta/Makefile.am b/meta/Makefile.am
index 57644bcd4..5f19db5c6 100644
--- a/meta/Makefile.am
+++ b/meta/Makefile.am
@@ -44,24 +44,47 @@ pkgconfig_DATA = guile-2.0.pc
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'.
+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,[@]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"
+
+guile-2.0.pc: guile-2.0.pc.in
+ $(substitute) < "$<" > "$@.out"
+ mv "$@.out" "$@"
+
+guile-2.0-uninstalled.pc: guile-2.0-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)'`" ; \
- $(SED) -e "s,[@]pkgconfigdir[@],$(pkgconfigdir),g" \
- -e "s,[@]PKG_CONFIG[@],$(PKG_CONFIG),g" \
- -e "s,[@]installed_guile[@],$$guile,g" \
- < "$(srcdir)/guile-config.in" \
- > "$@.out"
+ $(substitute) < "$<" > "$@.out"
chmod +x "$@.out"
mv "$@.out" "$@"
guild: $(srcdir)/guild.in $(top_builddir)/config.status
- guile="@bindir@/`echo guile | $(SED) -e '$(program_transform_name)'`" ; \
- $(SED) -e "s,[@]installed_guile[@],$$guile,g" \
- -e "s,[@]PACKAGE_NAME[@],$(PACKAGE_NAME),g" \
- -e "s,[@]PACKAGE_BUGREPORT[@],$(PACKAGE_BUGREPORT),g" \
- < "$(srcdir)/guild.in" \
- > "$@.out"
+ $(substitute) < "$<" > "$@.out"
chmod +x "$@.out"
mv "$@.out" "$@"
-CLEANFILES = guile-config guild
+CLEANFILES = \
+ guile-config guild \
+ guile-2.0.pc guile-2.0-uninstalled.pc
diff --git a/meta/guile-2.0.pc.in b/meta/guile-2.0.pc.in
index 1bda73449..c8f485bc1 100644
--- a/meta/guile-2.0.pc.in
+++ b/meta/guile-2.0.pc.in
@@ -1,5 +1,6 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
+bindir=@bindir@
libdir=@libdir@
includedir=@includedir@
datarootdir=@datarootdir@
@@ -11,6 +12,12 @@ sitedir=@sitedir@
extensiondir=@libdir@/guile/@GUILE_EFFECTIVE_VERSION@/extensions
libguileinterface=@LIBGUILE_INTERFACE@
+# Actual name of the 'guile' and 'guild' programs. This is
+# particularly useful when '--program-transform-name' or similar has
+# been used.
+guild=${bindir}/@guild@
+guile=${bindir}/@guile@
+
Name: GNU Guile
Description: GNU's Ubiquitous Intelligent Language for Extension
Version: @GUILE_VERSION@