From: Michael Tremer <michael.tremer@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: Perl 5.22.1 integration
Date: Wed, 24 Feb 2016 22:18:46 -0800 [thread overview]
Message-ID: <1456381126.2472.10.camel@ipfire.org> (raw)
In-Reply-To: <56CE9B4B.9020402@oab.de>
[-- Attachment #1: Type: text/plain, Size: 13802 bytes --]
Oh yeah, this is indeed very fragile.
We will especially have to look at the code of the web user interface
which is very old and will probably break. This is not something we can
ship when we believe it works. We actually have to do lots of testing
to validate that. More than usual.
Best,
-Michael
On Thu, 2016-02-25 at 07:12 +0100, Alexander Marx wrote:
>
> Hi,
>
> Please check very careful if it is possible to update perl without
> breaking any code.
> Michael, i remember an issue with the ~~ operator which is not
> supported anymore in actual perl versions.
> Maybe there are other problems with the actual perl version where
> some features disappeared.
>
> Just a thought.
>
> Alex
>
>
>
> Am 25.02.2016 um 06:58 schrieb Michael Tremer:
> > Hi,
> >
> > I would like to see us updating perl. However, we cannot under any
> > circumstances put all the modules in a single LFS file. That makes
> > rebuilding one module impossible and basically is against the
> > approach
> > of having packages.
> >
> > So if you update them, please do that individually. Start with perl
> > itself, then all the other modules. Please do that in one branch as
> > individual commits and send this all together as a patchset.
> >
> > Please work closely with this list to review any problems on the
> > way.
> > It is not really helpful to push a too big patchset. Unfortunately
> > we
> > are already at a state where nobody reviewed all the other patches
> > that
> > you and other people have sent on this list.
> >
> > Best,
> > -Michael
> >
> > On Wed, 2016-02-24 at 08:08 +0100, Marcel Lorenz wrote:
> > > Hi,
> > >
> > > i will start a discussion for the integration of Perl 5.22.x
> > > into
> > > IPFire.
> > > I have been working for over half a year on the files.
> > >
> > > My motivation came from the use of SpamAssassin. This application
> > > is
> > > written in Perl. The old Perl modules from IPFire are as a
> > > security
> > > risk.
> > >
> > > First i update the Perl LFS and rootfile only. All the other
> > > Perl
> > > modules remain old.
> > > I began individual modules to update, but it was very expensive.
> > >
> > > Since I had the idea to take all modules to one or two LFS
> > > together.
> > > This has the advantage that all individual Perl modules
> > > disappear
> > > make.sh from and this is clearly shorter. The two LFS files and
> > > the
> > > associated Rootfiles are also easier to maintain. The individual
> > > Perl
> > > modules in Pakfire can then also be removed. Perl is always
> > > complete
> > > and
> > > up to date with its modules. In my mailserver branch I have this
> > > development as far finished. However, I had the modules-LFS
> > > divided
> > > into
> > > two files because make is having trouble with to large LFS files.
> > >
> > > Also have Perl 5.22.1 integrated into the toolchain. The need
> > > still
> > > less, gdbm and berkeley DB4 before.
> > >
> > > I created three files from the many Perl files:
> > > perl-buildtools
> > > perl-modules1
> > > perl-modules2
> > >
> > > The current folder size of /usr/lib/perl5 is about 75MB with Perl
> > > 5.22.1
> > > and all modules and 55Mb with Perl 5.12.3. A Perl-Modules list
> > > can
> > > be
> > > found here: http://people.ipfire.org/~mlorenz/mp/22/perl.txt
> > > This
> > > includes all needed modules for Amavisd, all from Pakfire and
> > > many
> > > more.
> > > All updated to the latest version from CPAN (December 2015)
> > >
> > > Here the perl-buildtools LFS with the current modules from CPAN
> > > as
> > > an
> > > example.
> > > The modules included are needed around the other current Perl
> > > modules
> > > to
> > > build:
> > >
> > > #################################################################
> > > ####
> > > ##########
> > > #
> > >
> > >
> > > #
> > > # IPFire.org - A linux based
> > > firewall
> > > #
> > > # Copyright (C) 2007-2015 IPFire Team <info(a)ipfire.org>
> > >
> > >
> > > #
> > > #
> > >
> > >
> > > #
> > > # 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 3 of the License,
> > > or
> > > #
> > > # (at your option) any later
> > > version.
> > > #
> > > #
> > >
> > >
> > > #
> > > # 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 this program. If not, see <http://www.gnu.org/licen
> > > ses/
> > > > .
> > > #
> > > #
> > >
> > >
> > > #
> > > #################################################################
> > > ####
> > > ##########
> > >
> > > #################################################################
> > > ####
> > > ##########
> > > # Definitions
> > > #################################################################
> > > ####
> > > ##########
> > >
> > > include Config
> > >
> > > VER = 2015.10
> > >
> > > THISAPP = perl-buildtools-$(VER)
> > > DL_FILE = $(THISAPP).tar.gz
> > > DL_FROM = $(URL_IPFIRE)
> > > DIR_APP = $(DIR_SRC)/$(THISAPP)
> > > TARGET = $(DIR_INFO)/$(THISAPP)
> > > PROG = perl-buildtools
> > > DEPS = "perl"
> > > PAK_VER = 1
> > >
> > > #################################################################
> > > ####
> > > ##########
> > > # Top-level Rules
> > > #################################################################
> > > ####
> > > ##########
> > >
> > > objects = ExtUtils-Constant-0.23.tar.gz \
> > > ExtUtils-MakeMaker-7.10.tar.gz \
> > > ExtUtils-Manifest-1.70.tar.gz \
> > > Module-Build-0.4214.tar.gz \
> > > Module-Metadata-1.000027.tar.gz \
> > > Perl-OSType-1.009.tar.gz \
> > > Test-Deep-0.119.tar.gz \
> > > Test-Simple-1.001014.tar.gz \
> > > version-0.9912.tar.gz
> > >
> > > ExtUtils-Constant-0.23.tar.gz =
> > > $(DL_FROM)/ExtUtils-Constant-0.23.tar.gz
> > > ExtUtils-MakeMaker-7.10.tar.gz =
> > > $(DL_FROM)/ExtUtils-MakeMaker-7.10.tar.gz
> > > ExtUtils-Manifest-1.70.tar.gz =
> > > $(DL_FROM)/ExtUtils-Manifest-1.70.tar.gz
> > > Module-Build-0.4214.tar.gz =
> > > $(DL_FROM)/Module-Build-0.4214.tar.gz
> > > Module-Metadata-1.000027.tar.gz =
> > > $(DL_FROM)/Module-Metadata-1.000027.tar.gz
> > > Perl-OSType-1.009.tar.gz =
> > > $(DL_FROM)/Perl-OSType-1.009.tar.gz
> > > Test-Deep-0.119.tar.gz = $(DL_FROM)/Test-Deep-
> > > 0.119.tar.gz
> > > Test-Simple-1.001014.tar.gz =
> > > $(DL_FROM)/Test-Simple-1.001014.tar.gz
> > > version-0.9912.tar.gz = $(DL_FROM)/version-
> > > 0.9912.tar.gz
> > >
> > > ExtUtils-Constant-0.23.tar.gz_MD5 =
> > > bd3ec6d22ffab7e5cc05b1331a888d15
> > > ExtUtils-MakeMaker-7.10.tar.gz_MD5 =
> > > 2639a21adee5e0a903730c12dcba08ec
> > > ExtUtils-Manifest-1.70.tar.gz_MD5 =
> > > 8ccb9c1f3bca14c117a74bc7b43be095
> > > Module-Build-0.4214.tar.gz_MD5 =
> > > 7b7ca5a47bef48c50c8b5906ca3ac7fb
> > > Module-Metadata-1.000027.tar.gz_MD5 =
> > > a0bf9b900dfd49c57702de3ee3801d42
> > > Perl-OSType-1.009.tar.gz_MD5 =
> > > 9e0cae3812bc80815f00732bde1b7e61
> > > Test-Deep-0.119.tar.gz_MD5 =
> > > edb72e9b1874efe3b0c95324fb063e51
> > > Test-Simple-1.001014.tar.gz_MD5 =
> > > db7f57fd595e3e1c93c972307a88fa6e
> > > version-0.9912.tar.gz_MD5 =
> > > 404a7174f3e38e4f8fad3e1eefce5412
> > >
> > > install : $(TARGET)
> > > check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> > > download :$(patsubst %,$(DIR_DL)/%,$(objects))
> > > md5 : $(subst %,%_MD5,$(objects))
> > > dist:
> > > @$(PAK)
> > >
> > > #################################################################
> > > ####
> > > ##########
> > > # Downloading, checking, md5sum
> > > #################################################################
> > > ####
> > > ##########
> > >
> > > $(patsubst %,$(DIR_CHK)/%,$(objects)) :
> > > @$(CHECK)
> > >
> > > $(patsubst %,$(DIR_DL)/%,$(objects)) :
> > > @$(LOAD)
> > >
> > > $(subst %,%_MD5,$(objects)) :
> > > @$(MD5)
> > >
> > > #################################################################
> > > ####
> > > ##########
> > > # Installation Details
> > > #################################################################
> > > ####
> > > ##########
> > >
> > > $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> > > @$(PREBUILD)
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/Perl-OSType-1.009.tar.gz
> > > cd $(DIR_SRC)/Perl-OSType-1.009 && perl Makefile.PL
> > > cd $(DIR_SRC)/Perl-OSType-1.009 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/Perl-OSType-1.009 && make install
> > > @rm -rf $(DIR_SRC)/Perl-OSType-1.009
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/version-0.9912.tar.gz
> > > cd $(DIR_SRC)/version-0.9912 && perl Makefile.PL
> > > cd $(DIR_SRC)/version-0.9912 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/version-0.9912 && make install
> > > @rm -rf $(DIR_SRC)/version-0.9912
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/Module-Metadata-
> > > 1.000027.tar.gz
> > > cd $(DIR_SRC)/Module-Metadata-1.000027 && perl Makefile.PL
> > > cd $(DIR_SRC)/Module-Metadata-1.000027 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/Module-Metadata-1.000027 && make install
> > > @rm -rf $(DIR_SRC)/Module-Metadata-1.000027
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/Module-Build-0.4214.tar.gz
> > > cd $(DIR_SRC)/Module-Build-0.4214 && perl Makefile.PL
> > > cd $(DIR_SRC)/Module-Build-0.4214 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/Module-Build-0.4214 && make install
> > > @rm -rf $(DIR_SRC)/Module-Build-0.4214
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/Test-Deep-0.119.tar.gz
> > > cd $(DIR_SRC)/Test-Deep-0.119 && perl Makefile.PL
> > > cd $(DIR_SRC)/Test-Deep-0.119 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/Test-Deep-0.119 && make install
> > > @rm -rf $(DIR_SRC)/Test-Deep-0.119
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/Test-Simple-1.001014.tar.gz
> > > cd $(DIR_SRC)/Test-Simple-1.001014 && perl Makefile.PL
> > > cd $(DIR_SRC)/Test-Simple-1.001014 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/Test-Simple-1.001014 && make install
> > > @rm -rf $(DIR_SRC)/Test-Simple-1.001014
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/ExtUtils-Constant-
> > > 0.23.tar.gz
> > > cd $(DIR_SRC)/ExtUtils-Constant-0.23 && perl Makefile.PL
> > > cd $(DIR_SRC)/ExtUtils-Constant-0.23 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/ExtUtils-Constant-0.23 && make install
> > > @rm -rf $(DIR_SRC)/ExtUtils-Constant-0.23
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/ExtUtils-MakeMaker-
> > > 7.10.tar.gz
> > > cd $(DIR_SRC)/ExtUtils-MakeMaker-7.10 && perl Makefile.PL
> > > cd $(DIR_SRC)/ExtUtils-MakeMaker-7.10 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/ExtUtils-MakeMaker-7.10 && make install
> > > @rm -rf $(DIR_SRC)/ExtUtils-MakeMaker-7.10
> > > cd $(DIR_SRC) && tar zxf $(DIR_DL)/ExtUtils-Manifest-
> > > 1.70.tar.gz
> > > cd $(DIR_SRC)/ExtUtils-Manifest-1.70 && perl Makefile.PL
> > > cd $(DIR_SRC)/ExtUtils-Manifest-1.70 && make $(MAKETUNING)
> > > cd $(DIR_SRC)/ExtUtils-Manifest-1.70 && make install
> > > @rm -rf $(DIR_SRC)/ExtUtils-Manifest-1.70
> > > @$(POSTBUILD)
> > >
> > > That would be my suggestion for integration of Perl 5.22.1. On
> > > request,
> > > I can create big patches and send it to the mailing list. Perl
> > > 5.22.x
> > > works are in several months generated by my ISO's unremarkable.
> > > It
> > > is
> > > known that a few startup scripts need to be adjusted (amavisd).
> > >
> > > Please forgive me my simple English... Google translator helped
> > > me.
> > > :)
> > >
> > > Greetings,
> > > Marcel Lorenz
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next parent reply other threads:[~2016-02-25 6:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <56CE9B4B.9020402@oab.de>
2016-02-25 6:18 ` Michael Tremer [this message]
[not found] <2dc0e87037ab4108fb3f6855a983c8a8@mail01.ipfire.org>
2016-03-13 14:57 ` Michael Tremer
[not found] <2f3e4f1796e9f68ba2c62b8d3f7dbc29@mail01.ipfire.org>
2016-02-24 7:08 ` Marcel Lorenz
2016-02-25 5:58 ` Michael Tremer
2016-05-27 14:57 ` 5p9
2016-05-28 7:52 ` Marcel Lorenz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1456381126.2472.10.camel@ipfire.org \
--to=michael.tremer@ipfire.org \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox