| 
0
 | 
     1 #
 | 
| 
 | 
     2 # Makefile for wxWidgets Application
 | 
| 
 | 
     3 #  Last Change: 14-Feb-2011.
 | 
| 
 | 
     4 #  by Takayuki Mutoh
 | 
| 
 | 
     5 #
 | 
| 
 | 
     6 
 | 
| 
 | 
     7 # Program Name
 | 
| 
 | 
     8 PROGNAME = searcher2
 | 
| 
 | 
     9 ### Variables: ###
 | 
| 
 | 
    10 OBJDIR = ./obj
 | 
| 
 | 
    11 CXX = g++
 | 
| 
 | 
    12 vpath %.cpp ./src
 | 
| 
 | 
    13 vpath %.h   ./include
 | 
| 
 | 
    14 
 | 
| 
 | 
    15 ifdef COMSPEC
 | 
| 
 | 
    16 # for Microsoft Windows
 | 
| 
 | 
    17 WXCPPFLAGS = -I/local/lib/wx/include/msw-unicode-release-static-2.8 \
 | 
| 
 | 
    18 		   -I/local/include/wx-2.8 \
 | 
| 
 | 
    19 		   -D__WXMSW__
 | 
| 
 | 
    20 WXLIBS = -L/local/lib -Wl,--subsystem,windows -mwindows \
 | 
| 
 | 
    21 	   -lwx_mswu_richtext-2.8 \
 | 
| 
 | 
    22 	   -lwx_mswu_aui-2.8 \
 | 
| 
 | 
    23 	   -lwx_mswu_xrc-2.8 \
 | 
| 
 | 
    24 	   -lwx_mswu_qa-2.8 \
 | 
| 
 | 
    25 	   -lwx_mswu_html-2.8 \
 | 
| 
 | 
    26 	   -lwx_mswu_adv-2.8 \
 | 
| 
 | 
    27 	   -lwx_mswu_core-2.8 \
 | 
| 
 | 
    28 	   -lwx_baseu_xml-2.8 \
 | 
| 
 | 
    29 	   -lwx_baseu_net-2.8 \
 | 
| 
 | 
    30 	   -lwx_baseu-2.8 \
 | 
| 
 | 
    31 	   -lwxregexu-2.8 \
 | 
| 
 | 
    32 	   -lwxexpat-2.8 \
 | 
| 
 | 
    33 	   -lwxtiff-2.8 \
 | 
| 
 | 
    34 	   -lwxjpeg-2.8 \
 | 
| 
 | 
    35 	   -lwxpng-2.8 \
 | 
| 
 | 
    36 	   -lwxzlib-2.8 \
 | 
| 
 | 
    37 	   -lrpcrt4 \
 | 
| 
 | 
    38 	   -loleaut32 \
 | 
| 
 | 
    39 	   -lole32 \
 | 
| 
 | 
    40 	   -luuid \
 | 
| 
 | 
    41 	   -lwinspool \
 | 
| 
 | 
    42 	   -lwinmm \
 | 
| 
 | 
    43 	   -lshell32 \
 | 
| 
 | 
    44 	   -lcomctl32 \
 | 
| 
 | 
    45 	   -lcomdlg32 \
 | 
| 
 | 
    46 	   -lctl3d32 \
 | 
| 
 | 
    47 	   -ladvapi32 \
 | 
| 
 | 
    48 	   -lwsock32 \
 | 
| 
 | 
    49 	   -lgdi32
 | 
| 
 | 
    50 EXECUTABLE = $(PROGNAME).exe
 | 
| 
 | 
    51 
 | 
| 
 | 
    52 else
 | 
| 
 | 
    53 # for Apple MacOSX
 | 
| 
 | 
    54 # 2.9
 | 
| 
 | 
    55 #CPPFLAGS = -I/opt/local/lib/wx-devel/wx/include/osx_carbon-unicode-release-2.9 \
 | 
