#### # # This Makefile defines rules for building list, string, and mvp classes in the # support project. It will be exapanded as new support classes are added. # # # Object files # BASIC_OBJS = intlist.o list.o str.o strlist.o quit-exception.o MVP_OBJS = model.o view.o OBJS = $(BASIC_OBJS) $(MVP_OBJS) # # Source files SRCS = $(IMPLE_DIR)/*.C DEPENDSRCS = $(SRCS) # # Relative paths to design and implementation directories. # DESIGN_DIR = ../../design IMPLE_DIR = .. # # Platform type # PLATFORM = HP700 # # Paths to relevant root project directories # PROJECTS_DIR = /home/users/faculty/gfisher/projects/alpha PROJECTS_INCLUDE_DIR = $(PROJECTS_DIR)/include PROJECTS_LIB_DIR = $(PROJECTS_DIR)/lib/$(PLATFORM) # # Paths to the relevant directories of the InterViews GUI toolkit # IV_DIR = $(PROJECTS_DIR)/interviews IV_INCLUDE_DIR = $(IV_DIR)/design IV_LIB_DIR = $(IV_DIR)/implementation/libInterViews/$(PLATFORM) IV_LIB_GRAPHICS_DIR = $(IV_DIR)/implementation/libgraphic/$(PLATFORM) # # InterViews libraries; the _g version is compiled with debugging on, so that # GUI library functions can be traced if necessary. # IV_LIBS = $(IV_LIB_DIR)/libInterViewsX11.a $(IV_LIB_DIR)/libgraphic.a IV_LIBS_g = $(IV_LIB_DIR)/libInterViewsX11-g.a \ $(IV_LIB_GRAPHICS_DIR)/libgraphic-g.a # # X Windows and other system libraries. # X_LIB = -lX11 # X Windows lib OTHER_LIBS = -lsupport \ -liv-local \ -lm -lg++ \ -lgen # # Compilation flags and related definitions # CFLAGS = -c -g \ -I$(DESIGN_DIR) -I$(PROJECTS_INCLUDE_DIR) -I$(IV_INCLUDE_DIR) \ -Dgcc_2_6_3 LDFLAGS = -g -L$(PROJECTS_LIB_DIR) CC = g++ GCC = gcc LIBS = $(IV_LIBS) $(X_LIB) $(OTHER_LIBS) LIBS_g = $(IV_LIBS_g) $(X_LIB) $(OTHER_LIBS) DEPEND_DIRS = -I$(IV_SRC_DIR) # # The main target is the support lib archive. # libsupport.a: $(OBJS) ar cq libsupport.a $(OBJS) %.o: $(IMPLE_DIR)/%.C $(CC) $(CFLAGS) -c $< tests: listtests listtests: listoutput listdiffs listoutput: @csh -q -c "source .makelistoutput" listdiffs: @csh -q -c "source .makelistdiffs" listgood: @csh -q -c "source .makelistgood" clean: rm -f *.o libsupport.a # DO NOT DELETE THIS LINE -- make depend depends on it.