diff makefile @ 0:c174ac668e9f

First commit ! (ver2.8)
author pyon@macmini
date Tue, 05 Apr 2011 18:44:57 +0900
parents
children e0cf49906039
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefile	Tue Apr 05 18:44:57 2011 +0900
@@ -0,0 +1,170 @@
+#
+# Makefile for wxWidgets Application
+#  Last Change: 14-Feb-2011.
+#  by Takayuki Mutoh
+#
+
+# Program Name
+PROGNAME = searcher2
+### Variables: ###
+OBJDIR = ./obj
+CXX = g++
+vpath %.cpp ./src
+vpath %.h   ./include
+
+ifdef COMSPEC
+# for Microsoft Windows
+WXCPPFLAGS = -I/local/lib/wx/include/msw-unicode-release-static-2.8 \
+		   -I/local/include/wx-2.8 \
+		   -D__WXMSW__
+WXLIBS = -L/local/lib -Wl,--subsystem,windows -mwindows \
+	   -lwx_mswu_richtext-2.8 \
+	   -lwx_mswu_aui-2.8 \
+	   -lwx_mswu_xrc-2.8 \
+	   -lwx_mswu_qa-2.8 \
+	   -lwx_mswu_html-2.8 \
+	   -lwx_mswu_adv-2.8 \
+	   -lwx_mswu_core-2.8 \
+	   -lwx_baseu_xml-2.8 \
+	   -lwx_baseu_net-2.8 \
+	   -lwx_baseu-2.8 \
+	   -lwxregexu-2.8 \
+	   -lwxexpat-2.8 \
+	   -lwxtiff-2.8 \
+	   -lwxjpeg-2.8 \
+	   -lwxpng-2.8 \
+	   -lwxzlib-2.8 \
+	   -lrpcrt4 \
+	   -loleaut32 \
+	   -lole32 \
+	   -luuid \
+	   -lwinspool \
+	   -lwinmm \
+	   -lshell32 \
+	   -lcomctl32 \
+	   -lcomdlg32 \
+	   -lctl3d32 \
+	   -ladvapi32 \
+	   -lwsock32 \
+	   -lgdi32
+EXECUTABLE = $(PROGNAME).exe
+
+else
+# for Apple MacOSX
+# 2.9
+#CPPFLAGS = -I/opt/local/lib/wx-devel/wx/include/osx_carbon-unicode-release-2.9 \
+#		   -I/opt/local/include/wx-devel/wx-2.9 \
+#		   -I./include \
+#		   -D_FILE_OFFSET_BITS=64 \
+#		   -DWXUSINGDLL \
+#		   -D__WXOSX__ \
+#		   -D__WXOSX_CARBON__
+#LIBS = -framework IOKit \
+#	   -framework Carbon \
+#	   -framework Cocoa \
+#	   -framework System \
+#	   -framework QuickTime \
+#	   -framework OpenGL \
+#	   -framework AudioToolbox \
+#	   -lwx_osx_carbonu-2.9 \
+#	   -L/opt/local/lib/wx-devel
+# 2.8
+WXCPPFLAGS = -I/opt/local/lib/wx/include/mac-unicode-release-2.8 \
+		   -I/opt/local/include/wx-2.8 \
+		   -D_FILE_OFFSET_BITS=64 \
+		   -D_LARGE_FILES \
+		   -D__WXMAC__
+WXLIBS = -framework IOKit \
+	   -framework Carbon \
+       -framework Cocoa \
+       -framework System \
+       -framework QuickTime \
+       -framework OpenGL \
+       -framework AGL \
+       -lwx_macu-2.8 \
+       -L/opt/local/lib \
+       -arch i386
+
+EXECUTABLE = $(PROGNAME).app/Contents/PkgInfo
+
+endif
+
+OBJ = $(OBJDIR)/main.o \
+	  $(OBJDIR)/myframe.o \
+	  $(OBJDIR)/hhsdb.o \
+	  $(OBJDIR)/htmlhelp.o \
+	  $(OBJDIR)/wxsqlite3.o
+ifdef COMSPEC
+OBJMSW = $(OBJ) $(OBJDIR)/sample_rc.o
+endif
+
+# user include
+CPPFLAGS = $(WXCPPFLAGS) -I./include -I./img
+# user lib
+LIBS = $(WXLIBS)
+
+
+### Targets: ###
+
+all: $(EXECUTABLE)
+
+ifdef COMSPEC
+$(PROGNAME): $(OBJMSW)
+	$(CXX) $^ -o $@ $(LIBS) sqlite3.a
+else
+$(PROGNAME): $(OBJ)
+	$(CXX) $^ -o $@ $(LIBS) -lsqlite3
+endif
+
+$(OBJDIR)/main.o: main.cpp main.h myframe.h common.h
+	$(CXX) -c $< -o $@ $(CPPFLAGS)
+
+$(OBJDIR)/myframe.o: myframe.cpp myframe.h symbol.h common.h
+	$(CXX) -c $< -o $@ $(CPPFLAGS)
+
+$(OBJDIR)/hhsdb.o: hhsdb.cpp hhsdb.h common.h
+	$(CXX) -c $< -o $@ $(CPPFLAGS)
+
+$(OBJDIR)/htmlhelp.o: htmlhelp.cpp htmlhelp.h common.h
+	$(CXX) -c $< -o $@ $(CPPFLAGS)
+
+$(OBJDIR)/wxsqlite3.o: wxsqlite3.cpp
+	$(CXX) -c $< -o $@ $(CPPFLAGS) -I./include/wx
+
+
+# for icon
+ifdef COMSPEC
+$(OBJDIR)/sample_rc.o: sample.rc
+	windres -i sample.rc -o $@ -I/local/include/wx-2.8
+endif
+
+
+$(EXECUTABLE): $(PROGNAME)
+ifdef COMSPEC
+	strip $(EXECUTABLE)
+else
+	-mkdir -p $(PROGNAME).app/Contents
+	-mkdir -p $(PROGNAME).app/Contents/MacOS
+	-mkdir -p $(PROGNAME).app/Contents/Resources
+	
+	sed -e "s/IDENTIFIER/$(PROGNAME)/" \
+	-e "s/EXECUTABLE/$(PROGNAME)/" \
+	-e "s/VERSION/0.0/" \
+	Info.plist.in > $(PROGNAME).app/Contents/Info.plist
+	
+	echo -n "APPL????" > $(EXECUTABLE)
+	
+	ln -f $(PROGNAME) $(PROGNAME).app/Contents/MacOS/$(PROGNAME)
+	cp -f wxmac.icns $(PROGNAME).app/Contents/Resources/wxmac.icns
+
+	open $(PROGNAME).app
+endif
+
+
+clean:
+	rm -f $(PROGNAME) $(PROGNAME).exe
+	rm -f $(OBJDIR)/*.o
+	rm -rf $(PROGNAME).app
+
+.PHONY:	all clean
+