* io.c (rb_open_file): encoding in mode string was ignored if perm is
[ruby-svn.git] / bcc32 / Makefile.sub
blob2434b2fef2ce76deaa8efb8b5127352ec282b4a1
1 # -*- makefile -*-
3 SHELL = $(COMSPEC)
4 MKFILES = Makefile
6 !ifndef MFLAGS
7 MFLAGS=-
8 !endif
10 #### Start of system configuration section. ####
11 !ifndef OS
12 OS = bccwin32
13 !endif
14 !if !defined(RT)
15 !error RT not defined.  Retry from configure pass.
16 !endif
18 arch = $(ARCH)-$(OS)
20 ## variables may be overridden by $(compile_dir)/Makefile
21 !ifndef srcdir
22 srcdir = ..
23 !endif
24 !ifndef RUBY_INSTALL_NAME
25 RUBY_INSTALL_NAME = ruby
26 !endif
27 !ifndef RUBYW_INSTALL_NAME
28 RUBYW_INSTALL_NAME = $(RUBY_INSTALL_NAME:ruby=rubyw)
29 !elif "$(RUBYW_INSTALL_NAME)" == "$(RUBY_INSTALL_NAME)"
30 RUBYW_INSTALL_NAME = $(RUBY_INSTALL_NAME:ruby=rubyw)
31 !endif
32 !if "$(RUBYW_INSTALL_NAME)" == "$(RUBY_INSTALL_NAME)"
33 RUBYW_INSTALL_NAME = $(RUBY_INSTALL_NAME)w
34 !endif
35 !ifndef RUBY_SO_NAME
36 RUBY_SO_NAME = $(RT)-$(RUBY_INSTALL_NAME)$(MAJOR)$(MINOR)$(TEENY)
37 !endif
38 !ifndef icondirs
39 !ifdef ICONDIRS
40 icondirs=$(ICONDIRS)
41 !endif
42 !endif
43 !ifdef icondirs
44 icondirs=$(icondirs:\=/)
45 iconinc=-I$(icondirs: = -I)
46 !endif
47 ###############
49 .SUFFIXES: .y
51 !ifndef CC
52 CC = bcc32
53 !endif
54 !ifndef CPP
55 CPP = cpp32
56 !endif
57 !ifndef RC
58 RC = brcc32
59 !endif
60 !ifndef YACC
61 YACC = bison
62 !endif
63 !ifndef AR
64 AR = tlib
65 !endif
66 !ifndef BASERUBY
67 BASERUBY = ruby
68 !endif
70 PURIFY =
71 AUTOCONF = autoconf
72 IFCHANGE = $(srcdir:/=\)\win32\ifchange.bat
73 RM = $(srcdir:/=\)\win32\rm.bat
74 CP = copy > nul
75 MV = move > nul
77 !if !defined(PROCESSOR_ARCHITECTURE)
78 PROCESSOR_ARCHITECTURE = x86
79 !endif
80 MACHINE = $(PROCESSOR_ARCHITECTURE)
81 !if "$(PROCESSOR_ARCHITECTURE)" == "x86"
82 !ifndef PROCESSOR_LEVEL
83 PROCESSOR_LEVEL = 5
84 !endif
85 !if 6 < $(PROCESSOR_LEVEL)
86 PROCESSOR_LEVEL = 6
87 !endif
88 PROCESSOR_FLAG = -$(PROCESSOR_LEVEL)
89 CPU = i$(PROCESSOR_LEVEL)86
90 ARCH = i386
91 !else
92 CPU = $(PROCESSOR_ARCHITECTURE)
93 ARCH = $(PROCESSOR_ARCHITECTURE)
94 !endif
95 !ifndef DEBUGFLAGS
96 DEBUGFLAGS = 
97 !endif
98 !ifndef OPTFLAGS
99 OPTFLAGS = -O
100 !endif
102 !ifndef prefix
103 prefix = /usr
104 !endif
105 !ifndef exec_prefix
106 exec_prefix = $(prefix)
107 !endif
108 !ifndef libdir
109 libdir = $(exec_prefix)/lib
110 !endif
111 !if !defined(datadir)
112 datadir = $(prefix)/share
113 !endif
114 !ifndef EXTOUT
115 EXTOUT = .ext
116 !endif
117 !ifndef RIDATADIR
118 RIDATADIR = $(DESTDIR)$(datadir)/ri/$(MAJOR).$(MINOR)/system
119 !endif
120 !ifndef TESTUI
121 TESTUI = console
122 !endif
123 !ifndef TESTS
124 TESTS =
125 !endif
126 !ifndef RDOCTARGET
127 RDOCTARGET = install-doc
128 !endif
130 OUTFLAG       = -o
131 COUTFLAG      = -o
132 !ifndef CFLAGS
133 CFLAGS = -q -tWR -tWC $(DEBUGFLAGS) $(OPTFLAGS) $(PROCESSOR_FLAG) -w- -wsus -wcpt -wdup -wext -wrng -wrpt -wzdi
134 !endif
135 !ifndef DEFS
136 DEFS =
137 !endif
138 !ifndef CPPFLAGS
139 CPPFLAGS =
140 !endif
141 CPPFLAGS = $(DEFS) $(CPPFLAGS)
142 !ifndef CXXFLAGS
143 CXXFLAGS = $(CFLAGS)
144 !endif
145 !ifndef LDFLAGS
146 LDFLAGS = -S:$(STACK)
147 !endif
148 !ifndef RFLAGS
149 RFLAGS = $(iconinc)
150 !endif
151 !ifndef EXTLIBS
152 EXTLIBS =
153 !endif
154 !ifndef MEMLIB
155 MEMLIB =
156 !endif
157 LIBS = $(MEMLIB) cw32i.lib import32.lib ws2_32.lib $(EXTLIBS)
158 MISSING = acosh.obj cbrt.obj crypt.obj erf.obj lgamma_r.obj strlcat.obj strlcpy.obj tgamma.obj win32.obj
160 !ifndef STACK
161 STACK = 0x2000000
162 !endif
164 XCFLAGS = -DRUBY_EXPORT -I. -I$(arch_hdrdir) -I$(hdrdir) -I$(srcdir) -I$(srcdir)/missing
166 ARFLAGS = /a /p32
167 LD = ilink32 -q -Gn
168 LDSHARED  = $(LD)
169 XLDFLAGS  = -Tpe c0x32.obj
170 WLDFLAGS  = -aa -Tpe c0w32.obj
171 DLDFLAGS  = -Tpd c0d32.obj
172 LIBRUBY_LDSHARED = $(LDSHARED)
173 LIBRUBY_DLDFLAGS = -Gi $(DLDFLAGS) $(EXTLDFLAGS)
174 LDOBJECTS = $(MAINOBJ)
176 SOLIBS = 
178 EXEEXT = .exe
179 PROGRAM=$(RUBY_INSTALL_NAME)$(EXEEXT)
180 WPROGRAM=$(RUBYW_INSTALL_NAME)$(EXEEXT)
181 RUBYDEF = $(RUBY_SO_NAME).def
182 MINIRUBY = .\miniruby$(EXEEXT) -I$(srcdir)/lib $(MINIRUBYOPT)
183 RUNRUBY = .\$(PROGRAM) -i"$(EXTOUT)/$(arch)" "$(srcdir)/runruby.rb" --extout="$(EXTOUT)" --
185 ORGLIBPATH = $(LIB)
187 #### End of system configuration section. ####
189 LIBRUBY_A     = $(RUBY_SO_NAME)-static.lib
190 LIBRUBY_SO    = $(RUBY_SO_NAME).dll
191 LIBRUBY       = $(RUBY_SO_NAME).lib
192 LIBRUBYARG    = $(LIBRUBY)
193 THREAD_MODEL  = win32
195 PREP          = miniruby$(EXEEXT)
197 OBJEXT        = obj
198 ASMEXT        = asm
200 INSTALLED_LIST= .installed.list
202 WINMAINOBJ    = winmain.$(OBJEXT)
203 ARCHMINIOBJS  = dmydln.$(OBJEXT)
205 arch_hdrdir = $(EXTOUT)/include/$(arch)
206 hdrdir = $(srcdir)/include
207 VPATH = $(arch_hdrdir)/ruby;$(hdrdir)/ruby;$(srcdir);$(srcdir)/enc;$(srcdir)/missing;$(srcdir)/win32
209 .path.c = .;$(srcdir);$(srcdir)/enc;$(srcdir)/win32;$(srcdir)/missing
210 .path.ci = $(srcdir)
211 .path.inc = .;$(srcdir)
212 .path.def = .;$(srcdir)
213 .path.h = .;$(arch_hdrdir)/ruby;$(hdrdir)/ruby;$(srcdir);$(srcdir)/win32;$(srcdir)/missing
214 .path.y = $(srcdir)
215 .path. = $(srcdir)
217 .c.obj:
218         $(CC) $(CFLAGS) $(XCFLAGS) -I. $(CPPFLAGS) $(COUTFLAG)$@ -c $(<:/=\)
220 .c.asm:
221         $(CC) $(CFLAGS) $(XCFLAGS) -I. $(CPPFLAGS) $(COUTFLAG)$@ -S $(<:\=/)
223 .rc.res:
224         $(RC) $(RFLAGS) -I. -I$(<D). $(iconinc) -I$(srcdir)/win32 $(RFLAGS) -fo$@ $(<:/=\)
226 all: $(srcdir)/bcc32/Makefile.sub $(srcdir)/common.mk
228 ruby: $(PROGRAM)
229 rubyw: $(WPROGRAM)
231 !include $(srcdir)/common.mk
233 $(MKFILES): $(srcdir)/bcc32/Makefile.sub $(srcdir)/bcc32/configure.bat $(srcdir)/bcc32/setup.mak
234         $(COMSPEC) /C $(srcdir:/=\)\bcc32\configure.bat $(configure_args)
235         @echo $(MKFILES) should be updated, re-run $(MAKE).
236         @$(MAKE) > nul -q -f &&|
237 PHONY: nul
238         @exit
241 PHONY: nul
243 RUBY_CONFIG_H = $(arch_hdrdir)/ruby/config.h
244 CONFIG_H = ./.config.h.time
246 config: config.status
248 config.status: $(CONFIG_H)
250 $(CONFIG_H): $(MKFILES) $(srcdir)/bcc32/Makefile.sub
251         @if not exist $(arch_hdrdir:/=\) md $(arch_hdrdir:/=\)
252         @if not exist $(arch_hdrdir:/=\)\ruby md $(arch_hdrdir:/=\)\ruby
253         @$(IFCHANGE) $(RUBY_CONFIG_H:/=\) &&|
254 \#define NO_BIG_INLINE 1
255 \#define HAVE_SYS_TYPES_H 1
256 \#define HAVE_SYS_STAT_H 1
257 \#define HAVE_STDLIB_H 1
258 \#define HAVE_STRING_H 1
259 \#define HAVE_MEMORY_H 1
260 \#define HAVE_LONG_LONG 1
261 \#define HAVE_OFF_T 1
262 \#define SIZEOF_INT 4
263 \#define SIZEOF_SHORT 2
264 \#define SIZEOF_LONG 4
265 \#define SIZEOF_LONG_LONG 0
266 \#define SIZEOF___INT64 8
267 \#define SIZEOF_OFF_T 8
268 \#define SIZEOF_VOIDP 4
269 \#define SIZEOF_FLOAT 4
270 \#define SIZEOF_DOUBLE 8
271 \#define SIZEOF_TIME_T 4
272 \#define SIZEOF_RLIM_T 0
273 \#define SIZEOF_SIZE_T 4
274 \#define SIZEOF_PTRDIFF_T 4
275 \#define HAVE_PROTOTYPES 1
276 \#define TOKEN_PASTE(x,y) x\#\#y
277 \#define HAVE_STDARG_PROTOTYPES 1
278 \#define NORETURN(x) x
279 \#define RUBY_EXTERN extern __declspec(dllimport)
280 \#define HAVE_DECL_SYS_NERR 1
281 \#define HAVE_LIMITS_H 1
282 \#define HAVE_FCNTL_H 1
283 \#define HAVE_UTIME_H 1
284 \#define HAVE_FLOAT_H 1
285 \#define rb_uid_t uid_t
286 \#define rb_gid_t gid_t
287 \#define rb_pid_t int
288 \#define HAVE_STRUCT_STAT_ST_RDEV 1
289 \#define HAVE_ST_RDEV 1
290 !if $(BORLANDC) < 0x0580
291 \#define int8_t signed char
292 \#define uint8_t unsigned char
293 \#define int16_t short
294 \#define uint16_t unsigned short
295 \#define int32_t int
296 \#define uint32_t unsigned int
297 \#define int64_t __int64
298 \#define uint64_t unsigned __int64
299 \#define ssize_t int
300 !endif
301 \#define HAVE_UINT8_T 1
302 \#define HAVE_INT16_T 1
303 \#define HAVE_UINT16_T 1
304 \#define HAVE_INT32_T 1
305 \#define HAVE_UINT32_T 1
306 \#define HAVE_INT64_T HAVE_LONG_LONG
307 \#define HAVE_UINT64_T HAVE_LONG_LONG
308 \#define HAVE_INTPTR_T 1
309 \#define HAVE_UINTPTR_T 1
310 \#define HAVE_SSIZE_T 1
311 \#define GETGROUPS_T int
312 \#define RETSIGTYPE void
313 \#define HAVE_ALLOCA 1
314 \#define HAVE_DUP2 1
315 \#define HAVE_MEMMOVE 1
316 \#define HAVE_MKDIR 1
317 \#define HAVE_STRCASECMP 1
318 \#define HAVE_STRNCASECMP 1
319 \#define HAVE_STRERROR 1
320 \#define HAVE_STRFTIME 1
321 \#define HAVE_STRCHR 1
322 \#define HAVE_STRSTR 1
323 \#define HAVE_STRTOD 1
324 \#define HAVE_STRTOL 1
325 \#define HAVE_STRTOUL 1
326 \#define HAVE_SNPRINTF 1
327 \#define HAVE_VSNPRINTF 1
328 \#define HAVE_ISNAN 1
329 \#define HAVE_FINITE 1
330 \#define HAVE_HYPOT 1
331 \#define HAVE_FMOD 1
332 \#define HAVE_WAITPID 1
333 \#define HAVE_FSYNC 1
334 \#define HAVE_GETCWD 1
335 \#define HAVE_TRUNCATE 1
336 \#define HAVE_FTRUNCATE 1
337 \#define HAVE_FSEEKO 1
338 \#define HAVE_FTELLO 1
339 \#define HAVE_TIMES 1
340 \#define HAVE_FCNTL 1
341 \#define HAVE_LINK 1
342 \#define HAVE_TELLDIR 1
343 \#define HAVE_SEEKDIR 1
344 \#define HAVE_COSH 1
345 \#define HAVE_SINH 1
346 \#define HAVE_TANH 1
347 \#define RSHIFT(x,y) ((x)>>(int)y)
348 \#define FILE_COUNT level
349 \#define FILE_READPTR curp
350 \#define RUBY_SETJMP(env) setjmp(env)
351 \#define RUBY_LONGJMP(env,val) longjmp(env,val)
352 \#define RUBY_JMP_BUF jmp_buf
353 \#define inline __inline
354 \#define NEED_IO_SEEK_BETWEEN_RW 1
355 \#define STACK_GROW_DIRECTION -1
356 \#define DEFAULT_KCODE KCODE_NONE
357 \#define DLEXT ".so"
358 \#define RUBY_LIB "/lib/ruby/$(MAJOR).$(MINOR).$(TEENY)"
359 \#define RUBY_SITE_LIB "/lib/ruby/site_ruby"
360 \#define RUBY_SITE_LIB2 "/lib/ruby/site_ruby/$(MAJOR).$(MINOR).$(TEENY)"
361 \#define RUBY_VENDOR_LIB "/lib/ruby/vendor_ruby"
362 \#define RUBY_VENDOR_LIB2 "/lib/ruby/vendor_ruby/$(MAJOR).$(MINOR).$(TEENY)"
363 \#define RUBY_PLATFORM "$(ARCH)-$(OS)"
364 \#define RUBY_ARCHLIB "/lib/ruby/$(MAJOR).$(MINOR).$(TEENY)/$(ARCH)-$(OS)"
365 \#define RUBY_SITE_ARCHLIB "/lib/ruby/site_ruby/$(MAJOR).$(MINOR).$(TEENY)/$(ARCH)-$(OS)"
366 \#define RUBY_VENDOR_ARCHLIB "/lib/ruby/vendor_ruby/$(MAJOR).$(MINOR).$(TEENY)/$(ARCH)-$(OS)"
368         @exit > $(@:/=\)
370 config.status: $(MKFILES) $(srcdir)/bcc32/Makefile.sub $(srcdir)/common.mk
371         @echo Creating $@
372         @type > $@ &&|
373 # Generated automatically by Makefile.sub.
374 s,@SHELL@,$$(COMSPEC),;t t
375 s,@BUILD_FILE_SEPARATOR@,\,;t t
376 s,@PATH_SEPARATOR@,;,;t t
377 s,@CFLAGS@,$(CFLAGS),;t t
378 s,@DEFS@,$(DEFS),;t t
379 s,@CPPFLAGS@,$(CPPFLAGS),;t t
380 s,@CXXFLAGS@,$(CXXFLAGS),;t t
381 s,@FFLAGS@,$(FFLAGS),;t t
382 s,@LDFLAGS@,,;t t
383 s,@LIBS@,$(LIBS),;t t
384 s,@exec_prefix@,$${prefix},;t t
385 s,@prefix@,$(prefix),;t t
386 s,@program_transform_name@,s,,,,;t t
387 s,@bindir@,$${exec_prefix}/bin,;t t
388 s,@sbindir@,$${exec_prefix}/sbin,;t t
389 s,@libexecdir@,$${exec_prefix}/libexec,;t t
390 s,@datadir@,$${prefix}/share,;t t
391 s,@sysconfdir@,$${prefix}/etc,;t t
392 s,@sharedstatedir@,/etc,;t t
393 s,@localstatedir@,/var,;t t
394 s,@libdir@,$${exec_prefix}/lib,;t t
395 s,@includedir@,$${prefix}/include,;t t
396 s,@oldincludedir@,/usr/include,;t t
397 s,@infodir@,$${prefix}/info,;t t
398 s,@mandir@,$${prefix}/man,;t t
399 s,@build@,$(CPU)-pc-$(OS),;t t
400 s,@build_alias@,$(CPU)-$(OS),;t t
401 s,@build_cpu@,$(CPU),;t t
402 s,@build_vendor@,pc,;t t
403 s,@build_os@,$(OS),;t t
404 s,@host@,$(CPU)-pc-$(OS),;t t
405 s,@host_alias@,$(CPU)-$(OS),;t t
406 s,@host_cpu@,$(CPU),;t t
407 s,@host_vendor@,pc,;t t
408 s,@host_os@,$(OS),;t t
409 s,@target@,$(ARCH)-pc-$(OS),;t t
410 s,@target_alias@,$(ARCH)-$(OS),;t t
411 s,@target_cpu@,$(ARCH),;t t
412 s,@target_vendor@,pc,;t t
413 s,@target_os@,$(OS),;t t
414 s,@CC@,$(CC),;t t
415 s,@CPP@,cpp32,;t t
416 s,@CXX@,$$(CC),;t t
417 s,@LD@,$(LD),;t t
418 s,@YACC@,$(YACC),;t t
419 s,@RANLIB@,,;t t
420 s,@AR@,$(AR),;t t
421 s,@ARFLAGS@,$(ARFLAGS) ,;t t
422 s,@LN_S@,$(LN_S),;t t
423 s,@SET_MAKE@,MFLAGS = -$$(MAKEFLAGS),;t t
424 s,@RM@,$$(top_srcdir:/=\)\win32\rm.bat,;t t
425 s,@CP@,copy > nul,;t t
426 s,@LIBOBJS@, $(MISSING),;t t
427 s,@ALLOCA@,$(ALLOCA),;t t
428 s,@DEFAULT_KCODE@,$(DEFAULT_KCODE),;t t
429 s,@EXEEXT@,.exe,;t t
430 s,@OBJEXT@,obj,;t t
431 s,@XCFLAGS@,$(XCFLAGS),;t t
432 s,@XLDFLAGS@,$(XLDFLAGS),;t t
433 s,@DLDFLAGS@,$(DLDFLAGS),;t t
434 s,@ARCH_FLAG@,$(ARCH_FLAG),;t t
435 s,@STATIC@,$(STATIC),;t t
436 s,@CCDLFLAGS@,,;t t
437 s,@LDSHARED@,$(LDSHARED),;t t
438 s,@DLEXT@,so,;t t
439 s,@LIBEXT@,lib,;t t
440 s,@STRIP@,$(STRIP),;t t
441 s,@EXTSTATIC@,$(EXTSTATIC),;t t
442 s,@setup@,Setup,;t t
443 s,@MINIRUBY@,$(MINIRUBY),;t t
444 s,@PREP@,miniruby$(EXEEXT),;t t
445 s,@RUNRUBY@,$(RUNRUBY),;t t
446 s,@EXTOUT@,$(EXTOUT),;t t
447 s,@ARCHFILE@,,;t t
448 s,@RDOCTARGET@,,;t t
449 s,@LIBRUBY_LDSHARED@,$$(LDSHARED),;t t
450 s,@LIBRUBY_DLDFLAGS@,-Gi $$(DLDFLAGS),;t t
451 s,@RUBY_INSTALL_NAME@,$(RUBY_INSTALL_NAME),;t t
452 s,@rubyw_install_name@,$(RUBYW_INSTALL_NAME),;t t
453 s,@RUBYW_INSTALL_NAME@,$(RUBYW_INSTALL_NAME),;t t
454 s,@RUBY_SO_NAME@,$(RUBY_SO_NAME),;t t
455 s,@LIBRUBY_A@,$$(RUBY_SO_NAME)-static.lib,;t t
456 s,@LIBRUBY_SO@,$$(RUBY_SO_NAME).dll,;t t
457 s,@LIBRUBY_ALIASES@,$(LIBRUBY_ALIASES),;t t
458 s,@LIBRUBY@,$$(RUBY_SO_NAME).lib,;t t
459 s,@LIBRUBYARG@,$$(LIBRUBYARG_SHARED),;t t
460 s,@LIBRUBYARG_STATIC@,$$(LIBRUBY_A),;t t
461 s,@LIBRUBYARG_SHARED@,$$(LIBRUBY),;t t
462 s,@SOLIBS@,$(SOLIBS),;t t
463 s,@DLDLIBS@,$(DLDLIBS),;t t
464 s,@ENABLE_SHARED@,yes,;t t
465 s,@OUTFLAG@,$(OUTFLAG),;t t
466 s,@COUTFLAG@,$(COUTFLAG),;t t
467 s,@CPPOUTFILE@,,;t t
468 s,@LIBPATHFLAG@, -L"%s",;t t
469 s,@RPATHFLAG@,,;t t
470 s,@LIBARG@,%s.lib,;t t
471 s,@LINK_SO@,$$(LDSHARED) $$(DLDFLAGS) $$(LIBPATH) $$(OBJS:/=\), $$(@:/=\), nul, $$(LIBS) $$(LOCAL_LIBS), $$(DEFFILE:/=\), $$(RESFILE:/=\),;t t
472 s,@COMPILE_C@,$$(CC) $$(INCFLAGS) $$(CFLAGS) $$(CPPFLAGS) $(COUTFLAG)$$(@) -c $$(<:/=\),;t t
473 s,@COMPILE_CXX@,$$(CXX) $$(INCFLAGS) $$(CXXFLAGS) $$(CPPFLAGS) -P $(COUTFLAG)$$(@) -c $$(<:/=\),;t t
474 s,@COMPILE_RULES@,{$$(srcdir)}.%s{}.%s: {$$(topdir)}.%s{}.%s: {$$(hdrdir)}.%s{}.%s: .%s.%s:,;t t
475 s,@RULE_SUBST@,{.;$$(VPATH)}%s,;t t
476 s,@COMMON_LIBS@,m advapi32 avicap32 avifil32 cap comctl32 comdlg32 dlcapi gdi32 glu32 imagehlp imm32 inetmib1 kernel32 loadperf lsapi32 lz32 mapi32 mgmtapi mpr msacm32 msvfw32 nddeapi netapi32 ole32 oleaut32 oledlg olepro32 opengl32 pdh pkpd32 rasapi32 rasdlg rassapi rpcrt4 setupapi shell32 shfolder snmpapi sporder tapi32 url user32 vdmdbg version win32spl winmm wintrust wsock32,;t t
477 s,@COMMON_MACROS@,WIN32_LEAN_AND_MEAN WIN32,;t t
478 s,@COMMON_HEADERS@,winsock2.h windows.h,;t t
479 s,@cleanlibs@,$$*.tds,;t t
480 s,@cleanobjs@,$$*-$$(arch).def $$*.il? $$*.lib,;t t
481 s,@TRY_LINK@,$$(CC) -oconftest $$(INCFLAGS) -I$$(hdrdir) $$(CPPFLAGS) $$(CFLAGS) $$(LIBPATH) $$(LDFLAGS) $$(src) $$(LOCAL_LIBS) $$(LIBS),;t t
482 s,@EXPORT_PREFIX@,_,;t t
483 s,@arch@,$(ARCH)-$(OS),;t t
484 s,@sitearch@,$(ARCH)-$(OS),;t t
485 s,@sitedir@,$${prefix}/lib/ruby/site_ruby,;t t
486 s,@vendordir@,$${prefix}/lib/ruby/vendor_ruby,;t t
487 s,@rubyhdrdir@,$$(includedir)/ruby-$$(MAJOR).$$(MINOR).$$(TEENY),;t t
488 s,@sitehdrdir@,$$(rubyhdrdir)/site_ruby,;t t
489 s,@vendorhdrdir@,$$(rubyhdrdir)/vendor_ruby,;t t
490 s,@configure_args@,--enable-shared $(configure_args),;t t
491 s,@configure_input@,$$configure_input,;t t
492 s,@srcdir@,$(srcdir),;t t
493 s,@top_srcdir@,$(srcdir),;t t
496 miniruby$(EXEEXT):
497                 @echo $(LIBS)
498                 $(LD) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) $(MINIOBJS) $(COMMONOBJS:/=\) $(DMYEXT),$@,nul,$(LIBS)
500 $(PROGRAM):     $(MAINOBJ) $(LIBRUBY_SO) $(RUBY_INSTALL_NAME).res
501                 $(LD) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ),$@,nul,$(LIBRUBYARG) $(LIBS),,$(RUBY_INSTALL_NAME).res
503 $(WPROGRAM):    $(MAINOBJ) $(WINMAINOBJ) $(LIBRUBY_SO) $(RUBYW_INSTALL_NAME).res
504                 $(LD) $(LDFLAGS) $(WLDFLAGS) $(MAINOBJ) $(WINMAINOBJ),$@,nul,$(LIBRUBYARG) $(LIBS),,$(RUBYW_INSTALL_NAME).res
506 $(LIBRUBY_A):   $(OBJS) $(DMYEXT)
507                 @-if exist $@ del $@
508                 $(AR) $(ARFLAGS) "$@" $(OBJS) $(DMYEXT)
510 # $(LIBRUBY):   $(LIBRUBY_SO)
511 #               implib $@ $(LIBRUBY_SO)
513 $(LIBRUBY_SO): $(LIBRUBY_A) $(DLDOBJS) $(RUBYDEF) $(RUBY_SO_NAME).res
514                 @echo $(DLDOBJS)
515                 @$(PRE_LIBRUBY_UPDATE)
516                 $(LIBRUBY_LDSHARED) $(LIBRUBY_DLDFLAGS) $(DLDOBJS:/=\),$(LIBRUBY_SO),nul,$(LIBRUBY_A) $(LIBS),$(RUBYDEF),$(RUBY_SO_NAME).res
518 $(LIBRUBY): $(LIBRUBY_SO)
520 $(RUBYDEF):     $(LIBRUBY_A) $(PREP)
521                 $(MINIRUBY) $(srcdir)/bcc32/mkexports.rb -output=$@ -base=$(RUBY_SO_NAME) $(LIBRUBY_A)
523 $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc: rbconfig.rb $(srcdir)/revision.h $(srcdir)/win32/resource.rb
524                 @$(MINIRUBY) $(srcdir)/win32/resource.rb \
525                         -ruby_name=$(RUBY_INSTALL_NAME) \
526                         -rubyw_name=$(RUBYW_INSTALL_NAME) \
527                         -so_name=$(RUBY_SO_NAME) \
528                         . $(icondirs) $(srcdir)/win32
530 lex.c: {$(srcdir)}lex.c.blt
531         copy "$(?:/=\)" $@
533 post-install-bin::
534         @$(NULLCMD)
535 post-install-lib::
536         @$(NULLCMD)
537 post-install-ext-comm::
538         @$(NULLCMD)
539 post-install-ext-arch::
540         @$(NULLCMD)
541 post-install-man::
542         @$(NULLCMD)
543 post-install-doc::
544         @$(NULLCMD)
546 clean-local::
547                 @$(RM) $(WINMAINOBJ) ext\extinit.c ext\extinit.$(OBJEXT) *.tds *.il? $(RUBY_SO_NAME).lib
548                 @$(RM) $(RUBY_INSTALL_NAME).res $(RUBYW_INSTALL_NAME).res $(RUBY_SO_NAME).res
549                 @$(RM) *.map *.pdb *.ilk *.exp $(RUBYDEF) ext\ripper\y.output
551 distclean-local::
552                 @$(RM) ext\config.cache $(RBCONFIG:/=\)
553                 @$(RM) $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc
555 clean-ext distclean-ext realclean-ext::
556                 @for /R ext %I in (.) do @if exist %I\Makefile ( \
557                     echo $(@:-ext=)ing %~nI & \
558                     cd %I & \
559                     $(MAKE) $(MFLAGS) $(@:-ext=) & \
560                     cd %CD% \
561                 )
563 ext/extinit.obj: ext/extinit.c $(SETUP)
564         $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c ext/extinit.c
566 main.$(OBJEXT): win32.h
567 ascii.$(OBJEXT): win32.h
568 array.$(OBJEXT): win32.h
569 bignum.$(OBJEXT): win32.h
570 class.$(OBJEXT): win32.h
571 compar.$(OBJEXT): win32.h
572 dir.$(OBJEXT): dir.h win32.h
573 dln.$(OBJEXT): win32.h
574 enum.$(OBJEXT): win32.h
575 error.$(OBJEXT): win32.h
576 euc_jp.$(OBJEXT): win32.h
577 eval.$(OBJEXT): win32.h
578 file.$(OBJEXT): win32.h
579 gc.$(OBJEXT): win32.h
580 hash.$(OBJEXT): win32.h
581 inits.$(OBJEXT): win32.h
582 io.$(OBJEXT): win32.h
583 marshal.$(OBJEXT): win32.h
584 math.$(OBJEXT): win32.h
585 numeric.$(OBJEXT): win32.h
586 object.$(OBJEXT): win32.h
587 pack.$(OBJEXT): win32.h
588 parse.$(OBJEXT): win32.h
589 process.$(OBJEXT): win32.h
590 prec.$(OBJEXT): win32.h
591 random.$(OBJEXT): win32.h
592 range.$(OBJEXT): win32.h
593 re.$(OBJEXT): win32.h
594 regcomp.$(OBJEXT): win32.h
595 regenc.$(OBJEXT): win32.h
596 regerror.$(OBJEXT): win32.h
597 regexec.$(OBJEXT): win32.h
598 reggnu.$(OBJEXT): win32.h
599 regparse.$(OBJEXT): win32.h
600 ruby.$(OBJEXT): win32.h
601 signal.$(OBJEXT): win32.h
602 sjis.$(OBJEXT): win32.h
603 sprintf.$(OBJEXT): win32.h
604 st.$(OBJEXT): win32.h
605 string.$(OBJEXT): win32.h
606 struct.$(OBJEXT): win32.h
607 time.$(OBJEXT): win32.h
608 utf_8.$(OBJEXT): win32.h
609 util.$(OBJEXT): win32.h
610 variable.$(OBJEXT): win32.h
611 version.$(OBJEXT): win32.h