AC-Archive
Autoconf Macro Archive

ac-archive.sf.net: - Project CVS - Download
Macro Index
- AM Support
- C++ Support
- C Support
- Fortran Support
- Java Support
- Cross Compilation
- Installed Packages
- Miscellaneous
- LaTeX Support
- Uncategorized
- archive macros
- adl's macros
- bkorb's macros
- guidod's macros
- latex's macros
- other's macros
- rleigh's macros
- obsoleted macros
- released macros
- search index

Documentation
- Contribute!
- History
- acincludedir m4
- acinclude (tool)
- macro howto
- ax tricks
- maintainers
- License
- Topics

generated...
2007年08月05日

(C) 2007 guidod
Synopsis
AC_PATH_GENERIC(LIBRARY [, MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
, 
Version

2001年03月16日

Author

Angus Lees <gusl@cse.unsw.edu.au>

License

GPLWithACException
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts

Category

cryp.to ac-archive's Miscellaneous (released)

Documentation

Runs a LIBRARY-config script and defines LIBRARY_CFLAGS and LIBRARY_LIBS

The script must support `--cflags' and `--libs' args. If MINIMUM-VERSION is specified, the script must also support the `--version' arg. If the `--with-library-[exec-]prefix' arguments to ./configure are given, it must also support `--prefix' and `--exec-prefix'. (In other words, it must be like gtk-config.)

For example:

 AC_PATH_GENERIC(Foo, 1.0.0)

would run `foo-config --version' and check that it is at least 1.0.0

If so, the following would then be defined:

 FOO_CFLAGS to `foo-config --cflags`
 FOO_LIBS to `foo-config --libs`

At present there is no support for additional "MODULES" (see AM_PATH_GTK) (shamelessly stolen from gtk.m4 and then hacked around a fair amount)

M4 Source Code
AC_DEFUN([AC_PATH_GENERIC],
[dnl
dnl we're going to need uppercase, lowercase and user-friendly versions of the
dnl string `LIBRARY'
pushdef([UP], translit([1ドル], [a-z], [A-Z]))dnl
pushdef([DOWN], translit([1ドル], [A-Z], [a-z]))dnl
dnl
dnl Get the cflags and libraries from the LIBRARY-config script
dnl
AC_ARG_WITH(DOWN-prefix,[ --with-]DOWN[-prefix=PFX Prefix where 1ドル is installed (optional)],
 DOWN[]_config_prefix="$withval", DOWN[]_config_prefix="")
AC_ARG_WITH(DOWN-exec-prefix,[ --with-]DOWN[-exec-prefix=PFX Exec prefix where 1ドル is installed (optional)],
 DOWN[]_config_exec_prefix="$withval", DOWN[]_config_exec_prefix="")
 if test x$DOWN[]_config_exec_prefix != x ; then
 DOWN[]_config_args="$DOWN[]_config_args --exec-prefix=$DOWN[]_config_exec_prefix"
 if test x${UP[]_CONFIG+set} != xset ; then
 UP[]_CONFIG=$DOWN[]_config_exec_prefix/bin/DOWN-config
 fi
 fi
 if test x$DOWN[]_config_prefix != x ; then
 DOWN[]_config_args="$DOWN[]_config_args --prefix=$DOWN[]_config_prefix"
 if test x${UP[]_CONFIG+set} != xset ; then
 UP[]_CONFIG=$DOWN[]_config_prefix/bin/DOWN-config
 fi
 fi
 AC_PATH_PROG(UP[]_CONFIG, DOWN-config, no)
 ifelse([2ドル], ,
 AC_MSG_CHECKING(for 1ドル),
 AC_MSG_CHECKING(for 1ドル - version &gt;= 2ドル)
 )
 no_[]DOWN=""
 if test "$UP[]_CONFIG" = "no" ; then
 no_[]DOWN=yes
 else
 UP[]_CFLAGS="`$UP[]_CONFIG $DOWN[]_config_args --cflags`"
 UP[]_LIBS="`$UP[]_CONFIG $DOWN[]_config_args --libs`"
 ifelse([2ドル], , ,[
 DOWN[]_config_major_version=`$UP[]_CONFIG $DOWN[]_config_args \
 --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/1円/'`
 DOWN[]_config_minor_version=`$UP[]_CONFIG $DOWN[]_config_args \
 --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/2円/'`
 DOWN[]_config_micro_version=`$UP[]_CONFIG $DOWN[]_config_args \
 --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/3円/'`
 DOWN[]_wanted_major_version="regexp(2,ドル [\&lt;\([0-9]*\)], [1円])"
 DOWN[]_wanted_minor_version="regexp(2,ドル [\&lt;\([0-9]*\)\.\([0-9]*\)], [2円])"
 DOWN[]_wanted_micro_version="regexp(2,ドル [\&lt;\([0-9]*\).\([0-9]*\).\([0-9]*\)], [3円])"
 # Compare wanted version to what config script returned.
 # If I knew what library was being run, i'd probably also compile
 # a test program at this point (which also extracted and tested
 # the version in some library-specific way)
 if test "$DOWN[]_config_major_version" -lt \
 "$DOWN[]_wanted_major_version" \
 -o \( "$DOWN[]_config_major_version" -eq \
 "$DOWN[]_wanted_major_version" \
 -a "$DOWN[]_config_minor_version" -lt \
 "$DOWN[]_wanted_minor_version" \) \
 -o \( "$DOWN[]_config_major_version" -eq \
 "$DOWN[]_wanted_major_version" \
 -a "$DOWN[]_config_minor_version" -eq \
 "$DOWN[]_wanted_minor_version" \
 -a "$DOWN[]_config_micro_version" -lt \
 "$DOWN[]_wanted_micro_version" \) ; then
 # older version found
 no_[]DOWN=yes
 echo -n "*** An old version of 1ドル "
 echo -n "($DOWN[]_config_major_version"
 echo -n ".$DOWN[]_config_minor_version"
 echo ".$DOWN[]_config_micro_version) was found."
 echo -n "*** You need a version of 1ドル newer than "
 echo -n "$DOWN[]_wanted_major_version"
 echo -n ".$DOWN[]_wanted_minor_version"
 echo ".$DOWN[]_wanted_micro_version."
 echo "***"
 echo "*** If you have already installed a sufficiently new version, this error"
 echo "*** probably means that the wrong copy of the DOWN-config shell script is"
 echo "*** being found. The easiest way to fix this is to remove the old version"
 echo "*** of 1,ドル but you can also set the UP[]_CONFIG environment to point to the"
 echo "*** correct copy of DOWN-config. (In this case, you will have to"
 echo "*** modify your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf"
 echo "*** so that the correct libraries are found at run-time)"
 fi
 ])
 fi
 if test "x$no_[]DOWN" = x ; then
 AC_MSG_RESULT(yes)
 ifelse([3ドル], , :, [3ドル])
 else
 AC_MSG_RESULT(no)
 if test "$UP[]_CONFIG" = "no" ; then
 echo "*** The DOWN-config script installed by 1ドル could not be found"
 echo "*** If 1ドル was installed in PREFIX, make sure PREFIX/bin is in"
 echo "*** your path, or set the UP[]_CONFIG environment variable to the"
 echo "*** full path to DOWN-config."
 fi
 UP[]_CFLAGS=""
 UP[]_LIBS=""
 ifelse([4ドル], , :, [4ドル])
 fi
 AC_SUBST(UP[]_CFLAGS)
 AC_SUBST(UP[]_LIBS)
 popdef([UP])
 popdef([DOWN])
])

AltStyle によって変換されたページ (->オリジナル) /