Commit graph

21 commits

Author SHA1 Message Date
rillig
b78b306826 The wrapper for perl silently failed, giving no hint that
USE_TOOLS+=perl was necessary. Therefore, added a new class of tools,
TOOLS_FAIL, which records the call in a .warnings file, which is later
printed to the user. At least when the tool is first called in the
"configure" phase; I didn't test other phases.
2006-07-10 08:13:37 +00:00
jlam
bb74d3bb13 Teach the tools framework about the following new tools:
itools, intltool, diff3, sdiff, msgmerge

* Adding USE_TOOLS+=itools to a package Makefile will cause the
  tool-directory versions of imake, makedepend, mkdirhier and xmkmf
  to point to the ones from the devel/nbitools package.

  This change will remove the need for nbitools/buildlink3.mk, which
  currently does a bit of hackery to force the "right" imake tools to
  be used by packages that need it.

* Adding USE_TOOLS+=intltool to a package Makefile will cause the
  local versions of intltool-* inside ${WRKSRC} to be replaced by
  copies from the textproc/intltool package.  If "intltool" is not
  specified as a tool, then we create "broken" intltool-* tools in
  the tools directory to help highlight hidden dependencies on the
  intltool package.

  In addition, modify the tools framework so that if "perl" is not
  specified as a tool, then we create a "broken" perl tool in the
  tools directory for the same reason as for "intltool".

  These two changes together will remove the need for
  intltools/buildlink3.mk and should also catch all cases where the
  sources' intltools may have been silently used because perl was
  found on the system.

* Adding USE_TOOLS+=diff3, USE_TOOLS+=sdiff, or USE_TOOLS+=msgmerge
  to a package Makefile will cause the corresponding tool to be pulled
  into the tools directory.

  These are convenience tools to help simplify dependencies for some
  packages.
2006-07-05 04:32:10 +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
63e891437c Some packages want to embed the path to the perl tool in scripts but
don't want to depend on perl, e.g. devel/cvs.  Provide values for
TOOLS_PERL5 and PERL5 even if the package doesn't ask for the perl
tool.
2005-05-22 02:30:53 +00:00
jlam
ce40410af8 The path to perl is now passed via CONFIGURE_ENV as of revision 1.9 of
mk/tools/replace.mk.
2005-05-22 02:05:24 +00:00
jlam
3b3b871622 Grammar 101 -- sentences should end in a period. 2005-05-21 04:53:17 +00:00
jlam
6cb4436e71 Add TNF copyright to the new tools framework makefiles. 2005-05-21 04:46:52 +00:00
jlam
5a4310c9a2 Move the PLIST_SUBST lines that substitute for PERL5_* variables from
perl5/module.mk into tools/perl.mk so that the substitution occurs for
all packages that use perl.
2005-05-20 03:00:16 +00:00
jlam
0e05f46639 Merge most of perl.mk into replace.mk and leave perl.mk to contain
the extra bits required by packages that use perl.  This causes
PKGSRC_USE_TOOLS+=perl to work properly.
2005-05-19 03:52:23 +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
d17d2e4a4f perl.mk was moved from being included by bsd.tools.mk to replace.mk.
Since replace.mk has its own loop to add dependencies, we can remove
the one from perl.mk.
2005-05-18 03:14:01 +00:00
jlam
8c1f92916b Move perl handling into replace.mk. We now can specify USE_TOOLS+=perl
to note that we need the perl binary and the associated PERL5 and
TOOLS_PERL5 variable definitions.
2005-05-17 18:34:45 +00:00
jlam
e78c6207f3 BUILDLINK_DEPENDS.* can be lists, so iterate over the lists when creating
a proper BUILD_DEPENDS or DEPENDS list.
2005-05-14 21:38:18 +00:00
jlam
1ee9760a81 Teach the new tools framework more about perl. We include perl5/vars.mk
in mk/tools/perl.mk since many packages expect to be able to use the
variables defined in vars.mk, but those variables can only be defined
if PERL5 is correctly defined, and that is only true after it is set
here.
2005-05-12 21:03:46 +00:00
jlam
bb022af73a Use EVAL_PREFIX to be pkgviews-friendly. 2005-05-11 19:42:17 +00:00
jlam
f97b83c30b TOOLS_CREATE has replaced TOOLS_{SYMLINK,WRAP}. 2005-05-10 19:34:02 +00:00
jlam
157b5ae130 If we only define the "TOOL" variable if the real command exists, then
the "TOOL" variables won't be properly defined for the top-leve make
after returning from making the install-depends target if we're using
the pkgsrc-supplied tool.  Define the "TOOL" variable unconditionally
instead.
2005-05-02 06:36:29 +00:00
jlam
1a165c6528 PERL5 shouldn't be recursively defined. 2005-05-02 04:33:53 +00:00
jlam
efc8bca44c Define TOOLS_DEPENDS.* to be the dependency that will be added, and
filter out dependencies that have already been added.
2005-04-28 03:01:11 +00:00
jlam
c2cfecc642 Clarify why we want the perl symlink. 2005-04-27 17:59:09 +00:00
jlam
6f10b02051 Split out the perl handling to a separate file, since we always use the
pkgsrc perl, and it isn't really like any of the other tools that we
replace based on a system-/pkgsrc-supplied distinction.
2005-04-27 17:29:06 +00:00