1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 06:20:23 +02:00
Commit graph

42 commits

Author SHA1 Message Date
Ludovic Courtès
fb3fad5346 Add Libs.private' to the .pc' files.
* meta/guile-2.0-uninstalled.pc.in (Libs): Remove @GUILE_LIBS@.
  (Libs.private): New field.
* meta/guile-2.0.pc.in (Libs): Remove @GUILE_LIBS@.
  (Libs.private): New field.
2010-10-20 23:45:59 +02:00
Michael Gran
5ad3881631 Add v1.8.x backward compatiblity to GUILE_SITE_DIR
* meta/guile.m4 (GUILE_SITE_DIR): use pkgdatadir if no sitedir
2010-10-03 12:25:53 +02:00
Andy Wingo
0f6611fb8b fix guile-tools --help and --version
* meta/guile-tools.in: Fix --help and --version.
2010-09-04 11:00:33 -07:00
Andy Wingo
869bfe86af s/extensionsdir/extensiondir/
* libguile/Makefile.am (libpath.h): Change "extensionsdir" to
  "extensiondir".
* meta/guile-2.0.pc.in (extensiondir): Likewise.
2010-08-06 13:15:58 +02:00
Andy Wingo
d8e1bce4fc brown-paper-bag to uninstalled-env
* meta/uninstalled-env.in: Fix lack of test.
2010-06-10 17:29:48 +02:00
Andy Wingo
070d8db023 more uninstalled-env fixen
* meta/uninstalled-env.in: Don't implicitly add . to LTDL
  search paths if no LTDL_LIBRARY_PATH was set. Avoid a duplicate to
  PATH.
2010-06-10 17:23:51 +02:00
Andy Wingo
8c4e90fa89 uninstalled-env cleanups
* meta/uninstalled-env.in: Clean up setting of GUILE_LOAD_PATH and
  GUILE_LOAD_COMPILED_PATH.
2010-06-10 17:13:06 +02:00
Andy Wingo
875b58d240 don't forget to set GUILE_SYSTEM_PATH in uninstalled mode
* meta/uninstalled-env.in (GUILE_SYSTEM_PATH): Set this var too in
  uninstalled mode.
2010-06-10 16:53:27 +02:00
Andy Wingo
718815d761 parallel installability for libguile*.h
* Makefile.am:
* libguile/Makefile.am (modincludedir): Install into
  $pkgincludedir/$GUILE_EFFECTIVE_VERSION. This allows multiple Guile
  development packages to be installed at once.

* guile-readline/Makefile.am (modincludedir):
* srfi/Makefile.am (srfiincludedir): Likewise.

* meta/guile-2.0.pc.in (Cflags): Add the appropriate -I line so that
  user code picks up the new location transparently.
2010-03-16 21:44:34 +01:00
Andy Wingo
44602b0868 rename libguile to libguile-@EFFECTIVE_VERSION@, currently libguile-2.0
* libguile/Makefile.am (lib_LTLIBRARIES): Instead of just "libguile.la",
  make "libguile-@EFFECTIVE_VERSION@.la". This allows multiple versions
  of Guile to be installed at once. See
  http://www106.pair.com/rhp/parallel.html for a rationale.

  (libguile_@GUILE_EFFECTIVE_VERSION@_la_CFLAGS):
  (libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES):
  (EXTRA_libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES):
  (libguile_@GUILE_EFFECTIVE_VERSION@_la_DEPENDENCIES):
  (libguile_@GUILE_EFFECTIVE_VERSION@_la_LIBADD):
  (libguile_@GUILE_EFFECTIVE_VERSION@_la_LDFLAGS): Fixup automake vars
  to include the effective version.
  (guile_LDADD): Fix up the spelling of libguile.

* libguile/bytevectors.c (scm_bootstrap_bytevectors):
* libguile/foreign.c (scm_register_foreign):
* libguile/i18n.c (scm_bootstrap_i18n):
* libguile/instructions.c (scm_bootstrap_instructions):
* libguile/objcodes.c (scm_bootstrap_objcodes):
* libguile/programs.c (scm_bootstrap_programs):
* libguile/vm.c (scm_bootstrap_vm): Register extensions using e.g.
  "libguile-2.0" as the libname -- i.e., including the effective version
  in the libname.

