set(CSPROJECT_NAME Sandbox) # set MSVC output directory if(MSVC) set(SCRIPT_OUTPUT_DIR "${CMAKE_BINARY_DIR}/bin/Resources/Scripts") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${SCRIPT_OUTPUT_DIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${SCRIPT_OUTPUT_DIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO ${SCRIPT_OUTPUT_DIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL ${SCRIPT_OUTPUT_DIR}) endif () enable_language(CSharp) project(${CSPROJECT_NAME} LANGUAGES CSharp) file(GLOB_RECURSE CS_SOURCES Source/** Properties/ ) add_library(${CSPROJECT_NAME} SHARED ${CS_SOURCES}) add_dependencies(${CSPROJECT_NAME} Hazel-ScriptCore) set_property(TARGET ${CSPROJECT_NAME} PROPERTY VS_DOTNET_REFERENCE_Hazel-ScriptCore Hazel-ScriptCore ) target_link_libraries(${CSPROJECT_NAME} PRIVATE Hazel-ScriptCore)