ocarina/Sconstruct

44 lines
1.2 KiB
Plaintext

MAJOR = 5
MINOR = 0
BUG = 0
CONFIG={"FLAGS":[]}
def read_config():
for line in open("config"):
(key, value) = line.strip().split("=")
CONFIG[key] = value
if value == "y":
CONFIG["FLAGS"] += ["-D"+key]
read_config()
FLAGS = ["-O2"]
if CONFIG["DEBUG"] == "y":
FLAGS = ["-Wall", "-Werror", "-g"]
env = Environment(CCFLAGS = FLAGS + CONFIG["FLAGS"])
if ARGUMENTS.get('VERBOSE') != "1":
env.Append(CXXCOMSTR = "CXX $TARGET")
env.Append(LINKCOMSTR = "Linking $TARGET")
env.Append(CPPPATH = "include")
env.ParseConfig('pkg-config --cflags --libs gtk+-2.0')
env.ParseConfig('pkg-config --cflags --libs gstreamer-0.10')
def version_h():
f = open("include/version.h", "w")
for line in open("include/version.tmpl", "r"):
line = line.replace("__MAJOR__", str(MAJOR))
line = line.replace("__MINOR__", str(MINOR))
line = line.replace("__BUG__", str(BUG))
line = line.replace("__EXTRA__", CONFIG["EXTRA"])
f.write(line)
f.close()
version_h()
def list_dirs(directory):
import os
dirs = [x[0] for x in os.walk(directory)]
return [Glob(dir + "/*.cpp") for dir in dirs]
ocarina=env.Program('ocarina', list_dirs('libsaria') + list_dirs('gui'))
Clean(ocarina, "include/version.h")