Commit graph

47 commits

Author SHA1 Message Date
sno
5dcf72a30d Updating lang/perl5 from 5.12.1 to 5.12.1nb1
pkgsrc changes:
- preparing for databases/p5-gdbm (using Makefile.common)
- supporting external access to perl install dirs (dirs.mk)
- fixing some errors/warnings from pkglint
- adding conflict to packages of CPAN modules which are in Perl5 code
  on the one hand and are broken with perl-5.10+

Bumping PKGREVISION (dependencies changed, rebuild highly recommended).
Recursive rebuild is not required.
2010-08-27 05:27:37 +00:00
seb
25df3b7208 Update perl from version 5.10.1nb2 to version 5.12.1.
Pkgsrc changes:
- Adjust some patches
- Remove patches integrated upstream
- Use Perl's "Policy.sh" framework (along the way remove some patches)
- Link in an enterprise friendly way on HPUX
- in buildlink3.mk bump minimum required pkgsrc Perl version to
5.12.0
- placate some pkglint warnings

Upstream changes:
- From version 5.12.1 announce

This release contains minor bug fixes and updates of several core
modules, as well as minor documentation updates. It should be fully
backward compatible with Perl 5.12.0.

- From version 5.12.0 announce:

Perl 5.12.0 represents approximately two years of development since
version 5.10.0 and contains over 750,000 lines of changes across over
3,000 files from over 200 authors and committers.

[...]

Notable changes in Perl 5.12 include:

* Perl now conforms much more closely to the Unicode standard.
  Additionally, this release includes an upgrade to version
  5.2 of the standard.

* New experimental APIs allow developers to extend Perl with
  "pluggable" keywords and syntax.

* Perl now has a better sense of time and will be able to keep
  accurate time well past the "Y2038" barrier.

* New syntax allows developers to specify package version numbers
  directly in "package" statements

* Perl now warns the user about the use of deprecated features
  by default.

- For a complete list of changes see included perl5120delta(1) and
perl5121delta(1) or http://perldoc.perl.org/perl5120delta.html and
http://perldoc.perl.org/perl5121delta.html
2010-08-19 20:47:09 +00:00
sno
6ca78edac7 allow dependent modules check build options of perl5 2009-07-17 06:43:27 +00:00
joerg
2d1ba244e9 Simply and speed up buildlink3.mk files and processing.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
2009-03-20 19:23:50 +00:00
he
83670cd265 Add BUILDLINK_API_DEPENDS.perl+= perl<5.12.0 together with a comment
explaining that this should prevent a repeat of the current problem where
binary perl packages built for 5.8.8 can be installed together with
perl 5.10.0 without any warning/error.  By the perl numbering scheme,
perl 5.12.0 will be the next maintenance version which installs modules
in a different path than what's used for 5.10.0.

The contents of perl itself doesn't change as a result of this change,
so no revision bump, but a revision bump for all packages which depend
directly on perl is forthcoming, as a workaround for the 5.8.8 -> 5.10.0
transition.
2008-10-19 19:10:42 +00:00
he
1427a98994 Adjust PERL5_REQD from 5.8.7 to 5.10.0, so as to prevent attempts
at using p5-* packages built with the new perl from being installed
together with an older version of perl.  The p5-* packages will not
work because the new and old perls install modules in different
directories.  As a consequence, bump package revision.
2008-10-16 18:27:13 +00:00
minskim
8e00045f53 Properly fix the problem that 1.40 addressed. PERL5_REQD should be
treated as a list.
2007-11-21 22:49:45 +00:00
joerg
3931e7859f Back out 1.37 as it breaks PERL5_REQD (e.g. show-depends in
mail/p5-Email-Send).
2007-11-21 21:50:43 +00:00
obache
048777e0e3 Need to include vars.mk for ${PERL5_SUB_INSTALLARCHLIB}. 2007-11-21 14:15:11 +00:00
minskim
24ad30c540 When buildlinking perl, set PERL5 to pkgsrc perl, not the one selected
by the tools framework.
2007-11-19 03:53:10 +00:00
minskim
8cfdb52849 If perl is buildlinked, used perl in ${BUILDLINK_PREFIX.perl} and
do not rely on the tools framework.
2007-11-18 21:44:56 +00:00
joerg
5e43280b23 Replace mk/bsd.prefs.mk includes with bsd.fast.prefs.mk includes.
The redundant parsing of bsd.prefs.mk is mostly avoided now and
parse time e.g. for x11/kdebase3 gets reduced by up to 10%.
2006-12-12 21:52:34 +00:00
jlam
c16221a4db Change the format of BUILDLINK_ORDER to contain depth information as well,
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.

