From 3e123562bef84314de3bcc0cea02cd96f28abf5a Mon Sep 17 00:00:00 2001 From: Tobias Reiter <44025882+tobre1@users.noreply.github.com> Date: Mon, 27 Jan 2025 10:29:36 +0100 Subject: [PATCH] refactor(cmake): prevent same name targets (#101) (#103) Co-authored-by: Curve --- examples/CMakeLists.txt | 9 +++++---- examples/GDSReader/CMakeLists.txt | 2 +- examples/TEOSTrenchDeposition/CMakeLists.txt | 4 ++-- examples/atomicLayerDeposition/CMakeLists.txt | 2 +- examples/boschProcess/CMakeLists.txt | 10 +++++++--- examples/cantileverWetEtching/CMakeLists.txt | 6 +++--- examples/exampleProcess/CMakeLists.txt | 2 +- examples/holeEtching/CMakeLists.txt | 2 +- examples/interpolationDemo/CMakeLists.txt | 2 +- examples/oxideRegrowth/CMakeLists.txt | 2 +- examples/selectiveEpitaxy/CMakeLists.txt | 2 +- examples/stackEtching/CMakeLists.txt | 2 +- examples/trenchDeposition/CMakeLists.txt | 2 +- examples/trenchDepositionGeometric/CMakeLists.txt | 2 +- 14 files changed, 27 insertions(+), 22 deletions(-) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index ebff1176..eecc658b 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,10 +1,11 @@ add_custom_target(ViennaPS_Examples ALL) -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY $<1:${PROJECT_BINARY_DIR}/examples>) +set(VIENNAPS_ARTIFACTS_DIRECTORY $<1:${PROJECT_BINARY_DIR}/artifacts>) + if(WIN32) - viennacore_setup_embree_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) - viennacore_setup_vtk_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) - viennacore_setup_tbb_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + viennacore_setup_embree_env(ViennaPS_Examples ${VIENNAPS_ARTIFACTS_DIRECTORY}) + viennacore_setup_vtk_env(ViennaPS_Examples ${VIENNAPS_ARTIFACTS_DIRECTORY}) + viennacore_setup_tbb_env(ViennaPS_Examples ${VIENNAPS_ARTIFACTS_DIRECTORY}) endif() viennacore_add_subdirs(${CMAKE_CURRENT_LIST_DIR}) diff --git a/examples/GDSReader/CMakeLists.txt b/examples/GDSReader/CMakeLists.txt index ae6699b1..29653f31 100644 --- a/examples/GDSReader/CMakeLists.txt +++ b/examples/GDSReader/CMakeLists.txt @@ -7,4 +7,4 @@ configure_file(GDSReader.py ${CMAKE_CURRENT_BINARY_DIR}/GDSReader.py COPYONLY) configure_file(mask.gds ${CMAKE_CURRENT_BINARY_DIR}/mask.gds COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/TEOSTrenchDeposition/CMakeLists.txt b/examples/TEOSTrenchDeposition/CMakeLists.txt index a40a1366..240d028e 100644 --- a/examples/TEOSTrenchDeposition/CMakeLists.txt +++ b/examples/TEOSTrenchDeposition/CMakeLists.txt @@ -7,7 +7,7 @@ configure_file(singleTEOS.py ${CMAKE_CURRENT_BINARY_DIR}/singleTEOS.py COPYONLY) configure_file(singleTEOS_config.txt ${CMAKE_CURRENT_BINARY_DIR}/singleTEOS_config.txt COPYONLY) add_dependencies(ViennaPS_Examples singleTEOS) -viennacore_setup_bat(singleTEOS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(singleTEOS ${VIENNAPS_ARTIFACTS_DIRECTORY}) add_executable(multiTEOS "multiTEOS.cpp") target_link_libraries(multiTEOS PRIVATE ViennaPS) @@ -16,4 +16,4 @@ configure_file(multiTEOS.py ${CMAKE_CURRENT_BINARY_DIR}/multiTEOS.py COPYONLY) configure_file(multiTEOS_config.txt ${CMAKE_CURRENT_BINARY_DIR}/multiTEOS_config.txt COPYONLY) add_dependencies(ViennaPS_Examples multiTEOS) -viennacore_setup_bat(multiTEOS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(multiTEOS ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/atomicLayerDeposition/CMakeLists.txt b/examples/atomicLayerDeposition/CMakeLists.txt index 25ae2d3d..aef0b457 100644 --- a/examples/atomicLayerDeposition/CMakeLists.txt +++ b/examples/atomicLayerDeposition/CMakeLists.txt @@ -8,4 +8,4 @@ configure_file(atomicLayerDeposition.py ${CMAKE_CURRENT_BINARY_DIR}/atomicLayerD configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/boschProcess/CMakeLists.txt b/examples/boschProcess/CMakeLists.txt index 8ce70159..fa7f707a 100644 --- a/examples/boschProcess/CMakeLists.txt +++ b/examples/boschProcess/CMakeLists.txt @@ -1,11 +1,15 @@ project(boschProcess LANGUAGES CXX) -add_executable(boschSimulate "boschProcess.cpp") -target_link_libraries(boschSimulate PRIVATE ViennaPS) -add_dependencies(ViennaPS_Examples boschSimulate) +add_executable(boschProcess "boschProcess.cpp") +target_link_libraries(boschProcess PRIVATE ViennaPS) add_executable(boschEmulate "boschProcessEmulate.cpp") target_link_libraries(boschEmulate PRIVATE ViennaPS) + add_dependencies(ViennaPS_Examples boschEmulate) +add_dependencies(ViennaPS_Examples boschProcess) + +viennacore_setup_bat(boschProcess ${VIENNAPS_ARTIFACTS_DIRECTORY}) +viennacore_setup_bat(boschEmulate ${VIENNAPS_ARTIFACTS_DIRECTORY}) configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) diff --git a/examples/cantileverWetEtching/CMakeLists.txt b/examples/cantileverWetEtching/CMakeLists.txt index f8b770c8..d086bc0c 100644 --- a/examples/cantileverWetEtching/CMakeLists.txt +++ b/examples/cantileverWetEtching/CMakeLists.txt @@ -3,8 +3,8 @@ project(cantileverWetEtching LANGUAGES CXX) add_executable(${PROJECT_NAME} "${PROJECT_NAME}.cpp") target_link_libraries(${PROJECT_NAME} PRIVATE ViennaPS) +add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) + configure_file(cantileverWetEtching.py ${CMAKE_CURRENT_BINARY_DIR}/cantileverWetEtching.py COPYONLY) configure_file(cantilever_mask.gds ${CMAKE_CURRENT_BINARY_DIR}/cantilever_mask.gds COPYONLY) - -add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) diff --git a/examples/exampleProcess/CMakeLists.txt b/examples/exampleProcess/CMakeLists.txt index 6c10e5c2..3d37b338 100644 --- a/examples/exampleProcess/CMakeLists.txt +++ b/examples/exampleProcess/CMakeLists.txt @@ -4,4 +4,4 @@ add_executable(${PROJECT_NAME} "${PROJECT_NAME}.cpp") target_link_libraries(${PROJECT_NAME} PRIVATE ViennaPS) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/holeEtching/CMakeLists.txt b/examples/holeEtching/CMakeLists.txt index 86176537..bb272834 100644 --- a/examples/holeEtching/CMakeLists.txt +++ b/examples/holeEtching/CMakeLists.txt @@ -7,4 +7,4 @@ configure_file(holeEtching.py ${CMAKE_CURRENT_BINARY_DIR}/holeEtching.py COPYONL configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/interpolationDemo/CMakeLists.txt b/examples/interpolationDemo/CMakeLists.txt index 4dccdd6a..ff73ff64 100644 --- a/examples/interpolationDemo/CMakeLists.txt +++ b/examples/interpolationDemo/CMakeLists.txt @@ -8,4 +8,4 @@ configure_file(scatterdata.csv ${CMAKE_CURRENT_BINARY_DIR}/scatterdata.csv COPYO configure_file(plot.py ${CMAKE_CURRENT_BINARY_DIR}/plot.py COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/oxideRegrowth/CMakeLists.txt b/examples/oxideRegrowth/CMakeLists.txt index cdf43ac5..e61fc1c7 100644 --- a/examples/oxideRegrowth/CMakeLists.txt +++ b/examples/oxideRegrowth/CMakeLists.txt @@ -7,4 +7,4 @@ configure_file(oxideRegrowth.py ${CMAKE_CURRENT_BINARY_DIR}/oxideRegrowth.py COP configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/selectiveEpitaxy/CMakeLists.txt b/examples/selectiveEpitaxy/CMakeLists.txt index 03876f4c..804469cc 100644 --- a/examples/selectiveEpitaxy/CMakeLists.txt +++ b/examples/selectiveEpitaxy/CMakeLists.txt @@ -7,4 +7,4 @@ configure_file(selectiveEpitaxy.py ${CMAKE_CURRENT_BINARY_DIR}/selectiveEpitaxy. configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/stackEtching/CMakeLists.txt b/examples/stackEtching/CMakeLists.txt index c5aa1959..98b43974 100644 --- a/examples/stackEtching/CMakeLists.txt +++ b/examples/stackEtching/CMakeLists.txt @@ -8,4 +8,4 @@ configure_file(stackEtching.py ${CMAKE_CURRENT_BINARY_DIR}/stackEtching.py COPYO configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROGRAM_NAME}) -viennacore_setup_bat(${PROGRAM_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROGRAM_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/trenchDeposition/CMakeLists.txt b/examples/trenchDeposition/CMakeLists.txt index a5c127df..1f239e8b 100644 --- a/examples/trenchDeposition/CMakeLists.txt +++ b/examples/trenchDeposition/CMakeLists.txt @@ -7,4 +7,4 @@ configure_file(trenchDeposition.py ${CMAKE_CURRENT_BINARY_DIR}/trenchDeposition. configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY}) diff --git a/examples/trenchDepositionGeometric/CMakeLists.txt b/examples/trenchDepositionGeometric/CMakeLists.txt index f501665b..55e7fd3d 100644 --- a/examples/trenchDepositionGeometric/CMakeLists.txt +++ b/examples/trenchDepositionGeometric/CMakeLists.txt @@ -8,4 +8,4 @@ configure_file(trenchDepositionGeometric.py configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY) add_dependencies(ViennaPS_Examples ${PROJECT_NAME}) -viennacore_setup_bat(${PROJECT_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +viennacore_setup_bat(${PROJECT_NAME} ${VIENNAPS_ARTIFACTS_DIRECTORY})