diff options
author | David Shah <davey1576@gmail.com> | 2018-06-02 14:17:31 +0200 |
---|---|---|
committer | David Shah <davey1576@gmail.com> | 2018-06-02 14:17:31 +0200 |
commit | e6302bbe73f432303d583482cd0995c32f729540 (patch) | |
tree | eb918f10543667ccac37d46b693df807f4824fde /ice40 | |
parent | 763fd56c2639c53f109245f8b029f24362d60d33 (diff) | |
download | nextpnr-e6302bbe73f432303d583482cd0995c32f729540.tar.gz nextpnr-e6302bbe73f432303d583482cd0995c32f729540.tar.bz2 nextpnr-e6302bbe73f432303d583482cd0995c32f729540.zip |
Fix race condition and optimise the build
Diffstat (limited to 'ice40')
-rw-r--r-- | ice40/.gitignore | 1 | ||||
-rw-r--r-- | ice40/family.cmake | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/ice40/.gitignore b/ice40/.gitignore index e0813c20..afb0753d 100644 --- a/ice40/.gitignore +++ b/ice40/.gitignore @@ -2,3 +2,4 @@ /chipdb-384.cc /chipdb-5k.cc /chipdb-8k.cc +chipdbs/ diff --git a/ice40/family.cmake b/ice40/family.cmake index 6d6c6ae0..870b69b9 100644 --- a/ice40/family.cmake +++ b/ice40/family.cmake @@ -1,14 +1,18 @@ set(devices 384 1k 5k 8k) set(DB_PY ${CMAKE_CURRENT_SOURCE_DIR}/ice40/chipdb.py) +file(MAKE_DIRECTORY ice40/chipdbs/) +add_library(ice40_chipdb OBJECT ice40/chipdbs/) +target_include_directories(ice40_chipdb PRIVATE ${family}/) foreach (dev ${devices}) set(DEV_TXT_DB /usr/local/share/icebox/chipdb-${dev}.txt) - set(DEV_CC_DB ${CMAKE_CURRENT_SOURCE_DIR}/ice40/chipdb-${dev}.cc) + set(DEV_CC_DB ${CMAKE_CURRENT_SOURCE_DIR}/ice40/chipdbs/chipdb-${dev}.cc) add_custom_command(OUTPUT ${DEV_CC_DB} COMMAND python3 ${DB_PY} ${DEV_TXT_DB} > ${DEV_CC_DB}.new COMMAND mv ${DEV_CC_DB}.new ${DEV_CC_DB} DEPENDS ${DEV_TXT_DB} ${DB_PY} ) + target_sources(ice40_chipdb PRIVATE ${DEV_CC_DB}) foreach (target ${family_targets}) - target_sources(${target} PRIVATE ${DEV_CC_DB}) + target_sources(${target} PRIVATE $<TARGET_OBJECTS:ice40_chipdb>) endforeach (target) endforeach (dev) |