* module/ice-9/i18n.scm:
* module/rnrs/bytevector.scm:
* module/rnrs/io/ports.scm:
* module/system/foreign.scm:
* module/system/vm/instruction.scm:
* module/system/vm/objcode.scm:
* module/system/vm/program.scm:
* module/system/vm/vm.scm: When doing a load-extension for something in
  Guile, use the effective version also.

* meta/guile-2.0-uninstalled.pc.in (Libs):
* meta/guile-2.0.pc.in (Libs): Use -lguile-@EFFECTIVE_VERSION@. This
  change should mean that code built against Guile should not be
  affected by the libguile rename.

* guile-readline/Makefile.am (libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_LIBADD):
* srfi/Makefile.am
  (libguile_srfi_srfi_1_v_@LIBGUILE_SRFI_SRFI_1_MAJOR@_la_LIBADD):
  (libguile_srfi_srfi_4_v_@LIBGUILE_SRFI_SRFI_4_MAJOR@_la_LIBADD):
  (libguile_srfi_srfi_13_14_v_@LIBGUILE_SRFI_SRFI_13_14_MAJOR@_la_LIBADD):
  (libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LIBADD):
* test-suite/standalone/Makefile.am (test_num2integral_LDADD):
  (test_round_LDADD):
  (libtest_asmobs_la_LIBADD):
  (libtest_ffi_la_LIBADD):
  (test_list_LDADD):
  (test_unwind_LDADD):
  (test_conversion_LDADD):
  (test_loose_ends_LDADD):
  (test_scm_c_read_LDADD):
  (test_scm_take_locale_symbol_LDADD):
  (test_scm_take_u8vector_LDADD):
  (libtest_extensions_la_LIBADD):
  (test_with_guile_module_LDADD):
  (test_scm_with_guile_LDADD): Fix up the spelling of libguile.la.
2010-03-16 21:20:34 +01:00
Ludovic Courtès
e6251e7bd9 Have "guile-tools compile" use the current locale.
* meta/guile-tools.in (main): Install the user's locale.
2010-01-11 01:21:13 +01:00
Andy Wingo
31c944228c guile-config depends on config.status
* meta/Makefile.am (guile-config): Depend on config.status, so that if
  $prefix changes, guile-config gets rebuilt.
2009-12-20 15:34:19 +01:00
Ludovic Courtès
66e18d1c7c Use portable shell in `meta/uninstalled-env'.
* meta/uninstalled-env.in: Don't use the `-q' and `-E' options, which are
  specific to GNU grep.  Don't set-and-export environment variables at
  once since this is a GNU Bash extension.
2009-12-15 01:11:01 +01:00
Ludovic Courtès
981ff600e8 Fix makefile indentation.
* benchmark-suite/Makefile.am, libguile/Makefile.am, meta/Makefile.am:
  Use TAB instead of 8 spaces...

* .x-sc_makefile_check: New file.
2009-11-24 23:41:08 +01:00
Ken Raeburn
7ed7e4bb2f * meta/gdb-uninstalled-guile.in: Specify a path to libtool. 2009-10-30 18:39:48 -04:00
Andy Wingo
28af5ee5ec add $libir to the ltdl path, not $pkglibdir; add extensionsdir
* libguile/Makefile.am (libpath.h): Fix SCM_LIB_DIR to point to the
  libdir, not pkglibdir. Add SCM_EXTENSIONS_DIR, for a dir to put in the
  dynamic-link search path that's not managed by ldconfig or the like;
  and put this dir in the "extensionsdir" key of %guile-build-info.

* libguile/dynl.c (sysdep_dynl_init): Rename the installed-libdir
  environment var to GUILE_SYSTEM_EXTENSIONS_PATH (from
  GUILE_SYSTEM_LTDL_PATH). Also add SCM_EXTENSIONS_DIR to the ltdl
  search path in the default case.
