| 
0
 | 
     1 #
 | 
| 
 | 
     2 # Makefile for wxWidgets Application
 | 
| 
18
 | 
     3 #  Last Change: 13-Jul-2011.
 | 
| 
0
 | 
     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.8
 | 
| 
 | 
    55 WXCPPFLAGS = -I/opt/local/lib/wx/include/mac-unicode-release-2.8 \
 | 
| 
 | 
    56 		   -I/opt/local/include/wx-2.8 \
 | 
| 
 | 
    57 		   -D_FILE_OFFSET_BITS=64 \
 | 
| 
 | 
    58 		   -D_LARGE_FILES \
 | 
| 
 | 
    59 		   -D__WXMAC__
 | 
| 
 | 
    60 WXLIBS = -framework IOKit \
 | 
| 
 | 
    61 	   -framework Carbon \
 | 
| 
 | 
    62        -framework Cocoa \
 | 
| 
 | 
    63        -framework System \
 | 
| 
 | 
    64        -framework QuickTime \
 | 
| 
 | 
    65        -framework OpenGL \
 | 
| 
 | 
    66        -framework AGL \
 | 
| 
 | 
    67        -lwx_macu-2.8 \
 | 
| 
 | 
    68        -L/opt/local/lib \
 | 
| 
 | 
    69        -arch i386
 | 
| 
 | 
    70 
 | 
| 
 | 
    71 EXECUTABLE = $(PROGNAME).app/Contents/PkgInfo
 | 
| 
 | 
    72 
 | 
| 
 | 
    73 endif
 | 
| 
 | 
    74 
 | 
| 
 | 
    75 OBJ = $(OBJDIR)/main.o \
 | 
| 
 | 
    76 	  $(OBJDIR)/myframe.o \
 | 
| 
18
 | 
    77 	  $(OBJDIR)/ccnframe.o \
 | 
| 
1
 | 
    78 	  $(OBJDIR)/preview.o \
 | 
| 
0
 | 
    79 	  $(OBJDIR)/hhsdb.o \
 | 
| 
 | 
    80 	  $(OBJDIR)/htmlhelp.o \
 | 
| 
 | 
    81 	  $(OBJDIR)/wxsqlite3.o
 | 
| 
 | 
    82 ifdef COMSPEC
 | 
| 
 | 
    83 OBJMSW = $(OBJ) $(OBJDIR)/sample_rc.o
 | 
| 
 | 
    84 endif
 | 
| 
 | 
    85 
 | 
| 
 | 
    86 # user include
 | 
| 
 | 
    87 CPPFLAGS = $(WXCPPFLAGS) -I./include -I./img
 | 
| 
 | 
    88 # user lib
 | 
| 
7
 | 
    89 LIBS = -static-libgcc -static-libstdc++ $(WXLIBS)
 | 
| 
0
 | 
    90 
 | 
| 
 | 
    91 
 | 
| 
 | 
    92 ### Targets: ###
 | 
| 
 | 
    93 
 | 
| 
 | 
    94 all: $(EXECUTABLE)
 | 
| 
 | 
    95 
 | 
| 
 | 
    96 ifdef COMSPEC
 | 
| 
 | 
    97 $(PROGNAME): $(OBJMSW)
 | 
| 
 | 
    98 	$(CXX) $^ -o $@ $(LIBS) sqlite3.a
 | 
| 
 | 
    99 else
 | 
| 
 | 
   100 $(PROGNAME): $(OBJ)
 | 
| 
 | 
   101 	$(CXX) $^ -o $@ $(LIBS) -lsqlite3
 | 
| 
 | 
   102 endif
 | 
| 
 | 
   103 
 | 
| 
 | 
   104 $(OBJDIR)/main.o: main.cpp main.h myframe.h common.h
 | 
| 
 | 
   105 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   106 
 | 
| 
 | 
   107 $(OBJDIR)/myframe.o: myframe.cpp myframe.h symbol.h common.h
 | 
| 
 | 
   108 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   109 
 | 
| 
18
 | 
   110 $(OBJDIR)/ccnframe.o: ccnframe.cpp ccnframe.h symbol.h common.h
 | 
| 
 | 
   111 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   112 
 | 
| 
1
 | 
   113 $(OBJDIR)/preview.o: preview.cpp preview.h common.h
 | 
| 
 | 
   114 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   115 
 | 
| 
0
 | 
   116 $(OBJDIR)/hhsdb.o: hhsdb.cpp hhsdb.h common.h
 | 
| 
 | 
   117 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   118 
 | 
| 
 | 
   119 $(OBJDIR)/htmlhelp.o: htmlhelp.cpp htmlhelp.h common.h
 | 
| 
 | 
   120 	$(CXX) -c $< -o $@ $(CPPFLAGS)
 | 
| 
 | 
   121 
 | 
| 
 | 
   122 $(OBJDIR)/wxsqlite3.o: wxsqlite3.cpp
 | 
| 
 | 
   123 	$(CXX) -c $< -o $@ $(CPPFLAGS) -I./include/wx
 | 
| 
 | 
   124 
 | 
| 
 | 
   125 
 | 
| 
 | 
   126 # for icon
 | 
| 
 | 
   127 ifdef COMSPEC
 | 
| 
 | 
   128 $(OBJDIR)/sample_rc.o: sample.rc
 | 
| 
 | 
   129 	windres -i sample.rc -o $@ -I/local/include/wx-2.8
 | 
| 
 | 
   130 endif
 | 
| 
 | 
   131 
 | 
| 
 | 
   132 
 | 
| 
 | 
   133 $(EXECUTABLE): $(PROGNAME)
 | 
| 
 | 
   134 ifdef COMSPEC
 | 
| 
7
 | 
   135 	strip --strip-all $(EXECUTABLE)
 | 
| 
0
 | 
   136 else
 | 
| 
 | 
   137 	-mkdir -p $(PROGNAME).app/Contents
 | 
| 
 | 
   138 	-mkdir -p $(PROGNAME).app/Contents/MacOS
 | 
| 
 | 
   139 	-mkdir -p $(PROGNAME).app/Contents/Resources
 | 
| 
 | 
   140 	
 | 
| 
 | 
   141 	sed -e "s/IDENTIFIER/$(PROGNAME)/" \
 | 
| 
 | 
   142 	-e "s/EXECUTABLE/$(PROGNAME)/" \
 | 
| 
 | 
   143 	-e "s/VERSION/0.0/" \
 | 
| 
 | 
   144 	Info.plist.in > $(PROGNAME).app/Contents/Info.plist
 | 
| 
 | 
   145 	
 | 
| 
 | 
   146 	echo -n "APPL????" > $(EXECUTABLE)
 | 
| 
 | 
   147 	
 | 
| 
 | 
   148 	ln -f $(PROGNAME) $(PROGNAME).app/Contents/MacOS/$(PROGNAME)
 | 
| 
 | 
   149 	cp -f wxmac.icns $(PROGNAME).app/Contents/Resources/wxmac.icns
 | 
| 
 | 
   150 
 | 
| 
 | 
   151 	open $(PROGNAME).app
 | 
| 
 | 
   152 endif
 | 
| 
 | 
   153 
 | 
| 
 | 
   154 
 | 
| 
 | 
   155 clean:
 | 
| 
 | 
   156 	rm -f $(PROGNAME) $(PROGNAME).exe
 | 
| 
 | 
   157 	rm -f $(OBJDIR)/*.o
 | 
| 
 | 
   158 	rm -rf $(PROGNAME).app
 | 
| 
 | 
   159 
 | 
| 
 | 
   160 .PHONY:	all clean
 | 
| 
 | 
   161 
 |