For example, "make show-buildlink3" in fonts/Xft2 displays:

	zlib
	fontconfig
	    iconv
	    zlib
	    freetype2
	    expat
	freetype2
	Xrender
	    renderproto
2006-07-08 23:10:35 +00:00
jlam
9430e49307 Track information in a new variable BUILDLINK_ORDER that informs us
of the order in which buildlink3.mk files are (recursively) included
by a package Makefile.
2006-07-08 22:38:58 +00:00
jlam
e811379bc2 Pluralize INSTALL_TEMPLATE and DEINSTALL_TEMPLATE variable names as per
the pkglint warning:

    As {INSTALL,DEINSTALL}_TEMPLATE is modified using "+=", its name
    should indicate plural.

This does make the variables a bit more suggestive of the fact that they
hold lists of values.
2006-06-15 22:13:58 +00:00
rillig
560fc65286 bsd.prefs.mk only needs to be included once. 2006-06-09 08:38:53 +00:00
reed
5abef9be14 Over 1200 files touched but no revisions bumped :)
RECOMMENDED is removed. It becomes ABI_DEPENDS.

BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.

BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.

BUILDLINK_DEPENDS does not change.

IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".

Added to obsolete.mk checking for IGNORE_RECOMMENDED.

I did not manually go through and fix any aesthetic tab/spacing issues.

I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.

I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.

As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.

As discussed on tech-pkg.

I will commit to revbump, pkglint, pkg_install, createbuildlink separately.

Note that if you use wip, it will fail!  I will commit to pkgsrc-wip
later (within day).
2006-04-06 06:21:32 +00:00
jlam
daad0f3d6c Modify the pkginstall framework so that it manages all aspects of
INSTALL/DEINSTALL script creation within pkgsrc.

If an INSTALL or DEINSTALL script is found in the package directory,
it is automatically used as a template for the pkginstall-generated
scripts.  If instead, they should be used simply as the full scripts,
then the package Makefile should set INSTALL_SRC or DEINSTALL_SRC
explicitly, e.g.:

	INSTALL_SRC=	${PKGDIR}/INSTALL
	DEINSTALL_SRC=	# emtpy

As part of the restructuring of the pkginstall framework internals,
we now *always* generate temporary INSTALL or DEINSTALL scripts.  By
comparing these temporary scripts with minimal INSTALL/DEINSTALL
scripts formed from only the base templates, we determine whether or
not the INSTALL/DEINSTALL scripts are actually needed by the package
(see the generate-install-scripts target in bsd.pkginstall.mk).

In addition, more variables in the framework have been made private.
The *_EXTRA_TMPL variables have been renamed to *_TEMPLATE, which are
more sensible names given the very few exported variables in this
framework.  The only public variables relating to the templates are:

	INSTALL_SRC		INSTALL_TEMPLATE
	DEINSTALL_SRC		DEINSTALL_TEMPLATE
				HEADER_TEMPLATE

The packages in pkgsrc have been modified to reflect the changes in
the pkginstall framework.
2006-03-14 01:14:26 +00:00
jlam
dc9594e09d Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mk
automatically detects whether we want the pkginstall machinery to be
used by the package Makefile.
2005-12-29 06:21:30 +00:00
jlam
ced1a72013 Restore perllocal.pod-generating behavior of ExtUtils::MakeMaker
because some Perl modules make some (bad) assumptions about the
structure of a MakeMaker-generated Makefile.  Instead, remove the
perllocal.pod file whenever a p5-* module or perl itself is removed.

While here, rename some of the install/deinstall templates to more
descriptive names.

Bump the PKGREVISION to 3.
2005-08-12 19:59:03 +00:00
jlam
86f9268481 Update lang/perl5 to 5.8.7. Changes from version 5.8.6 include updates
for many "core" modules, UTF-8 and Unicode bugfixes, and ithreads
bugfixes.

The major changes are in the pkgsrc infrastructure to handle Perl and
Perl modules.  All pkgsrc-installed Perl modules are now installed in
"vendor" directories, and the perl interpreter has been modifed to
search for libraries in the following order: site, vendor, perl.  The
Perl library is stored in a directory that is named for the Perl ABI
version associated with the Perl release, so any updates of Perl to
newer versions can be done "in-place" as long as Perl ABI version
remains the same.  All Perl scripts and man pages are stored in
locations that won't conflict between site, vendor, and perl modules,
and a new utility perllink(1) now manages symlinks to those scripts
and man pages under the usual ${LOCALBASE}/bin and ${LOCALBASE}/man/man1.

