X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=lfs%2Fperl;h=06491a16c8f016313dd0015ee311c925d215e016;hb=9ff5b381eb8a4e129978c34f969e312c302ea7b1;hp=127f12044fd64a9bca53461357c8e8743b266e3b;hpb=cd1a2927226c734d96478e12bb768256fb64a06a;p=people%2Fpmueller%2Fipfire-2.x.git diff --git a/lfs/perl b/lfs/perl index 127f12044f..06491a16c8 100644 --- a/lfs/perl +++ b/lfs/perl @@ -1,28 +1,20 @@ ############################################################################### -# This file is part of the IPCop Firewall. # # # -# IPCop is free software; you can redistribute it and/or modify # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2018 IPFire Team # +# # +# This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # -# the Free Software Foundation; either version 2 of the License, or # +# the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # -# IPCop is distributed in the hope that it will be useful, # +# This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # -# along with IPCop; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Makefiles are based on LFSMake, which is # -# Copyright (C) 2002 Rod Roard # -# # -# Modifications by: # -# ??-12-2003 Mark Wormgoor < mark@wormgoor.com> # -# - Modified Makefile for IPCop build # -# # -# $Id: perl,v 1.9.2.13 2005/02/27 15:23:03 gespinasse Exp $ +# along with this program. If not, see . # # # ############################################################################### @@ -32,14 +24,14 @@ include Config -VER = 5.8.5 +VER = 5.12.3 THISAPP = perl-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = http://www.cpan.org/src +DL_FILE = $(THISAPP).tar.bz2 +DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) -# Normal build or /tools build. +# Normal build or $(TOOLS_DIR) build. # ifeq "$(ROOT)" "" TARGET = $(DIR_INFO)/$(THISAPP) @@ -47,17 +39,18 @@ else TARGET = $(DIR_INFO)/$(THISAPP)-tools endif +# Perl does not build with -j larger than 23 +MAX_PARALLELISM = 23 + ############################################################################### # Top-level Rules ############################################################################### -objects = $(DL_FILE) perl-5.8.4-libc-1.patch +objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -perl-5.8.4-libc-1.patch = $(URL_LFS)/perl/perl-5.8.4-libc-1.patch -$(DL_FILE)_MD5 = 49baa8d7d29b4a9713c06edeb81e6b1b -perl-5.8.4-libc-1.patch_MD5 = f033161efa8b4b174ec6667e4e739efa +$(DL_FILE)_MD5 = 72f3f7e1c700e79bbf9d9279ca5b42d9 install : $(TARGET) @@ -86,23 +79,27 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_DL)/perl-5.8.4-libc-1.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/perl.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/perl-5.8.5-perlio_debug_security.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/perl-5.8.5-tempfiles.patch + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/perl-Fix-Errno.pm-generation-for-gcc-5.0.patch +ifneq "$(ROOT)" "" + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-libc-2.patch +endif + cd $(DIR_APP) && sed -i -e 's|-fstack-protector|-fno-stack-protector|g' Configure ifeq "$(ROOT)" "" - cd $(DIR_APP) && ./configure.gnu --prefix=/usr -Dpager="/bin/less -isR" -Dd_dosuid -Ui_db -Ui_gdbm -Ui_ndbm -Ui_dbm -Dmyhostname=localhost - cd $(DIR_APP) && make depend - cd $(DIR_APP) && make + cd $(DIR_APP) && ./configure.gnu --prefix=/usr -Dman1dir=/usr/share/man/man1 \ + -Dman3dir=/usr/share/man/man3 -Dpager="/usr/bin/less -isR" -Dusethreads + cd $(DIR_APP) && sed -i 's/^0$$//' makefile + cd $(DIR_APP) && sed -i 's/^0$$//' x2p/makefile + cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install else - cd $(DIR_APP) && ./configure.gnu --prefix=/tools -Dstatic_ext='IO Fcntl POSIX' -Dd_dosuid -Ui_db -Ui_gdbm -Ui_ndbm -Ui_dbm -Dmyhostname=localhost - cd $(DIR_APP) && make depend - cd $(DIR_APP) && make - cd $(DIR_APP) && cp -f perl pod/pod2man /tools/bin - -mkdir -p /tools/lib/perl5/$(VER) - cd $(DIR_APP) && cp -Rf lib/* /tools/lib/perl5/$(VER) + cd $(DIR_APP) && ./Configure -des -Dprefix=$(TOOLS_DIR) + cd $(DIR_APP) && sed -i 's/^0$$//' makefile + cd $(DIR_APP) && sed -i 's/^0$$//' x2p/makefile + cd $(DIR_APP) && make + cd $(DIR_APP) && cp -v perl pod/pod2man $(TOOLS_DIR)/bin + cd $(DIR_APP) && mkdir -pv $(TOOLS_DIR)/lib/perl5/$(VER) + cd $(DIR_APP) && cp -Rv lib/* $(TOOLS_DIR)/lib/perl5/$(VER) endif @rm -rf $(DIR_APP) @$(POSTBUILD)