From 237c242f963c7a247b53f17431fcd37006695276 Mon Sep 17 00:00:00 2001 From: "Justin C. Miller" Date: Sun, 3 Feb 2019 00:20:01 -0800 Subject: [PATCH] Fix ninja not reloading buildfiles on regen --- generate_build.py | 8 ++++++-- scripts/templates/build.ninja.j2 | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/generate_build.py b/generate_build.py index e2a5172..c8aa77f 100755 --- a/generate_build.py +++ b/generate_build.py @@ -144,9 +144,13 @@ def main(buildroot): buildfile=buildfile, version=git_version)) - buildfile = join(buildroot, "build.ninja") + # Top level buildfile cannot use an absolute path or ninja won't + # reload itself properly on changes. + # See: https://github.com/ninja-build/ninja/issues/1240 + buildfile = "build.ninja" buildfiles.append(buildfile) - with open(buildfile, 'w') as out: + + with open(join(buildroot, buildfile), 'w') as out: #print("Generating main build.ninja") template = env.get_template('build.ninja.j2') templates.add(template.filename) diff --git a/scripts/templates/build.ninja.j2 b/scripts/templates/build.ninja.j2 index 0b56ded..3304d86 100644 --- a/scripts/templates/build.ninja.j2 +++ b/scripts/templates/build.ninja.j2 @@ -103,7 +103,7 @@ rule makefat description = Creating $name command = $ cp $srcroot/assets/diskbase.img $out; $ - mcopy -s -D o -i $out@@1024K $builddir/fatroot/* ::/ + mcopy -s -D o -i $out@@1M $builddir/fatroot/* ::/ {% for target in targets %} subninja {{ target }}/target.ninja