| 
 | 
    56 #		   -I/opt/local/include/wx-devel/wx-2.9 \
 | 
| 
 | 
    57 #		   -I./include \
 | 
| 
 | 
    58 #		   -D_FILE_OFFSET_BITS=64 \
 | 
| 
 | 
    59 #		   -DWXUSINGDLL \
 | 
| 
 | 
    60 #		   -D__WXOSX__ \
 | 
| 
 | 
    61 #		   -D__WXOSX_CARBON__
 | 
| 
 | 
    62 #LIBS = -framework IOKit \
 | 
| 
 | 
    63 #	   -framework Carbon \
 | 
| 
 | 
    64 #	   -framework Cocoa \
 | 
| 
 | 
    65 #	   -framework System \
 | 
| 
 | 
    66 #	   -framework QuickTime \
 | 
| 
 | 
    67 #	   -framework OpenGL \
 | 
| 
 | 
    68 #	   -framework AudioToolbox \
 | 
| 
 | 
    69 #	   -lwx_osx_carbonu-2.9 \
 | 
| 
 | 
    70 #	   -L/opt/local/lib/wx-devel
 | 
| 
 | 
    71 # 2.8
 | 
| 
 | 
    72 WXCPPFLAGS = -I/opt/local/lib/wx/include/mac-unicode-release-2.8 \
 | 
| 
 | 
    73 		   -I/opt/local/include/wx-2.8 \
 | 
| 
 | 
    74 		   -D_FILE_OFFSET_BITS=64 \
 | 
| 
 | 
    75 		   -D_LARGE_FILES \
 | 
| 
 | 
    76 		   -D__WXMAC__
 | 
| 
 | 
    77 WXLIBS = -framework IOKit \
 | 
| 
 | 
    78 	   -framework Carbon \
 | 
| 
 | 
    79        -framework Cocoa \
 | 
| 
 | 
    80        -framework System \
 | 
| 
 | 
    81        -framework QuickTime \
 | 
| 
 | 
    82        -framework OpenGL \
 | 
| 
 | 
    83        -framework AGL \
 | 
| 
 | 
    84        -lwx_macu-2.8 \
 | 
| 
 | 
    85        -L/opt/local/lib \
 | 
| 
 | 
    86        -arch i386
 | 
| 
 | 
    87 
 | 
| 
 | 
    88 EXECUTABLE = $(PROGNAME).app/Contents/PkgInfo
 | 
| 
 | 
    89 
 | 
| 
 | 
    90 endif
 | 
| 
 | 
    91 
 | 
| 
 | 
    92 OBJ = $(OBJDIR)/main.o \
 | 
| 
 | 
    93 	  $(OBJDIR)/myframe.o \
 | 
| 
 | 
    94 	  $(OBJDIR)/hhsdb.o \
 | 
| 
 | 
    95 	  $(OBJDIR)/htmlhelp.o \
 | 
| 
 | 
    96 	  $(OBJDIR)/wxsqlite3.o
 | 
| 
 | 
    97 ifdef COMSPEC
 | 
| 
 | 
    98 OBJMSW = $(OBJ) $(OBJDIR)/sample_rc.o
 | 
| 
 | 
    99 endif
 | 
| 
 | 
   100 
 | 
| 
 | 
   101 # user include
 | 
| 
 | 
   102 CPPFLAGS = $(WXCPPFLAGS) -I./include -I./img
 | 
| 
 | 
   103 # user lib
 | 
| 
 | 
   104 LIBS = $(WXLIBS)
 | 
| 
 | 
   105 
 | 
| 
 | 
   106 
 | 
| 
 | 
   107 ### Targets: ###
 | 
| 
 | 
   108 
 | 
| 
 | 
   109 all: $(EXECUTABLE)
 | 
| 
 | 
   110 
 | 
| 
 | 
   111 ifdef COMSPEC
 | 
| 
 | 
   112 $(PROGNAME): $(OBJMSW)
 | 
| 
 | 
   113 	$(CXX) $^ -o $@ $(LIBS) sqlite3.a
 | 
