to ease the use of the sandbox.
$sandbox/sandbox umount
Umount the null mounts from the sandbox
$sandbox/sandbox mount
Mount the null mounts required by the sandbox (useful across reboots, ...).
$sandbox/sandbox whatever
Runs the command passed as arguments, chrooted into the sandbox.
Typical usage would be `$sandbox/sandbox /my/favourite/shell'.
$sandbox/sandbox
Same as `$sandbox/sandbox /bin/sh'
Approved by agc.
This prevent surprise when /etc/localtime -previously copied over in the
sandbox by pax/tar- is a symlink to /usr/share/zoneinfo/whatever.
- Improve somewhat some messages.
- Make sure $sandbox/$packages and $sandbox/$distfiles are created instead of
$packages and $distfiles.
environment, and pass them down to the bulk build. This means that the
/etc/mk.conf (or $MAKECONF) can be shared between ordinary builds and
bulk builds.
if the interactive stage is "fetch", since there will be no ${WRKDIR} at
that time.
Instead, since ${INTERACTIVE_COOKIE}s are only used in bulk builds, create
them in the package directory, along with the related .broken.`hostname`
file.
- Change the mplayer default font size from 18 to 14
- Add MPLAYER_USE_REALMEDIA, defaulting to NO
Used by mplayer to enable realmedia support by using the realplayer
libraries. Note that this only works on i386 and also adds a
dependency for the linux emulation to this package.
environment variable, which contains the name of the make(1) program to
invoke - suggestion by Julien Letessier some time ago, the confusion mine,
since I thought he was referring to something else completely.
Don't rely on there being a POSIX tr(1) in the path by default - test
explicitly for both "yes" and "YES".
Set the default for PRUNEDISTFILES to "no", since we can't assume that
the user wants us to delete something which he may have been keeping
around, and there are other ways of accomplishing this aim (lintpkgsrc
-o, for example).
Clean up some superfluous white space at the end of lines.
* move redundant sed expression into variable to only maintain it once
* properly catch grep return code in *both* cases (makes substitution
of pkg variables in @dirrm statements / directory names work)
will override the effects of any instance of the word "require". This
should _only_ be used by those packages that can be built with or
without pthreads _independently_ of whether any of its dependencies need
pthreads. Currently, this only only www/mozilla, which uses its own
threading library if native pthreads is unavailable, despite that it
uses GTK+, which _does_ need pthreads.
hard-syscall version of GNU pth as the official pthread replacement
package for those platforms that don't have a native pthread library.
USE_PTHREAD is now deprecated in favor of directly include
pthread.buildlink.mk, but the behaviour may be tweaked by setting
PTHREAD_OPTS to contain any of "native" and "require". More complete
documentation may be found in the first half of this file.
contents.
* Each PKG_JVM needs its own special _JAVA_PREFIX_DEFAULT hardcoded as
there's no way to discern the subdirectory of ${LOCALBASE}/java in which
the PKG_JVM is installed.
* If PKG_JVM == "sun-jdk", allow either sun-jdk13 or sun-jdk14 to be used,
preferring whichever one is already installed, but otherwise using the
best default for a given platform.
(instead of "build"). The rationale is that USE_JAVA= is "bigger" than
USE_JAVA=run in the sense that the former adds another dependency. For
packages that don't need the extra dependency, we can trim it off by
setting USE_JAVA more thoughtfully.
of the example rc.d scripts for a package. This defaults to
${PREFIX}/etc/rc.d, but may be reset for those odd packages, e.g. qmail,
that set LOCALBASE=/.
an optional value of "build" to represent that the package only wants a
build dependency on perl.
* Add a new public variable "PERL5_PKGSRCDIR" that is either
"../../lang/perl58" or "../../lang/perl5" depending on whether we need
perl>=5.8.0 or not.
Example:
CONFIG_GUESS_OVERRIDE= ${WRKSRC}/config.guess
CONFIG_SUB_OVERRIDE= ${WRKSRC}/config.sub
Just before the bulk of the "configure" phase, the named files will be
replaced with symlinks to their canonical pkgsrc versions in
pkgsrc/mk/gnu-config.
/usr/bin/gzcat nor ${LOCALBASE}/bin/gzip exist.
required for Solaris systems which do not include gzcat in the base
system.
sanity checked by Stoned Elipot <seb@netbsd.org>.
batch mode, into a separate target.
Call that target if we're in batch mode.
Modify the check for distfiles code to do a loop for all the
distfiles, and only print the message once at the end if the files
aren't present, and BATCH is defined.
Only check for distfiles' explicit presence if BATCH is defined.
definition.
INTERACTIVE_STAGE can take any of the values: fetch, configure, build and
install
Multiple values are allowed: e.g. INTERACTIVE_STAGE= configure install
Explain INTERACTIVE_STAGE and its use in documentation.
Patches provided by Chris Pinnock (cjep@netbsd.org).
packages will use the old SunOS-4.1 binaries. Otherwise, default to
using the recently enabled Solaris-2.5.1 binaries which include more
modern releases.
OBJMACHINE and OBJHOSTNAME to work. Also don't hardcode /usr/pkg and
/usr/X11R6 for LOCALBASE and X11BASE. Finally, fix a few typos in messages
while here.
Note: it was already as part of CONFIGURE_ENV value, this change only makes
it more "readable" IMHO.
Remove explicit addition of PKG_SYSCONFDIR to BUILD_DEFS in a couple of
Makefiles.
exists on the system. We still make noise about directories in
MAKE_DIRS_PERMS because those directories must have special permissions
that the admin should check, even if they do exist.
(1) do the work of not being so noisy for /etc and /etc/rc.d in the
scripts themselves, and
(2) make PKG_SYSCONFBASE and PKG_SYSCONFDIR usable from within
the INSTALL/DEINSTALL scripts by putting them in the header.
This preserves the ability for a single binary package to be used for both
PKG_CONFIG=yes or PKG_CONFIG=no.
--prefix option passed to a GNU configure script. It defaults to
${PREFIX}. This should help simplify the packages out there that avoid
setting GNU_CONFIGURE=yes because they need a custom --prefix option.
inclusion of bsd.own.mk. This is to allow OBJECT_FMT to be set explicitly
in ${MAKECONF} (/etc/mk.conf) to override the setting in bsd.own.mk on the
older NetBSD systems.
(1) Admins want to create users/groups on their own (pkg/17183).
(2) Admins don't want packages to setup an initial configuration.
The bsd.pkg.install.mk-generated INSTALL/DEINSTALL scripts have been
modified to check certain PKG_* environment variables to tune their
behaviour. This works whether installing from "make install" or from a
binary package.
PKG_CREATE_USERGROUP indicates whether the INSTALL script should
automatically add any needed users/groups to the system using
useradd/groupadd. It is either YES or NO, and defaults to YES.
PKG_CONFIG indicates whether the INSTALL/DEINSTALL scripts should do
automatic config file and directory handling, or if it should
merely inform the admin of the list of required files and
directories needed to use the package. It is either YES or NO,
and defaults to YES.
The make(1) variable INSTALL_RCD_SCRIPTS is removed. The package rc.d
script is now handled like other config files for the package, and is
copied into place if PKG_CONFIG=YES.
The default values above reflect the current behaviour. Setting
PKG_CREATE_USERGROUP=NO solves problem (1), and setting PKG_CONFIG=NO
solves problem (2).
To simply matters for users installing directly from pkgsrc, these
variables may also be defined in /etc/mk.conf, but behaviour at deinstall
time may be surprising. It is *HIGHLY* recommended that these values be
set in the shell environment instead.
which the basesrc USE_KERBEROS variable. Discussed on packages@
This fixes PR#17182 from Takahiro Kambe. The problem was pointed out by
FUKAUMI Naoki on a Japanese NetBSD mailing list.
Darwin (meaning "don't use the OS X cpp that groks precompiled
headers", which gets us the more compatible GNU cpp instead), and
blank on other systems.
Approved by agc and yyamano.
as part of the configure options. A pth with this option enabled provides
some semblance of pre-emptive threads - enough for things like xmms and
knode to actually work.
Add the necessary glue to pthread.buildlink.mk and appropriate CONFLICT
into pth.
It is hoped that the pkgs that currently use
-D_POSIX_THREAD_SYSCALL_SOFT=1
will be tested against pth-syscall and changed to use it. The goal is to
be able to add --enable-syscall-hard to devel/pth and retire pth-syscall.
Baby steps...
packages to build correctly on "transitional" systems, where the user
may have ${OBJECT_FMT} set in ${MAKECONF} to either a.out or ELF. On such
systems, you need something like this just to build the "pkg_install"
package. Closes PR pkg/16213.
If no PKG_JVM is specified, same behaviour as before.
If PKG_JVM=sun-jdk, check if on -current or linux and if so,
use sun-jdk14, else sun-jdk13. Else believe user when she
specified PKG_JVM=sun-jdk13 or PKG_JVM=sun-jdk14.
The Solid POP3 Server is an implementation of a Post Office Protocol
version 3 server that has flexibility as its main goal. The server is
easily configurable and has support for few features such as APOP
authentication scheme, virtual hosting, maildir and mailbox handling,
bulletins and expiration of messages. Each user can specify position and
type of his maildrop.
Contribyted by Piotr Stolc <socrtp@soclab.eu.org> in PR 16682
request to the prdownloads.sourceforge.net site, which used to return
the distfile, now returns 8KB (roughly) of html, including
advertisements, and a link to the real distfile.
Delete prdownloads from the MASTER_SITE_SOURCEFORGE list (sadly,
because it seemed to be the quickest way to download files from
sourceforge).
installed via binaries (if possible), even if there is no binary
pkg available for the current pkg.
Implementation still allows overriding DEPENDS_TARGET=build (etc.)
to force installation of dependencies by compiling if desired.
Patch submitted by Marko Schuetz <MarkoSchuetz@web.de> in private mail.
force a package to be installed into ${X11BASE} if it uses Motif. As a
side effect, the xemacs and xemacs-current packages no longer install into
${X11BASE} but into ${LOCALBASE}, which matches what they used to do before
being converted to use Motif dialogs.
header files. It defines MACHINE_ENDIAN which is one of three values:
little, big, or unknown.
This file is used in package Makefiles as follows:
.include "../../mk/endian.mk"
.if ${MACHINE_ENDIAN} == "big"
# ...big endian stuff...
.elif ${MACHINE_ENDIAN} == "little"
# ...little endian stuff...
.else
BROKEN= "Unknown endianness"
.endif
version of the package, and an attempt is made to install the package,
first "make clean" and then "make build" to pick up the new version of
the package before continuing with "make install", rather than printing
an error message and dying.
${WRKDIR} every time with "mkdir -p" - instead, use the ${WRKDIR}
target, so that any symlinks to it are created properly.
Also, when creating the ${DLIST} file in the update target, don't pipe
the output of pkg_info -R through "tail -n +4" - simply use pkg_info -qR
to achieve the same results.
GENERATE_PLIST is a sequence of commands, terminating in a semicolon,
that outputs contents for a PLIST to stdout and is appended to the
contents of ${PLIST_SRC}.
Convert the perl5 packlist handling to use GENERATE_PLIST.
- remove unwanted entries earlier by using ${GREP} -v
- substitute more specific bits before lesser ones: ${MACHINE_GNU_PLATFORM}
before ${MACHINE_ARCH} and ${MACHINE_GNU_ARCH}
- substitute *after* the sort so substitution does not move the
pathnames around
- add substitution of ${PKGVERSION}
- substitute ${PKGLOCALEDIR}/locale (this can help actually catching PLIST,
configuration, build, ... problems with respect to the correct locale
directory varying from platform to platform)
Enable this package for all platforms.
Added GAWK_ENABLE_PORTALS to mk/bsd.pkg.defaults.mk to enable/disable gawk
handling file names that start with `/p/' as a 4.4 BSD type portal file.
Changes from 3.0.4 to 3.0.5:
- bug fix release only.
Changes from 3.0.5 to 3.0.6:
- bug fix release only.
Changes from 3.0.6 to 3.1.0:
- A new PROCINFO array provides info about the process. The non-I/O /dev/xxx
files are now obsolete, and their use always generates a warning.
- A new `mktime' builtin function was added for creating time stamps. The
`mktime' function written in awk was removed from the user's guide.
- New `--gen-po' option creates GNU gettext .po files for strings marked
with a leading underscore.
- Gawk now completely interprets special file names internally, ignoring the
existence of real /dev/stdin, /dev/stdout files, etc.
- The mmap code was removed. It was a worthwhile experiment that just
didn't work out.
- The BINMODE variable is new; on non-UNIX systems it affects how gawk
opens files for text vs. binary.
- Gawk no longer supports `next file' as two words.
- On systems that support it, gawk now sets the `close on exec' flag on all
files and pipes it opens. This makes sure that child processes run via
system() or pipes have plenty of file descriptors available.
- If `--posix' is in effect, newlines are not allowed after ?:.
- Weird OFMT/CONVFMT formats no longer cause fatal errors.
- Diagnostics about array parameters now include the parameter's name,
not just its number.
- It is now possible to open a two-way pipe via the `|&' operator.
See the discussion in the manual about putting `sort' into such a pipeline,
though. (NOTE! This is borrowed from ksh: it is not the same as
the same operator in csh!)
- The close() function now takes an optional second string argument
that allows closing one or the other end of the two-way pipe to
a co-process. This is needed to use `sort' in a co-process, see
the doc.
- If TCP/IP is available, special file names beginning with `/inet'
can be used with `|&' for IPC.
- With `--enable-portals' on the configure command line, gawk will also
treat file names that start with `/p/' as a 4.4 BSD type portal file,
i.e., a two-way pipe for `|&'.
- Unrecognized escapes, such as "\q" now always generate a warning.
- The LINT variable is new; it provides dynamic control over the --lint
option.
- Lint warnings can be made fatal by using --lint=fatal or `LINT = "fatal"'.
Use this if you're really serious about portable code.
- A number of lint warnings have been added. Most notably, gawk will
detect if a variable is used before assigned to. Warnings for
when a string that isn't a number gets converted to a number are
in the code but disabled; they seem to be too picky in practice.
Also, gawk will now warn about function parameter names that shadow
global variable names.
- It is now possible to dynamically add builtin functions on systems
that support dlopen. This facility is not (yet) as portable or well
integrated as it might be. *** WARNING *** THIS FEATURE WILL EVOLVE!
- Profiling has been added! A separate version of gawk, named pgawk, is
built and generates a run-time execution profile. The --profile option
can be used to change the default output file. In regular gawk, this
option pretty-prints the parse tree.
- Gawk has been internationalized, using GNU gettext. Translations for
future distributions are most welcome.
- New asort() function for sorting arrays. See the doc for details.
- The match function takes an optional array third argument to hold
the text matched by parenthesized sub-expressions.
- The bit op functions and octal and hex source code constants are on by
default, no longer a configure-time option. Recognition of non-decimal
data is now enabled at runtime with --non-decimal-data command line option.
- Internationalization features available at the awk level: new TEXTDOMAIN
variable and bindtextdomain() and dcgettext() functions. printf formats
may contain the "%2$3.5d" kind of notation for use in translations. See
the texinfo manual for details.
- The return value from close() has been rationalized. Most notably,
closing something that wasn't open returns -1 but remains non-fatal.
- The array effeciency change from 3.0.5 was reverted; the semantics were
not right. Additionally, index values of previously stored elements
can no longer change dynamically.
- The new option --dump-variables dumps a list of all global variables and
their final types and values to a file you give, or to `awkvars.out'.
- Gawk now uses a recent version of random.c courtesy of the FreeBSD
project.
- The gawk source code now uses ANSI C function definitions (new style),
with ansi2knr to translate code for old compilers.
- `for (iggy in foo)' loops should be more robust now in the face of
adding/deleting elements in the middle; they loop over just the elements
that are present in the array when the loop starts.
This is mostly to get the improved/fixed version number handling provided
by this version of the tools, but see the log of
pkgsrc/pkgtools/pkg_install/Makefile revision 1.47 for a summary of
changes.
+ Check for the existence of pkg_tarup, and fail if it can't be found.
+ Place the binary package of the replaced-package in the ${WRKDIR},
rather than overwriting any instance in ${PKGREPOSITORY}.
+ Don't make a binary package when undoing the replacement.
libraries the following could occur
- a.out platforms: c++rt0.o would be missing and therefore
global contstructors would not work.
- ELF platforms libstdc++ and libm would not be explicitly
linked in.
This affected notably libqt and explains the build failure of kdelibs2 on
arm32.
Bump PKGREVISION and require it.
fails because otherwise the next invokation of the "update" target will
not attempt to remove the package again. Fix provided by Aaron J. Grier
in PR pkg/15827.
${X11BASE} instead of checking for -I or -L in front of it. This is okay
because ${BUILDLINK_X11_DIR} should just never appear in any installed
files regardless of its prefix. Problem noted in private email by Mark
Davies <mark@mcs.vuw.ac.nz>.
$${file} is a libtool archive (*.la). It allows libtool to properly
interact with buildlink at link time by linking against the libraries
pointed to by symlinks in ${BUILDLINK_DIR}.
This change has been tested by me on NetBSD-1.5ZA/i386 and by Mark
Davies <mark@mcs.vuw.ac.nz> on Solaris.
a.out but are now ELF, in a way that's consistent with bsd.own.mk in
NetBSD-current. This, incidently, makes the gcc package build again on
NetBSD-1.5.3_ALPHA/i386.
the package revision added. Replace "PKGNAME" in package list with this
value because the installed software doesn't know anything about package
system revision. This fixes package list problems in e.g. the "xemacs"
package.
We *must* record the version of "${.CURDIR}/Makefile" because we otherwise
only record the version of the wrong "Makefile" e.g.
"x11/xscreensaver-gnome/../xscreensaver/Makefile" for the
"xscreensaver-gnome" package. This will break the update target horribly.
When constructing the build version information, avoid problems
when there is a filename with an embedded space in the directory.
With thanks to Stoned Elipot for the practical help.
- - For "fetch", move the assignment of the "getsite.sh" script to a more
natural place, to get the full benefit of, and consistent handling for,
setting MASTER_SORT and MASTER_SORT_REGEX
- - For "fetch-list", embed the "getsite.sh" script into the generated
script, so that the calculation can be properly done at run-time.
("fetch-list" also respects MASTER_SORT and MASTER_SORT_REGEX.)
FOO_SED is user-appendable.
_FOO_SED = ${_FOO_PRE_SED} ${FOO_SED} ${_FOO_POST_SED}
_FOO_SED is used when actually making sed(1) substitutions.
This allows tweaking _FOO_{PRE,POST}_SED to alter the total sed expression.
"check-depends" target is what used to install dependencies before fetching
any files. ("install-depends" continues to perform that function for the
other main targets.)
only emit a message and don't actually fetch anything. This allows
us to make the output of "fetch-list" for these packages consistent
with other packages.
While we're in here, integrate DYNAMIC_MASTER_SITES with the
${ORDERED_SITES} macro. The only functional change here is that
${MASTER_SITE_OVERRIDE} is now respected. Still to do -- something
appropriate for "fetch-list" for these packages, like sourcing
"getsites.sh" into the generated script. (Well, "package", but there
are two others that do something similar in their "Makefile".)
Also eliminate the misbegotten _FETCH_ALLFILES macro -- now that only
"fetch" uses it, move it's functionality directly under "do-fetch".