diff options
author | Jan Sommer <jan.sommer@dlr.de> | 2021-06-09 18:46:27 +0200 |
---|---|---|
committer | Jan Sommer <jan.sommer@dlr.de> | 2021-06-09 18:46:27 +0200 |
commit | 1ca0dc730997f788c639dec4083e52bf1b854a67 (patch) | |
tree | c814c04775b37bbef1cc83052db7777990c42383 | |
parent | 34862dd273f1990c96b9270670b25c342cf007b9 (diff) |
waf_libbsd.py: Apply path-mappings to header-paths
-rw-r--r-- | libbsd.py | 2 | ||||
-rw-r--r-- | waf_libbsd.py | 27 |
2 files changed, 18 insertions, 11 deletions
@@ -142,6 +142,7 @@ _defaults = { ('freebsd/sys/dev/mii', '**/*.h', 'dev/mii'), ('freebsd/sys/dev/pci', '**/*.h', 'dev/pci'), ('freebsd/sys/dev/nvme', '**/*.h', 'dev/nvme'), + ('freebsd/sys/@CPU@/include', '**/*.h', ''), ('linux/include', '**/*.h', ''), ('mDNSResponder/mDNSCore', 'mDNSDebug.h', ''), ('mDNSResponder/mDNSCore', 'mDNSEmbeddedAPI.h', ''), @@ -1459,7 +1460,6 @@ class dev_nic(builder.Module): 'sys/arm64/include/cpu.h', 'sys/arm/include/cpufunc.h', 'sys/i386/include/md_var.h', - 'sys/i386/include/intr_machdep.h', 'sys/i386/include/cpufunc.h', 'sys/x86/include/intr_machdep.h', 'sys/x86/include/specialreg.h', diff --git a/waf_libbsd.py b/waf_libbsd.py index 3e15e9e6..e7222a03 100644 --- a/waf_libbsd.py +++ b/waf_libbsd.py @@ -549,17 +549,24 @@ class Builder(builder.ModuleManager): if 'header-paths' in config: headerPaths = config['header-paths'] cpu = bld.get_env()['RTEMS_ARCH'] - if cpu == "i386": - cpu = 'x86' for headers in headerPaths: - # Get the dest path - ipath = os.path.join(arch_inc_path, headers[2]) - start_dir = bld.path.find_dir(headers[0].replace('@CPU@', cpu)) - if start_dir != None: - bld.install_files("${PREFIX}/" + ipath, - start_dir.ant_glob(headers[1]), - cwd=start_dir, - relative_trick=True) + paths = [headers[0].replace('@CPU@', cpu)] + # Apply the path mappings + for source, targets in config['path-mappings']: + if source in paths: + i = paths.index(source) + paths.remove(source) + paths[i:i] = targets + + for hp in paths: + # Get the dest path + ipath = os.path.join(arch_inc_path, headers[2]) + start_dir = bld.path.find_dir(hp) + if start_dir != None: + bld.install_files("${PREFIX}/" + ipath, + start_dir.ant_glob(headers[1]), + cwd=start_dir, + relative_trick=True) bld.install_files(os.path.join("${PREFIX}", arch_inc_path, module_header_path), |