set(FOOBAR_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/FooBar.cs) set(FOOBAR_OUTPUT ${CMAKE_BINARY_DIR}/FooBar.dll) add_custom_command( OUTPUT ${FOOBAR_OUTPUT} COMMAND dotnet ${CSC_DLL} -target:library -out:${FOOBAR_OUTPUT} -lib:${RUNTIME_DIR} -reference:System.Private.CoreLib.dll -reference:System.Runtime.dll -reference:System.Console.dll ${FOOBAR_SOURCES} DEPENDS ${FOOBAR_SOURCES} COMMENT "Compiling FooBar library with Roslyn csc..." ) add_custom_target(FooBar ALL DEPENDS ${FOOBAR_OUTPUT})