Commit graph

256 commits

Author SHA1 Message Date
tron
b4d3a4b871 - Bump required package tools version to 19990412.
- Remove support for package tools without database support.
1999-04-19 20:04:18 +00:00
agc
f85381d98b Fix just-in-time su deinstalls on Solaris by using the full pathname for
${MAKE}.
1999-04-19 14:29:49 +00:00
tron
23e0063766 Completely replace "MASTER_SITE_SUBDIR" and "PATCH_SITE_SUBDIR" with
variable substituition of "MASTER_SITES" and "PATCH_SITES".
1999-04-15 20:39:38 +00:00
tron
0a35523e94 Add missing "|| ${TRUE}" to "${EGREP}" statement to avoid install failures
if no shared objects are found on a.out systems.
1999-04-14 19:44:24 +00:00
agc
f041c79b79 Work out the type of shared libraries once, at "make install" time, and
do this dynamically. This means that we no longer have to have a
separate pkgsrc copy of bsd.own.mk, which was a maintenance nightmare,
and usually out of date, and quite costly too (with a calculation of
whether NetBSD-current was being run every time the file was read).

Also, on a.out, add ldconfig lines to the generated PLIST only if they're
not already there, rather than if they were previously there, and ignore
the return value from ldconfig, which cannot be trusted. The ldconfig
calls have largely been made obsolete by the use of -rpath, but keep it
for just now for backwards compatibility.
1999-04-13 14:18:11 +00:00
hubertf
d8d65788d7 Move mirror-distfiles target around a bit so it can even be invoked
on platforms that are prohibited by ONLY_FOR_ARCH/OPSYS etc. so we
can provide distfile-backups even for them.
1999-04-09 02:06:53 +00:00
tron
7e78d6071c "bzcat" now handles symlinks properly. 1999-04-08 18:43:42 +00:00
agc
e7cd3bf02f Substitute for ${LOWER_VENDOR} when building the PLIST. Necessary for
some GNU packages.
1999-04-08 12:46:08 +00:00
hubertf
c706d14441 Prettify PKGSRCDIR - instead of /usr/pkgsrc/foo/bar/../.., just make it
/usr/pkgsrc (through make(1) macig).
1999-04-08 07:51:21 +00:00
agc
a2ea4de8a3 Make this work on Solaris again.
Minor formatting changes around the pkg-su-install target.

Pass on any PKG_DEBUG_LEVEL as well as FORCE_PKG_REGISTER definitions.
1999-04-06 14:11:10 +00:00
agc
161d30887f Make it obvious, when invoking ${SU_CMD}, on which machine this
installation is taking place. Also echo the command which will be
invoked in ${SU_CMD}, so that the Principle of Least Surprise applies.
1999-04-06 09:39:30 +00:00
hubertf
fb6a49d11b Get rid of this "0":
|
|    ...
|    ===>   [Automatic a.out shared object handling]
+--> 0
     ===>  Registering installation for fnlib-0.4
1999-04-05 02:25:59 +00:00
tron
c592794199 Use input redirection with "bzcat" once again because it refuses to handle
symbolic links on files.
1999-04-04 12:56:05 +00:00
tron
f5ce2acf3c Use "su" automatically for "make deinstall" target, too. 1999-04-03 21:03:50 +00:00
agc
55324d2876 Correct a typo in previous - fixes bzip2 extractions. 1999-04-02 21:14:12 +00:00
tron
7d06cde548 Use input redirection with "bzcat" again because it refuses to handle
symbolic links on files.
1999-04-01 22:21:27 +00:00
agc
171e025b4a Rewrite the extraction commands to be more intuitive.
In the vast majority of cases, nothing has changed (i.e. .tgz, .tar.gz,
and .tar.bz2).

EXTRACT_USING_PAX can be set as before.

For custom extractions, instead of using EXTRACT_BEFORE_ARGS,
EXTRACT_AFTER_ARGS and EXTRACT_CMD, simply set EXTRACT_CMD to be the
command needed to decompress and extract the lements from the archive.
${DOWNLOADED_DISTFILE} can be used to reference the distfile(s).
e.g. for compressed shars, where previously there was:

EXTRACT_CMD=           ${GZCAT}
EXTRACT_BEFORE_ARGS=
EXTRACT_AFTER_ARGS=    |sh

now use:

