From e37d42d9f01bece5f3a451cca7ffc435c66e0fb6 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Tue, 19 Mar 2019 00:53:01 +0100 Subject: collect facts on demand this fixes a exception because of the missing ccinfo file when src.facter is imported before the build of allocbench --- bench.py | 3 +++ src/facter.py | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/bench.py b/bench.py index 6e36d5b..bbea7c3 100755 --- a/bench.py +++ b/bench.py @@ -77,6 +77,9 @@ def main(): subprocess.run(make_cmd) + # collect facts + src.facter.collect_facts() + # Default allocator definition file allocators_file = os.path.join("build", "allocators", "allocators.py") diff --git a/src/facter.py b/src/facter.py index 6f6ba87..e5fa799 100644 --- a/src/facter.py +++ b/src/facter.py @@ -6,17 +6,17 @@ import sys import src.globalvars as gv -# Populate src.globalvars.facts on import -_uname = platform.uname() -gv.facts["hostname"] = _uname.node -gv.facts["system"] = _uname.system -gv.facts["kernel"] = _uname.release -gv.facts["arch"] = _uname.machine -gv.facts["cpus"] = multiprocessing.cpu_count() - -with open(os.path.join(gv.builddir, "ccinfo"), "r") as ccinfo: - gv.facts["cc"] = ccinfo.readlines()[-1][:-1] +def collect_facts(): + # Populate src.globalvars.facts on import + _uname = platform.uname() + gv.facts["hostname"] = _uname.node + gv.facts["system"] = _uname.system + gv.facts["kernel"] = _uname.release + gv.facts["arch"] = _uname.machine + gv.facts["cpus"] = multiprocessing.cpu_count() + with open(os.path.join(gv.builddir, "ccinfo"), "r") as ccinfo: + gv.facts["cc"] = ccinfo.readlines()[-1][:-1] def get_libc_version(bin=None): bin = bin or sys.executable -- cgit v1.2.3