stuff-from-scratch/plugins/quantum_computing/src/CMakeLists.txt
2023-01-26 15:16:46 +00:00

57 lines
No EOL
1.6 KiB
CMake

set(PLUGIN_NAME quantum_computing)
list(APPEND HEADERS
QuantumCircuit.h
BlochSphere.h
QuantumState.h
Qubit.h
QuantumOperator.h
QuantumCircuitReader.h
QuantumSimulator.h
circuit_elements/QuantumCircuitElement.h
circuit_elements/QuantumWire.h
circuit_elements/QuantumGate.h
circuit_elements/QuantumTerminal.h
circuit_elements/BasicQuantumGates.h
visuals/BlochSphereNode.h
visuals/QuantumCircuitNode.h
visuals/QuantumCircuitElementNode.h
visuals/QuantumGateNode.h
visuals/QuantumWireNode.h
visuals/QuantumTerminalNode.h
visuals/QuantumStateNode.h
)
list(APPEND SOURCES
QuantumCircuit.cpp
BlochSphere.cpp
QuantumState.cpp
Qubit.cpp
QuantumOperator.cpp
QuantumCircuitReader.cpp
QuantumSimulator.cpp
circuit_elements/QuantumGate.cpp
circuit_elements/QuantumCircuitElement.cpp
circuit_elements/QuantumWire.cpp
circuit_elements/QuantumTerminal.cpp
circuit_elements/BasicQuantumGates.cpp
visuals/BlochSphereNode.cpp
visuals/QuantumCircuitNode.cpp
visuals/QuantumCircuitElementNode.cpp
visuals/QuantumGateNode.cpp
visuals/QuantumWireNode.cpp
visuals/QuantumTerminalNode.cpp
visuals/QuantumStateNode.cpp
visuals/BlochSphereNode.cpp
)
add_library(${PLUGIN_NAME} SHARED ${SOURCES} ${HEADERS})
target_include_directories(${PLUGIN_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/circuit_elements
${CMAKE_CURRENT_SOURCE_DIR}/visuals
)
target_link_libraries(${PLUGIN_NAME} PUBLIC core visual_elements ntk_math publishing)
set_property(TARGET ${PLUGIN_NAME} PROPERTY FOLDER plugins)
set_target_properties( ${PLUGIN_NAME} PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON )