具体来说,我想按照以下几点做点什么。对于定义如何构建库文件的Makefile.am脚本,我希望能够访问整个库文件名。例如,假设我希望将库的名称称为“名称”,我可以从以下变量开始:
LIBNAME = name
然后我可能有这样的事情:
lib_LTLIBRARIES = lib$(LIBNAME).la
但是当我想做以下事情时,automake开始抱怨:
lib$(LIBNAME)_la_SOURCES = file1.cpp file2.cpp
lib$(LIBNAME)_la_LIBADD = ...
使用其他一些语法是否可以这样做,以便我不必多次重复库的名称?
干杯,
本。
答案 0 :(得分:4)
如果您在configure
时间而不是在Makefile本身中定义变量,则可以这样做。
例如,在configure.ac
:
LIBNAME=name
AC_SUBST(LIBNAME)
然后你可以像Makefile.am
一样访问它:
lib_LTLIBRARIES = lib@LIBNAME@.la
答案 1 :(得分:0)
然后我可能有这样的事情:
LIBNAME = name lib_LTLIBRARIES = lib$(LIBNAME).la lib$(LIBNAME)_la_SOURCES = file1.cpp file2.cpp lib$(LIBNAME)_la_LIBADD = ...
IFAIK,这不适用于automake。我认为不可能使用其他语法来实现它。