| 
 | 
   114 else
 | 
| 
 | 
   115 $(PROGNAME): $(OBJ)
 | 
| 
 | 
   116 	$(CXX) $^ -o $@ $(LIBS) -lsqlite3
 | 
| 
 | 
   117 endif
 | 
| 
 | 
   118 
 | 
| 
 | 
   119 $(OBJDIR)/main.o: main.cpp main.h myframe.h common.h
 | 
| 
 | 
   120 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   121 
 | 
| 
 | 
   122 $(OBJDIR)/myframe.o: myframe.cpp myframe.h symbol.h common.h
 | 
| 
 | 
   123 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   124 
 | 
| 
 | 
   125 $(OBJDIR)/hhsdb.o: hhsdb.cpp hhsdb.h common.h
 | 
| 
 | 
   126 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   127 
 | 
| 
 | 
   128 $(OBJDIR)/htmlhelp.o: htmlhelp.cpp htmlhelp.h common.h
 | 
| 
 | 
   129 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   130 
 | 
| 
 | 
   131 $(OBJDIR)/wxsqlite3.o: wxsqlite3.cpp
 | 
| 
 | 
   132 	$(CXX) -c $< -o $@ $(CPPFLAGS) -I./include/wx
 | 
| 
 | 
   133 
 | 
| 
 | 
   134 
 | 
| 
 | 
   135 # for icon
 | 
| 
 | 
   136 ifdef COMSPEC
 | 
| 
 | 
   137 $(OBJDIR)/sample_rc.o: sample.rc
 | 
| 
 | 
   138 	windres -i sample.rc -o $@ -I/local/include/wx-2.8
 | 
| 
 | 
   139 endif
 | 
| 
 | 
   140 
 | 
| 
 | 
   141 
 | 
| 
 | 
   142 $(EXECUTABLE): $(PROGNAME)
 | 
| 
 | 
   143 ifdef COMSPEC
 | 
| 
 | 
   144 	strip $(EXECUTABLE)
 | 
| 
 | 
   145 else
 | 
| 
 | 
   146 	-mkdir -p $(PROGNAME).app/Contents
 | 
| 
 | 
   147 	-mkdir -p $(PROGNAME).app/Contents/MacOS
 | 
| 
 | 
   148 	-mkdir -p $(PROGNAME).app/Contents/Resources
 | 
| 
 | 
   149 	
 | 
| 
 | 
   150 	sed -e "s/IDENTIFIER/$(PROGNAME)/" \
 | 
| 
 | 
   151 	-e "s/EXECUTABLE/$(PROGNAME)/" \
 | 
| 
 | 
   152 	-e "s/VERSION/0.0/" \
 | 
| 
 | 
   153 	Info.plist.in > $(PROGNAME).app/Contents/Info.plist
 | 
| 
 | 
   154 	
 | 
| 
 | 
   155 	echo -n "APPL????" > $(EXECUTABLE)
 | 
| 
 | 
   156 	
 | 
| 
 | 
   157 	ln -f $(PROGNAME) $(PROGNAME).app/Contents/MacOS/$(PROGNAME)
 | 
| 
 | 
   158 	cp -f wxmac.icns $(PROGNAME).app/Contents/Resources/wxmac.icns
 | 
| 
 | 
   159 
 | 
| 
 | 
   160 	open $(PROGNAME).app
 | 
| 
 | 
   161 endif
 | 
| 
 | 
   162 
 | 
| 
 | 
   163 
 | 
| 
 | 
   164 clean:
 | 
| 
 | 
   165 	rm -f $(PROGNAME) $(PROGNAME).exe
 | 
| 
 | 
   166 	rm -f $(OBJDIR)/*.o
 | 
| 
 | 
   167 	rm -rf $(PROGNAME).app
 | 
| 
 | 
   168 
 | 
| 
 | 
   169 .PHONY:	all clean
 | 
| 
 | 
   170 
 |