* meta/uninstalled-env.in: Adapt override to match.

* meta/guile-2.0.pc.in: Add extensionsdir, so you can pkg-config
  --variable=extensionsdir guile-2.0.
2009-10-13 11:31:02 +02:00
Neil Jerram
a16eda7a40 Clean meta/guile-config
* meta/Makefile.am (CLEANFILES): New, containing guile-config.
2009-09-26 00:51:50 +01:00
Neil Jerram
b217a822ad Don't include guile-config and guile-tools in distribution
They need to be regenerated, with the correct prefix, when configure
and make run.

* meta/Makefile.am (EXTRA_DIST): Remove bin_SCRIPTS.
2009-09-25 22:45:17 +01:00
Neil Jerram
f60e892819 Fix make distcheck by looking for guile-config in $(srcdir)
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).
2009-09-25 20:18:34 +01:00
Ludovic Courtès
297273e422 Have guile-config' close over pkg-config' and $(pkgconfigdir).
* 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.
2009-09-24 00:06:54 +02:00
Neil Jerram
4330956d39 Fix GDB in Emacs incantation 2009-09-21 23:22:13 +01:00
Neil Jerram
93683f9bb1 Convenience for running GDB on Guile in Emacs
* meta/gdb-uninstalled-guile.in: Add (in a comment) an elisp form that
  can be evaluated to run GDB on Guile in Emacs.
2009-09-17 00:19:47 +01:00
Andy Wingo
eb350124a8 add the libdir to the ltdl lib search path
* libguile/Makefile.am (libpath.h): Fix pkgdatadir, pkglibdir, and
  pkgincludedir entries. Add a new define, SCM_LIB_DIR.

* libguile/dynl.c (sysdep_dynl_init): Add the libdir to the libltdl
  search path. Should fix
  http://thread.gmane.org/gmane.lisp.guile.bugs/4289/focus=4296 -- that
  is, it should allow guile to be invoked from whereever it is
  installed, without munging LTDL_LIBRARY_PATH or the like variables.

  There is a trick though -- during the build, we don't want to be
  looking in the $libdir for loadable modules. So as with
  GUILE_SYSTEM_PATH, we have GUILE_SYSTEM_LTDL_PATH.

* meta/uninstalled-env.in: Set GUILE_SYSTEM_LTDL_PATH to "" when
  building.
