28 lines
760 B
Plaintext
28 lines
760 B
Plaintext
configure do
|
|
check_cxx_compiler "clang++"
|
|
check_cfg package: "libpng"
|
|
end
|
|
|
|
class Propane < Builder
|
|
def run(options)
|
|
@sources += ["propane"] unless @sources.include?("propane")
|
|
if @command
|
|
finalize_command
|
|
else
|
|
command = %W[./propane -w --log #{@target}.log #{@sources.first} #{@target}]
|
|
standard_command("Propane <target>#{@target}<reset>", command, options)
|
|
end
|
|
end
|
|
end
|
|
|
|
env do |env|
|
|
env.add_builder(Propane)
|
|
env["CCFLAGS"] += %w[-Wall -O2 -std=c++23 -include fart/common.h]
|
|
env["CPPPATH"] += %W[src #{env.build_root}/src]
|
|
|
|
env.Propane("^/src/fart/propane.cpp", "src/fart.propane")
|
|
env.barrier
|
|
sources = glob("src/**/*.cpp") + ["#{env.build_root}/src/fart/propane.cpp"]
|
|
env.Program("fart", sources)
|
|
end
|