# Makefile.in for PCRE (Perl-Compatible Regular Expression) library. #---------------------------------------------------------------------------# # To build mingw32 DLL uncomment the next two lines. This addition for # # mingw32 was contributed by . I (Philip # # Hazel) don't know anything about it! There are some additional targets at # # the bottom of this Makefile. # #---------------------------------------------------------------------------# # # include dll.mk # DLL_LDFLAGS=-s #---------------------------------------------------------------------------# # The next few lines are modified by "configure" to insert data that it is # # given in its arguments, or which it finds out for itself. # #---------------------------------------------------------------------------# # BINDIR is the directory in which the pgrep command is installed. # INCDIR is the directory in which the public header file pcre.h is installed. # LIBDIR is the directory in which the libraries are installed. # MANDIR is the directory in which the man pages are installed. # The pcretest program, as it is a test program, does not get installed # anywhere. prefix = @prefix@ exec_prefix = @exec_prefix@ BINDIR = @bindir@ LIBDIR = @libdir@ INCDIR = @includedir@ MANDIR = @mandir@ CC = @CC@ CFLAGS = @CFLAGS@ RANLIB = @RANLIB@ # LIBTOOL defaults to "", which cuts out the building of shared libraries. # If "configure" is called with --enable-shared-libraries, then LIBTOOL is # set to "libtool", which causes shared libraries to be built, and LIBSUFFIX # is set to "la" instead of "a", which causes the shared libraries to be # installed. LIBTOOL = @LIBTOOL@ LIBSUFFIX = @LIBSUFFIX@ # These are the version numbers for the shared libraries PCRELIBVERSION = @PCRE_LIB_VERSION@ PCREPOSIXLIBVERSION = @PCRE_POSIXLIB_VERSION@ #---------------------------------------------------------------------------# # A copy of install-sh is in this distribution and is used by default. # #---------------------------------------------------------------------------# INSTALL = ./install-sh -c INSTALL_DATA = ${INSTALL} -m 644 #---------------------------------------------------------------------------# # For almost all systems, the command to create a library is "ar cq", but # # there is at least one where it is different, to make this configurable. # # However, I haven't got round to learning how to make "configure" find # # this out for itself. It is necessary to use a command such as # # "make AR='ar -rc'" if you need to vary this. # #---------------------------------------------------------------------------# AR = ar cq ############################################################################## OBJ = maketables.o get.o study.o pcre.o LOBJ = maketables.lo get.lo study.lo pcre.lo all: libtool libpcre.$(LIBSUFFIX) libpcreposix.$(LIBSUFFIX) pcretest pgrep libtool: config.guess config.sub ltconfig ltmain.sh @if test "$(LIBTOOL)" = "libtool"; then \ echo '--- Building libtool ---'; \ ./ltconfig ./ltmain.sh; \ echo '--- Built libtool ---'; fi pgrep: libpcre.$(LIBSUFFIX) pgrep.o @echo ' ' @echo '--- Building pgrep utility' @echo ' ' $(LIBTOOL) $(CC) $(CFLAGS) -o pgrep pgrep.o libpcre.$(LIBSUFFIX) pcretest: libpcre.$(LIBSUFFIX) libpcreposix.$(LIBSUFFIX) pcretest.o @echo ' ' @echo '--- Building pcretest testing program' @echo ' ' $(LIBTOOL) $(PURIFY) $(CC) $(CFLAGS) -o pcretest pcretest.o \ libpcre.$(LIBSUFFIX) libpcreposix.$(LIBSUFFIX) libpcre.a: $(OBJ) @echo ' ' @echo '--- Building static library: libpcre' @echo ' ' -rm -f libpcre.a $(AR) libpcre.a $(OBJ) $(RANLIB) libpcre.a libpcre.la: $(OBJ) @echo ' ' @echo '--- Building shared library: libpcre' @echo ' ' -rm -f libpcre.la libtool $(CC) -version-info '$(PCRELIBVERSION)' -o libpcre.la -rpath $(LIBDIR) $(LOBJ) libpcreposix.a: pcreposix.o @echo ' ' @echo '--- Building static library: libpcreposix' @echo ' ' -rm -f libpcreposix.a $(AR) libpcreposix.a pcreposix.o $(RANLIB) libpcreposix.a libpcreposix.la: pcreposix.o @echo ' ' @echo '--- Building shared library: libpcreposix' @echo ' ' -rm -f libpcreposix.la libtool $(CC) -version-info '$(PCREPOSIXLIBVERSION)' -o libpcreposix.la -rpath $(LIBDIR) pcreposix.lo pcre.o: chartables.c pcre.c pcre.h internal.h config.h Makefile $(LIBTOOL) $(CC) -c $(CFLAGS) pcre.c pcreposix.o: pcreposix.c pcreposix.h internal.h pcre.h config.h Makefile $(LIBTOOL) $(CC) -c $(CFLAGS) pcreposix.c maketables.o: maketables.c pcre.h internal.h config.h Makefile $(LIBTOOL) $(CC) -c $(CFLAGS) maketables.c get.o: get.c pcre.h internal.h config.h Makefile $(LIBTOOL) $(CC) -c $(CFLAGS) get.c study.o: study.c pcre.h internal.h config.h Makefile $(LIBTOOL) $(CC) -c $(CFLAGS) study.c pcretest.o: pcretest.c pcre.h config.h Makefile $(CC) -c $(CFLAGS) pcretest.c pgrep.o: pgrep.c pcre.h Makefile config.h $(CC) -c $(CFLAGS) pgrep.c # An auxiliary program makes the default character table source chartables.c: dftables ./dftables >chartables.c dftables: dftables.c maketables.c pcre.h internal.h config.h Makefile $(CC) -o dftables $(CFLAGS) dftables.c install: all $(LIBTOOL) $(INSTALL_DATA) libpcre.$(LIBSUFFIX) $(LIBDIR)/libpcre.$(LIBSUFFIX) $(LIBTOOL) $(INSTALL_DATA) libpcreposix.$(LIBSUFFIX) $(LIBDIR)/libpcreposix.$(LIBSUFFIX) $(INSTALL_DATA) pcre.h $(INCDIR)/pcre.h $(INSTALL_DATA) pcreposix.h $(INCDIR)/pcreposix.h $(INSTALL_DATA) doc/pcre.3 $(MANDIR)/man3/pcre.3 $(INSTALL_DATA) doc/pcreposix.3 $(MANDIR)/man3/pcreposix.3 $(INSTALL_DATA) doc/pgrep.1 $(MANDIR)/man1/pgrep.1 @if test "$(LIBTOOL)" = "libtool"; then \ echo ' '; \ echo '--- Rebuilding pgrep to use installed shared library ---'; \ echo $(CC) $(CFLAGS) -o pgrep pgrep.o -L$(LIBDIR) -lpcre; \ $(CC) $(CFLAGS) -o pgrep pgrep.o -L$(LIBDIR) -lpcre; \ echo '--- Rebuilding pcretest to use installed shared library ---'; \ echo $(CC) $(CFLAGS) -o pcretest pcretest.o -L$(LIBDIR) -lpcre -lpcreposix; \ $(CC) $(CFLAGS) -o pcretest pcretest.o -L$(LIBDIR) -lpcre -lpcreposix; \ fi $(INSTALL) pgrep $(BINDIR)/pgrep $(INSTALL) pcre-config $(BINDIR)/pcre-config # We deliberately omit dftables and chartables.c from 'make clean'; once made # chartables.c shouldn't change, and if people have edited the tables by hand, # you don't want to throw them away. clean:; -rm -rf *.o *.lo *.a *.la .libs pcretest pgrep testtry # But "make distclean" should get back to a virgin distribution distclean: clean -rm -f chartables.c libtool pcre-config pcre.h \ Makefile config.h config.status config.log config.cache check: runtest runtest: all ./RunTest ######## MINGW32 ############### MINGW32 ############### MINGW32 ############# # This addition for mingw32 was contributed by Paul Sokolovsky # . I (PH) don't know anything about it! dll: _dll libpcre.dll.a pgrep_d pcretest_d _dll: $(MAKE) CFLAGS=-DSTATIC pcre.dll pcre.dll: $(OBJ) pcreposix.o pcre.def libpcre.dll.a: pcre.def pgrep_d: libpcre.dll.a pgrep.o $(CC) $(CFLAGS) -L. -o pgrep pgrep.o -lpcre.dll pcretest_d: libpcre.dll.a pcretest.o $(PURIFY) $(CC) $(CFLAGS) -L. -o pcretest pcretest.o -lpcre.dll # End