aboutsummaryrefslogtreecommitdiff
path: root/native/src/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'native/src/CMakeLists.txt')
-rw-r--r--native/src/CMakeLists.txt46
1 files changed, 46 insertions, 0 deletions
diff --git a/native/src/CMakeLists.txt b/native/src/CMakeLists.txt
new file mode 100644
index 0000000..a6b037d
--- /dev/null
+++ b/native/src/CMakeLists.txt
@@ -0,0 +1,46 @@
+################################################################
+# A minimal CMake file that is compatible with sbt-jni #
+# #
+# All settings required by sbt-jni have been marked so, please #
+# add/modify/remove settings to build your specific library. #
+################################################################
+
+cmake_minimum_required(VERSION 2.8.0)
+set(ignoreMe "${SBT}") # sbt-jni defines -DSBT
+
+# Define project and related variables
+# (required by sbt-jni) please use semantic versioning
+#
+project (akkaserial)
+set(PROJECT_VERSION_MAJOR 1)
+set(PROJECT_VERSION_MINOR 0)
+set(PROJECT_VERSION_PATCH 0)
+
+set(CMAKE_C_FLAGS "-std=c99")
+add_definitions(-Wall)
+add_definitions(-Wextra)
+add_definitions(-pedantic)
+
+# Setup JNI
+find_package(JNI REQUIRED)
+if (JNI_FOUND)
+ message (STATUS "JNI include directories: ${JNI_INCLUDE_DIRS}")
+endif()
+
+# Include directories
+include_directories(.)
+include_directories(include)
+include_directories(${JNI_INCLUDE_DIRS})
+
+# Sources
+file(GLOB LIB_SRC
+ "*.c"
+ "platform/posix/*.c"
+)
+
+# Setup installation targets
+# (required by sbt-jni) major version should always be appended to library name
+#
+set (LIB_NAME ${PROJECT_NAME}${PROJECT_VERSION_MAJOR})
+add_library(${LIB_NAME} SHARED ${LIB_SRC})
+install(TARGETS ${LIB_NAME} LIBRARY DESTINATION .)