diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2018-09-18 17:57:56 -0700 |
---|---|---|
committer | Mathias Preiner <mathias.preiner@gmail.com> | 2018-09-22 16:30:59 -0700 |
commit | d78113d408d706d44c1d8cfc379fa86cd8e20460 (patch) | |
tree | f56be50b213272c6d14516df475ed5fcb2fd6b57 /examples/api | |
parent | ed8d326cbdec820d347d8b4b5ee7b23c3367d169 (diff) |
cmake: Add target runexamples.
Diffstat (limited to 'examples/api')
-rw-r--r-- | examples/api/CMakeLists.txt | 10 | ||||
-rw-r--r-- | examples/api/java/CMakeLists.txt | 108 |
2 files changed, 37 insertions, 81 deletions
diff --git a/examples/api/CMakeLists.txt b/examples/api/CMakeLists.txt index 4e4d81ed3..c78c50466 100644 --- a/examples/api/CMakeLists.txt +++ b/examples/api/CMakeLists.txt @@ -1,5 +1,3 @@ -set(EXAMPLES_API_BIN_DIR ${EXAMPLES_BIN_DIR}/api) - set(CVC4_EXAMPLES_API bitvectors bitvectors-new @@ -21,12 +19,10 @@ set(CVC4_EXAMPLES_API strings-new ) +set(EXAMPLES_API_LINK_LIBS cvc4 cvc4parser) foreach(example ${CVC4_EXAMPLES_API}) - add_executable(${example} EXCLUDE_FROM_ALL ${example}.cpp) - target_link_libraries(${example} cvc4) - set_target_properties(${example} - PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${EXAMPLES_API_BIN_DIR}) - add_dependencies(examples ${example}) + cvc4_add_example(${example} + "" "${EXAMPLES_API_LINK_LIBS}" "api") endforeach() if(BUILD_BINDINGS_JAVA) diff --git a/examples/api/java/CMakeLists.txt b/examples/api/java/CMakeLists.txt index bb70ab054..76a55151e 100644 --- a/examples/api/java/CMakeLists.txt +++ b/examples/api/java/CMakeLists.txt @@ -1,76 +1,36 @@ -set(EXAMPLES_API_JAVA_BIN_DIR ${EXAMPLES_API_BIN_DIR}/java) +set(EXAMPLES_API_JAVA_BIN_DIR ${EXAMPLES_BIN_DIR}/api/java) file(MAKE_DIRECTORY ${EXAMPLES_API_JAVA_BIN_DIR}) -add_custom_target(BitVectorsjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/BitVectors.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples BitVectorsjava) - -add_custom_target(BitVectorsAndArraysjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/BitVectorsAndArrays.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples BitVectorsAndArraysjava) - -## disabled until bindings for the new API are in place (issue #2284) -# add_custom_target(CVC4Streamsjava -# COMMAND -# ${Java_JAVAC_EXECUTABLE} -# -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/CVC4Streams.java -# -d ${CMAKE_BINARY_DIR}/bin/examples/api/java -# DEPENDS cvc4jar) -# add_dependencies(examples CVC4Streamsjava) - -add_custom_target(Combinationjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/Combination.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples Combinationjava) - -add_custom_target(Datatypesjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/Datatypes.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples Datatypesjava) - -add_custom_target(HelloWorldjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/HelloWorld.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples HelloWorldjava) - -add_custom_target(LinearArithjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/LinearArith.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples LinearArithjava) - -## disabled until bindings for the new API are in place (issue #2284) -# add_custom_target(PipedInputjava -# COMMAND -# ${Java_JAVAC_EXECUTABLE} -# -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/PipedInput.java -# -d ${EXAMPLES_API_JAVA_BIN_DIR} -# DEPENDS cvc4jar) -# add_dependencies(examples PipedInputjava) - -add_custom_target(Stringsjava - COMMAND - ${Java_JAVAC_EXECUTABLE} - -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/Strings.java - -d ${EXAMPLES_API_JAVA_BIN_DIR} - DEPENDS cvc4jar) -add_dependencies(examples Stringsjava) +set(EXAMPLES_API_JAVA + BitVectors + BitVectorsAndArrays + ## disabled until bindings for the new API are in place (issue #2284) + #CVC4Streams + Combination + Datatypes + HelloWorld + LinearArith + ## disabled until bindings for the new API are in place (issue #2284) + #PipedInput + Strings +) + +foreach(example ${EXAMPLES_API_JAVA}) + add_custom_target(${example} + COMMAND + ${Java_JAVAC_EXECUTABLE} + -cp ${EXAMPLES_JAVA_CLASSPATH} ${CMAKE_CURRENT_SOURCE_DIR}/${example}.java + -d ${EXAMPLES_API_JAVA_BIN_DIR} + DEPENDS cvc4jar) + add_dependencies(examples ${example}) + set(example_test example/api/java/${example}) + add_test( + NAME ${example_test} + COMMAND + ${Java_JAVA_EXECUTABLE} + -Djava.library.path=${CMAKE_BINARY_DIR}/src/bindings/java/ + -cp "${EXAMPLES_JAVA_CLASSPATH}:${CMAKE_BINARY_DIR}/bin/examples/api/java/" + ${example} + ) + set_tests_properties(${example_test} PROPERTIES LABELS "example") +endforeach() |