# Oniguruma Makefile product_name = oniguruma dist_tag = `date '+%Y%m%d'` SHELL = /bin/sh AUTOCONF = autoconf CPPFLAGS = CFLAGS = -g -O2 LDFLAGS = LOADLIBES = AR = ar ARFLAGS = rc RANLIB = ranlib INSTALL = install -c CP = cp -p CC = gcc DEFS = -DHAVE_CONFIG_H -DNOT_RUBY RUBYDIR = .. WIN32 = win32 docdir = doc srcdir = . prefix = /usr/local exec_prefix = ${prefix} libdir = $(exec_prefix)/lib includedir = $(prefix)/include bindir = $(exec_prefix)/bin subdirs = libname = libonig.a onigintheaders = regint.h regparse.h regenc.h onigheaders = oniguruma.h $(onigintheaders) posixheaders = onigposix.h headers = $(posixheaders) $(onigheaders) oniggnu.h st.h encheaders = regenc.h oniguruma.h config.h onigobjs = regerror.o regparse.o regext.o regcomp.o regexec.o reggnu.o \ regenc.o regsyntax.o regtrav.o regversion.o st.o posixobjs = regposix.o regposerr.o libobjs = $(onigobjs) $(posixobjs) encobjs = $(encdir)/unicode.o \ $(encdir)/ascii.o $(encdir)/utf8.o \ $(encdir)/utf16_be.o $(encdir)/utf16_le.o \ $(encdir)/utf32_be.o $(encdir)/utf32_le.o \ $(encdir)/euc_jp.o $(encdir)/sjis.o \ $(encdir)/iso8859_1.o $(encdir)/iso8859_2.o \ $(encdir)/iso8859_3.o $(encdir)/iso8859_4.o \ $(encdir)/iso8859_5.o $(encdir)/iso8859_6.o \ $(encdir)/iso8859_7.o $(encdir)/iso8859_8.o \ $(encdir)/iso8859_9.o $(encdir)/iso8859_10.o \ $(encdir)/iso8859_11.o $(encdir)/iso8859_13.o \ $(encdir)/iso8859_14.o $(encdir)/iso8859_15.o \ $(encdir)/iso8859_16.o \ $(encdir)/euc_tw.o $(encdir)/euc_kr.o $(encdir)/big5.o \ $(encdir)/gb18030.o \ $(encdir)/koi8_r.o # $(encdir)/koi8.o onigsources = regerror.c regparse.c regext.c regcomp.c regexec.c reggnu.c \ regenc.c regsyntax.c regtrav.c regversion.c st.c posixsources = regposix.c regposerr.c libsources = $(posixsources) $(onigsources) encdir = enc patchfiles = re.c.168.patch re.c.181.patch distfiles = README README.ja COPYING HISTORY index.html MANIFEST-RUBY \ INSTALL-RUBY .cvsignore Makefile.in configure.in \ config.h.in configure onig-config.in \ $(headers) $(libsources) $(patchfiles) \ test.rb testconv.rb testconvu.rb $(testc).c win32distfiles = $(WIN32)/Makefile $(WIN32)/config.h $(WIN32)/testc.c docfiles = $(docdir)/API $(docdir)/API.ja $(docdir)/RE $(docdir)/RE.ja \ $(docdir)/FAQ $(docdir)/FAQ.ja encfiles = $(encdir)/mktable.c $(encdir)/unicode.c \ $(encdir)/ascii.c $(encdir)/utf8.c \ $(encdir)/utf16_be.c $(encdir)/utf16_le.c \ $(encdir)/utf32_be.c $(encdir)/utf32_le.c \ $(encdir)/euc_jp.c $(encdir)/euc_tw.c $(encdir)/euc_kr.c \ $(encdir)/sjis.c $(encdir)/koi8.c $(encdir)/koi8_r.c \ $(encdir)/big5.c $(encdir)/gb18030.c \ $(encdir)/iso8859_1.c $(encdir)/iso8859_2.c \ $(encdir)/iso8859_3.c $(encdir)/iso8859_4.c \ $(encdir)/iso8859_5.c $(encdir)/iso8859_6.c \ $(encdir)/iso8859_7.c $(encdir)/iso8859_8.c \ $(encdir)/iso8859_9.c $(encdir)/iso8859_10.c \ $(encdir)/iso8859_11.c $(encdir)/iso8859_13.c \ $(encdir)/iso8859_14.c $(encdir)/iso8859_15.c \ $(encdir)/iso8859_16.c sampledir = sample samplefiles = $(sampledir)/*.c testc = testc testp = testp makeargs = $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' CFLAGS='$(CFLAGS)' CC='$(CC)' .SUFFIXES: .SUFFIXES: .o .c .h .ps .dvi .info .texinfo .c.o: $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) -I.. -c $< -o $@ # targets default: all all: $(libname) onig-config $(libname): make_enc_dir $(libobjs) $(encobjs) rm -f $(libname) $(AR) $(ARFLAGS) $(libname) $(libobjs) $(encobjs) $(RANLIB) $(libname) regparse.o: regparse.c $(onigheaders) config.h st.h regext.o: regext.c $(onigheaders) config.h regtrav.o: regtrav.c $(onigheaders) config.h regcomp.o: regcomp.c $(onigheaders) config.h regexec.o: regexec.c regint.h regenc.h oniguruma.h config.h reggnu.o: reggnu.c regint.h regenc.h oniguruma.h config.h oniggnu.h regerror.o: regerror.c regint.h regenc.h oniguruma.h config.h regenc.o: regenc.c regint.h regenc.h oniguruma.h config.h regsyntax.o: regsyntax.c regint.h regenc.h oniguruma.h config.h regversion.o: regversion.c oniguruma.h config.h regposix.o: regposix.c $(posixheaders) oniguruma.h config.h regposerr.o: regposerr.c $(posixheaders) config.h st.o: regint.h oniguruma.h config.h st.h $(encdir)/ascii.o: $(encdir)/ascii.c $(encheaders) $(encdir)/unicode.o: $(encdir)/unicode.c $(encheaders) $(encdir)/utf8.o: $(encdir)/utf8.c $(encheaders) $(encdir)/utf16_be.o: $(encdir)/utf16_be.c $(encheaders) $(encdir)/utf16_le.o: $(encdir)/utf16_le.c $(encheaders) $(encdir)/utf32_be.o: $(encdir)/utf32_be.c $(encheaders) $(encdir)/utf32_le.o: $(encdir)/utf32_le.c $(encheaders) $(encdir)/euc_jp.o: $(encdir)/euc_jp.c $(encheaders) $(encdir)/euc_tw.o: $(encdir)/euc_tw.c $(encheaders) $(encdir)/euc_kr.o: $(encdir)/euc_kr.c $(encheaders) $(encdir)/sjis.o: $(encdir)/sjis.c $(encheaders) $(encdir)/iso8859_1.o: $(encdir)/iso8859_1.c $(encheaders) $(encdir)/iso8859_2.o: $(encdir)/iso8859_2.c $(encheaders) $(encdir)/iso8859_3.o: $(encdir)/iso8859_3.c $(encheaders) $(encdir)/iso8859_4.o: $(encdir)/iso8859_4.c $(encheaders) $(encdir)/iso8859_5.o: $(encdir)/iso8859_5.c $(encheaders) $(encdir)/iso8859_6.o: $(encdir)/iso8859_6.c $(encheaders) $(encdir)/iso8859_7.o: $(encdir)/iso8859_7.c $(encheaders) $(encdir)/iso8859_8.o: $(encdir)/iso8859_8.c $(encheaders) $(encdir)/iso8859_9.o: $(encdir)/iso8859_9.c $(encheaders) $(encdir)/iso8859_10.o: $(encdir)/iso8859_10.c $(encheaders) $(encdir)/iso8859_11.o: $(encdir)/iso8859_11.c $(encheaders) $(encdir)/iso8859_13.o: $(encdir)/iso8859_13.c $(encheaders) $(encdir)/iso8859_14.o: $(encdir)/iso8859_14.c $(encheaders) $(encdir)/iso8859_15.o: $(encdir)/iso8859_15.c $(encheaders) $(encdir)/iso8859_16.o: $(encdir)/iso8859_16.c $(encheaders) $(encdir)/koi8.o: $(encdir)/koi8.c $(encheaders) $(encdir)/koi8_r.o: $(encdir)/koi8_r.c $(encheaders) $(encdir)/big5.o: $(encdir)/big5.c $(encheaders) $(encdir)/gb18030.o: $(encdir)/gb18030.c $(encheaders) make_enc_dir: test -d enc || mkdir enc install: all test -d $(prefix) || mkdir $(prefix) test -d $(exec_prefix) || mkdir $(exec_prefix) test -d $(libdir) || mkdir $(libdir) test -d $(includedir) || mkdir $(includedir) test -d $(bindir) || mkdir $(bindir) $(INSTALL) -m 644 $(libname) $(libdir)/$(libname) $(RANLIB) $(libdir)/$(libname) $(INSTALL) -m 644 $(srcdir)/oniguruma.h $(includedir)/oniguruma.h $(INSTALL) -m 644 $(srcdir)/onigposix.h $(includedir)/onigposix.h $(INSTALL) -m 644 $(srcdir)/oniggnu.h $(includedir)/oniggnu.h $(INSTALL) -m 755 onig-config $(bindir)/onig-config uninstall: -rm -f $(libdir)/$(libname) -rm -f $(includedir)/oniguruma.h -rm -f $(includedir)/onigposix.h -rm -f $(includedir)/oniggnu.h -rm -f $(bindir)/onig-config warn: make CFLAGS='-g -O2 -Wall' mktable: enc/mktable.c regenc.h $(CC) -I. -o $(encdir)/mktable $(encdir)/mktable.c # Ruby test rtest: $(RUBYDIR)/ruby -w -Ke $(srcdir)/test.rb # C library test ctest: $(testc) ./$(testc) utest: $(testc)u ./$(testc)u # POSIX C library test ptest: $(testp) ./$(testp) $(testc): $(testc).c $(libname) $(CC) $(CFLAGS) -I. -I$(srcdir) -o $@ $(srcdir)/$(testc).c $(libname) $(testc)u: $(testc)u.c $(libname) $(CC) $(CFLAGS) -I. -I$(srcdir) -o $@ $(srcdir)/$(testc)u.c $(libname) $(testp): $(testc).c $(libname) $(CC) -DPOSIX_TEST $(CFLAGS) -I. -I$(srcdir) -o $@ $(srcdir)/$(testc).c $(libname) $(testc).c: $(srcdir)/test.rb $(srcdir)/testconv.rb ruby -Ke $(srcdir)/testconv.rb < $(srcdir)/test.rb > $@ $(testc)u.c: $(srcdir)/test.rb $(srcdir)/testconvu.rb ruby -Ke $(srcdir)/testconvu.rb $(srcdir)/test.rb > $@ $(WIN32)/$(testc).c: $(srcdir)/test.rb $(srcdir)/testconv.rb ruby -Ke $(srcdir)/testconv.rb -win < $(srcdir)/test.rb | nkf -cs > $@ clean: rm -f *.o $(encdir)/*.o $(sampledir)/*.o $(libname) \ $(testc) $(testp) $(testc) \ *~ win32/*~ $(encdir)/*~ $(docdir)/*~ $(sampledir)/*~ \ $(sampledir)/simple $(sampledir)/posix $(sampledir)/names \ $(sampledir)/listcap $(sampledir)/sql $(sampledir)/encode \ $(sampledir)/syntax distclean: clean rm -f Makefile config.status # backup file suffix SORIG = ruby_orig # ruby 1.9 source update 19: cp -p $(srcdir)/regerror.c $(RUBYDIR) cp -p $(srcdir)/regparse.c $(RUBYDIR) cp -p $(srcdir)/regcomp.c $(RUBYDIR) cp -p $(srcdir)/regexec.c $(RUBYDIR) cp -p $(srcdir)/regenc.c $(RUBYDIR) cp -p $(srcdir)/regint.h $(RUBYDIR) cp -p $(srcdir)/regparse.h $(RUBYDIR) cp -p $(srcdir)/regenc.h $(RUBYDIR) cp -p $(srcdir)/oniguruma.h $(RUBYDIR) cp -p $(srcdir)/enc/ascii.c $(RUBYDIR) cp -p $(srcdir)/enc/utf8.c $(RUBYDIR) cp -p $(srcdir)/enc/euc_jp.c $(RUBYDIR) cp -p $(srcdir)/enc/sjis.c $(RUBYDIR) samples: make_sample_dir $(libname) $(sampledir)/simple $(sampledir)/posix \ $(sampledir)/names $(sampledir)/listcap $(sampledir)/sql \ $(sampledir)/encode $(sampledir)/syntax $(sampledir)/simple $(sampledir)/posix $(sampledir)/names $(sampledir)/listcap $(sampledir)/sql $(sampledir)/syntax $(sampledir)/encode make_sample_dir: test -d sample || mkdir sample $(sampledir)/simple.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/simple.c $(sampledir)/posix.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/posix.c $(sampledir)/names.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/names.c $(sampledir)/listcap.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/listcap.c $(sampledir)/sql.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/sql.c $(sampledir)/encode.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/encode.c $(sampledir)/syntax.o: $(srcdir)/oniguruma.h $(srcdir)/$(sampledir)/syntax.c $(sampledir)/simple: $(libname) $(sampledir)/simple.o $(CC) -o $@ $(sampledir)/simple.o $(libname) $(sampledir)/posix: $(libname) $(sampledir)/posix.o $(CC) -o $@ $(sampledir)/posix.o $(libname) $(sampledir)/names: $(libname) $(sampledir)/names.o $(CC) -o $@ $(sampledir)/names.o $(libname) $(sampledir)/listcap: $(libname) $(sampledir)/listcap.o $(CC) -o $@ $(sampledir)/listcap.o $(libname) $(sampledir)/sql: $(libname) $(sampledir)/sql.o $(CC) -o $@ $(sampledir)/sql.o $(libname) $(sampledir)/encode: $(libname) $(sampledir)/encode.o $(CC) -o $@ $(sampledir)/encode.o $(libname) $(sampledir)/syntax: $(libname) $(sampledir)/syntax.o $(CC) -o $@ $(sampledir)/syntax.o $(libname) configure: configure.in $(AUTOCONF) config.status: configure $(SHELL) ./config.status --recheck Makefile: Makefile.in config.status $(SHELL) ./config.status onig-config: onig-config.in config.status $(SHELL) ./config.status # Prevent GNU make 3 from overflowing arg limit on system V. .NOEXPORT: manifest: for file in $(distfiles); do echo $$file; done distdir = $(product_name) dist_auto: $(testc).c $(WIN32)/$(testc).c dist: configure dist_auto rm -rf $(distdir) mkdir $(distdir) mkdir $(distdir)/$(encdir) mkdir $(distdir)/$(docdir) mkdir $(distdir)/$(WIN32) mkdir $(distdir)/sample ln $(distfiles) $(distdir) ln $(encfiles) $(distdir)/$(encdir) ln $(docfiles) $(distdir)/$(docdir) ln $(win32distfiles) $(distdir)/$(WIN32) ln $(samplefiles) $(distdir)/sample tar chf - $(distdir) | gzip > onigd$(dist_tag).tar.gz rm -rf $(distdir) dist-all: configure dist_auto rm -rf $(distdir) mkdir $(distdir) mkdir $(distdir)/$(encdir) mkdir $(distdir)/$(docdir) mkdir $(distdir)/$(WIN32) mkdir $(distdir)/sample ln $(distfiles) $(distdir) ln testcu.c $(distdir) ln $(encfiles) $(distdir)/$(encdir) ln $(docfiles) $(distdir)/$(docdir) ln $(win32distfiles) $(distdir)/$(WIN32) ln $(samplefiles) $(distdir)/sample tar chf - $(distdir) | gzip > onigd$(dist_tag).tar.gz rm -rf $(distdir) site: rm -rf $(distdir) mkdir $(distdir) mkdir $(distdir)/$(docdir) mkdir $(distdir)/sample mkdir $(distdir)/archive ln index.html $(distdir) ln HISTORY $(distdir)/HISTORY.txt ln $(docdir)/API $(distdir)/$(docdir)/API.txt ln $(docdir)/API.ja $(distdir)/$(docdir)/API.ja.txt ln $(docdir)/RE $(distdir)/$(docdir)/RE.txt ln $(docdir)/RE.ja $(distdir)/$(docdir)/RE.ja.txt ln sample/simple.c $(distdir)/sample ln sample/sql.c $(distdir)/sample ln archive/* $(distdir)/archive tar chf - $(distdir) | gzip > onig_site$(dist_tag).tar.gz rm -rf $(distdir)