Commit graph

1776 commits

Author SHA1 Message Date
wiz
62a3e4fd03 Handle automatic dependencies in bin-install correctly.
From Chapman Flack in PR 32422.
2005-12-31 07:53:11 +00:00
jlam
4ab7433a2c Teach the pkgsrc infrastructure to Just Know when the pkginstall
framework should be used.  This is implemented by creating a small
file mk/install/pkginstall.mk that guards the implementation makefile
mk/install/bsd.pkginstall.mk.  This guard file just checks whether
one of the pkginstall-related variables is non-empty, and if so, then
the implementation file is automatically included.  This completely
deprecates USE_PKGINSTALL, which no longer has any affect in pkgsrc.
2005-12-29 06:18:53 +00:00
rillig
999f8b6e04 Applied all quoting fixes found by "pkglint --autofix". 2005-12-05 22:07:07 +00:00
rillig
7d139e4056 The checksums for pkgsrc patches are always checked -- even if
NO_CHECKSUM is set.
2005-12-04 15:52:32 +00:00
rillig
0f75425cfe Don't create distinfo files in the "makesum" and "makepatchsum" targets
if NO_CHECKSUM is set to "yes". This allows to run "make makepatchsum"
in the top level pkgsrc directory without having to worry about lots of
additional distinfo files being created.
2005-12-01 11:18:30 +00:00
rillig
f39d78748c Inserted "set -e" as the first command in the show-depends-dirs target
to force an early exit as soon as a "cd" command fails. Otherwise, "/"
would have been added as a dependency, leading to undefined behavior.
See PR 32202 for details.

Fixes the second item of PR 32202.
2005-12-01 00:27:56 +00:00
rillig
be7bdd3b87 The new target do-check-pkg-fail-reason should to be a dependency of
every top level target that is intended to be called by the user or by a
package different from the current package. It provides the same action
as the "main" targets like "fetch", "expand", "build" before in case
PKG_FAIL_REASON is set, that is it prints all PKG_FAIL_REASONs and
fails.

Fixes PR 32202.

Implementation notes:
- The target names have the "do-" prefix to not pollute the
  bsd.pkg.check.mk namespace.
- The PKG_SKIP_REASON has no influence on the do-check-pkg-fail-reason
  target, although both are handled with the same code.
2005-12-01 00:17:05 +00:00
reed
31d6bf1215 Fix REQUIRES= when ldd output has wrong number of fields.
(This also fixes problem where on some Linux systems, ldd
outputs linux-gate.so.1 entry without corresponding library.)
This was noticed on Linux.

