Skip to content

Instantly share code, notes, and snippets.

@tmngtk
Created February 25, 2014 11:56
Show Gist options
  • Save tmngtk/9207572 to your computer and use it in GitHub Desktop.
Save tmngtk/9207572 to your computer and use it in GitHub Desktop.
####### Compiler, tools and options
SO_EXT = .dylib
AR_EXT = .a
#---- Release
CXXCFG = -O3
LFLAGS =
OUT_DIR = ../lib
#---- Debug
#CXXCFG = -g -D_DEBUG
#LFLAGS =
#OUT_DIR = ../lib/debug
#BASE = /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks
CXX = g++
CXXFLAGS = $(CXXCFG) -Wall -fPIC -fno-strict-aliasing -D_MACOSX -ObjC++ -D__PLACEMENT_NEW_INLINE
INCPATH = -I../include -I/usr/local/include -I/usr/X11R6/include -I/usr/include
#-I$(BASE)/OpenGL.framework/Headers/ -I$(BASE)/GLUT.framework/Headers/ -I$(BASE)/AppKit.framework/Headers/
LINK = g++
LIBS = -framework OpenGL -framework GLUT -framework AppKit
AR = ar cqs
RANLIB =
TAR = tar -cf
GZIP = gzip -9f
COPY = cp -f
COPY_FILE = $(COPY) -p
COPY_DIR = $(COPY) -pR
DEL_FILE = rm -f
SYMLINK = ln -sf
DEL_DIR = rmdir
MOVE = mv
NO_STDERR = 2> /dev/null
####### Files
# name of the application:
TARGET = AntTweakBar
# source files without extension:
SRC_FILES = TwColors.cpp TwFonts.cpp TwOpenGL.cpp TwOpenGLCore.cpp TwBar.cpp TwMgr.cpp LoadOGL.cpp LoadOGLCore.cpp TwEventGLFW.c TwEventGLUT.c TwEventSDL.c TwEventSDL12.c TwEventSDL13.c TwEventSFML.cpp
# build object list from source files
OBJS_1 = $(SRC_FILES:.c=.o)
OBJS = $(OBJS_1:.cpp=.o)
####### Build rules
#first: depend all
first: all
all: Makefile $(TARGET)
# append dependencies to this Makefile
#depend:
# @echo "==== Make dependencies ====="
# makedepend -Y
# makedepend -a -Y -- $(CXXFLAGS) $(INCPATH) -- $(SRC_FILES) $(NO_STDERR)
$(TARGET): $(OBJS)
@echo "===== Link $@ ====="
# $(LINK) $(LFLAGS) -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o $(OUT_DIR)/lib$(TARGET)$(SO_EXT) $(OBJS) $(LIBS)
$(LINK) $(LFLAGS) -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o $(OUT_DIR)/lib$(TARGET)$(SO_EXT) $(OBJS) $(LIBS) -install_name @executable_path/../Frameworks/lib$(TARGET)$(SO_EXT)
$(AR) $(OUT_DIR)/lib$(TARGET)$(AR_EXT) $(OBJS)
.cpp.o:
@echo "===== Compile $< ====="
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.c.o:
@echo "===== Compile $< ====="
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
clean:
@echo "===== Clean ====="
-$(DEL_FILE) *.o
-$(DEL_FILE) *~ core *.core *.stackdump
####### DEPENDENCIES
TwColors.o: TwPrecomp.h TwColors.h
TwFonts.o: TwPrecomp.h ../include/AntTweakBar.h TwFonts.h TwMgr.h TwColors.h TwGraph.h AntPerfTimer.h
TwOpenGL.o: TwPrecomp.h ../include/AntTweakBar.h TwOpenGL.h LoadOGL.h TwGraph.h TwColors.h TwFonts.h TwMgr.h AntPerfTimer.h
TwOpenGLCore.o: TwPrecomp.h ../include/AntTweakBar.h TwOpenGLCore.h LoadOGLCore.h TwGraph.h TwColors.h TwFonts.h TwMgr.h AntPerfTimer.h
TwBar.o: TwPrecomp.h ../include/AntTweakBar.h TwBar.h TwMgr.h TwColors.h TwFonts.h TwGraph.h AntPerfTimer.h
TwMgr.o: TwPrecomp.h ../include/AntTweakBar.h TwMgr.h TwColors.h TwFonts.h TwGraph.h AntPerfTimer.h TwBar.h TwOpenGL.h res/TwXCursors.h
TwPrecomp.o: TwPrecomp.h
LoadOGL.o: TwPrecomp.h LoadOGL.h
TwEventGLFW.o: ../include/AntTweakBar.h MiniGLFW.h
TwEventGLUT.o: ../include/AntTweakBar.h MiniGLUT.h
TwEventSDL.o: ../include/AntTweakBar.h
TwEventSDL12.o: ../include/AntTweakBar.h MiniSDL12.h
TwEventSDL13.o: ../include/AntTweakBar.h MiniSDL13.h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment