wscript: fix git version generation for tarballs
This commit is contained in:
parent
ba3b50dcd2
commit
109b5372ea
37
wscript
37
wscript
|
@ -23,9 +23,11 @@ from __future__ import print_function
|
|||
import os
|
||||
import shutil
|
||||
import sys
|
||||
import re
|
||||
|
||||
from waflib import Logs, Options, TaskGen
|
||||
from waflib import Context
|
||||
from waflib import Scripting
|
||||
from waflib.Build import BuildContext, CleanContext, InstallContext, UninstallContext
|
||||
from waftoolchainflags import WafToolchainFlags
|
||||
|
||||
|
@ -245,21 +247,25 @@ def configure(conf):
|
|||
print()
|
||||
|
||||
def git_ver(self):
|
||||
bld = self.generator.bld
|
||||
header = self.outputs[0].abspath()
|
||||
if os.access('./version.h', os.R_OK):
|
||||
header = os.path.join(os.getcwd(), out, "version.h")
|
||||
shutil.copy('./version.h', header)
|
||||
data = open(header).read()
|
||||
m = re.match(r'^#define GIT_VERSION "([^"]*)"$', data)
|
||||
if m != None:
|
||||
self.ver = m.group(1)
|
||||
Logs.pprint('BLUE', "tarball from git revision " + self.ver)
|
||||
else:
|
||||
self.ver = "tarball"
|
||||
return
|
||||
if type(self) == Scripting.Dist:
|
||||
header = "./gitversion.h"
|
||||
bld = self
|
||||
else:
|
||||
bld = self.generator.bld
|
||||
header = self.outputs[0].abspath()
|
||||
if os.access('./gitversion.h', os.R_OK):
|
||||
#header = os.path.join(os.getcwd(), out, "version.h")
|
||||
shutil.copy('./gitversion.h', header)
|
||||
data = open(header).read()
|
||||
m = re.match(r'^#define GIT_VERSION "([^"]*)"$', data)
|
||||
if m != None:
|
||||
self.ver = m.group(1)
|
||||
Logs.pprint('BLUE', "tarball from git revision " + self.ver)
|
||||
else:
|
||||
self.ver = "tarball"
|
||||
return
|
||||
|
||||
if bld.srcnode.find_node('.git'):
|
||||
if os.access('./.git', os.R_OK):
|
||||
self.ver = bld.cmd_and_log("LANG= git rev-parse HEAD", quiet=Context.BOTH).splitlines()[0]
|
||||
if bld.cmd_and_log("LANG= git diff-index --name-only HEAD", quiet=Context.BOTH).splitlines():
|
||||
self.ver += "-dirty"
|
||||
|
@ -340,3 +346,6 @@ def build(bld):
|
|||
Logs.pprint('CYAN', 'Removing doxygen generated documentation...')
|
||||
shutil.rmtree(html_build_dir)
|
||||
Logs.pprint('CYAN', 'Removing doxygen generated documentation done.')
|
||||
|
||||
def dist(ctx):
|
||||
git_ver(ctx)
|
||||
|
|
Loading…
Reference in New Issue