configure
脚本在帮助消息中始终包含以下内容:
... By default, `make install' will install all the files in `/usr/local/bin', `/usr/local/lib' etc. You can specify an installation prefix other than `/usr/local' using `--prefix', for instance `--prefix=$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/gedit-line-ending-style-plugin] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] Program names: --program-prefix=PREFIX prepend PREFIX to installed program names ...
我想要做的是在本节中添加“plugindir”,如:
... --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] --plugindir=DIR Gedit plugin files [LIBDIR/gedit-2/plugins] ...
这样用户就可以将--plugindir=...
传递给配置脚本。
我该怎么做?
答案 0 :(得分:3)
将以下行放在configure.ac
附近的开头:
AC_ARG_WITH([pkgconfigdir],
[AS_HELP_STRING([--with-pkgconfigdir=DIR], [pkgconfig files])],
[pkgconfigdir=$withval],
[pkgconfigdir="\${libdir}/pkgconfig"])
AC_SUBST([pkgconfigdir], [$pkgconfigdir])
然后,在Makefile.am
中,您可以参考如下目录:
pkgconfigdir = @pkgconfigdir@
pkgconfig_DATA = mylibrary.pc
答案 1 :(得分:0)
如果我是正确的,则在share / autoconf / autoconf / general.m4文件中设置这些路径。该列表是硬编码的,因此很难在列表中插入内容。您可以使用宏AS_HELP_STRING
添加额外的帮助信息。
有些示例添加了一个plugindir,例如gstreamer,gimp,但那些没有可配置的插件目录。
答案 2 :(得分:0)
我认为你在AC_SUBST的正确轨道上。
此外,我认为您可以使用AS_HELP_STRING修改或扩展configure的--help输出。
请参阅:http://www.gnu.org/s/hello/manual/autoconf/Pretty-Help-Strings.html