From e6302bbe73f432303d583482cd0995c32f729540 Mon Sep 17 00:00:00 2001 From: David Shah Date: Sat, 2 Jun 2018 14:17:31 +0200 Subject: Fix race condition and optimise the build --- ice40/.gitignore | 1 + 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 $) endforeach (target) endforeach (dev) -- cgit v1.2.3