The omission was discovered while cross-compiling LilyPond with mingw
11.0.1: without this addition, linking with libguile causes the error
undefined reference to `BCryptGenRandom'
* meta/Makefile.am (dependency_substitutions): Add ‘LIB_GETRANDOM’.
* meta/guile-3.0-uninstalled.pc.in (Libs.private): Likewise.
* meta/guile-3.0.pc.in (Libs.private): Likewise.
* NEWS: Update.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This allows users to adjust their pkg-config install location.
* configure.ac: Call PKG_INSTALLDIR.
* meta/Makefile.am (pkgconfigdir): Remove. It will be defined
automatically by the PKG_INSTALLDIR invocation.
This is a followup to 5fac1a7.
* meta/Makefile.am (substitute): Add GUILE_* and LIBGUILE_* substitutions,
and $(dependency_substitutions).
(dependency_substitutions): New variable.
* 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.
Partly fixes <http://bugs.gnu.org/14042>.
Reported by Marc Girod <marc.girod@gmail.com>.
* meta/Makefile.am (guile-config): Use separate "s" expressions to
accommodate Solaris sed.
Moved scm_i_struct_hash from struct.c to hash.c and made it static.
The port's alist is now a field of 'scm_t_port'.
Conflicts:
libguile/arrays.c
libguile/hash.c
libguile/ports.c
libguile/print.h
libguile/read.c
make distcheck is currently failing for me with:
In file included from /usr/local/include/libguile/threads.h:35,
from /usr/local/include/libguile/async.h:28,
from /usr/local/include/libguile.h:37,
from ../../examples/box/box.c:22:
/usr/local/include/libguile/pthread-threads.h:33:31: error: libguile/boehm-gc.h: No such file or directory
In file included from /usr/local/include/libguile.h:93,
from ../../examples/box/box.c:22:
- which is because it's picking up a load of installed headers,
instead of those in the _inst tree
- which is because there is no output from the preceding guile-config
invocation:
PATH=/home/neil/SW/Guile/ovnight/guile-master-20090924/_inst/bin:$PATH PKG_CONFIG_PATH=/home/neil/SW/Guile/ovnight/guile-master-20090924/_inst/lib/pkgconfig /home/neil/SW/Guile/ovnight/guile-master-20090924/_inst/bin/guile-config compile
- which is because .../_inst/bin/guile-config is empty
- which is because the rule in meta/Makefile.am that generates
guile-config is missing $(srcdir), and so doesn't find
guile-config.in.
* meta/Makefile.am (guile-config): Look for guile-config.in in
$(srcdir).
* meta/Makefile.am (guile-config): New target.
(EXTRA_DIST): Add `guile-config.in'.
* meta/guile-config.in: New, formerly `guile-config'. Use the right
installed `guile', with the right $PKG_CONFIG_PATH. Disable
auto-compilation.
(%pkg-config-program): New variable.
(pkg-config): Use it.
* meta/Makefile.am (bin_SCRIPTS): Re-add guile-tools here (removed in
54b38caf19). Otherwise guile-tools
doesn't get installed. I think that 1.9.2 had this bug.
* examples/Makefile.am: Fix the installed guile-config invocation to set
PKG_CONFIG_PATH.
* meta/Makefile.am (EXTRA_DIST): Dist the bin_SCRIPTS.
* meta/guile-config (pkg-config): Better error messages if pkg-config
invocation fails.
* meta/uninstalled-env.in (PATH): Now that guile-config and guile-tools
are not generated, make it the srcdir/meta instead of the builddir.
(Guile itself will be picked up from libguile.)
* meta/guile-tools: Changed to be a scheme script. Instead of looking for
executables in a "scripts dir", we just look for modules in (scripts),
and load the modules directly.
* module/Makefile.am:
* module/scripts/: Move the scripts into module/ so they can be compiled.
Rename scripts from `foo' to `foo.scm'.
* libguile/Makefile.am: Invoke the snarf->texi code via guile-tools.
* configure.in:
* .gitignore: Update for changes.
* configure.in:
* meta/Makefile.am (EXTRA_DIST): Remove guile-config.in bits.
* meta/guile-config: Reimplement to work on top of pkg-config. This lets
guile-config not be substed by configure.
* meta/uninstalled-env.in: Remove the path to guile-config, belatedly.
Set the pkg-config path correctly.
* README: Add more info about building against an uninstalled Guile.
* meta/: New directory. The proximate cause of its creation is that I
want to be able to build external packages against uninstalled Guile,
and to do that I need guile-tools in the PATH, but I don't want
$top_builddir/libtool in the path. But it seems like a good
reorganization, for things that are /about/ Guile: pkg-config files, m4
files, guile-config... then we also include uninstalled info: the
environment, the pre-inst-guile script, etc.
* meta/guile-1.8-uninstalled.pc.in: New pkg-config template. pkg-config
prefers -uninstalled pkg-config files, if they are in its path.
* meta/Makefile.am:
* meta/ChangeLog-2008:
* meta/gdb-uninstalled-guile.in:
* meta/guile-1.8.pc.in:
* meta/guile-config.in:
* meta/guile.m4:
* meta/guile-tools.in: Moved to meta/.
* meta/guile.in: This is the new name of pre-inst-guile.in.
* meta/uninstalled-env.in: And this, pre-inst-guile-env.in.
* Makefile.am:
* am/guilec:
* am/pre-inst-guile:
* check-guile.in:
* configure.in:
* doc/ref/Makefile.am:
* gc-benchmarks/run-benchmark.scm:
* test-suite/standalone/Makefile.am:
* test-suite/standalone/README:
* testsuite/Makefile.am: Adapt to meta/ change.