Disables to "no", which results in no gnome-libs being needed.
Patch contributed by Stefan Krüger <skrueger@europe.com> in private mail,
with some changes from me.
SPECIAL_PERMS are lists that look like:
file user group mode
At post-install time, file (it may be a directory) is changed to be
owned by user:group with mode permissions.
SPECIAL_PERMS should be used primarily to change permissions of files or
directories listed in the PLIST. This may be used to make certain files
set-uid or to change the ownership or a directory.
Packages that install setuid executables should list them in SPECIAL_PERMS
so that the correct user and group will be used for file ownership, even
if the uid/gid changes between the package creation and the package
installation.
was only able to check the paths for NetBSD and Linux...Solaris and Darwin
pkgsrc developers should change the path to expr in the right defs.*.mk
file.
environment. Instead, create a new variable PKG_JAVA_HOME, which is
passed to the configure and build processes via:
JAVA_HOME=${PKG_JAVA_HOME}
to override any environment setting for JAVA_HOME. This should fix
pkg/17989.
preference to or in place of Sun audio support in various packages. People
using audio/oss should set USE_OSS in their /etc/mk.conf when building
packages.
when support for BUILD_DEPEND-only java packages was introduced -- this problem
was preventing java from being registered as a dependency for a number of java-based
packages.
to only add -Ldir/.libs for *.la files that are not named with absolute
paths or named with an absolute path starting with ${WRKSRC}. This should
fix the problem with converting kdebase3 to buildlink2.
overflowing the make variable size limit.
* Rename _BLNK_WRAP_ENV to _BLNK_WRAP_SETENV, and use _BLNK_WRAP_ENV to
set the shell environment for the wrappee. Allow BUILDLINK_WRAPPER_ENV
to add to the shell environment.
a full dependency. BUILDLINK_DEPMETHOD.<pkg> is now a space-separated
list of the words "full" and/or "build", and if any of them is "full",
then a full dependency on <pkg> is used. buildlink2.mk files may now do:
BUILDLINK_DEPMETHOD.<pkg>+= full
to convert from a build to a full dependency.
Previously, if a package Makefile set BUILDLINK_DEPMETHOD.<pkg>=build,
there was no way to override its value consistently.
use buildlink2 and set USE_X11 will use x11-links, or if they will simply
symlink the X11 files directly into ${BUILDLINK_DIR}. If USE_X11_LINKS is
"YES" (the default), then x11-links is used. If USE_X11_LINKS is "NO",
then the X11 files are symlinked directly.
There is a choice here between speed and flexibility. Using x11-links is
faster since you don't need to spend time symlinking all of the X11 files
into ${BUILDLINK_DIR}. However, if you update your X11 installation, then
the x11-links package will likely be out-of-date. Conversely, directly
symlinking the X11 files will protect you from changes in your X11
installation when you update, but there is a (small) time penalty to have
to do it for every package that uses X11.
buildlinking them into ${BUILDLINK_DIR}. This should allow cases where a
/usr/lib/libintl.la escaped into an installed libtool archive (during the
time when buildlink2 was broken for about 4 days) to be handled properly.
BUILDLINK_DEPENDS.foo= foo>=1.0 foo<1.5
then this is converted to:
DEPENDS+= foo>=1.0:../../category/foo
DEPENDS+= foo<1.5:../../category/foo
We can use this to record upper bounds on dependency versions.
directory escape into the installed *.la files. Fix this by only adding
-L*/.libs if the *.la file is uninstalled, and by filtering out references
to ${WRKSRC}.
* Replace ELK_USE_{X11,MOTIF} with ELK_GUI, which is either "none" or is
some combination of "xaw" and/or "motif".
* Reenable Motif -- it seems to build properly with OpenMotif-2.0.x.
* Modernize this package a bit and clean up how linker flags are passed to
the build process by using the new variables available.
the main transformations have been performed.
The ld wrapper can now accept "-Wl,*" arguments and transform them
appropriately by stripping of the -Wl and the commas. This will obiviate
the need for logic in pkgsrc that strips away the "-Wl," depending on
whether the platform was a.out or ELF, and whether the individual package
chose to link using "cc" or "ld".
depend on other uninstalled libtool archives. During the relinking process
the newly installed libraries weren't being found. We now insert the
appropriate -Ldir flags to allow them to be found in the uninstalled
locations.
/etc/rc.d. This is controlled by the new variable PKG_RCD_SCRIPTS which
may be set in /etc/mk.conf or in the shell environment in which the
INSTALL script is executed. PKG_RCD_SCRIPTS only takes effect if
${PKG_CONFIG} == "YES" and defaults to NO.
RCD_SCRIPTS. From the comments in bsd.pkg.install.mk:
# rc.d scripts are automatically generated and installed into the rc.d
# scripts example directory at the post-install step. The following
# variables are relevent to this process:
#
# RCD_SCRIPTS lists the basenames of the rc.d scripts
#
# RCD_SCRIPT_SRC.<script> the source file for <script>; this will
# be run through FILES_SUBST to generate
# the rc.d script
#
# RCD_SCRIPTS_EXAMPLEDIR the directory in which to install the
# example rc.d scripts
#
# If the source rc.d script is not present, then the automatic handling
# doesn't occur.
bsd.buildlink2.mk. This allows packages that use buildlink2 to fix up
*-config and other shell scripts that hardcode wrong library names as a
side-effect of how buildlink2 works, e.g., the package thinks "-laa" works
because the wrapper silently converts it to "-laa-x11.
REPLACE_BUILDLINK files relative to ${WRKSRC}
REPLACE_BUIDLINK_PATTERNS shell glob
REPLACE_BUILDLINK_SED sed expression to run over the files named
above
buildlink2. We used to create a timestamp file in the .libs directory.
Now, we add a line to the *.la and *.lai file that directly notes that it
has been "modified by buildlink2". This makes it easier to debug problems
caused by using the wrong libtool during either a build or install by
checking if the *.la or *.lai files have the "modified by buildlink2" line.
the shell would definitely interpret in a wrong fashion (like
"perl>=5.0" - we don't want to create some file).
Pointed out by Jan Schaumann <jschauma@netmeister.org> on tech-pkg.
dependency on ghostscript. This handles the dependency patterns that will
match either ghostscript{,-nox11} and ghostscript-gnu{,-nox11} depending
on which version number of ghostscript is required. From the comments at
the top of the file:
To use this Makefile fragment, simply:
(1) Optionally set GHOSTSCRIPT_REQD to the minimum version number of
Ghostscript required by the package,
(2) Optionally set USE_GHOSTSCRIPT to "build" to only add a build-time
dependency on Ghostscript,
(3) And include this Makefile fragment in the package Makefile,
CONFIGURE_DIRS, and allows running the shell commands in the do-build and
do-install targets within the specified directories. Both variables
default to ${WRKSRC}.
${_PKGSRCDIR} and ${BUILDLINK_DIR} from any filtering, as they may be
subdirectories of ${LOCALBASE}, /usr/pkg, or /usr/local.
This should fix pkg/18142 and other puzzling problems reported on the
tech-pkg mailing list where it was necessary to revert back to buildlink1
versions of packages in order to build when the pkgsrc tree or the work
directories are kept under /usr/local.
contains all of the transformations that we may want to use to fix up
any *-config scripts that have incorrect paths or library names. Also
add some _BLNK_UNTRANSFORM_SED.* variables that do the opposite of the
corresponding _BLNK_TRANSFORM_SED.* variables, and that are used to clean
up libtool archives.
generalise the linker flags used to export symbols by setting them on
a per-OS basis.
> many packages force -Wl,-export-dynamic which is not portable outside GNU ld
> and cause problems e.g. on Solaris. some of these packages use if
> conditionals either only for NetBSD or except SunOS, but the state is not
> coherent and it may complicate later when support for new OS is added to
> pkgsrc (e.g. ongoing work on HP-UX support).
>
> jlam proposed the following framework in discussion on tech-pkg:
>
> http://mail-index.netbsd.org/tech-pkg/2002/06/21/0009.html
>
> now, ${EXPORT_SYMBOLS_LDFLAGS} is used instead of directly defining
> -Wl,-export-dynamic which is set in appropriate defs.*.mk to reasonable
> values. packages should be converted to this framework by:
>
> 1) replacing LDFLAGS+= -Wl,-export-dynamic and LIBS+= -export-dynamic with:
>
> LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS}
>
> 2) for use in patchfiles, add this variable to MAKE_ENV if needed:
>
> MAKE_ENV+= EXPORT_SYMBOLS_LDFLAGS=${EXPORT_SYMBOLS_LDFLAGS}
>
> 3) replace occurances of -Wl,-export-dynamic and -export-dynamic in patch
> files with:
>
> $(EXPORT_SYMBOLS_LDFLAGS)
add one section for SunOS to possibly allow using the SUNWspro compilers
when building X11 packages that use imake. Many thanks to Matthias Scheler
for his help on this.
Also use _BLNK_OPSYS instead of OPSYS in bsd.buildlink2.mk so that's it's
easier to pretend I'm using a different OS when doing buildlink2 work.
This script is part of the buildlink2 infrastructure and is harmless if
not used. This allows devel/zlib to build on Solaris. Problem noted by
Stoned Elipot.
OPENSSH_USER
OPENSSH_UID
OPENSSH_GROUP
OPENSSH_GID
OPENSSH_CHROOT
Use these to automatically create user/group if they do not already
exist. Assists platforms which do not have an 'sshd' user by default,
while adding flexibility for NetBSD systems.
Checked by Stoned Elipot <seb@netbsd.org>.
Each word of UNLIMIT_RESOURCES is supposed to be a knob on
ULIMIT_CMD_<word> variable which value if defined is added to _ULIMIT_CMD.
The ULIMIT_CMD_* variables are set per $OPSYS in defs.*.mk and are overridable
by the user.
Solaris' default value of ULIMIT_CMD_memorysize adjusted as suggested in PR
pkg/18087 by Jonathan Perkin <sketch@rd.bbc.co.uk>.
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.