Commit graph

5622 commits

Author SHA1 Message Date
jlam
01df22aa06 Add a "bootstrap-register" target used specially by the bootstrap script
to register packages that were installed by the bootstrap script.
2006-07-14 17:37:03 +00:00
jlam
6fd7abf147 Avoid using # and % to strip prefix/suffix from variable values -- not
enough agreement on how that should work amongst Bourne shell variants.
2006-07-14 16:17:08 +00:00
heinz
37b9df590f Fixed default path wildcards for CHECK_INTERPRETER_SKIP. Now they
actually apply to the whole subtree.
2006-07-13 19:07:54 +00:00
jlam
a29e44f51b Check whether the "checksum" target is defined beforehand to prevent
"duplicate script" collisions with the one defined by bsd.pkg.mk if
PKG_*_REASON is set.
2006-07-13 18:42:45 +00:00
jlam
a76b31a4d6 Check whether the checksum target is defined before defining one.
This fixes problems where a package sets PKG_*_REASON, which causes
bsd.pkg.mk to define its own "checksum" replacement, which causes a
"duplicate script" make error to occur.
2006-07-13 18:40:33 +00:00
jlam
8d03d36b6a * Fix bug when more than one file needed to be checksummed.
* Avoid shell differences between /bin/sh and Korn shell by using:

	while read line; do list; done < FILE

  instead of

	cat FILE | while read line; do list; done
2006-07-13 16:44:14 +00:00
jlam
7ef83e7139 Try to avoid possible differences in processing "$@". 2006-07-13 16:23:14 +00:00
jlam
34b72a488d Backslash escape the parentheses so the shell doesn't think it should
do shell expansion.  Fixes a bug picked up by /bin/ksh and by /bin/sh
in -current.
2006-07-13 16:11:39 +00:00
jlam
0aa9d5c11c Fix some quoting errors and a harmless copy-and-paste error. 2006-07-13 16:02:09 +00:00
jlam
fdd93c3336 Add a few more double-quotes around eval'ed variables. 2006-07-13 15:48:07 +00:00
jlam
022676204b Add DIGEST to the variables defined by default. 2006-07-13 15:27:57 +00:00
jlam
b532d92d10 DIGEST is no longer defined, so use TOOLS_DIGEST instead. 2006-07-13 15:23:18 +00:00
jlam
80b97861bf Remove line noting that "this file was derived from bsd.ports.mk".
The contents of this file are no longer remotedly related to bsd.ports.mk,
and pkgsrc's heritage from ports is documented elsewhere.
2006-07-13 14:04:41 +00:00
jlam
7a2c97d53f * Add a new stage "bootstrap-depends" that happens before all other
stages, and that installs dependencies listed in BOOTSTRAP_DEPENDS.
  The bootstrap-depends step works just like the normal depends step
  and honors the value of DEPENDS_TARGET.  It's now possible to add
  dependencies solely to facilitate fetching the distfiles, e.g.

	BOOTSTRAP_DEPENDS+=	curl-[0-9]*:../../www/curl

* Teach the tools framework about ":bootstrap" as a tools modifier
  which indicates the tool should be added as a dependency via
  BOOTSTRAP_DEPENDS.

* Add "digest" to the tools framework.

* Use USE_TOOLS+=digest:bootstrap to force pkgsrc to install digest
  before anything else.  Get rid of unused "uptodate-digest" target
  and related digest version-checking code.

* Finish the refactoring work: split checksum-related code out of
  bsd.pkg.mk and into pkgsrc/mk/checksum and replace the "checksum"
  target command list with a script that does all the real work.

* Make DIGEST_ALGORITHMS and PATCH_DIGEST_ALGORITHM into private
  variables by prepending them with an underscore.  Also, rename
  _PATCH_DIGEST_ALGORITHM to _PATCH_DIGEST_ALGORITHMS and adjust the
  makepatchsum target to allow that variable to contain a list of
  algorithms, all of which are used when creating the patch checksums
  for ${DISTINFO_FILE}.
