# Oni Guruma Makefile
product_name = oniguruma
dist_tag = 2_5_8
#dist_tag = `date '+%Y%m%d'`
SHELL = /bin/sh
AUTOCONF = autoconf
CPPFLAGS =
CFLAGS = @CFLAGS@ @STATISTICS@
LDFLAGS =
LOADLIBES =
AR = ar
ARFLAGS = rc
RANLIB = @RANLIB@
INSTALL = install -c
CP = cp -p
CC = @CC@
DEFS = @DEFS@ -DNOT_RUBY
RUBYDIR = @RUBYDIR@
WIN32 = win32
docdir = doc
srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
libdir = $(exec_prefix)/lib
includedir = $(prefix)/include
subdirs =
libname = libonig.a
onigintheaders = regint.h regparse.h regenc.h
onigheaders = oniguruma.h $(onigintheaders)
posixheaders = onigposix.h
headers = $(posixheaders) $(onigheaders) oniggnu.h onigcmpt200.h
encheaders = regenc.h oniguruma.h config.h
onigobjs = regerror.o regparse.o regcomp.o regexec.o reggnu.o \
regenc.o regsyntax.o regversion.o
posixobjs = regposix.o regposerr.o
libobjs = $(onigobjs) $(posixobjs)
encobjs = $(encdir)/ascii.o $(encdir)/utf8.o \
$(encdir)/euc_jp.o $(encdir)/euc_tw.o $(encdir)/euc_kr.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)/koi8.o $(encdir)/koi8_r.o $(encdir)/big5.o
onigsources = regerror.c regparse.c regcomp.c regexec.c reggnu.c \
regenc.c regsyntax.c regversion.c
posixsources = regposix.c regposerr.c
libsources = $(posixsources) $(onigsources)
encdir = enc
patchfiles = re.c.*.patch ruby*.patch
distfiles = README COPYING HISTORY INSTALL-RUBY MANIFEST-RUBY \
.cvsignore Makefile.in configure.in config.h.in configure \
$(headers) $(libsources) regex.c $(patchfiles) \
test.rb testconv.rb $(testc).c
win32distfiles = $(WIN32)/Makefile $(WIN32)/config.h $(WIN32)/testc.c
docfiles = $(docdir)/API $(docdir)/RE $(docdir)/RE.ja
encfiles = $(encdir)/mktable.c $(encdir)/ascii.c $(encdir)/utf8.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)/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)
$(libname): make_enc_dir $(libobjs) $(encobjs)
rm -f $(libname)
$(AR) $(ARFLAGS) $(libname) $(libobjs) $(encobjs)
$(RANLIB) $(libname)
regparse.o: regparse.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
regposix.o: regposix.c $(posixheaders) oniguruma.h config.h
regposerr.o: regposerr.c $(posixheaders) config.h
$(encdir)/ascii.o: $(encdir)/ascii.c $(encheaders)
$(encdir)/utf8.o: $(encdir)/utf8.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)
make_enc_dir:
test -d enc || mkdir enc
install: all
test -d $(libdir) || mkdir $(libdir)
test -d $(includedir) || mkdir $(includedir)
$(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
uninstall:
-rm -f $(libdir)/$(libname)
-rm -f $(includedir)/oniguruma.h
-rm -f $(includedir)/onigposix.h
-rm -f $(includedir)/oniggnu.h
warn:
make CFLAGS='@CFLAGS@ @STATISTICS@ -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)
# POSIX C library test
ptest: $(testp)
./$(testp)
$(testc): $(srcdir)/$(testc).c $(libname)
$(CC) $(CFLAGS) -I. -I$(srcdir) -o $@ $(srcdir)/$(testc).c $(libname)
$(testp): $(srcdir)/$(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 > $@
$(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 $(libname) $(testc) $(testp) $(testc) \
*~ win32/*~ $(encdir)/*~ $(docdir)/*~
distclean: clean
rm -f Makefile config.status
16: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/re.c.168.patch
182: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/re.c.182.patch
183: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/re.c.183.patch
184: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/ruby184.patch
185: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/ruby185.patch
186: cpruby
patch -d $(RUBYDIR) -p0 < $(srcdir)/ruby186.patch
18: 185
# backup file suffix
SORIG = ruby_orig
cpruby:
$(CP) $(RUBYDIR)/regex.c $(RUBYDIR)/regex.c.$(SORIG)
$(CP) $(RUBYDIR)/regex.h $(RUBYDIR)/regex.h.$(SORIG)
$(CP) $(RUBYDIR)/re.h $(RUBYDIR)/re.h.$(SORIG)
$(CP) $(RUBYDIR)/re.c $(RUBYDIR)/re.c.$(SORIG)
$(CP) $(RUBYDIR)/gc.c $(RUBYDIR)/gc.c.$(SORIG)
$(CP) $(RUBYDIR)/string.c $(RUBYDIR)/string.c.$(SORIG)
$(CP) $(srcdir)/regex.c $(RUBYDIR)
$(CP) $(srcdir)/regerror.c $(RUBYDIR)
$(CP) $(srcdir)/regparse.c $(RUBYDIR)
$(CP) $(srcdir)/regcomp.c $(RUBYDIR)
$(CP) $(srcdir)/regexec.c $(RUBYDIR)
$(CP) $(srcdir)/reggnu.c $(RUBYDIR)
$(CP) $(srcdir)/regenc.c $(RUBYDIR)
$(CP) $(srcdir)/regint.h $(RUBYDIR)
$(CP) $(srcdir)/regparse.h $(RUBYDIR)
$(CP) $(srcdir)/regenc.h $(RUBYDIR)
$(CP) $(srcdir)/oniguruma.h $(RUBYDIR)
$(CP) $(srcdir)/oniggnu.h $(RUBYDIR)/regex.h
test -d $(RUBYDIR)/$(encdir) || mkdir $(RUBYDIR)/$(encdir)
$(CP) $(srcdir)/$(encdir)/ascii.c $(RUBYDIR)/$(encdir)/ascii.c
$(CP) $(srcdir)/$(encdir)/utf8.c $(RUBYDIR)/$(encdir)/utf8.c
$(CP) $(srcdir)/$(encdir)/euc_jp.c $(RUBYDIR)/$(encdir)/euc_jp.c
$(CP) $(srcdir)/$(encdir)/sjis.c $(RUBYDIR)/$(encdir)/sjis.c
rback:
$(CP) $(RUBYDIR)/regex.c.$(SORIG) $(RUBYDIR)/regex.c
$(CP) $(RUBYDIR)/regex.h.$(SORIG) $(RUBYDIR)/regex.h
$(CP) $(RUBYDIR)/re.h.$(SORIG) $(RUBYDIR)/re.h
$(CP) $(RUBYDIR)/re.c.$(SORIG) $(RUBYDIR)/re.c
$(CP) $(RUBYDIR)/gc.c.$(SORIG) $(RUBYDIR)/gc.c
$(CP) $(RUBYDIR)/string.c.$(SORIG) $(RUBYDIR)/string.c
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)/encode
$(sampledir)/syntax
make_sample_dir:
test -d sample || mkdir sample
$(sampledir)/simple.o: $(srcdir)/$(sampledir)/simple.c
$(sampledir)/posix.o: $(srcdir)/$(sampledir)/posix.c
$(sampledir)/names.o: $(srcdir)/$(sampledir)/names.c
$(sampledir)/listcap.o: $(srcdir)/$(sampledir)/listcap.c
$(sampledir)/sql.o: $(srcdir)/$(sampledir)/sql.c
$(sampledir)/encode.o: $(srcdir)/$(sampledir)/encode.c
$(sampledir)/syntax.o: $(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
# 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)
site:
rm -rf $(distdir)
mkdir $(distdir)
mkdir $(distdir)/$(docdir)
mkdir $(distdir)/sample
mkdir $(distdir)/archive
ln HISTORY $(distdir)/HISTORY.txt
ln $(docdir)/API $(distdir)/$(docdir)/API.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)
syntax highlighted by Code2HTML, v. 0.9.1