49 lines
1.4 KiB
Ruby
49 lines
1.4 KiB
Ruby
require "bundler"
|
|
begin
|
|
Bundler.setup(:default, :development)
|
|
rescue Bundler::BundlerError => e
|
|
raise "Unable to Bundler.setup(): You probably need to run `bundle install`: " + e.message
|
|
end
|
|
require "rscons"
|
|
|
|
class Obj2D < Rscons::Builder
|
|
def run(target, sources, cache, env, vars)
|
|
command = ["ruby", "obj2d.rb", sources.first, target]
|
|
standard_build("Obj2D #{target}", target, command, sources + ["obj2d.rb"], env, cache)
|
|
end
|
|
end
|
|
|
|
desc "Build ScreenSaver"
|
|
task :default do
|
|
Rscons::Environment.new do |env|
|
|
env.add_builder(Obj2D.new)
|
|
sources = []
|
|
dirs = [
|
|
"src",
|
|
"modules/DerelictUtil/source",
|
|
"modules/DerelictSDL2/source",
|
|
"modules/DerelictGL3/source",
|
|
"modules/gl3n/gl3n",
|
|
"modules/glamour/glamour",
|
|
].each do |dir|
|
|
sources += Dir["#{dir}/**/*.{d,c}"]
|
|
end
|
|
sources << "build/obj2d/logoobj.d"
|
|
env["D_IMPORT_PATH"] += [
|
|
"src",
|
|
"modules/DerelictUtil/source",
|
|
"modules/DerelictSDL2/source",
|
|
"modules/DerelictGL3/source",
|
|
"modules/gl3n",
|
|
"modules/glamour",
|
|
"build/obj2d",
|
|
]
|
|
env["CFLAGS"] += ["-Wall", "-std=gnu99"]
|
|
env["DFLAGS"] += ["-fversion=Derelict3", "-fversion=gl3n", "-fversion=SDLImage"]
|
|
env["LDFLAGS"] += ["-static-libgcc", "-mwindows"]
|
|
env.build_root = "build"
|
|
env.Obj2D("build/obj2d/logoobj.d", "model/gentex-logo.obj")
|
|
env.Program("gss", sources)
|
|
end
|
|
end
|