2006-07-13 14:02:34 +00:00
adrianp
f76cdb5a1d Add cgi which is used by the PHP package 2006-07-13 09:45:15 +00:00
wiz
675ffa69c0 Add bn_IN locale for atk-1.12.1. 2006-07-12 13:46:34 +00:00
rillig
1dd9c5c90e Removed the leading "-" of a shell command. The unexpected error message
that it had produced had confused me.
2006-07-12 12:34:13 +00:00
wiz
7288c31942 Fix grammar in messages. From David A. Holland in PR 33975. 2006-07-11 13:28:32 +00:00
jlam
06be53fba4 Completely nuke the concept of PKG_PHASE from pkgsrc except for the
purposes of caching MAKEVARS within bsd.pkg.mk and bsd.makevars.mk.
2006-07-10 22:59:26 +00:00
jlam
eb27d05acd Back out revision 1.172 of mk/tools/replace.mk -- we never want to
allow IMAKE to be set by anything other than the tools framework.
Modify the IRIX files so that the native imake is listed as a built-in
tool in the case where X11_TYPE is "native".  Also, move the include
of tools/default.mk a bit lower in bsd.prefs.mk so that tools.${OPSYS}.mk
files can use the value of X11_TYPE.  This should properly set and
point IMAKE to the right binary on IRIX without destroying the
configuration for platforms where IMAKE was not explicitly set, i.e.
every non-IRIX platform.
2006-07-10 22:17:58 +00:00
wiz
83035f3393 Remove reference to buildlink2. 2006-07-10 17:11:32 +00:00
wiz
41f2051ba0 Fix typo in comment. 2006-07-10 17:10:18 +00:00
jlam
d25e37d084 Always add dependencies for packages pulled in indirectly buildlink3 that
are build dependencies.  This should fix PR pkg/33940.  Thanks to Joerg
for the debugging hint.
2006-07-10 17:06:26 +00:00
jlam
4c4ffd71da Fix reversed test... noted by deiter roelants on tech-pkg. 2006-07-10 16:12:20 +00:00
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
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
schwarz
c25fbde9c9 make sure the IMAKE definition, if set, is used in case X11_TYPE is native 2006-07-08 23:08:59 +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
dsainty
e75ebdbfa2 Document dar-int32 and dar-int64 options.
Dar is built by default with an arbitrary-size-integer library for managing
all file length/timestamp details.  If 32-bit or 64-bit integers (with
overflow protection) are sufficient for requirements, the dar-int32 and
dar-int64 options can significantly reduce the run-time memory and CPU
overheads of Dar.
2006-07-08 07:14:15 +00:00
jlam
15d3920cf7 Update the comments to reflect the current default workflow. 2006-07-08 02:16:33 +00:00
jlam
356f5e8af5 Rename <phase>_COOKIE variables to _COOKIE.<phase>. These are private
variables so there are no user-visible changes.  This change just makes
it a little easier to write for loops.
2006-07-07 21:24:27 +00:00
jlam
32e6a1fcf8 Remove the commands that tried to make the ${X11BASE} directory if it
didn't exist.  Those commands were never run anyway, but moving the
.MAIN target exposed these commands as unassociated.
2006-07-07 15:59:06 +00:00
jlam
fb353ac0e3 LIBTOOL_OVERRIDE and SHLIBTOOL_OVERRIDE have slightly different
semantics in pkgsrc.  Because libtool-override is run by default
whenever USE_LIBTOOL is specified, LIBTOOL_OVERRIDE never needs to be
defined, and some packages set it to nothing to avoid running
libtool-override.  However, shlibtool-override is only run if
SHLIBTOOL_OVERRIDE is defined and non-empty.

Split the code for libtool-override and shlibtool-override to reflect
these differing semantics.  This should make the PHP packages build
again by not overriding libtool.
2006-07-07 15:25:05 +00:00
jlam
355e1f1020 No need to define LIBTOOL_OVERRIDE explicitly since libtool-override.mk
will search for libtool scripts up to ${OVERRIDE_DIRDEPTH} below
${WRKSRC} already.
2006-07-07 14:29:41 +00:00
jlam
96e7846323 Move the STEP_MSG outside of the .if.endif block so it's always printed. 2006-07-07 14:25:54 +00:00
jlam
1cd6b0743c Add missing "rm" statement that was causing the libtool wrapper to be
overwritten in the case where LTCONFIG_OVERRIDE was defined.