PERL5_SITEPREFIX may be set to the prefix where local, site-specific
modules will be installed, e.g. PERL5_SITEPREFIX=/usr/local.  Note
that modules installed here are completely unmanaged by pkgsrc.

Update the buildlink and tool dependencies on perl to require perl>=5.8.7
to reflect the new locations for Perl modules and the Perl shared
library.
2005-08-06 06:18:44 +00:00
jlam
3e474a90d8 Get rid of USE_PERL5. The new way to express needing the Perl executable
around at either build-time or at run-time is:

	USE_TOOLS+=	perl		# build-time
	USE_TOOLS+=	perl:run	# run-time

Also remove some places where perl5/buildlink3.mk was being included
by a package Makefile, but all that the package wanted was the Perl
executable.
2005-07-16 01:19:06 +00:00
jlam
e26a9ed756 Drop support for TOOLS_DEPMETHOD.<tool>. The new way to specify a
run-time dependency (DEPENDS) on a tool is to append a ":run" modifier
to the tool name, e.g.,

	USE_TOOLS+=	perl:run

Tools without modifiers or with an explicit ":build" modifier will
cause build dependencies (BUILD_DEPENDS) on those tools to be added.
This makes the notation a bit more compact.
2005-07-15 20:14:02 +00:00
jlam
c2fb31ba79 Drop the perl-5.6.x package from pkgsrc. Remove lang/perl58 and update
lang/perl5 to perl-5.8.6nb4.  Modify packages that referred to
lang/perl58 to point to lang/perl5 instead.
2005-06-24 06:43:43 +00:00
jlam
9f94b112f0 Remove the old tools framework and references to _USE_NEW_TOOLS. 2005-05-22 19:11:12 +00:00
jlam
5e50c57ea0 Split the conditional which seems to occasionally be malformed. This
probably has something to do with how make deals with short-circuit
evaluation of conditionals, but it's a simple matter to split the
conditional since USE_PERL5 is eventually going away.
2005-05-19 05:01:47 +00:00
jlam
c51012ebef When perl5/buildlink3.mk is included by a package Makefile, the buildlink
framework will handle adding the correct dependency.
2005-05-19 03:09:52 +00:00
jlam
d6f6120540 Goal: Remove USE_PERL5 from pkgsrc.
Plan:
	(1) Change USE_PERL5=build into USE_TOOLS+=perl.
	(2) Change all other USE_PERL5 into including perl5/buildlink3.mk.

Possibly, for packages that don't actually build anything with perl,
but merely require it for the perl interpreter, we can instead do:

	USE_TOOLS+=		perl
	TOOLS_DEPMETHOD.perl=	DEPENDS

but this is more verbose than simply including the perl5/buildlink3.mk
file.

Move the PERL5_REQD computation into a lang/perl5/version.mk file,
and only do the USE_PERL5 logic in bsd.pkg.use.mk if we're not using
the new tools framework.  This consolidates all of the perl-handling
into two places -- lang/perl5 and mk/tools/perl.mk.
2005-05-18 22:42:07 +00:00
jlam
a5cd03b385 We don't need to check for whether the variables are defined before
using them, as these values are referenced till later when the variables
will definitely have the correct value.  This removes the need to
include vars.mk here.
2005-05-12 21:01:16 +00:00
jlam
cc44d0be98 * Teach devel/p5-Module-Build to write .packlists just like MakeMaker.pm
does.  This allows us to use dynamic PLISTs for Perl modules that are
  built using Module::Build.  Bump the PKGREVISION of p5-Module-Build
  to 1.

* Drop the use of PERL5_USES_MODULE_BUILD and introduce a new variable
  PERL5_MODULE_TYPE that is either "MakeMaker" or "Module::Build" that
  names the framework used to build/install the module.

* Split out the variables set in perl5/buildlink3.mk that are also used
  by perl5/module.mk into a new file perl5/vars.mk.  Move some PERL5_*
  variable definitions from pkgsrc/mk/bsd.pkg.use.mk into perl5/vars.mk.
  This just centralizes the common PERL5_* definitions into a single
  file location.