EXTRACT_CMD=           ${GZCAT} ${DOWNLOADED_DISTFILE} | ${SH}
1999-04-01 14:07:52 +00:00
agc
41cd971f7a Provide an acceptable default for PRE_ROOT_CMD - pointed out by Tim
Rightnour, and suggested by Hubert Feyrer.

Also print the "Installing" message in the correct place.
1999-04-01 07:29:14 +00:00
agc
e085512531 Avoid shell smarts: on NetBSD, type is a sh(1) builtin. If make(1) is
invoked, a subsequent "type make" will give "make is a tracked alias
for /usr/bin/make".  Using awk(1) to find the third part of that can
lose.  type is also a sh(1) builtin on Solaris, which prints "make is
hashed (/usr/bin/make)". However, there is a separate /usr/bin/type,
which prints the pathname at the end.

Minor reformat in same target - replace spaces by tabs where possible.
1999-03-31 10:59:44 +00:00
agc
7ebc0e8810 Fix minor typo in previous. 1999-03-31 09:57:29 +00:00
agc
ebb313e748 + Factor out the real-install target from the rest of the .USE ones.
This makes it possible to do the next step. There were so many .if
make(install) checks that this arguably should be done anyway.

+ In interactive installs, if the effective uid is not zero when "make
install" is attempted, then ${SU_CMD} is invoked (defaults to "su -
root -c", but sudo or priv could be used). This allows running as
non-root for much more time, which is a significant benefit. This also
allows installation of pre-requisite (DEPENDS) packages while building
a package as non-root user.

+ A hook has been added to run ${PRE_ROOT_CMD} before becoming root, so
that root can be given write access to ${WRKDIR} directories, for
example, on -noroot mounted NFS filesystems.
1999-03-31 09:04:18 +00:00
agc
2275cda883 Add an EXTRACT_USING_PAX definition, which, if defined, will use pax(1)
to extract archives when building, rather than GNU tar. This is needed
on platforms where GNU tar is not the standard version of tar, and by
people who prefer to use pax(1) in general.
1999-03-30 09:46:27 +00:00
hubertf
b305a58d41 Fix some comments 1999-03-30 00:47:01 +00:00
agc
67a5acc5cf Delete spurious ';', when making the "package" target with
FORCE_PKG_REGISTER set.
1999-03-29 14:55:43 +00:00
agc
6ab53e8533 Calculate the version of the package tools required when it's needed,
using "${MAKE} show-pkgtools-version", rather than every time
bsd.pkg.mk is read.

Introduce a definition to indicate the versions of package tools which use
the pkgdb cache, rather than using a magic 19990302 value.
1999-03-29 11:22:29 +00:00
agc
49ad04f369 Move the definition of BUILD_ROOT into bsd.pkg.mk, from the individual
package Makefiles which need it.
1999-03-22 09:38:22 +00:00
agc
e117782bbd Add ONLY_FOR_OPSYS processing, to go with the existing NOT_FOR_OPSYS 1999-03-17 12:05:40 +00:00
agc
e82f23a97f On Solaris, make patch(1) create a backup copy of the file it's patching 1999-03-17 10:33:57 +00:00
agc
48067df8d7 Simplify EXTRACT_CMD definitions, and add GTAR definition. 1999-03-16 15:28:37 +00:00
agc
990570fcef Optimise the manual page handling a bit more - miss out redundant commands. 1999-03-16 09:50:28 +00:00
agc
d0b7ba3042 Major changes in manual page handling - deal with imake's man pages in
Solaris, and consolidate other manual page handling.
1999-03-12 10:19:14 +00:00
tron
0c766cf685 If "GNU_CONFIGURE" is set to "yes" supply "${INSTALL}" with full pathname
again because "configure" will create bogus makefiles otherwise.
1999-03-10 18:31:02 +00:00
agc
b733efcf0d Fix another difference between Solaris and NetBSD sh(1). On Solaris,
for f in $var; do...

where $var is empty, produces an error.
1999-03-09 16:39:56 +00:00
agc
5a3c955bf6 Improve ELF shared lib handling, so that it now works on Solaris.
In the process, it was found that the Solaris ln(1) doesn't work quite
the way its manual page claims it does. In particular, "ln -fs a b" will
fail if b already exists, rather than deleting the link. Work around this
by using an explicit rm(1) prior to calling "ln -s".
1999-03-09 15:31:59 +00:00
agc
53c3157512 Solaris sh(1) doesn't understand the "if ! command; then..." construct.
So dumb-down the shell commands used: make them into
	"command; if [ $? -ne 0 ]; then..."
