cmake: Fix dotnet.cmake and path
This commit is contained in:
@@ -27,38 +27,6 @@ else()
|
||||
message(STATUS "Found dotnet Program: ${DOTNET_EXECUTABLE}")
|
||||
endif()
|
||||
|
||||
# Generate Protobuf .Net sources
|
||||
set(PROTO_DOTNETS)
|
||||
file(GLOB_RECURSE proto_dotnet_files RELATIVE ${PROJECT_SOURCE_DIR}
|
||||
"ortools/constraint_solver/*.proto"
|
||||
"ortools/linear_solver/*.proto"
|
||||
"ortools/sat/*.proto"
|
||||
"ortools/util/*.proto"
|
||||
)
|
||||
list(REMOVE_ITEM proto_dotnet_files "ortools/constraint_solver/demon_profiler.proto")
|
||||
list(REMOVE_ITEM proto_dotnet_files "ortools/constraint_solver/assignment.proto")
|
||||
foreach(PROTO_FILE IN LISTS proto_dotnet_files)
|
||||
#message(STATUS "protoc proto(dotnet): ${PROTO_FILE}")
|
||||
get_filename_component(PROTO_DIR ${PROTO_FILE} DIRECTORY)
|
||||
get_filename_component(PROTO_NAME ${PROTO_FILE} NAME_WE)
|
||||
set(PROTO_DOTNET ${PROJECT_BINARY_DIR}/dotnet/${PROTO_DIR}/${PROTO_NAME}.pb.cs)
|
||||
#message(STATUS "protoc dotnet: ${PROTO_DOTNET}")
|
||||
add_custom_command(
|
||||
OUTPUT ${PROTO_DOTNET}
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/dotnet/${PROTO_DIR}
|
||||
COMMAND ${PROTOC_PRG}
|
||||
"--proto_path=${PROJECT_SOURCE_DIR}"
|
||||
${PROTO_DIRS}
|
||||
"--csharp_out=${PROJECT_BINARY_DIR}/dotnet/${PROTO_DIR}"
|
||||
"--csharp_opt=file_extension=.pb.cs"
|
||||
${PROTO_FILE}
|
||||
DEPENDS ${PROTO_FILE} ${PROTOC_PRG}
|
||||
COMMENT "Generate C# protocol buffer for ${PROTO_FILE}"
|
||||
VERBATIM)
|
||||
list(APPEND PROTO_DOTNETS ${PROTO_DOTNET})
|
||||
endforeach()
|
||||
add_custom_target(Dotnet${PROJECT_NAME}_proto DEPENDS ${PROTO_DOTNETS} ${PROJECT_NAMESPACE}::ortools)
|
||||
|
||||
# Create the native library
|
||||
add_library(google-ortools-native SHARED "")
|
||||
set_target_properties(google-ortools-native PROPERTIES
|
||||
@@ -124,6 +92,38 @@ file(COPY tools/doc/orLogo.png DESTINATION dotnet)
|
||||
set(DOTNET_LOGO_DIR "${PROJECT_BINARY_DIR}/dotnet")
|
||||
configure_file(ortools/dotnet/Directory.Build.props.in dotnet/Directory.Build.props)
|
||||
|
||||
# Generate Protobuf .Net sources
|
||||
set(PROTO_DOTNETS)
|
||||
file(GLOB_RECURSE proto_dotnet_files RELATIVE ${PROJECT_SOURCE_DIR}
|
||||
"ortools/constraint_solver/*.proto"
|
||||
"ortools/linear_solver/*.proto"
|
||||
"ortools/sat/*.proto"
|
||||
"ortools/util/*.proto"
|
||||
)
|
||||
list(REMOVE_ITEM proto_dotnet_files "ortools/constraint_solver/demon_profiler.proto")
|
||||
list(REMOVE_ITEM proto_dotnet_files "ortools/constraint_solver/assignment.proto")
|
||||
foreach(PROTO_FILE IN LISTS proto_dotnet_files)
|
||||
#message(STATUS "protoc proto(dotnet): ${PROTO_FILE}")
|
||||
get_filename_component(PROTO_DIR ${PROTO_FILE} DIRECTORY)
|
||||
get_filename_component(PROTO_NAME ${PROTO_FILE} NAME_WE)
|
||||
set(PROTO_DOTNET ${DOTNET_PROJECT_DIR}/${PROTO_DIR}/${PROTO_NAME}.pb.cs)
|
||||
#message(STATUS "protoc dotnet: ${PROTO_DOTNET}")
|
||||
add_custom_command(
|
||||
OUTPUT ${PROTO_DOTNET}
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/dotnet/${PROTO_DIR}
|
||||
COMMAND ${PROTOC_PRG}
|
||||
"--proto_path=${PROJECT_SOURCE_DIR}"
|
||||
${PROTO_DIRS}
|
||||
"--csharp_out=${DOTNET_PROJECT_DIR}/${PROTO_DIR}"
|
||||
"--csharp_opt=file_extension=.pb.cs"
|
||||
${PROTO_FILE}
|
||||
DEPENDS ${PROTO_FILE} ${PROTOC_PRG}
|
||||
COMMENT "Generate C# protocol buffer for ${PROTO_FILE}"
|
||||
VERBATIM)
|
||||
list(APPEND PROTO_DOTNETS ${PROTO_DOTNET})
|
||||
endforeach()
|
||||
add_custom_target(Dotnet${PROJECT_NAME}_proto DEPENDS ${PROTO_DOTNETS} ${PROJECT_NAMESPACE}::ortools)
|
||||
|
||||
############################
|
||||
## .Net SNK file ##
|
||||
############################
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE knapsack_solver.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_algorithms
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/${PROJECT_NAME}/algorithms
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/algorithms
|
||||
SOURCES knapsack_solver.i)
|
||||
|
||||
#target_include_directories(dotnet_algorithms PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE routing.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_constraint_solver
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/constraint_solver
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/constraint_solver
|
||||
SOURCES routing.i)
|
||||
|
||||
#target_include_directories(dotnet_constraint_solver PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -31,43 +31,43 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/algorithms/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/algorithms/*.cs">
|
||||
<Link>algorithms/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/graph/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/graph/*.cs">
|
||||
<Link>graph/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
<Compile Include="@PROJECT_SOURCE_DIR@/ortools/graph/csharp/*.cs">
|
||||
<Link>graph/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/linear_solver/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/linear_solver/*.cs">
|
||||
<Link>linear_solver/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
<Compile Include="@PROJECT_SOURCE_DIR@/ortools/linear_solver/csharp/*.cs">
|
||||
<Link>linear_solver/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/constraint_solver/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/constraint_solver/*.cs">
|
||||
<Link>constraint_solver/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
<Compile Include="@PROJECT_SOURCE_DIR@/ortools/constraint_solver/csharp/*.cs">
|
||||
<Link>constraint_solver/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/init/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/init/*.cs">
|
||||
<Link>init/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/sat/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/sat/*.cs">
|
||||
<Link>sat/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
<Compile Include="@PROJECT_SOURCE_DIR@/ortools/sat/csharp/*.cs">
|
||||
<Link>sat/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/util/*.cs">
|
||||
<Compile Include="@DOTNET_PROJECT_DIR@/ortools/util/*.cs">
|
||||
<Link>util/%(Filename)%(Extension)</Link>
|
||||
</Compile>
|
||||
<Compile Include="@PROJECT_SOURCE_DIR@/ortools/util/csharp/*.cs">
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE graph.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_graph
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/graph
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/graph
|
||||
SOURCES graph.i)
|
||||
|
||||
#target_include_directories(dotnet_graph PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE init.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_init
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/init
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/init
|
||||
SOURCES init.i)
|
||||
|
||||
#target_include_directories(dotnet_init PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE linear_solver.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_linear_solver
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/linear_solver
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/linear_solver
|
||||
SOURCES linear_solver.i)
|
||||
|
||||
#target_include_directories(dotnet_linear_solver PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE sat.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_sat
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/sat
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/sat
|
||||
SOURCES sat.i)
|
||||
|
||||
#target_include_directories(dotnet_sat PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
@@ -8,7 +8,7 @@ set_property(SOURCE sorted_interval_list.i PROPERTY COMPILE_OPTIONS
|
||||
swig_add_library(dotnet_util
|
||||
TYPE OBJECT
|
||||
LANGUAGE csharp
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/util
|
||||
OUTPUT_DIR ${DOTNET_PROJECT_DIR}/ortools/util
|
||||
SOURCES sorted_interval_list.i)
|
||||
|
||||
#target_include_directories(dotnet_util PRIVATE ${DOTNET_INCLUDE_DIRS})
|
||||
|
||||
Reference in New Issue
Block a user