cmake: Fix ortools-java depends
This commit is contained in:
@@ -74,7 +74,7 @@ file(GLOB_RECURSE proto_java_files RELATIVE ${PROJECT_SOURCE_DIR}
|
||||
)
|
||||
list(REMOVE_ITEM proto_java_files "ortools/constraint_solver/demon_profiler.proto")
|
||||
list(REMOVE_ITEM proto_java_files "ortools/constraint_solver/assignment.proto")
|
||||
foreach(PROTO_FILE ${proto_java_files})
|
||||
foreach(PROTO_FILE IN LISTS proto_java_files)
|
||||
#message(STATUS "protoc proto(java): ${PROTO_FILE}")
|
||||
get_filename_component(PROTO_DIR ${PROTO_FILE} DIRECTORY)
|
||||
string(REGEX REPLACE "_" "" PROTO_DIR ${PROTO_DIR})
|
||||
@@ -152,19 +152,36 @@ add_custom_target(java_native_package
|
||||
set(JAVA_PROJECT_PATH ${PROJECT_BINARY_DIR}/java/${JAVA_PROJECT})
|
||||
file(MAKE_DIRECTORY ${JAVA_PROJECT_PATH}/${JAVA_PACKAGE_PATH})
|
||||
|
||||
file(COPY ${PROJECT_SOURCE_DIR}/ortools/java/com
|
||||
DESTINATION ${JAVA_PROJECT_PATH}/src/main/java)
|
||||
file(COPY ${PROJECT_SOURCE_DIR}/ortools/java/Loader.java
|
||||
DESTINATION ${JAVA_PROJECT_PATH}/${JAVA_PACKAGE_PATH})
|
||||
|
||||
configure_file(
|
||||
${PROJECT_SOURCE_DIR}/ortools/java/pom-local.xml.in
|
||||
${JAVA_PROJECT_PATH}/pom.xml
|
||||
@ONLY)
|
||||
|
||||
file(GLOB_RECURSE java_files RELATIVE ${PROJECT_SOURCE_DIR}/ortools/java
|
||||
"ortools/java/*.java")
|
||||
list(REMOVE_ITEM java_files "CMakeTest.java")
|
||||
#message(WARNING "list: ${java_files}")
|
||||
|
||||
set(JAVA_SRCS)
|
||||
foreach(JAVA_FILE IN LISTS java_files)
|
||||
#message(STATUS "java: ${JAVA_FILE}")
|
||||
set(JAVA_OUT ${JAVA_PROJECT_PATH}/src/main/java/${JAVA_FILE})
|
||||
#message(STATUS "java out: ${JAVA_OUT}")
|
||||
add_custom_command(
|
||||
OUTPUT ${JAVA_OUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy
|
||||
${PROJECT_SOURCE_DIR}/ortools/java/${JAVA_FILE}
|
||||
${JAVA_OUT}
|
||||
DEPENDS ${PROJECT_SOURCE_DIR}/ortools/java/${JAVA_FILE}
|
||||
COMMENT "Copy Java file ${JAVA_FILE}"
|
||||
VERBATIM)
|
||||
list(APPEND JAVA_SRCS ${JAVA_OUT})
|
||||
endforeach()
|
||||
|
||||
add_custom_target(java_package ALL
|
||||
DEPENDS
|
||||
${JAVA_PROJECT_PATH}/pom.xml
|
||||
${JAVA_SRCS}
|
||||
COMMAND ${MAVEN_EXECUTABLE} compile
|
||||
COMMAND ${MAVEN_EXECUTABLE} package
|
||||
COMMAND ${MAVEN_EXECUTABLE} install
|
||||
|
||||
@@ -317,7 +317,7 @@ $(JAVA_ORTOOLS_JAR): \
|
||||
$(GEN_DIR)/java/com/google/ortools/sat/SatParameters.java \
|
||||
$(GEN_DIR)/java/com/google/ortools/util/OptionalBoolean.java \
|
||||
$(GEN_DIR)/java/com/google/ortools/sat/CpModelProto.java \
|
||||
$(SRC_DIR)/ortools/java/Loader.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/Loader.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/IntervalVar.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/Literal.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/CpSolver.java \
|
||||
@@ -432,7 +432,7 @@ $(TEMP_JAVA_DIR)/$(JAVA_ORTOOLS_PROJECT)/timestamp: \
|
||||
$(GEN_DIR)/java/com/google/ortools/sat/SatParameters.java \
|
||||
$(GEN_DIR)/java/com/google/ortools/util/OptionalBoolean.java \
|
||||
$(GEN_DIR)/java/com/google/ortools/sat/CpModelProto.java \
|
||||
$(SRC_DIR)/ortools/java/Loader.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/Loader.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/IntervalVar.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/Literal.java \
|
||||
$(SRC_DIR)/ortools/java/com/google/ortools/sat/CpSolver.java \
|
||||
@@ -457,7 +457,6 @@ else
|
||||
$(COPYREC) /E /I $(SRC_DIR)$Sortools$Sjava$Scom $(JAVA_PATH)$Sjava$Scom
|
||||
$(COPYREC) /E /I $(GEN_PATH)$Sjava$Scom $(JAVA_PATH)$Sjava$Scom
|
||||
endif
|
||||
$(COPY) $(SRC_DIR)$Sortools$Sjava$SLoader.java $(JAVA_PATH)$Sjava$Scom$Sgoogle$Sortools
|
||||
cd $(TEMP_JAVA_DIR)$S$(JAVA_ORTOOLS_PROJECT) && "$(MVN_BIN)" compile
|
||||
cd $(TEMP_JAVA_DIR)$S$(JAVA_ORTOOLS_PROJECT) && "$(MVN_BIN)" package
|
||||
cd $(TEMP_JAVA_DIR)$S$(JAVA_ORTOOLS_PROJECT) && "$(MVN_BIN)" install
|
||||
|
||||
@@ -20,7 +20,7 @@ You'll need a "Java SDK >= 1.8" and "Maven >= 3.6".
|
||||
|
||||
# Directory Layout
|
||||
* [pom-native.xml.in](pom-native.xml.in) POM template to build the native project.
|
||||
* [Loader.java](Loader.java) Helper to unpack and load the correct native libraries.
|
||||
* [com/google/ortools/Loader.java](com/google/ortools/Loader.java) Helper to unpack and load the correct native libraries.
|
||||
* [pom-local.xml.in](pom-local.xml.in) POM template to build the "pure" Java project.
|
||||
* [pom-sample.xml.in](pom-sample.xml.in) POM template used to build samples and examples.
|
||||
* [pom-test.xml.in](pom-test.xml.in) POM template used to build tests.
|
||||
|
||||
Reference in New Issue
Block a user