1 ############################################################## -*- Makefile -*-
5 ###############################################################################
10 VERSION = snapshot20050612
13 !if "$(TARGETOS)" == "WINNT"
14 OS_SPECIFIC_DEFINES = -DUNICODE -D_UNICODE
18 !if "$(TARGETOS)" == "WIN95"
19 OS_SPECIFIC_DEFINES = -D_MBCS
23 !if "$(TARGETOS)" == "BOTH"
24 !error You must specify TARGETOS=WINNT
28 COMMON_DEFINES = -DSTRICT -D_WIN32_IE=0x0500 $(OS_SPECIFIC_DEFINES)
29 BOOST_DIR = ../boost_$(BOOST_VER)_0
31 BOOST_DIR = $(BOOST_DIR)_x64
35 # mayu.exe ###############################################################
37 TARGET_1 = $(OUT_DIR_EXE)\mayu$(X64).exe
39 $(OUT_DIR)\compiler_specific_func.obj \
40 $(OUT_DIR)\dlgeditsetting.obj \
41 $(OUT_DIR)\dlginvestigate.obj \
42 $(OUT_DIR)\dlglog.obj \
43 $(OUT_DIR)\dlgsetting.obj \
44 $(OUT_DIR)\dlgversion.obj \
45 $(OUT_DIR)\engine.obj \
46 $(OUT_DIR)\focus.obj \
47 $(OUT_DIR)\function.obj \
48 $(OUT_DIR)\keyboard.obj \
49 $(OUT_DIR)\keymap.obj \
50 $(OUT_DIR)\layoutmanager.obj \
52 $(OUT_DIR)\parser.obj \
53 $(OUT_DIR)\registry.obj \
54 $(OUT_DIR)\setting.obj \
55 $(OUT_DIR)\stringtool.obj \
56 $(OUT_DIR)\target.obj \
57 $(OUT_DIR)\vkeytable.obj \
58 $(OUT_DIR)\windowstool.obj \
61 compiler_specific_func.cpp \
82 RES_1 = $(OUT_DIR)\mayu.res
89 $(OUT_DIR_EXE)\mayu$(X64).lib \
91 EXTRADEP_1 = $(OUT_DIR_EXE)\mayu$(X64).lib
93 # mayu.dll ###############################################################
95 TARGET_2 = $(OUT_DIR_EXE)\mayu$(X64).dll
96 OBJS_2 = $(OUT_DIR)\hook.obj $(OUT_DIR)\stringtool.obj
97 SRCS_2 = hook.cpp stringtool.cpp
98 LIBS_2 = $(guixlibsmt) imm32.lib
101 # mayu.lib ###############################################################
103 TARGET_3 = $(OUT_DIR_EXE)\mayu$(X64).lib
104 DLL_3 = $(OUT_DIR_EXE)\mayu$(X64).dll
107 # yamyd ###############################################################
109 TARGET_4 = $(OUT_DIR_EXE)\yamyd$(X64)
110 OBJS_4 = $(OUT_DIR)\yamyd.obj
113 LIBS_4 = user32.lib $(OUT_DIR_EXE)\mayu$(X64).lib
115 EXTRADEP_4 = $(OUT_DIR_EXE)\mayu$(X64).lib
117 # distribution ###############################################################
130 doc\CONTENTS-ja.html \
131 doc\CUSTOMIZE-ja.html \
132 doc\edit-setting-ja.png \
133 doc\investigate-ja.png \
147 contrib\109onAX.mayu \
148 contrib\mayu-settings.txt \
149 contrib\dvorak.mayu \
150 contrib\dvorak109.mayu \
151 contrib\keitai.mayu \
154 contrib\DVORAKon109.mayu \
156 !if "$(TARGETOS)" == "WINNT"
159 d\rescue\i386\mayudrsc.sys \
160 d\nt4\i386\mayudnt4.sys
162 !if "$(TARGETOS)" == "WIN95"
163 DISTRIB_DRIVER = d_win9x\mayud.vxd
170 s\$(OUT_DIR)\setup.exe \
171 $(DISTRIB_SETTINGS) \
173 $(DISTRIB_CONTRIBS) \
177 # tools ###############################################################
181 MAKEDEPEND = perl tools/makedepend -o.obj
182 DOS2UNIX = perl tools/dos2unix
183 UNIX2DOS = perl tools/unix2dos
184 MAKEFUNC = perl tools/makefunc
185 GETCVSFILES = perl tools/getcvsfiles
186 GENIEXPRESS = perl tools/geniexpress
189 # rules ###############################################################
191 all: boost $(OUT_DIR) $(OUT_DIR_EXE) $(TARGET_1) $(TARGET_2) $(TARGET_3) $(TARGET_4)
194 if not exist "$(OUT_DIR)\\" $(MKDIR) $(OUT_DIR)
197 if not exist "$(OUT_DIR_EXE)\\" $(MKDIR) $(OUT_DIR_EXE)
199 functions.h: engine.h tools/makefunc
200 $(MAKEFUNC) < engine.h > functions.h
203 -$(RM) $(TARGET_1) $(TARGET_2) $(TARGET_3) $(TARGET_4)
204 -$(RM) $(OUT_DIR)\*.obj
205 -$(RM) $(OUT_DIR)\*.res $(OUT_DIR_EXE)\*.exp
206 -$(RM) mayu.aps mayu.opt $(OUT_DIR_EXE)\*.pdb
211 $(MAKEDEPEND) -fmayu-common.mak \
212 -- $(DEPENDFLAGS) -- $(SRCS_1) $(SRCS_2)
215 -@echo "we need cygwin tool"
216 -rm -f mayu-$(VERSION)
217 -ln -s . mayu-$(VERSION)
218 -bash -c "tar cvjf mayu-$(VERSION)-src.tar.bz2 `$(GETCVSFILES) | sed 's/^./mayu-$(VERSION)/'`"
219 -rm -f mayu-$(VERSION)
221 mayu-$(VERSION)-$(DISTRIB_OS).exe \
222 "MADO TSUKAI NO YUUTSU $(VERSION) $(TARGETOS)" \
223 setup.exe $(DISTRIB) > __mayu__.sed
224 -$(UNIX2DOS) $(DISTRIB_SETTINGS) $(DISTRIB_CONTRIBS)
225 -$(IEXPRESS) /N __mayu__.sed
226 -$(DOS2UNIX) $(DISTRIB_SETTINGS) $(DISTRIB_CONTRIBS)
230 @$(ECHO) USE DOC++ 3.4.4 OR HIGHER
235 $(OUT_DIR)\compiler_specific_func.obj: compiler_specific.h \
236 compiler_specific_func.h misc.h stringtool.h
237 $(OUT_DIR)\dlgeditsetting.obj: compiler_specific.h dlgeditsetting.h \
238 layoutmanager.h mayurc.h misc.h stringtool.h windowstool.h
239 $(OUT_DIR)\dlginvestigate.obj: compiler_specific.h d\ioctl.h \
240 dlginvestigate.h driver.h engine.h focus.h function.h functions.h hook.h \
241 keyboard.h keymap.h mayurc.h misc.h msgstream.h multithread.h parser.h \
242 setting.h stringtool.h target.h vkeytable.h windowstool.h
243 $(OUT_DIR)\dlglog.obj: compiler_specific.h dlglog.h layoutmanager.h mayu.h \
244 mayurc.h misc.h msgstream.h multithread.h registry.h stringtool.h \
246 $(OUT_DIR)\dlgsetting.obj: compiler_specific.h d\ioctl.h dlgeditsetting.h \
247 driver.h function.h functions.h keyboard.h keymap.h layoutmanager.h mayu.h \
248 mayurc.h misc.h multithread.h parser.h registry.h setting.h stringtool.h \
250 $(OUT_DIR)\dlgversion.obj: compiler_specific.h compiler_specific_func.h \
251 layoutmanager.h mayu.h mayurc.h misc.h stringtool.h windowstool.h
252 $(OUT_DIR)\engine.obj: compiler_specific.h d\ioctl.h driver.h engine.h \
253 errormessage.h function.h functions.h hook.h keyboard.h keymap.h mayurc.h \
254 misc.h msgstream.h multithread.h parser.h setting.h stringtool.h \
256 $(OUT_DIR)\focus.obj: compiler_specific.h focus.h misc.h stringtool.h \
258 $(OUT_DIR)\function.obj: compiler_specific.h d\ioctl.h driver.h engine.h \
259 function.h functions.h hook.h keyboard.h keymap.h mayu.h mayurc.h misc.h \
260 msgstream.h multithread.h parser.h registry.h setting.h stringtool.h \
261 vkeytable.h windowstool.h
262 $(OUT_DIR)\keyboard.obj: compiler_specific.h d\ioctl.h driver.h keyboard.h \
264 $(OUT_DIR)\keymap.obj: compiler_specific.h d\ioctl.h driver.h \
265 errormessage.h function.h functions.h keyboard.h keymap.h misc.h \
266 multithread.h parser.h setting.h stringtool.h
267 $(OUT_DIR)\layoutmanager.obj: compiler_specific.h layoutmanager.h misc.h \
268 stringtool.h windowstool.h
269 $(OUT_DIR)\mayu.obj: compiler_specific.h compiler_specific_func.h d\ioctl.h \
270 dlginvestigate.h dlglog.h dlgsetting.h dlgversion.h driver.h engine.h \
271 errormessage.h focus.h function.h functions.h hook.h keyboard.h keymap.h \
272 mayu.h mayuipc.h mayurc.h misc.h msgstream.h multithread.h parser.h \
273 registry.h setting.h stringtool.h target.h windowstool.h
274 $(OUT_DIR)\parser.obj: compiler_specific.h errormessage.h misc.h parser.h \
276 $(OUT_DIR)\registry.obj: array.h compiler_specific.h misc.h registry.h \
278 $(OUT_DIR)\setting.obj: array.h compiler_specific.h d\ioctl.h dlgsetting.h \
279 driver.h errormessage.h function.h functions.h keyboard.h keymap.h mayu.h \
280 mayurc.h misc.h multithread.h parser.h registry.h setting.h stringtool.h \
281 vkeytable.h windowstool.h
282 $(OUT_DIR)\stringtool.obj: array.h compiler_specific.h misc.h stringtool.h
283 $(OUT_DIR)\target.obj: compiler_specific.h mayurc.h misc.h stringtool.h \
284 target.h windowstool.h
285 $(OUT_DIR)\vkeytable.obj: compiler_specific.h misc.h vkeytable.h
286 $(OUT_DIR)\windowstool.obj: array.h compiler_specific.h misc.h stringtool.h \
288 $(OUT_DIR)\hook.obj: compiler_specific.h hook.h misc.h stringtool.h
289 $(OUT_DIR)\stringtool.obj: array.h compiler_specific.h misc.h stringtool.h