# # Additional compilation flags may be passed via CFLAGS, CXXFLAGS and CLINKFLAGS # # Linux: # make CFLAGS=-m32 # make CFLAGS=-m64 # # Ubuntu 9.04 64-bit # make CFLAGS=-m32 CXXFLAGS=-m32 CLINKFLAGS="-L/lib32 -L/usr/lib32 -Wl,-rpath-link,/lib32:/usr/lib32" # # OSX: # make 'CFLAGS=-arch ppc' 'CXXFLAGS=-arch ppc' # make 'CFLAGS=-arch i386' 'CXXFLAGS=-arch i386' # make 'CFLAGS=-arch x86_64' 'CXXFLAGS=-arch x86_64' UNAME := $(shell uname) C_SOURCE := traceCgGL.c OBJ := $(C_SOURCE:.c=.o) BIN := libCgGL.so LINKFLAGS += -L. -ltrace CC = gcc C_FLAGS += -Wall C_FLAGS += -DCGGL_EXPORTS ifdef CG_INC_PATH C_FLAGS += -I"$(CG_INC_PATH)" endif ifeq ($(UNAME), Darwin) BIN = libCgGL.dylib LINKFLAGS += -dynamiclib C_SOURCE += traceCg.c OBJ := $(C_SOURCE:.c=.o) else LINKFLAGS += -shared ifeq ($(findstring CYGWIN, $(UNAME)), CYGWIN) BIN = cgGl.dll C_FLAGS += -D_WIN32 C_FLAGS += -mno-cygwin C_FLAGS += -I"C:\Program Files\NVIDIA Corporation\Cg\include" LINKFLAGS += -mno-cygwin else ifeq ($(UNAME), SunOS) C_FLAGS += -fPIC else C_FLAGS += -fPIC LINKFLAGS += -ldl endif endif endif override CFLAGS := $(CFLAGS) $(C_FLAGS) all: traceCgGL traceCgGL: $(OBJ) $(CC) $(CFLAGS) $(OBJ) -o $(BIN) $(LINKFLAGS) $(CLINKFLAGS) test: run: all clean: $(RM) $(BIN) $(OBJ) clobber: clean $(RM) *.bak *.o *~ .PHONY: all test run clean clobber