Skip to content

Commit

Permalink
Adapt cs_loader_impl for Guix build.
Browse files Browse the repository at this point in the history
  • Loading branch information
viferga committed Apr 9, 2020
1 parent 3d7f2eb commit 529a8b2
Showing 1 changed file with 29 additions and 11 deletions.
40 changes: 29 additions & 11 deletions source/loaders/cs_loader/netcore/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,23 +29,41 @@ message(STATUS "Plugin ${target} implementation")
# Create target
#

if(DOTNET_VERSION VERSION_EQUAL "2.0" OR DOTNET_VERSION VERSION_GREATER "2.0")
if(OPTION_BUILD_GUIX)
if(DOTNET_VERSION VERSION_EQUAL "2.0" OR DOTNET_VERSION VERSION_GREATER "2.0")
execute_process(
COMMAND ${DOTNET_COMMAND} nuget locals all --list | grep global-packages | awk '{print $NF}'
OUTPUT_VARIABLE DOTNET_SOURCE
)
else()
set(DOTNET_SOURCE)
message(FATAL_ERROR ".NET Core support not implemented in Guix build for versions less than 2.0.")
endif()

# Build without internet access
add_custom_target(${target} ALL
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj -o ${CMAKE_BINARY_DIR}
COMMAND ${DOTNET_COMMAND} restore --source ${DOTNET_SOURCE} ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj
COMMAND ${DOTNET_COMMAND} publish --source ${DOTNET_SOURCE} ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj -o ${CMAKE_BINARY_DIR}
)
else()
if(DOTNET_MIGRATE)
if(DOTNET_VERSION VERSION_EQUAL "2.0" OR DOTNET_VERSION VERSION_GREATER "2.0")
add_custom_target(${target} ALL
COMMAND ${DOTNET_COMMAND} migrate ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json -o ${CMAKE_BINARY_DIR}
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.csproj -o ${CMAKE_BINARY_DIR}
)
else()
add_custom_target(${target} ALL
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json -o ${CMAKE_BINARY_DIR}
)
if(DOTNET_MIGRATE)
add_custom_target(${target} ALL
COMMAND ${DOTNET_COMMAND} migrate ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json -o ${CMAKE_BINARY_DIR}
)
else()
add_custom_target(${target} ALL
COMMAND ${DOTNET_COMMAND} restore ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json
COMMAND ${DOTNET_COMMAND} publish ${CMAKE_CURRENT_SOURCE_DIR}/source/project.json -o ${CMAKE_BINARY_DIR}
)
endif()
endif()
endif()

Expand Down

0 comments on commit 529a8b2

Please sign in to comment.