Skip to content

Commit

Permalink
refactor(examples): don't accumulate all binaries in same directory
Browse files Browse the repository at this point in the history
  • Loading branch information
Curve committed Mar 21, 2024
1 parent 5f5651f commit c58ddd5
Show file tree
Hide file tree
Showing 17 changed files with 35 additions and 21 deletions.
12 changes: 12 additions & 0 deletions cmake/bat.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
macro(setup_windows_bat TARGET LIB_FOLDER)
if(WIN32)
return()
endif()

message(STATUS "[ViennaPS] Generating Bat file for ${TARGET}")

file(
GENERATE
OUTPUT "$<TARGET_FILE_DIR:${TARGET}>/${TARGET}.bat"
CONTENT "set \"PATH=${LIB_FOLDER};%PATH%\"\n${TARGET}.exe %*")
endmacro()
10 changes: 6 additions & 4 deletions examples/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
add_custom_target(ViennaPS_Examples ALL)

set(CMAKE_RUNTIME_OUTPUT_DIRECTORY $<1:${PROJECT_BINARY_DIR}/examples-bin>)
include("../cmake/bat.cmake")

set(VIENNAPS_EXAMPLES_LIB $<1:${PROJECT_BINARY_DIR}/example-libs>)

if(WIN32 AND NOT VIENNARAY_SYSTEM_EMBREE)
setup_embree_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
setup_embree_env(ViennaPS_Examples ${VIENNAPS_EXAMPLES_LIB})
endif()

if(WIN32 AND NOT VIENNARAY_SYSTEM_TBB)
setup_tbb_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
setup_tbb_env(ViennaPS_Examples ${VIENNAPS_EXAMPLES_LIB})
endif()

if(WIN32 AND NOT VIENNALS_SYSTEM_VTK)
setup_vtk_env(ViennaPS_Examples ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
setup_vtk_env(ViennaPS_Examples ${VIENNAPS_EXAMPLES_LIB})
endif()

file(
Expand Down
2 changes: 1 addition & 1 deletion examples/GDSReader/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/KDTreeBenchmark/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ add_executable(${PROJECT_NAME} "${PROJECT_NAME}.cpp")
target_link_libraries(${PROJECT_NAME} PRIVATE ViennaPS)

add_dependencies(ViennaPS_Examples ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
4 changes: 2 additions & 2 deletions examples/KDTreeBenchmark/KDTreeBenchmark.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,8 @@ int main(int argc, char *argv[]) {
std::cout << "Finding Nearest Neighbors...\n";
startTime = getTime();
for (unsigned i = 0; i < repetitions; ++i) {
for (const auto &pt : testPoints)
[[maybe_unused]] auto result = tree->findNearest(pt);
for (const auto &pt : testPoints) [[maybe_unused]]
auto result = tree->findNearest(pt);
}
endTime = getTime();

Expand Down
4 changes: 2 additions & 2 deletions examples/TEOSTrenchDeposition/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
add_test(NAME singleTEOS COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(singleTEOS ${VIENNAPS_EXAMPLES_LIB})

add_executable(multiTEOS "multiTEOS.cpp")
target_link_libraries(multiTEOS PRIVATE ViennaPS)
Expand All @@ -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)
add_test(NAME multiTEOS COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(multiTEOS ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/atomicLayerDeposition/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ configure_file(atomicLayerDeposition.py ${CMAKE_CURRENT_BINARY_DIR}/atomicLayerD
COPYONLY)

add_dependencies(ViennaPS_Examples ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/cantileverWetEtching/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ configure_file(cantileverWetEtching.py ${CMAKE_CURRENT_BINARY_DIR}/cantileverWet
configure_file(cantilever_mask.gds ${CMAKE_CURRENT_BINARY_DIR}/cantilever_mask.gds COPYONLY)

add_dependencies(ViennaPS_Examples ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/exampleProcess/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ add_executable(${PROJECT_NAME} "${PROJECT_NAME}.cpp")
target_link_libraries(${PROJECT_NAME} PRIVATE ViennaPS)

add_dependencies(ViennaPS_Examples ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/holeEtching/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/interpolationDemo/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/oxideRegrowth/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/selectiveEpitaxy/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/stackEtching/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,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 ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/trenchDeposition/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/trenchDepositionGeometric/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})
2 changes: 1 addition & 1 deletion examples/volumeModel/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ configure_file(volumeModel.py ${CMAKE_CURRENT_BINARY_DIR}/volumeModel.py COPYONL
configure_file(config.txt ${CMAKE_CURRENT_BINARY_DIR}/config.txt COPYONLY)

add_dependencies(ViennaPS_Examples ${PROJECT_NAME})
add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
setup_windows_bat(${PROJECT_NAME} ${VIENNAPS_EXAMPLES_LIB})

0 comments on commit c58ddd5

Please sign in to comment.