From 86f5f6d6981a610d284a08e0401a08f7a1880dde Mon Sep 17 00:00:00 2001 From: Fons Rademakers <Fons.Rademakers@cern.ch> Date: Fri, 2 Dec 2005 16:12:48 +0000 Subject: [PATCH] build of pcre tested on Linux, AMD64, MacOS X and Win32 (by Bertrand). git-svn-id: http://root.cern.ch/svn/root/trunk@13455 27541ba8-7e3a-0410-8455-c3a389f83636 --- pcre/Module.mk | 120 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 pcre/Module.mk diff --git a/pcre/Module.mk b/pcre/Module.mk new file mode 100644 index 00000000000..441dbceaf18 --- /dev/null +++ b/pcre/Module.mk @@ -0,0 +1,120 @@ +# Module.mk for pcre module +# Copyright (c) 2005 Rene Brun and Fons Rademakers +# +# Author: Fons Rademakers, 28/11/2005 + +ifneq ($(BUILTINPCRE), yes) +PCRELIBF := $(shell pcre-config --libs) +PCREINC := $(shell pcre-config --cflags) +PCRELIB := $(filter -l%,$(PCRELIBF)) +PCRELDFLAGS := $(filter-out -l%,$(PCRELIBF)) +PCREDEP := +else + +MODDIR := pcre +MODDIRS := $(MODDIR)/src + +PCREVERS := pcre-6.4 +PCREDIR := $(MODDIR) +PCREDIRS := $(MODDIRS) +PCREDIRI := $(MODDIRS)/$(PCREVERS) + +##### libpcre ##### +PCRELIBS := $(MODDIRS)/$(PCREVERS).tar.gz +ifeq ($(PLATFORM),win32) +PCRELIBA := $(MODDIRS)/$(PCREVERS)/Win32/libpcre-6.4.lib +PCRELIB := $(LPATH)/libpcre.lib +ifeq (debug,$(findstring debug,$(ROOTBUILD))) +PCREBLD := "libpcre - Win32 Debug" +else +PCREBLD := "libpcre - Win32 Release" +endif +else +PCRELIBA := $(MODDIRS)/$(PCREVERS)/.libs/libpcre.a +PCRELIB := $(LPATH)/libpcre.a +endif +PCREINC := $(PCREDIRI:%=-I%) +PCREDEP := $(PCRELIB) +PCRELDFLAGS := + +##### local rules ##### +$(PCRELIB): $(PCRELIBA) + cp $< $@ + @(if [ $(PLATFORM) = "macosx" ]; then \ + ranlib $@; \ + fi) + +$(PCRELIBA): $(PCRELIBS) +ifeq ($(PLATFORM),win32) + @(if [ -d $(PCREDIRS)/$(PCREVERS) ]; then \ + rm -rf $(PCREDIRS)/$(PCREVERS); \ + fi; \ + echo "*** Building $@..."; \ + cd $(PCREDIRS); \ + if [ ! -d $(PCREVERS) ]; then \ + gunzip -c $(PCREVERS).tar.gz | tar xf -; \ + fi; \ + cd $(PCREVERS)/win32; \ + unset MAKEFLAGS; \ + nmake -nologo -f Makefile.msc CFG=$(PCREBLD)) +else + @(if [ -d $(PCREDIRS)/$(PCREVERS) ]; then \ + rm -rf $(PCREDIRS)/$(PCREVERS); \ + fi; \ + echo "*** Building $@..."; \ + cd $(PCREDIRS); \ + if [ ! -d $(PCREVERS) ]; then \ + gunzip -c $(PCREVERS).tar.gz | tar xf -; \ + fi; \ + cd $(PCREVERS); \ + PCRECC=$(CC); \ + if [ $(ARCH) = "alphacxx6" ]; then \ + PCRECC="cc"; \ + fi; \ + if [ $(ARCH) = "linuxx8664gcc" ]; then \ + PCRECC="gcc"; \ + PCRE_CFLAGS="-m64"; \ + fi; \ + if [ $(ARCH) = "sgicc64" ]; then \ + PCRECC="cc"; \ + PCRE_CFLAGS="-64"; \ + fi; \ + if [ $(ARCH) = "linuxppc64gcc" ]; then \ + PCRECC="gcc"; \ + PCRE_CFLAGS="-m64"; \ + fi; \ + if [ $(ARCH) = "hpuxia64acc" ]; then \ + PCRECC="cc"; \ + PCRE_CFLAGS="+DD64 -Ae"; \ + fi; \ + GNUMAKE=$(MAKE) ./configure --with-pic \ + CC=$$PCRECC CFLAGS="$$PCRE_CFLAGS -O"; \ + $(MAKE)) +endif + +all-pcre: $(PCRELIB) + +clean-pcre: +ifeq ($(PLATFORM),win32) + -@(if [ -d $(PCREDIRS)/$(PCREVERS)/win32 ]; then \ + cd $(PCREDIRS)/$(PCREVERS)/win32; \ + unset MAKEFLAGS; \ + nmake -nologo -f Makefile.msc clean; \ + fi) +else + -@(if [ -d $(PCREDIRS)/$(PCREVERS) ]; then \ + cd $(PCREDIRS)/$(PCREVERS); \ + $(MAKE) clean; \ + fi) +endif + +clean:: clean-pcre + +distclean-pcre: clean-pcre + @mv $(PCRELIBS) $(PCREDIRS)/-$(PCREVERS).tar.gz + @rm -rf $(PCRELIB) $(PCREDIRS)/pcre-* + @mv $(PCREDIRS)/-$(PCREVERS).tar.gz $(PCRELIBS) + +distclean:: distclean-pcre + +endif -- GitLab