As a side note, after analyzing the way that the original code in
bsd.pkg.mk worked, I think we can nuke LTCONFIG_OVERRIDE completely,
but we'll need a bulk build to verify this.  The original code always
replaced the libtool scripts because LIBTOOL_OVERRIDE is always defined
in bsd.pkg.use.mk, so LTCONFIG_OVERRIDE essentially had no effect.
2006-07-07 14:06:57 +00:00
jlam
bf9607f39e Make configure, install, and package barrier-aware even if NO_CONFIGURE,
NO_INSTALL, or NO_PACKAGE are defined.
2006-07-07 13:39:52 +00:00
seb
ed4813268e The build target needs to be barrier aware even in the NO_BUILD case.
Without this a straight make fails in pkgsrc/pkgtools/pkg_comp.
2006-07-07 13:06:45 +00:00
jlam
a8fcae3925 The cookie files are indirectly made using *-cookie targets, so verify
that they are never being created more than once by inserting a check
into the *-cookie targets.
2006-07-06 22:29:52 +00:00
jlam
6853947675 Remove an unnecessary target... ${_BARRIER_COOKIE} has no source targets
so it might as well be the target name.
2006-07-06 22:17:57 +00:00
jlam
e6fa682ce0 The "replace" target does conceptually the same thing as the "install"
target in that it installs the currently-built software into the
filesystem.  In that case where "replace" is specified as a target on
the command line, make "replace" and not "install" be the source target
for "package".

Also, place the "replace" target between the "install" and "package"
targets in _BARRIER_POST_TARGETS as it should be legal to do those
steps in that order (but not in another order).

These changes make the following work:

	make replace package

In this example, the currently installed package will be replaced and
the newly-installed software will be packaged, all within the same
make process.
2006-07-06 22:08:32 +00:00
jlam
0fde1ce52f Make it a little easier to read the lock/unlock output by inserting some
quotes.
2006-07-06 21:59:38 +00:00
jlam
1d395074e5 Refactor the README.html generation code from bsd.pkg.mk into a separate
bsd.pkg.readme.mk and document the public targets and variables for this
new file.
2006-07-06 21:07:33 +00:00
jlam
7dd0cd6b98 Never skip the wrapper step, even if NO_BUILD is set. There are packages
that invoke the compiler in either the configure or install steps that
we still need to guard against.
2006-07-06 18:19:45 +00:00
jlam
5809708d82 Make "test" barrier-aware. 2006-07-06 17:39:36 +00:00
jlam
6abd522580 Always run the "pkginstall" step even if NO_BUILD is specified. 2006-07-06 17:22:13 +00:00
jlam
36690002fb Fix previous... instead of moving bsd.pkg.barrier.mk down below .MAIN,
move .MAIN all the way to the top of the file.  bsd.pkg.barrier.mk
(currently) needs to be included before bsd.wrapper.mk since it defines
_BARRIER_COOKIE, which is expanded and used in place within bsd.wrapper.mk.
This makes the "wrapper" phase run again.
2006-07-06 16:58:17 +00:00
jlam
50170b85af Move inclusion of bsd.pkg.barrier.mk under the .MAIN target because
bsd.pkg.barrier.mk uses the "make()" test expression.  Also, include
"all" as a post-barrier target since it is implicitly the ".MAIN" target
when a user just types "make" in a package directory.
2006-07-06 15:43:10 +00:00
jlam
016df6008c Order the _BARRIER_POST_TARGETS so that if more than one is specified on
the command-line, then we don't invoke make once for each target, and
pass them to the sub-make in a sensible order.
2006-07-06 15:33:19 +00:00
jlam
4e65f8cd0f Fix cut-and-paste goof. 2006-07-06 13:25:57 +00:00