# Windows-specific
if conf.env.TARGET_WINDOWS:
- conf.env.append_value('CXXFLAGS', ['-DDCPOMATIC_WINDOWS', '-DWIN32_LEAN_AND_MEAN', '-DBOOST_USE_WINDOWS_H', '-DUNICODE'])
+ conf.env.append_value('CXXFLAGS', ['-DDCPOMATIC_WINDOWS', '-DWIN32_LEAN_AND_MEAN', '-DBOOST_USE_WINDOWS_H', '-DUNICODE', '-DBOOST_THREAD_PROVIDES_GENERIC_SHARED_MUTEX_ON_WIN'])
wxrc = os.popen('wx-config --rescomp').read().split()[1:]
conf.env.append_value('WINRCFLAGS', wxrc)
if conf.options.enable_debug:
# Dependencies which are dynamically linked everywhere except --static
# Get libs only when we are dynamically linking
- conf.check_cfg(package='libdcp', atleast_version='0.67', args=pkg_config_args(conf), uselib_store='DCP', mandatory=True)
+ conf.check_cfg(package='libdcp', atleast_version='0.70', args=pkg_config_args(conf), uselib_store='DCP', mandatory=True)
# Remove erroneous escaping of quotes from xmlsec1 defines
conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]
conf.check_cfg(package='libcxml', atleast_version='0.01', args=pkg_config_args(conf), uselib_store='CXML', mandatory=True)
bld.add_post_fun(post)
+def git_revision():
+ if not os.path.exists('.git'):
+ return None
+
+ cmd = "LANG= git log --abbrev HEAD^..HEAD ."
+ output = subprocess.Popen(cmd, shell=True, stderr=subprocess.STDOUT, stdout=subprocess.PIPE).communicate()[0].splitlines()
+ o = output[0].decode('utf-8')
+ return o.replace("commit ", "")[0:10]
+
def dist(ctx):
+ r = git_revision()
+ if r is not None:
+ f = open('.git_revision', 'w')
+ print >>f,r
+ f.close()
+
ctx.excl = """
TODO core *~ src/wx/*~ src/lib/*~ builds/*~ doc/manual/*~ src/tools/*~ *.pyc .waf* build .git
deps alignment hacks sync *.tar.bz2 *.exe .lock* *build-windows doc/manual/pdf doc/manual/html
GRSYMS GRTAGS GSYMS GTAGS
"""
+
def create_version_cc(version, cxx_flags):
- if os.path.exists('.git'):
- cmd = "LANG= git log --abbrev HEAD^..HEAD ."
- output = subprocess.Popen(cmd, shell=True, stderr=subprocess.STDOUT, stdout=subprocess.PIPE).communicate()[0].splitlines()
- o = output[0].decode('utf-8')
- commit = o.replace ("commit ", "")[0:10]
- else:
+ commit = git_revision()
+ if commit is None and os.path.exists('.git_revision'):
+ f = open('.git_revision', 'r')
+ commit = f.readline().strip()
+
+ if commit is None:
commit = 'release'
try: