mirror of
https://gitlab.com/scemama/EZFIO.git
synced 2024-12-22 20:33:42 +01:00
Corrected building bug with ninja
This commit is contained in:
parent
4d2bb7f409
commit
4180800f9f
@ -6,7 +6,7 @@ rule build_generated_ninja
|
|||||||
generator = 1
|
generator = 1
|
||||||
|
|
||||||
rule run_ninja
|
rule run_ninja
|
||||||
command = bash -c 'source make.config ; bash -c "$$NINJA -f $in"'
|
command = bash -c 'source .make.config.sh ; exec bash -c "$$NINJA -f $in"'
|
||||||
description = Building Fortran library
|
description = Building Fortran library
|
||||||
|
|
||||||
rule build_archive
|
rule build_archive
|
||||||
@ -14,11 +14,11 @@ rule build_archive
|
|||||||
description = Building archive
|
description = Building archive
|
||||||
|
|
||||||
rule clean_all
|
rule clean_all
|
||||||
command = bash -c 'source make.config ; bash -c "$$NINJA -f $in -t clean ; $$NINJA -t clean" ; rm -rf src/IRPF90_{temp,man} src/*.pyc'
|
command = bash -c 'source .make.config.sh ; bash -c "$$NINJA -f $in -t clean ; $$NINJA -t clean" ; rm -rf src/IRPF90_{temp,man} src/*.pyc'
|
||||||
description = Cleaning directory
|
description = Cleaning directory
|
||||||
|
|
||||||
|
|
||||||
build make.config generated.ninja: build_generated_ninja configure.py
|
build make.config .make.config.sh generated.ninja: build_generated_ninja configure.py
|
||||||
|
|
||||||
build all: run_ninja generated.ninja
|
build all: run_ninja generated.ninja
|
||||||
default all
|
default all
|
||||||
|
27
configure.py
27
configure.py
@ -19,18 +19,16 @@ d_default = {
|
|||||||
|
|
||||||
def create_make_config():
|
def create_make_config():
|
||||||
|
|
||||||
if sys.argv[-1] == 'ninja':
|
fmt = { "make.config" :'{0}={1}\n' ,
|
||||||
fmt = '{0}="{1}"\n'
|
".make.config.sh": '{0}="{1}"\n' }
|
||||||
else:
|
for filename in fmt:
|
||||||
fmt = '{0}={1}\n'
|
with open(filename,'w') as out:
|
||||||
|
for var,default in d_default.iteritems():
|
||||||
with open("make.config",'w') as out:
|
try:
|
||||||
for var,default in d_default.iteritems():
|
cur = os.environ[var]
|
||||||
try:
|
except KeyError:
|
||||||
cur = os.environ[var]
|
cur = default
|
||||||
except KeyError:
|
out.write(fmt[filename].format(var,cur))
|
||||||
cur = default
|
|
||||||
out.write(fmt.format(var,cur))
|
|
||||||
|
|
||||||
|
|
||||||
def read_make_config():
|
def read_make_config():
|
||||||
@ -39,8 +37,6 @@ def read_make_config():
|
|||||||
for line in f.readlines():
|
for line in f.readlines():
|
||||||
try:
|
try:
|
||||||
key, value = line.strip().split('=',1)
|
key, value = line.strip().split('=',1)
|
||||||
if value.startswith('"') and value.endswith('"'):
|
|
||||||
value = value[1:-1]
|
|
||||||
except:
|
except:
|
||||||
print "Error in make.config:"
|
print "Error in make.config:"
|
||||||
print line
|
print line
|
||||||
@ -51,8 +47,7 @@ def read_make_config():
|
|||||||
|
|
||||||
def create_build_ninja():
|
def create_build_ninja():
|
||||||
|
|
||||||
if "make.config" not in os.listdir(os.getcwd()):
|
create_make_config()
|
||||||
create_make_config()
|
|
||||||
|
|
||||||
d = read_make_config()
|
d = read_make_config()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user