Back to the Main Page. | ac_config_pkgconfig_in |
Download the M4 Source. |
AC_CONFIG_PKGCONFIG_IN [(LIBRARY [, DESCRIPTION [, DESTINATION]])]
1.2 (2002/09/12) 0.5.65 : Installed Packages
Roger Leigh <roger@whinlatter.uklinux.net>
$1 = LIBRARY e.g. gtk, ncurses
$2 = DESCRIPTION one line description of library
$3 = DESTINATION directory path, e.g. src/scripts
LIBRARY_CFLAGS: cflags for compiling libraries and example progs
LIBRARY_LIBS: libraries for linking programs
LIBRARY_LIBDEPS*: libraries for linking libraries against (needed
to link -static
LIBRARY_REQUIRES: packages required by your library
LIBRARY_CONFLICTS: packages to conflict with your library
library_cflags*: cflags to store in library-config
library_libs*: libs to store in library-config
LIBLIBRARY_LIBS: libs to link programs IN THIS PACKAGE ONLY against
LIBRARY_VERSION*: the version of your library (x.y.z recommended)
*=required if you want sensible output, otherwise they will be
*guessed* (DWIM, but usually correct)
install-data-local: install-pkgconfig
install-pkgconfig:
$(mkinstalldirs) $(DESTDIR)$(bindir)
$(INSTALL_DATA) @LIBRARY_PKGCONFIG@ $(DESTDIR)$(prefix)/lib/pkgconfig
pkgconfigdatadir = $(prefix)/lib/pkgconfig
pkgconfigdata_DATA = gimpprint.pc = @LIBRARY_PKGCONFIG@
GIMPPPRINT_LIBS="-lgimpprint"
AC_CHECK_LIB(m,pow,
GIMPPRINT_DEPLIBS="${GIMPPRINT_DEPLIBS} -lm")
AC_CONFIG_PKGCONFIG_IN([gimpprint], [GIMP Print Top Quality Printer Drivers], [src/main])
## AC_CONFIG_PKGCONFIG_IN(LIBRARY, DESCRIPTION, DESTINATION) ## --------------------------------------------------------- ## Create a custom pkg-config script for LIBRARY. Include a one-line ## DESCRIPTION. The script will be created in a DESTINATION ## directory. AC_DEFUN([AC_CONFIG_PKGCONFIG_IN], [# create a custom pkg-config file ($1.pc.in) m4_pushdef([PKGCONFIG_DIR], [m4_if([$3], , , [$3/])]) PKGCONFIG_FILE="PKGCONFIG_DIR[]$1.pc.in" AC_SUBST(target)dnl AC_SUBST(host)dnl AC_SUBST(build)dnl dnl create directory if it does not preexist m4_if([$3], , , [AS_MKDIR_P([$3])]) AC_MSG_NOTICE([creating $PKGCONFIG_FILE]) dnl we're going to need uppercase, lowercase and user-friendly versions of the dnl string `MODULE' m4_pushdef([MODULE_UP], m4_translit([$1], [a-z], [A-Z]))dnl m4_pushdef([MODULE_DOWN], m4_translit([$1], [A-Z], [a-z]))dnl if test -z "$MODULE_DOWN[]_cflags" ; then if test -n "$MODULE_UP[]_CFLAGS" ; then MODULE_DOWN[]_cflags="$MODULE_UP[]_CFLAGS" else dnl AC_MSG_WARN([variable `MODULE_DOWN[]_cflags' undefined]) MODULE_DOWN[]_cflags='' fi fi AC_SUBST(MODULE_DOWN[]_cflags)dnl if test -z "$MODULE_DOWN[]_libs" ; then if test -n "$MODULE_UP[]_LIBS" ; then MODULE_DOWN[]_libs="$MODULE_UP[]_LIBS" else AC_MSG_WARN([variable `MODULE_DOWN[]_libs' and `MODULE_UP[]_LIBS' undefined]) MODULE_DOWN[]_libs='-l$1' fi if test -n "$MODULE_UP[]_LIBDEPS" ; then MODULE_DOWN[]_libs="$MODULE_DOWN[]_libs $MODULE_UP[]_LIBDEPS" fi fi AC_SUBST(MODULE_DOWN[]_libs)dnl AC_SUBST(MODULE_UP[]_REQUIRES) AC_SUBST(MODULE_UP[]_CONFLICTS) if test -z "$MODULE_UP[]_VERSION" ; then AC_MSG_WARN([variable `MODULE_UP[]_VERSION' undefined]) MODULE_UP[]_VERSION="$VERSION" fi AC_SUBST(MODULE_UP[]_VERSION)dnl echo 'prefix=@prefix@' >$PKGCONFIG_FILE echo 'exec_prefix=@exec_prefix@' >>$PKGCONFIG_FILE echo 'libdir=@libdir@' >>$PKGCONFIG_FILE echo 'includedir=@includedir@' >>$PKGCONFIG_FILE echo '' >>$PKGCONFIG_FILE echo 'Name: @PACKAGE@' >>$PKGCONFIG_FILE echo 'Description: $2' >>$PKGCONFIG_FILE if test -n "$MODULE_UP[]_REQUIRES" ; then echo 'Requires: @MODULE_UP[]_REQUIRES@' >>$PKGCONFIG_FILE fi if test -n "$MODULE_UP[]_CONFLICTS" ; then echo 'Conflicts: @MODULE_UP[]_CONFLICTS@' >>$PKGCONFIG_FILE fi echo 'Version: @VERSION@' >>$PKGCONFIG_FILE echo 'Libs: -L${libdir} @MODULE_DOWN[]_libs@' >>$PKGCONFIG_FILE echo 'Cflags: -I${includedir} @MODULE_DOWN[]_cflags@' >>$PKGCONFIG_FILE m4_pushdef([PKGCONFIG_UP], [m4_translit([$1], [a-z], [A-Z])])dnl PKGCONFIG_UP[]_PKGCONFIG="PKGCONFIG_DIR[]$1-config" AC_SUBST(PKGCONFIG_UP[]_PKGCONFIG) dnl AC_CONFIG_FILES(PKGCONFIG_DIR[]$1[-config], [chmod +x ]PKGCONFIG_DIR[]$1[-config]) m4_popdef([PKGCONFIG_UP]) m4_popdef([MODULE_DOWN])dnl m4_popdef([MODULE_UP])dnl m4_popdef([PKGCONFIG_DIR])dnl ])