mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Add `pkg-config' support.
This commit is contained in:
parent
5338352e56
commit
627bae78af
9 changed files with 88 additions and 6 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -69,3 +69,4 @@ guile-config/guile-config
|
||||||
guile-readline/guile-readline-config.h
|
guile-readline/guile-readline-config.h
|
||||||
guile-readline/guile-readline-config.h.in
|
guile-readline/guile-readline-config.h.in
|
||||||
TAGS
|
TAGS
|
||||||
|
guile-1.8.pc
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2008-05-04 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
|
* configure.in: Substitute `sitedir', produce `guile-1.8.pc'.
|
||||||
|
* Makefile.am (EXTRA_DIST): Add `guile-1.8.pc.in'.
|
||||||
|
(pkgconfigdir, pkgconfig_DATA): New.
|
||||||
|
|
||||||
2008-04-26 Ludovic Courtès <ludo@gnu.org>
|
2008-04-26 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
* configure.in (BUILD_PTHREAD_SUPPORT): New Automake
|
* configure.in (BUILD_PTHREAD_SUPPORT): New Automake
|
||||||
|
|
|
@ -31,7 +31,7 @@ bin_SCRIPTS = guile-tools
|
||||||
|
|
||||||
include_HEADERS = libguile.h
|
include_HEADERS = libguile.h
|
||||||
|
|
||||||
EXTRA_DIST = LICENSE HACKING GUILE-VERSION FAQ
|
EXTRA_DIST = LICENSE HACKING GUILE-VERSION FAQ guile-1.8.pc.in
|
||||||
|
|
||||||
TESTS = check-guile
|
TESTS = check-guile
|
||||||
|
|
||||||
|
@ -39,4 +39,7 @@ ACLOCAL_AMFLAGS = -I guile-config
|
||||||
|
|
||||||
DISTCLEANFILES = check-guile.log
|
DISTCLEANFILES = check-guile.log
|
||||||
|
|
||||||
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
|
pkgconfig_DATA = guile-1.8.pc
|
||||||
|
|
||||||
# Makefile.am ends here
|
# Makefile.am ends here
|
||||||
|
|
4
NEWS
4
NEWS
|
@ -15,6 +15,10 @@ The new repository can be accessed using
|
||||||
"git-clone git://git.sv.gnu.org/guile.git", or can be browsed on-line at
|
"git-clone git://git.sv.gnu.org/guile.git", or can be browsed on-line at
|
||||||
http://git.sv.gnu.org/gitweb/?p=guile.git . See `README' for details.
|
http://git.sv.gnu.org/gitweb/?p=guile.git . See `README' for details.
|
||||||
|
|
||||||
|
** Add support for `pkg-config'
|
||||||
|
|
||||||
|
See "Autoconf Support" in the manual for details.
|
||||||
|
|
||||||
* New modules (see the manual for details)
|
* New modules (see the manual for details)
|
||||||
|
|
||||||
** `(srfi srfi-88)'
|
** `(srfi srfi-88)'
|
||||||
|
|
|
@ -1430,6 +1430,12 @@ AC_SUBST(top_builddir_absolute)
|
||||||
top_srcdir_absolute=`(cd $srcdir && pwd)`
|
top_srcdir_absolute=`(cd $srcdir && pwd)`
|
||||||
AC_SUBST(top_srcdir_absolute)
|
AC_SUBST(top_srcdir_absolute)
|
||||||
|
|
||||||
|
dnl We need `sitedir' in `guile-1.8.pc'.
|
||||||
|
dnl Note: `sitedir' must be kept in sync with `GUILE_SITE_DIR' in `guile.m4'.
|
||||||
|
pkgdatadir="$datadir/guile"
|
||||||
|
sitedir="$pkgdatadir/site"
|
||||||
|
AC_SUBST([sitedir])
|
||||||
|
|
||||||
# Additional SCM_I_GSC definitions are above.
|
# Additional SCM_I_GSC definitions are above.
|
||||||
AC_SUBST([SCM_I_GSC_GUILE_DEBUG])
|
AC_SUBST([SCM_I_GSC_GUILE_DEBUG])
|
||||||
AC_SUBST([SCM_I_GSC_GUILE_DEBUG_FREELIST])
|
AC_SUBST([SCM_I_GSC_GUILE_DEBUG_FREELIST])
|
||||||
|
@ -1475,6 +1481,7 @@ AC_CONFIG_FILES([
|
||||||
test-suite/standalone/Makefile
|
test-suite/standalone/Makefile
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AC_CONFIG_FILES([guile-1.8.pc])
|
||||||
AC_CONFIG_FILES([check-guile], [chmod +x check-guile])
|
AC_CONFIG_FILES([check-guile], [chmod +x check-guile])
|
||||||
AC_CONFIG_FILES([benchmark-guile], [chmod +x benchmark-guile])
|
AC_CONFIG_FILES([benchmark-guile], [chmod +x benchmark-guile])
|
||||||
AC_CONFIG_FILES([guile-tools], [chmod +x guile-tools])
|
AC_CONFIG_FILES([guile-tools], [chmod +x guile-tools])
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2008-05-04 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
|
* guile.texi (Guile Modules): Include `autoconf.texi'.
|
||||||
|
* autoconf.texi (Autoconf Support): Mention `pkg-config'.
|
||||||
|
(Autoconf Macros): Document `pkg-config' support.
|
||||||
|
|
||||||
2008-04-26 Ludovic Courtès <ludo@gnu.org>
|
2008-04-26 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
* srfi-modules.texi (SRFI-88): New section.
|
* srfi-modules.texi (SRFI-88): New section.
|
||||||
|
@ -2582,3 +2588,8 @@
|
||||||
The change log for files in this directory continues backwards
|
The change log for files in this directory continues backwards
|
||||||
from 2001-08-27 in ../ChangeLog, as all the Guile documentation
|
from 2001-08-27 in ../ChangeLog, as all the Guile documentation
|
||||||
prior to this date was contained in a single directory.
|
prior to this date was contained in a single directory.
|
||||||
|
|
||||||
|
|
||||||
|
;; Local Variables:
|
||||||
|
;; coding: utf-8
|
||||||
|
;; End:
|
||||||
|
|
|
@ -8,10 +8,10 @@
|
||||||
@node Autoconf Support
|
@node Autoconf Support
|
||||||
@chapter Autoconf Support
|
@chapter Autoconf Support
|
||||||
|
|
||||||
When Guile is installed, a set of autoconf macros is also installed as
|
When Guile is installed, a pkg-config description file and a set of
|
||||||
PREFIX/share/aclocal/guile.m4. This chapter documents the macros provided in
|
Autoconf macros is installed. This chapter documents pkg-config and
|
||||||
that file, as well as the high-level guile-tool Autofrisk. @xref{Top,The GNU
|
Autoconf support, as well as the high-level guile-tool Autofrisk.
|
||||||
Autoconf Manual,,autoconf}, for more info.
|
@xref{Top,The GNU Autoconf Manual,,autoconf}, for more info.
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Autoconf Background:: Why use autoconf?
|
* Autoconf Background:: Why use autoconf?
|
||||||
|
@ -45,7 +45,38 @@ checks.
|
||||||
@node Autoconf Macros
|
@node Autoconf Macros
|
||||||
@section Autoconf Macros
|
@section Autoconf Macros
|
||||||
|
|
||||||
The macro names all begin with "GUILE_".
|
@cindex pkg-config
|
||||||
|
@cindex autoconf
|
||||||
|
|
||||||
|
GNU Guile provides a @dfn{pkg-config} description file, installed as
|
||||||
|
@file{@var{prefix}/lib/pkgconfig/guile.pc}, which contains all the
|
||||||
|
information necessary to compile and link C applications that use Guile.
|
||||||
|
The @code{pkg-config} program is able to read this file and provide this
|
||||||
|
information to application programmers; it can be obtained at
|
||||||
|
@url{http://pkg-config.freedesktop.org/}.
|
||||||
|
|
||||||
|
The following command lines give respectively the C compilation and link
|
||||||
|
flags needed to build Guile-using programs:
|
||||||
|
|
||||||
|
@example
|
||||||
|
pkg-config guile --cflags
|
||||||
|
pkg-config guile --libs
|
||||||
|
@end example
|
||||||
|
|
||||||
|
To ease use of pkg-config with Autoconf, pkg-config comes with a
|
||||||
|
convenient Autoconf macro. The following example looks for Guile and
|
||||||
|
sets the @code{GUILE_CFLAGS} and @code{GUILE_LIBS} variables
|
||||||
|
accordingly, or prints an error and exits if Guile was not found:
|
||||||
|
|
||||||
|
@findex PKG_CHECK_MODULES
|
||||||
|
|
||||||
|
@example
|
||||||
|
PKG_CHECK_MODULES([GUILE], [guile])
|
||||||
|
@end example
|
||||||
|
|
||||||
|
Guile comes with additional Autoconf macros providing more information,
|
||||||
|
installed as @file{@var{prefix}/share/aclocal/guile.m4}. Their names
|
||||||
|
all begin with @code{GUILE_}.
|
||||||
|
|
||||||
@c see Makefile.am
|
@c see Makefile.am
|
||||||
@include autoconf-macros.texi
|
@include autoconf-macros.texi
|
||||||
|
|
|
@ -176,6 +176,8 @@ x
|
||||||
|
|
||||||
* Guile Modules::
|
* Guile Modules::
|
||||||
|
|
||||||
|
* Autoconf Support::
|
||||||
|
|
||||||
Appendices
|
Appendices
|
||||||
|
|
||||||
* Data Representation:: All the details.
|
* Data Representation:: All the details.
|
||||||
|
@ -361,6 +363,8 @@ available through both Scheme and C interfaces.
|
||||||
@include scsh.texi
|
@include scsh.texi
|
||||||
@include scheme-debugging.texi
|
@include scheme-debugging.texi
|
||||||
|
|
||||||
|
@include autoconf.texi
|
||||||
|
|
||||||
@include data-rep.texi
|
@include data-rep.texi
|
||||||
@include fdl.texi
|
@include fdl.texi
|
||||||
|
|
||||||
|
|
15
guile-1.8.pc.in
Normal file
15
guile-1.8.pc.in
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
prefix=@prefix@
|
||||||
|
exec_prefix=@exec_prefix@
|
||||||
|
libdir=@libdir@
|
||||||
|
includedir=@includedir@
|
||||||
|
datarootdir=@datarootdir@
|
||||||
|
datadir=@datadir@
|
||||||
|
|
||||||
|
sitedir=@sitedir@
|
||||||
|
libguileinterface=@LIBGUILE_INTERFACE@
|
||||||
|
|
||||||
|
Name: GNU Guile
|
||||||
|
Description: GNU's Ubiquitous Intelligent Language for Extension
|
||||||
|
Version: @GUILE_VERSION@
|
||||||
|
Libs: -L${libdir} -lguile @GUILE_LIBS@
|
||||||
|
Cflags: -I${includedir} @GUILE_CFLAGS@
|
Loading…
Add table
Add a link
Reference in a new issue