76 lines
1.5 KiB
Makefile
76 lines
1.5 KiB
Makefile
# Common things because dev's won't use platform.mk
|
|
|
|
# things that must exist in environment
|
|
ifeq (${JAVA_HOME},)
|
|
ERRORS = JAVA_HOME not defined
|
|
endif
|
|
|
|
# Defaults
|
|
UNAME := $(shell uname)
|
|
ERRORS =
|
|
LIBEXTN = .so
|
|
|
|
# Java/maven version
|
|
MVN_VERSION=2.3.0
|
|
JAVA_TARGET=1.8
|
|
|
|
# use system installs for most projects
|
|
CC = gcc
|
|
CPP = g++
|
|
LD = gcc
|
|
MD5 = md5
|
|
|
|
# for K2Daemon we need C++ 11 support
|
|
# these assume Linux and 4.7 *is* the default
|
|
CC11 = gcc
|
|
CPP11 = g++
|
|
|
|
# assume "python" is v2
|
|
PYTHON2 = python
|
|
PYTHON3 = python3
|
|
|
|
|
|
# need this is most projects to build JNI bindings
|
|
JNI_INCLUDE = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux
|
|
|
|
# Autodetect PLATFORM
|
|
ifeq (${UNAME},Darwin)
|
|
ifeq (${PLATFORM},)
|
|
PLATFORM=Darwin
|
|
endif
|
|
else
|
|
ifeq (${UNAME},Linux)
|
|
PLATFORM=lin64
|
|
else
|
|
PLATFORM=win32
|
|
endif
|
|
endif
|
|
|
|
# override for Darwin python
|
|
ifeq (${PLATFORM},Darwin)
|
|
PYTHON2=/usr/bin/python
|
|
PYTHON3=/usr/local/bin/python
|
|
endif
|
|
|
|
showconfig: init
|
|
@echo showconfig - use make all/clean to actually build something
|
|
@echo PLATFORM........ ${PLATFORM}
|
|
@echo PLATFORMFLAGS... ${PLATFORMFLAGS}
|
|
@echo JAVA_HOME....... ${JAVA_HOME}
|
|
@echo CFLAGS.......... ${CFLAGS}
|
|
@echo LDFLAGS......... ${LDFLAGS}
|
|
@echo CC.............. ${CC}
|
|
@echo CPP............. ${CPP}
|
|
@echo CC11............ ${CC11}
|
|
@echo CPP11........... ${CPP11}
|
|
|
|
init:
|
|
@echo common.mk init
|
|
mkdir -p obj/${PLATFORM}
|
|
mkdir -p obj/${PLATFORM}/client
|
|
mkdir -p lib/${PLATFORM}
|
|
mkdir -p bin/${PLATFORM}
|
|
mkdir -p classes
|
|
export LANG=en_US.US-ASCII
|
|
|