From c376b8ffa5b4ccabf9f5d75fe8a69b715af065de Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer Date: Sun, 18 Oct 2020 01:49:19 -0400 Subject: [PATCH] add java interface --- swig/CMakeLists.txt | 9 +++++++++ swig/run_java_example.sh | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100755 swig/run_java_example.sh diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt index 18c6ac3195..cadafba076 100644 --- a/swig/CMakeLists.txt +++ b/swig/CMakeLists.txt @@ -16,11 +16,20 @@ endif() find_package(SWIG REQUIRED) include(${SWIG_USE_FILE}) +option(BUILD_SWIG_JAVA "Build Java JNI wrapper with SWIG" OFF) option(BUILD_SWIG_LUA "Build Lua wrapper with SWIG" OFF) option(BUILD_SWIG_PERL5 "Build Perl5 wrapper with SWIG" OFF) option(BUILD_SWIG_PYTHON "Build Python wrapper with SWIG" OFF) option(BUILD_SWIG_TCL "Build Tcl wrapper with SWIG" OFF) +if(BUILD_SWIG_JAVA) + set_property(SOURCE lammps.i PROPERTY SWIG_MODULE_NAME javalammps) + swig_add_library(javalammps TYPE MODULE LANGUAGE java SOURCES lammps.i) + find_package(JNI REQUIRED) + target_include_directories(javalammps PRIVATE ${JNI_INCLUDE_DIRS}) + swig_link_libraries(javalammps PRIVATE lammps ${JNI_LIBRARIES}) +endif() + if(BUILD_SWIG_PYTHON) set_property(SOURCE lammps.i PROPERTY SWIG_MODULE_NAME pylammps) swig_add_library(pylammps TYPE MODULE LANGUAGE python SOURCES lammps.i) diff --git a/swig/run_java_example.sh b/swig/run_java_example.sh new file mode 100755 index 0000000000..09975049dd --- /dev/null +++ b/swig/run_java_example.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +cat > example.java <