* Convert the known packages that use Module::Build to set
  PERL5_MODULE_TYPE and PERL5_PACKLIST:

	devel/p5-Class-Container
	devel/p5-Exception-Class
	devel/p5-Log-Dispatch
	devel/p5-Array-Compare
	textproc/p5-Pod-Coverage
	www/p5-Apache-Session-Wrapper
	www/p5-MasonX-Request-WithApacheSession
2005-02-24 22:38:41 +00:00
grant
4cf31e6533 actually bump PKGREVISION of perl58 and BUILDLINK_RECOMMENDED to address
PR pkg/28619. this should have been part of the PKGREVISION bump of p5-*.
2004-12-20 13:25:09 +00:00
grant
908e765695 since perl is now built with threads on most platforms, the perl archlib
module directory has changed (eg. "darwin-2level" vs.
"darwin-thread-multi-2level").

binary packages of perl modules need to be distinguishable between
being built against threaded perl and unthreaded perl, so bump the
PKGREVISION of all perl module packages and introduce
BUILDLINK_RECOMMENDED for perl as perl>=5.8.5nb5 so the correct
dependencies are registered and the binary packages are distinct.

addresses PR pkg/28619 from H. Todd Fujinaka.
2004-12-20 11:30:55 +00:00
jlam
48876679d9 Create a modifier PERL5_OPTIONS that specifies properties of the perl
installation needed when including perl5/buildlink3.mk.  The only
option currently supported is "threads", which implies that a perl
that supports threads is required.  The requirement is checked at
pre-install time using an INSTALL script template by both the package
build and the binary package.

Add PERL5_OPTIONS+=threads to both devel/p5-SDL and graphics/p5-GD
since those modules require a perl that supports threads.
2004-12-19 00:01:43 +00:00
jlam
2d9728cce1 Allow perl-thread to be an acceptable perl when checking dependencies. 2004-04-26 04:46:00 +00:00
jlam
9ff0e10340 Reorder location and setting of BUILDLINK_PACKAGES to match template
buildlink3.mk file in revision 1.101 of bsd.buildlink3.mk.
2004-03-05 19:25:06 +00:00
jlam
99b8496906 Turn PERL5_REQD into a list of values, the highest of which will be used
to choose the correct Perl dependency.
2004-02-10 02:18:04 +00:00
jlam
7699290f10 If we're passing through MAKEFLAGS variables whose values may contain
spaces, use the :Q modifier instead of double-quoting the value.  This
avoids breakage when executing the just-in-time su targets.
2004-02-06 19:04:24 +00:00
jlam
a7d877ca6a Append to BUILDLINK_DEPENDS.<pkg> instead of setting a default value. In
the normal case when BUILDLINK_DEPENDS.<pkg> isn't specified, it receives
a value only once due to the multiple inclusion protection in the
bulldlink3.mk files.  In the case where a package includes several
buildlink3.mk files that each want a slightly different version of another
dependency, having BUILDLINK_DEPENDS.<pkg> be a list allows for the
strictest <pkg> dependency to be matched.
2004-01-24 03:26:45 +00:00
jlam
c31927e838 If PERL5_REQD is at least 5.8, then set BUILDLINK_PKGSRCDIR.perl properly
to point to ../../lang/perl58.  This fixes PR 23573 and PR 24031.
2004-01-19 23:50:20 +00:00
jlam
26a49132b6 Back out previous change... it doesn't seem to be needed. 2004-01-19 13:01:39 +00:00
jlam
64537a259e Add a variable "PERL5_PATH" that's the full path to the actual perl
binary.  This is different from ${PERL5} in that if perl is installed
using pkgviews, then PERL5_PATH points within perl's depot directory.
2004-01-16 12:46:51 +00:00
jlam
06f713b14d Rearrange order of tests and protect more of the code that depends on
${PERL5} being present from being seen if ${PERL5} is in fact not there.
2004-01-13 07:12:01 +00:00
jlam
4c13539455 We need PERL5_INSTALLARCHLIB, so compute its value appropriately. 2004-01-12 15:50:22 +00:00
cjep
0bf6bf3ffd Use tabs (not spaces) to make indentation 2004-01-11 19:41:39 +00:00
jlam
d279e6f535 Use S/+$// instead of C/\+$// to save a backslash. Very highly
recommended by seb :)
2004-01-05 11:05:44 +00:00
jlam
47bb2aae5f Re-arrange to match example buildlink3.mk file in bsd.buildlink3.mk. 2004-01-04 23:34:04 +00:00
jlam
339cd13cb2 Initial sprinkling of work-in-progress buildlink3.mk files for using the
buildlink3 framework.
2004-01-03 23:06:43 +00:00