This was discussed and okayed on the tech-pkg list in February,
2002. I have been using this on NetBSD and Linux since then. (Also
just tested on DragonFly.)
2005-11-29 22:18:38 +00:00
erh
4d2fdd7bd5 Per request, back out all the SKIP_AUDIT_PACKAGES changes.
bsd.pkg.mk:1.1758-1.1752
bsd.prefs.mk:1.210
bulk/build:1.79
defaults/mk.conf:1.93-1.92
2005-11-23 18:27:13 +00:00
jlam
fbde187715 Missing a line from the previous commit that would cause PKG_DB_TMPDIR
to also be forcibly created (if missing) as part of "make install".
2005-11-22 03:41:20 +00:00
jlam
02f3f44940 Create PKG_DB_TMPDIR (${WRKDIR}/.pkgdb) in a separate step from creating
${WRKDIR}, and just always create it as part of a "make extract".  This
should fix problems where if an old work directory is lying around that
doesn't already have .pkgdb, then a "make reinstall" won't break.
2005-11-22 03:38:40 +00:00
rillig
347897565a Removed a line in the _SU_TARGET variable that had been left from
debugging.
2005-11-20 15:34:33 +00:00
rillig
6f1c497a94 Added subshell parentheses around the command for updating pkg_install.
This allows for copy&paste.
2005-11-20 08:07:30 +00:00
rillig
7c0b4711eb Reverted the SU_CMD change from between 1.1748 and 1.1749 almost
completely. The only difference to revision 1.1748 is that the
PATH=$$PATH:${SU_CMD_PATH_APPEND} argument is included in single quotes.
This will lead to problems when the PATH should contain single quotes
but works in all other cases. (Single quotes in the PATH hadn't worked
before either.) The tricky part regarding this code is that the PATH and
.CURDIR bypass the SU_CMD. They are evaluated before and inserted as
literals into the command that is executed by the SU_CMD. Preserving
these variables this way circumvents interpretation and modification
through the SU_CMD, but leads to ugly rules for quoting which are
currently not handled completely correctly.
2005-11-20 01:11:14 +00:00
rillig
f31a09a613 If the directory of a dependency does not exist, fail instead of (almost)
silently skipping the dependency.
2005-11-19 12:30:41 +00:00
tv
8b47f68d59 Collapse two .for blocks to improve readability:
_ULIMIT_CMD to use a ${...:@var@loop ...@} construct
_ACCEPTABLE to use a !empty(var:Mfoo) conditional
2005-11-18 17:07:13 +00:00
tv
591cd3d3db Use :D and :U constructs in a few more places to collapse some .if defined
blocks to a more parallelism-readable state.
2005-11-18 14:40:21 +00:00
tv
323473ea47 Simplify the _MASTER_SITE_{BACKUP,OVERRIDE} settings a bit by using a :D
construct rather than .if defined(), and changing := to =.
2005-11-18 14:31:54 +00:00
erh
60a3dc4c1b To support variants of make that run the shell so 'set -e' is true (shell
exits on any command failing), add a '|| ${TRUE}' when running the
check-vulnerable target in do-fetch.
2005-11-17 19:30:22 +00:00
erh
ff4b561978 Back out the previous change. The output _will_ be visible to the user.
See the "*)" case in the do-fetch target.
2005-11-17 17:18:01 +00:00
rillig
d6d32da4b7 The message that audit-packages is out-of-date is printed on stderr instead
of stdout because the latter would not show up to the user.
2005-11-17 15:57:47 +00:00
erh
8dfe14c73d Only show the message about fiddling with mk.conf if the output of
check-vulnerable actually contains some vulnerability ids.
2005-11-17 04:12:54 +00:00
erh
d2e73bdcc9 Minimum audit-packages version is _1_.40, not 0.40 2005-11-17 03:58:16 +00:00
erh
9d5fe07cb8 Missed a couple of underscores. Add them. 2005-11-16 21:43:40 +00:00
erh
e2097e6bcd Improve the handling of allowed vulnerabilities. Instead of the single
ALLOW_VULNERABLE_PACKAGES settings that applies to all packages, there can
now be per-package lists of allowed vulnerability ids:
	ALLOW_VULNERABILITIES.<pkgname>=<space separated list of vulnids>

To avoid duplication of code, audit-packages is now used to do these checks.
It can be skipped altogether by setting:
	SKIP_AUDIT_PACKAGES=yes
2005-11-16 20:59:22 +00:00
rillig
74ae2eeea9 Rewrote the _PATH_CMD command, which could not handle a PATH environment
variable before if it had multiple adjacent white-space characters in
it. Removed the dependency on awk(1), as a simple shell script can do
this job, too. Another change is that all kinds of weird pathnames can
be used for PREPEND_PATH, like /bin, "/bin/Program Files", "/     ",
/foo\ bar, and so on. This had not been possible before, too.

Related to PR 32079.

Ok'ed by jlam.
2005-11-15 21:21:01 +00:00
gavan
4cdf73d5ca make install doesn't work when updating pkg_install. Recommend make update
instead.
2005-11-15 18:03:40 +00:00
rillig
b50cd76352 Allow white-space in the PATH environment variable. Fixes PR 32079. The
shell quoting still isn't completely correct for some other variables.
This needs to be fixed, too.
2005-11-15 16:29:10 +00:00
rillig
b6a86c162f Removed trailing white-space. 2005-11-14 04:41:17 +00:00
tv
5a59befb3d Use lt_cv_sys_max_cmd_len in devel/libtool-base, too. 2005-11-09 18:42:32 +00:00
wiz
12f7a2cc85 Use new automatic flag; depend on appropriate pkg_install version. 2005-11-05 13:31:43 +00:00
rillig
8a3109674e Made the dependency directory check a little stricter. In the worst case
this could produce extra warnings. It does not affect the rest of the
build process at all.
2005-11-05 09:37:10 +00:00
rillig
c0a96d5c06 The last fix did not work. Completely reverted the unintended part of
the last changes.
2005-11-04 21:26:19 +00:00
rillig
b85f8bc360 Replaced "done" with "esac" to fix a syntax error. 2005-11-04 20:52:38 +00:00
jlam
290846b86d Relax rules a bit on INSTALLATION_DIRS -- we still enforce that
directories listed in INSTALLATION_DIRS are created in ${PREFIX}, but
it's now okay to include ${PREFIX} at the front of each, directory,
e.g. this is now okay:

	INSTALLATION_DIRS+=	${PREFIX}/bin

