# Makefile for TAR3 with matlab mex wrapper # J. Schumann 8/25/08 # Generalize the build # G. Limes 5/4/09 # Select compiler switches for warnings, optimization, and debugging. WARN = -Wall -Wextra OPT = -O3 DBG = -g # Find MEX. SYSTYPE := $(shell uname) ifeq ($(SYSTYPE), Linux) MEX=/usr/matlab/matlab-r2008b/bin/mex # EXT=mex else MEX=/Applications/MATLAB_R2008b/bin/mex # EXT=mexmaci endif EXT=$(shell $(MEX)ext) SRC = $(TAR3_SOURCEDIR) INCF = $(SRC:%=-I%) MEXFLAGS = CFLAGS='$$CFLAGS $(WARN) $(OPT) $(DBG)' $(INCF) CFLAGS = -fPIC $(WARN) $(OPT) $(DBG) $(INCF) MARGINS_HOME = .. TAR3_SOURCEDIR=$(MARGINS_HOME)/tar3unix/source/tar3 TAR3_SOURCES= deltaf.c generate.c getdata.c getnames.c process.c random.c rawdata.c sort.c test.c xvalsum.c TAR3_OBJS= $(TAR3_SOURCES:.c=.o) all: $(TAR3_OBJS) callTAR.c $(MEX) $(MEXFLAGS) -I$(TAR3_SOURCEDIR) callTAR.c $(TAR3_OBJS) $(TAR3_SOURCEDIR)/memory.c clean: rm -f $(TAR3_OBJS) %.o: $(TAR3_SOURCEDIR)/%.c $(COMPILE.c) $(OUTPUT_OPTION) $< FORCE: