@@ -29,23 +29,41 @@ message(STATUS "Plugin ${target} implementation")
2929# Create target 
3030# 
3131
32- if (DOTNET_VERSION VERSION_EQUAL  "2.0"  OR  DOTNET_VERSION VERSION_GREATER  "2.0" )
32+ if (OPTION_BUILD_GUIX)
33+ 	if (DOTNET_VERSION VERSION_EQUAL  "2.0"  OR  DOTNET_VERSION VERSION_GREATER  "2.0" )
34+ 		execute_process (
35+ 			COMMAND  ${DOTNET_COMMAND}  nuget locals all  --list | grep global -packages | awk '{print $NF}'
36+ 			OUTPUT_VARIABLE  DOTNET_SOURCE
37+ 		)
38+ 	else ()
39+ 		set (DOTNET_SOURCE)
40+ 		message (FATAL_ERROR ".NET Core support not implemented in Guix build for versions less than 2.0." )
41+ 	endif ()
42+ 
43+ 	# Build without internet access 
3344	add_custom_target (${target}  ALL 
34- 		COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj
35- 		COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj -o ${CMAKE_BINARY_DIR} 
45+ 		COMMAND  ${DOTNET_COMMAND}  restore -- source   ${DOTNET_SOURCE}   ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj
46+ 		COMMAND  ${DOTNET_COMMAND}  publish -- source   ${DOTNET_SOURCE}   ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj -o ${CMAKE_BINARY_DIR} 
3647	)
3748else ()
38- 	if (DOTNET_MIGRATE )
49+ 	if (DOTNET_VERSION  VERSION_EQUAL   "2.0"   OR  DOTNET_VERSION  VERSION_GREATER   "2.0" )
3950		add_custom_target (${target}  ALL 
40- 			COMMAND  ${DOTNET_COMMAND}  migrate ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
41- 			COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
42- 			COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json -o ${CMAKE_BINARY_DIR} 
51+ 			COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj
52+ 			COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.csproj -o ${CMAKE_BINARY_DIR} 
4353		)
4454	else ()
45- 		add_custom_target (${target}  ALL 
46- 			COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
47- 			COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json -o ${CMAKE_BINARY_DIR} 
48- 		)
55+ 		if (DOTNET_MIGRATE)
56+ 			add_custom_target (${target}  ALL 
57+ 				COMMAND  ${DOTNET_COMMAND}  migrate ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
58+ 				COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
59+ 				COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json -o ${CMAKE_BINARY_DIR} 
60+ 			)
61+ 		else ()
62+ 			add_custom_target (${target}  ALL 
63+ 				COMMAND  ${DOTNET_COMMAND}  restore ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json
64+ 				COMMAND  ${DOTNET_COMMAND}  publish ${CMAKE_CURRENT_SOURCE_DIR} /source /project.json -o ${CMAKE_BINARY_DIR} 
65+ 			)
66+ 		endif ()
4967	endif ()
5068endif ()
5169
0 commit comments