精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● 软件开发>>没有规矩,不成方圆----文档与标准化>>AutoMake简要说明——目录>>AutoMake简要说明(6)

主题:AutoMake简要说明(6)
发信人: dingdang()
整理人: zelor(2001-11-27 10:40:26), 站内信件
第一节, 上一节, 下一节, 最后一节, 回到目录 
----------------------------------------------------------------------
----------

顶层`Makefile.am'


对于非flat模式的包,必须在顶层`Makefile.am'中指定哪些子目录需被编译,这
通过SUBDIRS变量来完成。 

SUBDIRS宏指定了一个需要编译的目录清单。在所生成的 `Makefile'中的许多目
标(比如all)将既可以在本地运行也可以在所有指定的子目录中运行。请注意SUB
DIRS 中包含的子目录并不一定必须有`Makefile.am'文件,而只需要有 `Makefi
le'文件(在配置之后)。这就允许在包中包含一些并未使用 Automake的库(比如g
ettext)。SUBDIRS中指定的目录必须是当前目录的直接子目录。例如,不能在SU
BDIRS中指定`src/subdir'。 

对于deep模式的包,顶层`Makefile.am'通常非常简短。比如,下面就是一个来自
Hello发布版本的`Makefile.am': 

EXTRA_DIST = BUGS ChangeLog.O README-alpha
SUBDIRS = doc intl po src tests

SUBDIRS可以包含配置替换(比如`@DIRS@'); Automake本身并不会检查这些变量的
值。 

若定义了SUBDIRS,则在`configure.in'中必须包含AC_PROG_MAKE_SET。 

SUBDIRS并不是只允许在顶层`Makefile.am'中使用。Automake可用于构建任意深
度的包。 


----------------------------------------------------------------------
----------
第一节, 上一节, 下一节, 最后一节, 回到目录 

--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.84.141]

[关闭][返回]