94 lines
2.8 KiB
Makefile
94 lines
2.8 KiB
Makefile
#########################################################################
|
|
# COMMON MDP MAKEFILE STUFF
|
|
#
|
|
|
|
SHELL=/bin/sh
|
|
|
|
.SUFFIXES: .cpp -sim.o $(.SUFFIXES)
|
|
|
|
PROTOLIB = ../protolib
|
|
COMMON = ../common
|
|
UNIX = ../unix
|
|
NS = ../ns
|
|
|
|
INCLUDES = $(TCL_INCL_PATH) $(SYSTEM_INCLUDES) -I$(UNIX) -I$(COMMON) -I$(PROTOLIB)/common
|
|
|
|
CFLAGS = -g -DPROTO_DEBUG -DUNIX -O -fPIC $(SYSTEM_HAVES) $(INCLUDES)
|
|
|
|
LDFLAGS = $(SYSTEM_LDFLAGS)
|
|
|
|
# Note: Even command line app needs X11 for Netscape post-processing
|
|
LIBS = $(SYSTEM_LIBS) -lm -lpthread
|
|
XLIBS = -lXmu -lXt -lX11
|
|
|
|
#NOTE: TK_LIB must come before TCL_LIB for some reason
|
|
TKLIBS = $(TK_LIB) $(TCL_LIB)
|
|
|
|
TCL_SCRIPTS = ${TCL_SCRIPT_PATH}/init.tcl \
|
|
${TK_SCRIPT_PATH}/tk.tcl \
|
|
${TK_SCRIPT_PATH}/bgerror.tcl \
|
|
${TK_SCRIPT_PATH}/button.tcl \
|
|
${TK_SCRIPT_PATH}/dialog.tcl \
|
|
${TK_SCRIPT_PATH}/entry.tcl \
|
|
${TK_SCRIPT_PATH}/focus.tcl \
|
|
${TK_SCRIPT_PATH}/listbox.tcl \
|
|
${TK_SCRIPT_PATH}/menu.tcl \
|
|
${TK_SCRIPT_PATH}/palette.tcl \
|
|
${TK_SCRIPT_PATH}/scale.tcl \
|
|
${TK_SCRIPT_PATH}/scrlbar.tcl \
|
|
${TK_SCRIPT_PATH}/tearoff.tcl \
|
|
${TK_SCRIPT_PATH}/text.tcl \
|
|
${TK_SCRIPT_PATH}/optMenu.tcl
|
|
|
|
TARGETS = mdp tkMdp
|
|
|
|
# Rule for C++ .cpp extension
|
|
.cpp.o:
|
|
$(CC) -c $(CFLAGS) -o $*.o $*.cpp
|
|
|
|
# MDP depends upon the NRL Protean Group's development library
|
|
LIBPROTO = $(PROTOLIB)/unix/libProtokit.a
|
|
$(PROTOLIB)/unix/libProtokit.a:
|
|
cd $(PROTOLIB)/unix; $(MAKE) -f Makefile.$(SYSTEM) libProtokit.a
|
|
|
|
NORM_SRC = $(COMMON)/normMessage.cpp $(COMMON)/normSession.cpp \
|
|
$(COMMON)/normNode.cpp $(COMMON)/normObject.cpp \
|
|
$(COMMON)/normSegment.cpp $(COMMON)/normBitmask.cpp \
|
|
$(COMMON)/normEncoder.cpp $(COMMON)/galois.cpp \
|
|
$(COMMON)/normFile.cpp
|
|
|
|
NORM_OBJ = $(NORM_SRC:.cpp=.o)
|
|
|
|
LIB_SRC = $(NORM_SRC)
|
|
LIB_OBJ = $(LIB_SRC:.cpp=.o)
|
|
|
|
libnorm.a: $(LIB_OBJ)
|
|
$(AR) rcv $@ $(LIB_OBJ)
|
|
$(RANLIB) $@
|
|
|
|
.cpp-sim.o:
|
|
$(CC) -c $(CFLAGS) -DSIMULATE -o $*-sim.o $*.cpp
|
|
|
|
SIM_SRC = $(NORM_SRC) $(COMMON)/normSimAgent.cpp
|
|
SIM_OBJ = $(SIM_SRC:.cpp=-sim.o)
|
|
|
|
libnormSim.a: $(SIM_OBJ)
|
|
ar rcv $@ $(SIM_OBJ)
|
|
ranlib $@
|
|
|
|
# (mdp) command-line file broadcaster/receiver
|
|
APP_SRC = $(COMMON)/normApp.cpp $(COMMON)/normPostProcess.cpp \
|
|
$(UNIX)/unixPostProcess.cpp
|
|
APP_OBJ = $(APP_SRC:.cpp=.o)
|
|
|
|
norm: $(APP_OBJ) libnorm.a $(LIBPROTO)
|
|
$(CC) $(CFLAGS) -o $@ $(APP_OBJ) $(LDFLAGS) libnorm.a $(LIBPROTO) $(LIBS)
|
|
|
|
clean:
|
|
rm -f $(COMMON)/*.o $(UNIX)/*.o $(UNIX)/libnorm.a $(UNIX)/norm $(NS)/*.o;
|
|
cd $(PROTOLIB)/unix; $(MAKE) -f Makefile.$(SYSTEM) clean
|
|
|
|
# DO NOT DELETE THIS LINE -- mkdep uses it.
|
|
# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
|
|
|