Suggested by David Brownlee.
1999-03-09 11:14:52 +00:00
agc
0fd3106f42 Add Solaris support to pkgsrc, using Christos Zoulas' NetBSD emulation
package. Tested for some packages on Solaris 2.6 on Sparc.
1999-03-08 17:26:54 +00:00
hubertf
375e34ac1d Allow (recursive) cleaning out and deinstallation of required packages:
make clean CLEANDEPENDS=YES
 make deinstall DEINSTALLDEPENDS=YES

Both CLEANDEPENDS and DEINSTALLDEPENDS default to NO, so this isn't
different from the current behaviour.
1999-03-03 22:53:49 +00:00
hubertf
7742bbe8ac Call "pkg_delete -O' on "make reinstall", to remove things not only
from /var/db/pkg, but also from the pkgdb (in case someone does a
"make reinstall" with FORCE_PKG_REGISTER set). Pointed out by Greg Woods.

XXX This change is only effective if one has a pkg_* tools as of 19990302
or later, but I will not bump the PKGTOOLS_REQD version up, as I do
not expect many people to run into this (and if, it's not a problem).
One should just remove the check with ${_PKGTOOLS_VER} >= 19990302
if the version's bumped beyond 19990302.
1999-03-03 17:48:23 +00:00
hubertf
1fa4d66514 Set things like PATH for targets pre-*, do-* and post-* (from ${MAKE_ENV}).
This prevents that the pkg builder needs ${LOCALBASE/bin in $PATH.
Helps also with Peter Seebach's problem in PR 7047.
1999-02-25 23:02:38 +00:00
tron
4f617e15e1 Because 1.3's and 1.3.x's "pax" chokes on some ".tar.bz2" archives
use "tar" for now.
1999-02-21 14:29:58 +00:00
hubertf
b7e101fd1b Do not overwrite (files of) other pkg versions, warn instead. 1999-02-16 03:23:04 +00:00
tron
0d2728f8bc Use "pkglibtool-1.2p1" as package libtool. 1999-02-14 21:15:12 +00:00
tron
e97a78cea2 Add automatic handling for ".tar.bz2" archives - just set "EXTRACT_SUFX"
and "bsd.pkg.mk" will do the rest. Furthermore replace all remaining
instances of ":../../foo/bar" in dependences by ":${PKGSRCDIR}/foo/bar".
1999-02-13 11:06:47 +00:00
tv
9e9372fd24 Back out the info dir changes/install-to-LOCALBASE; /usr/share/info was
not in pkgsrc's info path, which confused me to no end.
1999-02-11 17:56:08 +00:00
tv
f0ac2ccd5c Also make this work if gtexinfo is not installed at all and info is in the
base; install the symlink at ${LOCALBASE}/info/dir if there is nothing
there yet.
1999-02-11 15:40:13 +00:00
tv
ea800198df Missed the !exists(/usr/bin/install-info) on the gtexinfo dependency. 1999-02-11 14:44:00 +00:00
tv
6a93f491ef If /usr/bin/install-info exists:
- do not depend on gtexinfo pkg even if USE_GTEXINFO is set
- if ${LOCALBASE}/info/dir is a regular file, nuke it and replace as a
  symlink to /usr/share/info/dir.  (Upgrades of the base system will
  do this too, except that those will copy the contents of
  /usr/pkg/info/dir first.  There is no truly clean solution here.)

Also, use --info-dir=${LOCALBASE}/info/dir, NOT ${PREFIX}/info/dir.
info(1) only searches one directory file.
1999-02-11 14:42:08 +00:00
tv
9cc74c3676 Don't match a slash in the middle of a library name. 1999-02-03 15:11:46 +00:00
frueauf
3972e41670 Use a more generic pattern to match libs in PLIST, this will
DTRT on ELF for e.g. lib/mozilla/*.
1999-02-01 11:37:02 +00:00
tron
f3abb7c3ec Make "distclean" target work for packages without distribution and
patch files, e.g. meta packages.
1999-02-01 00:43:13 +00:00