2009-09-16 18:10:19 +02:00
Ludovic Courtès
d6097d1d63 Add BDW_GC_CFLAGS' to the .pc' files.
This is needed because <gc/gc.h> is included in public headers (via
<libguile/boehm-gc.h>.

* meta/guile-2.0-uninstalled.pc.in (Cflags): Add `@BDW_GC_CFLAGS'.

* meta/guile-2.0.pc.in (Cflags): Likewise.
2009-08-28 21:08:07 +02:00
Andy Wingo
5a70cf0a6c actually install guile-tools
* 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.
2009-08-26 12:16:36 +02:00
Andy Wingo
48a0fe4d6b autocompiled files before installation go to a cache dir in the builddir
* libguile/load.c (scm_init_load_path): Append a slash after
  XDG_CACHE_HOME.

* meta/gdb-uninstalled-guile.in:
* meta/guile.in (XDG_CACHE_HOME): Export this var so we write to a cache
  within the build directory. Probably we should have a GUILE_CACHE_DIR
  to be more specific, though.

* Makefile.am (clean-local): Clear the cache when making clean.
2009-08-20 18:52:38 +02:00
Ludovic Courtès
54b38caf19 Add proper --help' and --version' for `guile-tools compile'.
* configure.ac: Produce `meta/guile-tools'.

* meta/Makefile.am (EXTRA_DIST): Add `guile-tools.in'.
  (bin_SCRIPTS): Remove `guile-tools'.

* meta/uninstalled-env.in (PATH): Add "${top_builddir}/meta".

* module/scripts/compile.scm (%options): Add `--version'.
  (parse-args): Show the offending option name upon error.
  (show-version): New.
  (compile): Use `%guile-bug-report-address'.
2009-08-15 14:18:57 +02:00
Ludovic Courtès
c1a15f3dd7 Switch from guile-1.8.pc' to guile-2.0.pc'.
* configure.ac: Produce guile-2.0*.pc.

* meta/Makefile.am (EXTRA_DIST): Rename guile-1.8*.pc.in to
  guile-2.0*.pc.in.
  (pkgconfig_DATA): Update accordingly.

* meta/guile-config (guile-module): Likewise.
2009-08-15 12:05:36 +02:00
Ludovic Courtès
23044464c2 Fix copyright year and authorship of `guile-tools'. 2009-06-19 22:01:56 +02:00
Neil Jerram
53befeb700 Change Guile license to LGPLv3+
(Not quite finished, the following will be done tomorrow.
   module/srfi/*.scm
   module/rnrs/*.scm
   module/scripts/*.scm
   testsuite/*.scm
   guile-readline/*
)
2009-06-17 00:22:09 +01:00
Andy Wingo
d1e47c6e6c update uninstalled-env.in for load-compiled path separation
* meta/uninstalled-env.in: Update to set GUILE_LOAD_COMPILED_PATH and
  GUILE_SYSTEM_COMPILED_PATH.
2009-06-03 22:20:55 +02:00
Andy Wingo
d4876cb413 distcheck fixen
* 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.)
2009-04-21 12:41:19 +02:00
Andy Wingo
922d369578 fix guile.m4 for sitedir change
* meta/guile.m4
2009-04-20 18:23:11 +02:00
Andy Wingo
fb3807793f scripts take rest args
* meta/guile-tools: Instead of fixing scripts I should have been fixing
  the script runner.

* module/scripts/compile.scm:
* module/scripts/snarf-guile-m4-docs.scm: Fix to take rest args.
2009-04-20 18:20:01 +02:00
Andy Wingo
807da8804c some more build fixes for bugs that I introduced
* meta/guile-1.8.pc.in: Include a pkgdatadir, which will map down to
  `guile-config info pkgdatadir', used in existing guile.m4 files.

* meta/guile-config: Fix guile-config info varname. Facepalm.

* meta/guile.m4: Make GUILE_SITE_DIR use the sitedir variable instead.
  Really it should use pkg-config directly, though.
2009-04-20 17:42:35 +02:00
Andy Wingo
2b4b555b8f fix build errors on fresh checkout
* meta/guile-tools: We can't use srfi-1, because on a fresh checkout
  the srfi-1 shlib isn't built yet. Bummer.

* meta/uninstalled-env.in: Fix up the DYLD lines for BSDen.

* module/scripts/snart-guile-m4-docs.scm: Fix expected arguments.
2009-04-20 17:23:40 +02:00
Andy Wingo
6d66647d5b guile-tools is a scheme script that loads scheme modules
* 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.
2009-04-17 11:19:42 +02:00
Andy Wingo
275baf0113 guile-config rebased on top of pkg-config
* 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.
2009-04-06 11:08:38 -07:00
Andy Wingo
a44c43368b add test case for load-extension bug, fix gdb-uninstalled-guile
* test-suite/standalone/test-extensions:
* test-suite/standalone/test-extensions-lib.c:
* test-suite/standalone/Makefile.am: Add a test case for the
  load-extension bug.

* meta/gdb-uninstalled-guile.in: Fix the path to include meta/.
2009-03-30 20:28:30 -07:00
Andy Wingo
7f86474488 fix "linking" of guile-config
* meta/guile-config.in: Adjust "linking"; @bindir@ doesn't get fully
  expanded. So instead use a shell trampoline.
2009-03-27 16:11:43 -07:00
Andy Wingo
9893417165 fix check for guile-tools running uninstalled
* meta/guile-tools.in (mydir): Fix check for running uninstalled.
2009-03-27 16:01:12 -07:00
Andy Wingo
0b6d8fdc28 allow building against uninstalled guile; move some things to meta/
* 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.
2009-03-27 14:03:03 -07:00