configure do unless File.exists?("wfobj/WFObj.cc") $stderr.puts "git submodules appear to be missing. Run `git submodule update --init`." exit 1 end if RUBY_PLATFORM =~ /mingw/ check_lib "opengl32" check_lib "glu32" check_lib "mingw32" else check_lib "X11" check_lib "GL" check_lib "GLU" end check_lib "ode" check_cfg program: "sdl-config" end build do Environment.new do |env| env.add_builder(:GenLoadFile) do |params| command = ["perl", "genLoadFile.pl", "--root=../logo", "dwlogo.obj", "dwlogo.mtl"] unless @cache.up_to_date?(@target, command, @sources, @env) print_run_message("GenLoadFile #{@target}", nil) system(*command, chdir: "LoadFile") @cache.register_build(@target, command, @sources, @env) end true end env["CCFLAGS"] = %w[-O2 -Wall] env["CPPPATH"] += %w[.] sources = ["dwscr.cc", "wfobj/WFObj.cc", "LoadFile/LoadFile.cc"] + glob("ss/*.{cc,cpp}") if RUBY_PLATFORM =~ /mingw/ sources += ["displayinfo-win32.cc"] else sources += ["displayinfo.cc"] end loadfiles = %w[ logo/dwlogo.obj logo/dwlogo.mtl ] loadfile_gen = env.GenLoadFile("LoadFile/LoadFile-gen.inc", loadfiles + ["LoadFile/genLoadFile.pl"]) dwscr = env.Program("dwscr", sources) if RUBY_PLATFORM =~ /mingw/ env.Install("C:/Windows/dwscr.scr", dwscr) end end end