Makes using this variable a bit less unwieldy sometimes.
2005-11-04 20:36:42 +00:00
jlam
27daa6762a back out part of previous commit that was unintended. 2005-11-04 20:28:47 +00:00
jlam
8ab0dedc95 Use ${SLEEP} instead of sleep, and note that we use the sleep tool if
we're doing locking.
2005-11-04 20:06:14 +00:00
rillig
87cb035b9e Now that all packages using CONFIGURE_DIRS have been checked (and
modified) to not rely on this change, the default value of BUILD_DIRS
can be set to ${CONFIGURE_DIRS} instead of ${WRKSRC}. There are far more
packages setting CONFIGURE_DIRS and BUILD_DIRS to the same value than
there are packages needing different values, so this default seems more
reasonable. Now the default values are:

CONFIGURE_DIRS?=	${WRKSRC}		# (unchanged)
BUILD_DIRS?=		${CONFIGURE_DIRS}
INSTALL_DIRS?=		${BUILD_DIRS}		# (unchanged)
2005-11-04 11:27:41 +00:00
rillig
214f327f1b Removed the unused variable GNU_CONFIGURE_INFODIR, as suggested by
Stoned Elipod.
2005-11-02 18:32:19 +00:00
rillig
c6348f404b Changed back the default values for GNU_CONFIGURE_{INFO,MAN}DIR to what
they had been before my last change. I had thought it would be more
intuitive if they were based on GNU_CONFIGURE_PREFIX instead of PREFIX,
but this might break some packages.
2005-10-31 09:50:44 +00:00
rillig
1b6c14947f Added two new variables, GNU_CONFIGURE_INFODIR and GNU_CONFIGURE_MANDIR.
Up to now, a package that wanted to use a different location for
--mandir had to first define CONFIGURE_HAS_MANDIR=no and then
CONFIGURE_ARGS+=--mandir=${...}, which looks weird. Now it only has to
set GNU_CONFIGURE_MANDIR.
2005-10-31 09:42:19 +00:00
wiz
d31a568858 Use correct (internal) variable for pkg_add arguments. 2005-10-24 23:23:00 +00:00
rillig
a79249a753 Use $${foo} instead of $$foo to prevent ident(1) from reporting false
positives. No functional changes.
2005-10-24 18:28:42 +00:00
minskim
2ee4956c8b Pass PKG_REQD through shell environment, instead of arguments of make,
so that a dependent package can override it properly.  This makes
INSTALL_MAKE_FLAGS work when a package is installed as a dependency.
2005-10-23 16:58:42 +00:00
tv
38e53d7c11 Use show-vars-eval in show-needs-update. 2005-10-16 17:48:24 +00:00
tv
c46824e8da Add "show-vars-eval" target, which outputs eval-able shell expressions
to allow easy setting of multiple variables in one invocation.
2005-10-16 17:44:45 +00:00
reed
899ff50d6a For INSTALLATION_DIRS, use ${PKGMANDIR} instead of "man".
Also before it used a wildcard for *man and now get rid of that
wildcard in front.
2005-10-10 17:37:17 +00:00
rillig
7102a2e633 CONFIGURE_DIRS, BUILD_DIRS, TEST_DIRS and INSTALL_DIRS are interpreted
relative to ${WRKSRC}. This makes it possible to shorten definitions
like "BUILD_DIRS=${WRKSRC}/foo ${WRKSRC}/bar" in package Makefiles to
"BUILD_DIRS=foo bar". Almost all current uses of those directories are
given as absolute directories (mostly in the form ${WRKSRC}/foo), which
will work as they did before.
2005-10-08 13:16:28 +00:00
rillig
26cc823fb4 Renamed HTML_PKGNAME to _HTML_PKGLINK, which describes its contents more
precisely. Added _HTML_PKGNAME and _HTML_PKGPATH variables for better
readability. Fixed quoting style in print-summary-data.
2005-10-07 17:39:28 +00:00
rillig
1855c76620 Replaced some if's with case's to make the code simpler. Merged
multiple ${ECHO_N} into one ${ECHO}.
2005-10-07 16:57:14 +00:00