summaryrefslogtreecommitdiffstats
path: root/fluent-bit/lib/onigmo/win32/Makefile
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--fluent-bit/lib/onigmo/win32/Makefile316
-rw-r--r--fluent-bit/lib/onigmo/win32/Makefile.mingw252
2 files changed, 568 insertions, 0 deletions
diff --git a/fluent-bit/lib/onigmo/win32/Makefile b/fluent-bit/lib/onigmo/win32/Makefile
new file mode 100644
index 00000000..23cecc1d
--- /dev/null
+++ b/fluent-bit/lib/onigmo/win32/Makefile
@@ -0,0 +1,316 @@
+# Onigmo Makefile for Win32
+
+product_name = onigmo
+
+# Comment out the next line, if you don't want to use LTCG.
+USE_LTCG = 1
+
+# Comment out the next line, if you don't want to use multiprocess build.
+USE_MP = 1
+
+# Enable the next line, if you want to enable .pdb file on release build.
+#ENABLE_PDB = 1
+
+# Enable the next line, if you want to use a .def file.
+#DEFFILE = onigmo.def
+
+
+# Set ARCH. "x64" or "x86".
+!ifndef ARCH
+!if ("$(CPU)"=="AMD64" && !DEFINED(386)) || "$(TARGET_CPU)"=="x64" || DEFINED(AMD64) || "$(PLATFORM)"=="x64" || "$(PLATFORM)"=="X64"
+ARCH = x64
+!else
+ARCH = x86
+!endif
+!endif
+
+
+CPPFLAGS =
+CFLAGS = -O2 -nologo -W3
+LDFLAGS =
+LOADLIBES =
+ARLIB = lib
+ARLIB_FLAGS = -nologo
+ARDLL = cl
+ARDLL_FLAGS = -nologo -LD $(LINKFLAGS) -dll
+LINKFLAGS = -link -incremental:no
+
+INSTALL = install -c
+CP = copy
+RMDIR = rd /s/q
+CC = cl
+RC = rc
+DEFS = -DHAVE_CONFIG_H -DEXPORT
+
+!if "$(ARCH)"=="x86"
+PYTHON = py -3-32
+!else
+PYTHON = py -3
+!endif
+
+!ifdef DEBUG
+DBGFLG = d
+!else
+DBGFLG =
+!endif
+
+WORKDIR = build_$(ARCH)$(DBGFLG)
+
+# Get the version of cl.exe.
+# 1. Write the version to a work file (mscver$(_NMAKE_VER).~).
+!if ![(echo _MSC_VER>mscver$(_NMAKE_VER).c) && \
+ (for /f %I in ('"$(CC) /EP mscver$(_NMAKE_VER).c 2>nul"') do @echo _MSC_VER=%I> mscver$(_NMAKE_VER).~)]
+# 2. Include it.
+!include mscver$(_NMAKE_VER).~
+# 3. Clean up.
+!if [del mscver$(_NMAKE_VER).~ mscver$(_NMAKE_VER).c]
+!endif
+!endif
+
+!if DEFINED(USE_MP) && $(_MSC_VER) >= 1600
+# Enable multiprocess build on VC2010+.
+CFLAGS = $(CFLAGS) -MP
+!endif
+
+!ifdef DEBUG
+
+# Debug Build
+
+# Enable debug information.
+CFLAGS = $(CFLAGS) -Zi -DDEBUG=1 -D_DEBUG=1 -MTd
+# Debug flags. (see regint.h)
+#CFLAGS = $(CFLAGS) -DONIG_DEBUG_PARSE_TREE -DONIG_DEBUG_COMPILE -DONIG_DEBUG_SEARCH -DONIG_DEBUG_MATCH -DONIG_DONT_OPTIMIZE
+ARDLL_FLAGS = -MTd $(ARDLL_FLAGS) -debug
+
+!else # DEBUG
+
+# Release Build
+
+!if DEFINED(USE_LTCG) && $(_MSC_VER) >= 1300
+# Use LTCG (Link Time Code Generation) on VC++ 7.0 or later.
+CFLAGS = $(CFLAGS) -GL
+ARLIB_FLAGS = $(ARLIB_FLAGS) -LTCG
+ARDLL_FLAGS = $(ARDLL_FLAGS) -LTCG
+!endif
+!ifdef ENABLE_PDB
+CFLAGS = $(CFLAGS) -Zi
+ARDLL_FLAGS = $(ARDLL_FLAGS) -debug -PDBALTPATH:%%_PDB%%
+!endif
+
+!endif # DEBUG
+
+!ifdef DEFFILE
+# Use a .def file to export APIs.
+CFLAGS = $(CFLAGS) -DONIG_EXTERN=extern
+ARDLL_FLAGS = $(ARDLL_FLAGS) -def:$(DEFFILE)
+!endif
+
+subdirs =
+
+libbase = onigmo
+libname = $(WORKDIR)\$(libbase)_s.lib
+dllname = $(WORKDIR)\$(libbase).dll
+dlllib = $(WORKDIR)\$(libbase).lib
+
+onigheaders = onigmo.h regint.h regparse.h regenc.h st.h
+posixheaders = onigmoposix.h
+headers = $(posixheaders) $(onigheaders)
+
+onigobjs = $(WORKDIR)\reggnu.obj $(WORKDIR)\regerror.obj \
+ $(WORKDIR)\regparse.obj $(WORKDIR)\regext.obj \
+ $(WORKDIR)\regcomp.obj $(WORKDIR)\regexec.obj \
+ $(WORKDIR)\regenc.obj $(WORKDIR)\regsyntax.obj \
+ $(WORKDIR)\regtrav.obj $(WORKDIR)\regversion.obj \
+ $(WORKDIR)\st.obj
+posixobjs = $(WORKDIR)\regposix.obj $(WORKDIR)\regposerr.obj
+libobjs = $(onigobjs) $(posixobjs)
+
+jp_objs = $(WORKDIR)\euc_jp.obj $(WORKDIR)\shift_jis.obj \
+ $(WORKDIR)\windows_31j.obj
+
+iso_8859_objs = $(WORKDIR)\iso_8859_1.obj $(WORKDIR)\iso_8859_2.obj \
+ $(WORKDIR)\iso_8859_3.obj $(WORKDIR)\iso_8859_4.obj \
+ $(WORKDIR)\iso_8859_5.obj $(WORKDIR)\iso_8859_6.obj \
+ $(WORKDIR)\iso_8859_7.obj $(WORKDIR)\iso_8859_8.obj \
+ $(WORKDIR)\iso_8859_9.obj $(WORKDIR)\iso_8859_10.obj \
+ $(WORKDIR)\iso_8859_11.obj $(WORKDIR)\iso_8859_13.obj \
+ $(WORKDIR)\iso_8859_14.obj $(WORKDIR)\iso_8859_15.obj \
+ $(WORKDIR)\iso_8859_16.obj
+
+encobjs = $(WORKDIR)\ascii.obj $(WORKDIR)\utf_8.obj \
+ $(WORKDIR)\unicode.obj \
+ $(WORKDIR)\utf_16be.obj $(WORKDIR)\utf_16le.obj \
+ $(WORKDIR)\utf_32be.obj $(WORKDIR)\utf_32le.obj \
+ $(jp_objs) $(iso_8859_objs) \
+ $(WORKDIR)\euc_tw.obj $(WORKDIR)\euc_kr.obj $(WORKDIR)\big5.obj \
+ $(WORKDIR)\gb18030.obj \
+ $(WORKDIR)\koi8_r.obj $(WORKDIR)\koi8_u.obj \
+ $(WORKDIR)\windows_1250.obj $(WORKDIR)\windows_1251.obj \
+ $(WORKDIR)\windows_1252.obj $(WORKDIR)\windows_1253.obj \
+ $(WORKDIR)\windows_1254.obj $(WORKDIR)\windows_1257.obj
+
+resobj = $(WORKDIR)\onigmo.res
+
+onigsources = regerror.c regparse.c regext.c regcomp.c regexec.c regenc.c \
+ regsyntax.c regtrav.c regversion.c reggnu.c st.c
+posixsources = regposix.c regposerr.c
+libsources = $(posixsources) $(onigsources)
+
+encdir = enc
+distfiles = README COPYING HISTORY \
+ Makefile.in configure.in config.h.in configure \
+ $(headers) $(libsources) \
+ test.rb testconv.rb
+testc = testc
+testcu = testu
+testp = testp
+
+makeargs = $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' CFLAGS='$(CFLAGS)' CC='$(CC)'
+
+.SUFFIXES:
+.SUFFIXES: .obj .c .h .ps .dvi .info .texinfo .res .rc
+
+!ifdef NOBatch
+.c{$(WORKDIR)\}.obj:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) /Iwin32 /I. /I.. /I$(encdir)\unicode /Fo$@ /c $<
+!else
+# batch-mode inference rules
+.c{$(WORKDIR)\}.obj::
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) /Iwin32 /I. /Fo$(WORKDIR)\ /c $<
+{$(encdir)\}.c{$(WORKDIR)\}.obj::
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) /Iwin32 /I. /I$(encdir)\unicode /Fo$(WORKDIR)\ /c $<
+!endif
+
+{win32\}.rc{$(WORKDIR)}.res:
+ $(RC) /Fo$@ $<
+
+# targets
+default: all
+
+setup:
+
+
+all: lib dll
+
+lib: $(libname)
+dll: $(dllname)
+
+$(libname): $(WORKDIR) $(libobjs) $(encobjs)
+ $(ARLIB) $(ARLIB_FLAGS) -out:$@ $(libobjs) $(encobjs)
+
+$(dllname): $(WORKDIR) $(libobjs) $(encobjs) $(resobj) $(DEFFILE)
+ $(ARDLL) $(libobjs) $(encobjs) $(resobj) -Fe$@ $(ARDLL_FLAGS)
+
+$(WORKDIR):
+ -mkdir $(WORKDIR)
+
+$(WORKDIR)\regparse.obj: regparse.c $(onigheaders) win32\config.h st.h
+$(WORKDIR)\regext.obj: regext.c $(onigheaders) win32\config.h
+$(WORKDIR)\regtrav.obj: regtrav.c $(onigheaders) win32\config.h
+$(WORKDIR)\regcomp.obj: regcomp.c $(onigheaders) win32\config.h
+$(WORKDIR)\regexec.obj: regexec.c regint.h regenc.h onigmo.h win32\config.h
+$(WORKDIR)\reggnu.obj: reggnu.c regint.h regenc.h onigmo.h win32\config.h onigmognu.h
+$(WORKDIR)\regerror.obj: regerror.c regint.h regenc.h onigmo.h win32\config.h
+$(WORKDIR)\regenc.obj: regenc.c regint.h regenc.h onigmo.h win32\config.h
+$(WORKDIR)\regsyntax.obj: regsyntax.c regint.h regenc.h onigmo.h win32\config.h
+$(WORKDIR)\regversion.obj: regversion.c onigmo.h win32\config.h
+$(WORKDIR)\regposix.obj: regposix.c $(posixheaders) onigmo.h win32\config.h
+$(WORKDIR)\regposerr.obj: regposerr.c $(posixheaders) win32\config.h
+$(WORKDIR)\st.obj: st.c regint.h onigmo.h win32\config.h st.h
+
+$(WORKDIR)\ascii.obj: $(encdir)\ascii.c regenc.h win32\config.h
+$(WORKDIR)\unicode.obj: $(encdir)\unicode.c regint.h regenc.h win32\config.h $(encdir)\unicode\casefold.h $(encdir)\unicode\name2ctype.h
+$(WORKDIR)\utf_8.obj: $(encdir)\utf_8.c regenc.h win32\config.h
+$(WORKDIR)\utf_16be.obj: $(encdir)\utf_16be.c regenc.h win32\config.h
+$(WORKDIR)\utf_16le.obj: $(encdir)\utf_16le.c regenc.h win32\config.h
+$(WORKDIR)\utf_32be.obj: $(encdir)\utf_32be.c regenc.h win32\config.h
+$(WORKDIR)\utf_32le.obj: $(encdir)\utf_32le.c regenc.h win32\config.h
+$(WORKDIR)\euc_jp.obj: $(encdir)\euc_jp.c regenc.h win32\config.h $(encdir)\jis\props.h
+$(WORKDIR)\euc_tw.obj: $(encdir)\euc_tw.c regenc.h win32\config.h
+$(WORKDIR)\euc_kr.obj: $(encdir)\euc_kr.c regenc.h win32\config.h
+$(WORKDIR)\shift_jis.obj: $(encdir)\shift_jis.c $(encdir)\shift_jis.h regenc.h win32\config.h $(encdir)\jis\props.h
+$(WORKDIR)\windows_31j.obj: $(encdir)\windows_31j.c $(encdir)\shift_jis.h regenc.h win32\config.h $(encdir)\jis\props.h
+$(WORKDIR)\iso_8859_1.obj: $(encdir)\iso_8859_1.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_2.obj: $(encdir)\iso_8859_2.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_3.obj: $(encdir)\iso_8859_3.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_4.obj: $(encdir)\iso_8859_4.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_5.obj: $(encdir)\iso_8859_5.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_6.obj: $(encdir)\iso_8859_6.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_7.obj: $(encdir)\iso_8859_7.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_8.obj: $(encdir)\iso_8859_8.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_9.obj: $(encdir)\iso_8859_9.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_10.obj: $(encdir)\iso_8859_10.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_11.obj: $(encdir)\iso_8859_11.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_13.obj: $(encdir)\iso_8859_13.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_14.obj: $(encdir)\iso_8859_14.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_15.obj: $(encdir)\iso_8859_15.c regenc.h win32\config.h
+$(WORKDIR)\iso_8859_16.obj: $(encdir)\iso_8859_16.c regenc.h win32\config.h
+#$(WORKDIR)\koi8.obj: $(encdir)\koi8.c regenc.h win32\config.h
+$(WORKDIR)\koi8_r.obj: $(encdir)\koi8_r.c regenc.h win32\config.h
+$(WORKDIR)\koi8_u.obj: $(encdir)\koi8_u.c regenc.h win32\config.h
+$(WORKDIR)\windows_1250.obj: $(encdir)\windows_1250.c regenc.h win32\config.h
+$(WORKDIR)\windows_1251.obj: $(encdir)\windows_1251.c regenc.h win32\config.h
+$(WORKDIR)\windows_1252.obj: $(encdir)\windows_1252.c regenc.h win32\config.h
+$(WORKDIR)\windows_1253.obj: $(encdir)\windows_1253.c regenc.h win32\config.h
+$(WORKDIR)\windows_1254.obj: $(encdir)\windows_1254.c regenc.h win32\config.h
+$(WORKDIR)\windows_1257.obj: $(encdir)\windows_1257.c regenc.h win32\config.h
+$(WORKDIR)\big5.obj: $(encdir)\big5.c regenc.h win32\config.h
+$(WORKDIR)\gb18030.obj: $(encdir)\gb18030.c regenc.h win32\config.h
+
+$(WORKDIR)\onigmo.res: win32\onigmo.rc onigmo.h
+
+
+# Tests
+test: all ctest utest ptest pytest
+
+# C library test
+ctest: $(WORKDIR)\$(testc).exe
+ $(WORKDIR)\$(testc)
+
+# C library test (Unicode)
+utest: $(WORKDIR)\$(testcu).exe
+ $(WORKDIR)\$(testcu)
+
+# POSIX C library test
+ptest: $(WORKDIR)\$(testp).exe
+ $(WORKDIR)\$(testp)
+
+# Python test
+pytest:
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py EUC-JP
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py SJIS
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py UTF-8
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py UTF-16LE
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py UTF-16BE
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py UTF-32LE
+ cd $(WORKDIR) && $(PYTHON) ..\testpy.py UTF-32BE
+
+
+$(WORKDIR)\$(testc).exe: win32\$(testc).c $(libname)
+ $(CC) $(CFLAGS) -Fe$(WORKDIR)\$(testc) -DONIG_EXTERN=extern win32\$(testc).c -I. $(libname)
+
+$(WORKDIR)\$(testp).exe: win32\$(testc).c $(dlllib)
+ $(CC) $(CFLAGS) -DPOSIX_TEST -Fe$(WORKDIR)\$(testp) win32\$(testc).c -I. $(dlllib)
+
+#$(testc)u.c: test.rb testconvu.rb
+# ruby -Ke testconvu.rb test.rb > $@
+
+$(WORKDIR)\$(testcu).exe: $(testcu).c $(libname)
+ $(CC) $(CFLAGS) -Fe$(WORKDIR)\$(testcu) -DONIG_EXTERN=extern $(testcu).c -I. $(libname)
+
+$(libbase).def: win32\makedef.py onigmo.h regenc.h onigmognu.h onigmoposix.h
+ $(PYTHON) win32\makedef.py > $@
+
+clean:
+ -$(RMDIR) $(WORKDIR)
+
+
+samples: all
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Fesimple ..\sample\simple.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Feposix ..\sample\posix.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Fenames ..\sample\names.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Felistcap ..\sample\listcap.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Fesql ..\sample\sql.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Feencode ..\sample\encode.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Fesyntax ..\sample\syntax.c ..\$(dlllib)
+ cd $(WORKDIR) && $(CC) $(CFLAGS) -I.. -Fecrnl ..\sample\crnl.c ..\$(dlllib)
diff --git a/fluent-bit/lib/onigmo/win32/Makefile.mingw b/fluent-bit/lib/onigmo/win32/Makefile.mingw
new file mode 100644
index 00000000..041d2839
--- /dev/null
+++ b/fluent-bit/lib/onigmo/win32/Makefile.mingw
@@ -0,0 +1,252 @@
+# Onigmo Makefile for mingw32
+
+product_name = onigmo
+
+# Comment out the next line, if you don't want to use LTCG.
+USE_LTCG = 1
+
+# Enable the next line, if you want to use a .def file.
+#DEFFILE = onig.def
+
+
+# Get the default ARCH. (i686, x86-64, etc.)
+ifndef ARCH
+ARCH := $(shell $(CC) -dumpmachine | sed -e 's/-.*//' -e 's/_/-/' -e 's/^mingw32$$/i686/')
+endif
+
+
+CPPFLAGS =
+CFLAGS = -O2 -Wall
+LDFLAGS =
+LOADLIBES =
+ARLIB = ar
+ARLIB_FLAGS = cr
+ARDLL = gcc
+ARDLL_FLAGS = -shared $(LINKFLAGS)
+LINKFLAGS =
+
+INSTALL = install -c
+CP = cp
+RMDIR = rm -rf
+CC = gcc
+RC = windres
+DEFS = -DHAVE_CONFIG_H -DEXPORT
+
+ifneq ($(ARCH),x86-64)
+PYTHON = py -3.4-32
+else
+PYTHON = py -3
+endif
+
+WORKDIR = build_$(ARCH)
+
+ifdef DEFFILE
+# Use a .def file to export APIs.
+CFLAGS = $(CFLAGS) -DONIG_EXTERN=extern
+ARDLL_FLAGS = $(ARDLL_FLAGS) $(DEFFILE)
+endif
+
+subdirs =
+
+libbase = onigmo
+libname = $(WORKDIR)/lib$(libbase).a
+dllname = $(WORKDIR)/$(libbase).dll
+dlllib = $(WORKDIR)/lib$(libbase).dll.a
+
+onigheaders = onigmo.h regint.h regparse.h regenc.h st.h
+posixheaders = onigmoposix.h
+headers = $(posixheaders) $(onigheaders)
+
+onigobjs = $(WORKDIR)/reggnu.o $(WORKDIR)/regerror.o \
+ $(WORKDIR)/regparse.o $(WORKDIR)/regext.o \
+ $(WORKDIR)/regcomp.o $(WORKDIR)/regexec.o \
+ $(WORKDIR)/regenc.o $(WORKDIR)/regsyntax.o \
+ $(WORKDIR)/regtrav.o $(WORKDIR)/regversion.o \
+ $(WORKDIR)/st.o
+posixobjs = $(WORKDIR)/regposix.o $(WORKDIR)/regposerr.o
+libobjs = $(onigobjs) $(posixobjs)
+
+jp_objs = $(WORKDIR)/euc_jp.o $(WORKDIR)/shift_jis.o \
+ $(WORKDIR)/windows_31j.o
+
+iso_8859_objs = $(WORKDIR)/iso_8859_1.o $(WORKDIR)/iso_8859_2.o \
+ $(WORKDIR)/iso_8859_3.o $(WORKDIR)/iso_8859_4.o \
+ $(WORKDIR)/iso_8859_5.o $(WORKDIR)/iso_8859_6.o \
+ $(WORKDIR)/iso_8859_7.o $(WORKDIR)/iso_8859_8.o \
+ $(WORKDIR)/iso_8859_9.o $(WORKDIR)/iso_8859_10.o \
+ $(WORKDIR)/iso_8859_11.o $(WORKDIR)/iso_8859_13.o \
+ $(WORKDIR)/iso_8859_14.o $(WORKDIR)/iso_8859_15.o \
+ $(WORKDIR)/iso_8859_16.o
+
+encobjs = $(WORKDIR)/ascii.o $(WORKDIR)/utf_8.o \
+ $(WORKDIR)/unicode.o \
+ $(WORKDIR)/utf_16be.o $(WORKDIR)/utf_16le.o \
+ $(WORKDIR)/utf_32be.o $(WORKDIR)/utf_32le.o \
+ $(jp_objs) $(iso_8859_objs) \
+ $(WORKDIR)/euc_tw.o $(WORKDIR)/euc_kr.o $(WORKDIR)/big5.o \
+ $(WORKDIR)/gb18030.o \
+ $(WORKDIR)/koi8_r.o $(WORKDIR)/koi8_u.o \
+ $(WORKDIR)/windows_1250.o $(WORKDIR)/windows_1251.o \
+ $(WORKDIR)/windows_1252.o $(WORKDIR)/windows_1253.o \
+ $(WORKDIR)/windows_1254.o $(WORKDIR)/windows_1257.o
+
+resobj = $(WORKDIR)/onigmo.o
+
+onigsources = regerror.c regparse.c regext.c regcomp.c regexec.c regenc.c \
+ regsyntax.c regtrav.c regversion.c reggnu.c st.c
+posixsources = regposix.c regposerr.c
+libsources = $(posixsources) $(onigsources)
+
+encdir = enc
+distfiles = README COPYING HISTORY \
+ Makefile.in configure.in config.h.in configure \
+ $(headers) $(libsources) \
+ test.rb testconv.rb
+testc = testc
+testcu = testu
+testp = testp
+
+makeargs = $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' CFLAGS='$(CFLAGS)' CC='$(CC)'
+
+.SUFFIXES:
+.SUFFIXES: .o .c .h .ps .dvi .info .texinfo .res .rc
+
+$(WORKDIR)/%.o: %.c
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -Iwin32 -I. -o $@ -c $<
+
+$(WORKDIR)/%.o: $(encdir)/%.c
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -Iwin32 -I. -I$(encdir)/unicode -o $@ -c $<
+
+$(WORKDIR)/%.o: win32/%.rc
+ $(RC) -O coff -I. $< $@
+
+# targets
+default: all
+
+setup:
+
+
+all: lib dll
+
+lib: $(libname)
+dll: $(dllname)
+
+$(libname): $(WORKDIR) $(libobjs) $(encobjs)
+ $(ARLIB) $(ARLIB_FLAGS) $@ $(libobjs) $(encobjs)
+
+$(dllname): $(WORKDIR) $(libobjs) $(encobjs) $(resobj) $(DEFFILE)
+ $(ARDLL) $(libobjs) $(encobjs) $(resobj) -o $@ $(ARDLL_FLAGS) -Wl,--out-implib,$(dlllib)
+
+$(WORKDIR):
+ -mkdir $(WORKDIR)
+
+$(WORKDIR)/regparse.o: regparse.c $(onigheaders) win32/config.h st.h
+$(WORKDIR)/regext.o: regext.c $(onigheaders) win32/config.h
+$(WORKDIR)/regtrav.o: regtrav.c $(onigheaders) win32/config.h
+$(WORKDIR)/regcomp.o: regcomp.c $(onigheaders) win32/config.h
+$(WORKDIR)/regexec.o: regexec.c regint.h regenc.h onigmo.h win32/config.h
+$(WORKDIR)/reggnu.o: reggnu.c regint.h regenc.h onigmo.h win32/config.h onigmognu.h
+$(WORKDIR)/regerror.o: regerror.c regint.h regenc.h onigmo.h win32/config.h
+$(WORKDIR)/regenc.o: regenc.c regint.h regenc.h onigmo.h win32/config.h
+$(WORKDIR)/regsyntax.o: regsyntax.c regint.h regenc.h onigmo.h win32/config.h
+$(WORKDIR)/regversion.o: regversion.c onigmo.h win32/config.h
+$(WORKDIR)/regposix.o: regposix.c $(posixheaders) onigmo.h win32/config.h
+$(WORKDIR)/regposerr.o: regposerr.c $(posixheaders) win32/config.h
+$(WORKDIR)/st.o: st.c regint.h onigmo.h win32/config.h st.h
+
+$(WORKDIR)/ascii.o: $(encdir)/ascii.c regenc.h win32/config.h
+$(WORKDIR)/unicode.o: $(encdir)/unicode.c regint.h regenc.h win32/config.h $(encdir)/unicode/casefold.h $(encdir)/unicode/name2ctype.h
+$(WORKDIR)/utf_8.o: $(encdir)/utf_8.c regenc.h win32/config.h
+$(WORKDIR)/utf_16be.o: $(encdir)/utf_16be.c regenc.h win32/config.h
+$(WORKDIR)/utf_16le.o: $(encdir)/utf_16le.c regenc.h win32/config.h
+$(WORKDIR)/utf_32be.o: $(encdir)/utf_32be.c regenc.h win32/config.h
+$(WORKDIR)/utf_32le.o: $(encdir)/utf_32le.c regenc.h win32/config.h
+$(WORKDIR)/euc_jp.o: $(encdir)/euc_jp.c regenc.h win32/config.h $(encdir)/jis/props.h
+$(WORKDIR)/euc_tw.o: $(encdir)/euc_tw.c regenc.h win32/config.h
+$(WORKDIR)/euc_kr.o: $(encdir)/euc_kr.c regenc.h win32/config.h
+$(WORKDIR)/shift_jis.o: $(encdir)/shift_jis.c $(encdir)/shift_jis.h regenc.h win32/config.h $(encdir)/jis/props.h
+$(WORKDIR)/windows_31j.o: $(encdir)/windows_31j.c $(encdir)/shift_jis.h regenc.h win32/config.h $(encdir)/jis/props.h
+$(WORKDIR)/iso_8859_1.o: $(encdir)/iso_8859_1.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_2.o: $(encdir)/iso_8859_2.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_3.o: $(encdir)/iso_8859_3.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_4.o: $(encdir)/iso_8859_4.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_5.o: $(encdir)/iso_8859_5.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_6.o: $(encdir)/iso_8859_6.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_7.o: $(encdir)/iso_8859_7.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_8.o: $(encdir)/iso_8859_8.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_9.o: $(encdir)/iso_8859_9.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_10.o: $(encdir)/iso_8859_10.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_11.o: $(encdir)/iso_8859_11.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_13.o: $(encdir)/iso_8859_13.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_14.o: $(encdir)/iso_8859_14.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_15.o: $(encdir)/iso_8859_15.c regenc.h win32/config.h
+$(WORKDIR)/iso_8859_16.o: $(encdir)/iso_8859_16.c regenc.h win32/config.h
+#$(WORKDIR)/koi8.o: $(encdir)/koi8.c regenc.h win32/config.h
+$(WORKDIR)/koi8_r.o: $(encdir)/koi8_r.c regenc.h win32/config.h
+$(WORKDIR)/koi8_u.o: $(encdir)/koi8_u.c regenc.h win32/config.h
+$(WORKDIR)/windows_1250.o: $(encdir)/windows_1250.c regenc.h win32/config.h
+$(WORKDIR)/windows_1251.o: $(encdir)/windows_1251.c regenc.h win32/config.h
+$(WORKDIR)/windows_1252.o: $(encdir)/windows_1252.c regenc.h win32/config.h
+$(WORKDIR)/windows_1253.o: $(encdir)/windows_1253.c regenc.h win32/config.h
+$(WORKDIR)/windows_1254.o: $(encdir)/windows_1254.c regenc.h win32/config.h
+$(WORKDIR)/windows_1257.o: $(encdir)/windows_1257.c regenc.h win32/config.h
+$(WORKDIR)/big5.o: $(encdir)/big5.c regenc.h win32/config.h
+$(WORKDIR)/gb18030.o: $(encdir)/gb18030.c regenc.h win32/config.h
+
+$(WORKDIR)/onigmo.o: win32/onigmo.rc onigmo.h
+
+
+# Tests
+test: all ctest utest ptest pytest
+
+# C library test
+ctest: $(WORKDIR)/$(testc)
+ $(WORKDIR)/$(testc)
+
+# C library test (Unicode)
+utest: $(WORKDIR)/$(testcu)
+ $(WORKDIR)/$(testcu)
+
+# POSIX C library test
+ptest: $(WORKDIR)/$(testp)
+ $(WORKDIR)/$(testp)
+
+# Python test
+pytest:
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py EUC-JP
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py SJIS
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py UTF-8
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py UTF-16LE
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py UTF-16BE
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py UTF-32LE
+ cd $(WORKDIR) && $(PYTHON) ../testpy.py UTF-32BE
+
+
+$(WORKDIR)/$(testc): win32/$(testc).c $(libname)
+ $(CC) $(CFLAGS) -o $(WORKDIR)/$(testc) -DONIG_EXTERN=extern win32/$(testc).c -I. $(libname)
+
+$(WORKDIR)/$(testp): win32/$(testc).c $(dlllib)
+ $(CC) $(CFLAGS) -DPOSIX_TEST -o $(WORKDIR)/$(testp) win32/$(testc).c -I. $(dlllib)
+
+#$(testc)u.c: test.rb testconvu.rb
+# ruby -Ke testconvu.rb test.rb > $@
+
+$(WORKDIR)/$(testcu): $(testcu).c $(libname)
+ $(CC) $(CFLAGS) -o $(WORKDIR)/$(testcu) -DONIG_EXTERN=extern $(testcu).c -I. $(libname)
+
+$(libbase).def: win32/makedef.py onigmo.h regenc.h onigmognu.h onigmoposix.h
+ $(PYTHON) win32/makedef.py > $@
+
+clean:
+ -$(RMDIR) $(WORKDIR)
+
+
+samples: all
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/simple sample\simple.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/posix sample\posix.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/names sample\names.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/listcap sample\listcap.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/sql sample\sql.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/encode sample\encode.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/syntax sample\syntax.c $(dlllib)
+ $(CC) $(CFLAGS) -I. -o $(WORKDIR)/crnl sample\crnl.c $(dlllib)