我正在尝试使用 qmake 将所有文件包含在一个目录中(这个项目是一个包含数百个文件的外部 Subversion 项目(。我正在使用qmake version 3.1
.
我尝试的是这样的:
server_files = $$files($$PWD/server)
SOURCES += server_files(*.cpp, true)
第一行没有给出任何错误,但第二行给出:
:-1: warning: Failure to find: server_files(*.cpp,
:-1: warning: Failure to find: true)
将$
符号放在变量前面作为SOURCES += $server_files(*.cpp, true)
会给出相同的错误。
以下示例函数将变量名称作为其唯一参数,使用 eval(( 内置函数从变量中提取值列表,并编译文件列表:
defineReplace(headersAndSources) {
variable = $$1
names = $$eval($$variable)
headers =
sources =
for(name, names) {
header = $${name}.h
exists($$header) {
headers += $$header
}
source = $${name}.cpp
exists($$source) {
sources += $$source
}
}
return($$headers $$sources)
}
可变处理函数