我一直在研究“ake”在我们的 CI系统中建造文字(与C++建造的项目)。 我一直以简单易懂的世界应用来看待能够做些什么。 直到我决定把.档案放在一个包括文件夹的夹中,以及将文件编成弧夹为止。 Rake找到了电筒档案,但没有包括头盔档案。 类似档案结构:
src/main.cpp
src/greet.cpp
include/greet.h
rake script was as follows:
require rake/clean
require rake/loaders/makefile
APPLICATION = hello.exe
C_FILES = FileList[ src/*.cpp ]
HDR_FILES = FileList[ include/*.h ]
ALL_FILES = [C_FILES] + HDR_FILES
O_FILES = C_FILES.sub(/.cpp$/, .o )
file .depend.mf do
sh "makedepend -f- -- -- #{ALL_FILES} > .depend.mf"
end
import ".depend.mf"
file APPLICATION => O_FILES do |t|
sh "gcc #{O_FILES} -o #{t.name}"
end
rule ".o" => [".cpp"] do |t|
sh "gcc -c -o #{t.name} #{t.source}"
end
C_FILES.each do |src|
file src.ext(".o") => src
end
CLEAN.include("**/*.o")
CLEAN.include(APPLICATION)
CLEAN.include(".depend.mf")
task :default => APPLICATION
任何帮助都会受到高度赞赏。