67 lines
1.6 KiB
Makefile
Executable File
67 lines
1.6 KiB
Makefile
Executable File
#########################################################################
|
|
# COMMON NORM-JNI MAKEFILE STUFF
|
|
#
|
|
|
|
.SUFFIXES: .cpp -sim.o $(.SUFFIXES)
|
|
|
|
NORMJNI = ../../src/java/jni
|
|
|
|
INCLUDES = $(SYSTEM_INCLUDES) -I../../include
|
|
|
|
CFLAGS = -g -O $(SYSTEM_CFLAGS) $(INCLUDES)
|
|
|
|
LIBNORM = ../../lib/libnorm.a
|
|
PROTOLIB = ../../protolib
|
|
LIBPROTO = $(PROTOLIB)/lib/libprotokit.a
|
|
|
|
LIBS = $(SYSTEM_LIBS) -lm -lpthread
|
|
|
|
# Rule for C++ .cpp extension
|
|
.cpp.o:
|
|
$(CC) -c $(CFLAGS) -o $*.o $*.cpp
|
|
|
|
LIB_SRC = \
|
|
$(NORMJNI)/normJni.cpp \
|
|
$(NORMJNI)/normInstanceJni.cpp \
|
|
$(NORMJNI)/normSessionJni.cpp \
|
|
$(NORMJNI)/normObjectJni.cpp \
|
|
$(NORMJNI)/normDataJni.cpp \
|
|
$(NORMJNI)/normFileJni.cpp \
|
|
$(NORMJNI)/normStreamJni.cpp \
|
|
$(NORMJNI)/normEventJni.cpp \
|
|
$(NORMJNI)/normNodeJni.cpp
|
|
|
|
LIB_OBJ = $(LIB_SRC:.cpp=.o)
|
|
LIB_DEP = $(LIB_SRC:.cpp=.d)
|
|
|
|
all: libmil_navy_nrl_norm.$(SYSTEM_SOEXT)
|
|
|
|
|
|
# NORM JNI shared library
|
|
libmil_navy_nrl_norm.$(SYSTEM_SOEXT): $(LIB_OBJ) $(LIBNORM) $(LIBPROTO)
|
|
$(CC) $(SYSTEM_SOFLAGS) $(LIB_OBJ) $(LIBNORM) $(LIBPROTO) $(LIBS) -o $@
|
|
mkdir -p ../../lib
|
|
cp $@ ../../lib/$@
|
|
|
|
$(LIBNORM):
|
|
$(MAKE) -C ../../makefiles -f Makefile.$(SYSTEM) libnorm.a
|
|
|
|
$(LIBPROTO):
|
|
$(MAKE) -C $(PROTOLIB)/makefiles -f Makefile.$(SYSTEM) libprotokit.a
|
|
|
|
-include $(LIB_DEP)
|
|
|
|
%.d: %.cpp
|
|
$(CC) -MM -MT $(@:.d=.o) -MF $@ $(CFLAGS) $<
|
|
|
|
clean:
|
|
rm -f $(NORMJNI)/*.o \
|
|
$(NORMJNI)/*.d \
|
|
libmil_navy_nrl_norm.$(SYSTEM_SOEXT) \
|
|
../../lib/libmil_navy_nrl_norm.$(SYSTEM_SOEXT)
|
|
|
|
distclean: clean
|
|
|
|
# DO NOT DELETE THIS LINE -- mkdep uses it.
|
|
# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
|