added java example
This commit is contained in:
@@ -19,10 +19,12 @@ OSTYPE = $(shell uname -s | tr '[A-Z]' '[a-z]')
|
||||
# Target output filenames
|
||||
STATIC_LIB_NAME = libzt.a
|
||||
PICO_LIB_NAME = libpicotcp.a
|
||||
JNI_LIB_NAME = libzt.jnilib
|
||||
#
|
||||
STATIC_LIB = $(BUILD)/$(STATIC_LIB_NAME)
|
||||
PICO_DIR = ext/picotcp
|
||||
PICO_LIB = $(PICO_DIR)/build/lib/$(PICO_LIB_NAME)
|
||||
SHARED_JNI_LIB = $(BUILD)/$(JNI_LIB_NAME)
|
||||
#
|
||||
TEST_BUILD_DIR = $(BUILD)/test
|
||||
UNIT_TEST_SRC_DIR = test/unit
|
||||
@@ -47,7 +49,7 @@ else
|
||||
STRIP=strip
|
||||
endif
|
||||
|
||||
CXXFLAGS=$(CFLAGS) -Wno-format -fno-rtti -std=c++11 -DZT_SDK
|
||||
CXXFLAGS=$(CFLAGS) -Wno-format -fno-rtti -std=c++11
|
||||
|
||||
INCLUDES+= -Iext \
|
||||
-I$(ZTO)/osdep \
|
||||
@@ -69,32 +71,43 @@ COMMON_LIBS = -lpthread
|
||||
## User Build Flags ##
|
||||
##############################################################################
|
||||
|
||||
CXXFLAGS+=-DZT_SDK
|
||||
|
||||
# Debug option, prints filenames, lines, functions, arguments, etc
|
||||
# Also enables debug symbols for debugging with tools like gdb, etc
|
||||
ifeq ($(SDK_DEBUG),1)
|
||||
SDK_FLAGS+=-DSDK_PICOTCP
|
||||
CXXFLAGS+=-DSDK_PICOTCP
|
||||
CXXFLAGS+=-g
|
||||
INCLUDES+= -I$(PICOTCP_DIR)/include \
|
||||
-I$(PICOTCP_DIR)/build/include \
|
||||
-Isrc/stack_drivers/picotcp
|
||||
endif
|
||||
|
||||
# JNI (Java Native Interface)
|
||||
ifeq ($(SDK_JNI), 1)
|
||||
# jni.h
|
||||
INCLUDES+=-I$(shell /usr/libexec/java_home)/include
|
||||
# jni_md.h
|
||||
INCLUDES+=-I$(shell /usr/libexec/java_home)/include/$(SYSTEM)
|
||||
CXXFLAGS+=-DSDK_JNI
|
||||
endif
|
||||
|
||||
##############################################################################
|
||||
## Stack Configuration ##
|
||||
##############################################################################
|
||||
|
||||
# Stack config flags
|
||||
ifeq ($(SDK_PICOTCP),1)
|
||||
SDK_FLAGS+=-DSDK_PICOTCP
|
||||
CXXFLAGS+=-DSDK_PICOTCP
|
||||
INCLUDES+= -I$(PICOTCP_DIR)/include \
|
||||
-I$(PICOTCP_DIR)/build/include \
|
||||
-Isrc/stack_drivers/picotcp
|
||||
endif
|
||||
ifeq ($(SDK_IPV4),1)
|
||||
SDK_FLAGS+=-DSDK_IPV4
|
||||
CXXFLAGS+=-DSDK_IPV4
|
||||
endif
|
||||
ifeq ($(SDK_IPV6),1)
|
||||
SDK_FLAGS+=-DSDK_IPV6
|
||||
CXXFLAGS+=-DSDK_IPV6
|
||||
endif
|
||||
|
||||
|
||||
@@ -138,11 +151,15 @@ picotcp:
|
||||
|
||||
static_lib: picotcp $(ZTO_OBJS)
|
||||
@mkdir -p $(BUILD)
|
||||
$(CXX) $(CXXFLAGS) $(SDK_FLAGS) $(TAP_FILES) $(STACK_DRIVER_FILES) -c -DSDK_STATIC
|
||||
#libtool --mode=link $(STATIC_LIB) $(ZTO_OBJS) $(SDK_OBJS) $(PICO_LIB)
|
||||
$(CXX) $(CXXFLAGS) $(TAP_FILES) $(STACK_DRIVER_FILES) -c -DSDK_STATIC
|
||||
ar rcs -o $(STATIC_LIB) ext/picotcp/build/modules/*.o $(PICO_OBJS) $(ZTO_OBJS) $(SDK_OBJS)
|
||||
|
||||
jni_static_lib: picotcp $(ZTO_OBJS)
|
||||
##############################################################################
|
||||
## Java JNI ##
|
||||
##############################################################################
|
||||
|
||||
shared_jni_lib: picotcp $(ZTO_OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(TAP_FILES) $(STACK_DRIVER_FILES) $(ZTO_OBJS) $(INCLUDES) $(PICO_LIB) -dynamiclib -o $(SHARED_JNI_LIB)
|
||||
|
||||
##############################################################################
|
||||
## Unit Tests ##
|
||||
|
||||
Reference in New Issue
Block a user