Commit graph

2654 commits

Author SHA1 Message Date
salo
308a25fb9c Sync comments with reality. 2003-09-12 22:53:18 +00:00
grant
76c54876d1 remove redundant comment about USE_GCC2 and USE_GCC3 until they are
better handled.
2003-09-12 20:10:17 +00:00
grant
b04786501a move a SunPro tweak to compiler.mk. 2003-09-12 16:07:09 +00:00
grant
ada56b5a0b tidy up handling of LDFLAGS wrt USE_GCC_SHLIB a little. 2003-09-12 15:54:40 +00:00
salo
83dbd690de Typos/punctuation/caps. 2003-09-12 13:35:28 +00:00
grant
c934b0c4e0 start of improved compiler handling, mostly derived from the existing
gcc buildlink2.mk files and splitting the non-buildlink2.mk bits out
into compiler.mk.

this allows USE_GCC2 and USE_GCC3 to work with non-buildlink2 packages
again.
2003-09-12 13:03:38 +00:00
jlam
efc1b569dc Create two new variables:
DEFAULT_VIEW.${PKGBASE}      default view for ${PKGBASE}
VIEWBASE                     base location of files at run-time

The first is meant to be set by package Makefiles or in /etc/mk.conf, while
the latter is meant to read/used only.  VIEWBASE is either ${LOCALBASE} or
or ${LOCALBASE}/${DEFAULT_VIEW.${PKGBASE}} depending on whether the first
variable is the empty string or not.
2003-09-12 10:54:49 +00:00
jlam
b49af05cee Move the default settings for USE_BUILDLINK[23] from bsd.pkg.mk into
bsd.prefs.mk so that they may be tested/used in buildlink[23].mk files.
2003-09-12 10:49:28 +00:00
jlam
08c49aada0 Make adding config files to views other than the default view work if
PKG_SYSCONFBASE points outside of ${PREFIX}.
2003-09-12 05:15:03 +00:00
dmcmahill
592bab0b32 s/vulnerabilities/pkg-vulnerabilites 2003-09-11 03:00:21 +00:00
jmmv
00556183ea During print-PLIST, use PKGNAME_NOREV to search for matches, not PKGNAME
(though, keep the ${PKGNAME} replacement, as it contains the right value
in the PLIST).
2003-09-10 22:29:10 +00:00
jlam
4831429fd8 There's no need to preserve mode bits when copying the x11-links tree.
This fixes problems where .buildlink assumes the mode of
${LOCALBASE}/share/x11-links, which may be read-only.
2003-09-10 12:58:38 +00:00
jlam
059f36a8ff Create TEST_ENV variable that's initially just MAKE_ENV, but can be added
to by a package Makefile.  This is passed as the environment when running
the test target.  We often need this since packages can require setting
up LD_LIBRARY_PATH so that we can test before installation.
2003-09-10 02:20:50 +00:00
jlam
0f8e732621 Check that ${_PKG_DBDIR} exists before cd'ing into it. This makes
building using buildlink3 on systems that have never seen pkgsrc before
work properly.
2003-09-10 02:16:42 +00:00
jlam
106a1602ee Update PKGTOOLS_REQD to 20030907. Critical fixes include making
"pkg_delete -O pkgname" actually remove file entries for pkgname from the
pkgdb.byfile.db database.  This makes FORCE_PKG_REGISTER work again (this
must have been broken for a long time).
2003-09-09 13:36:36 +00:00
jlam
42f190469c Check that the lockfile isn't stale from being left over across a system
reboot by testing whether or not /var/run/dmesg.boot is newer than it or
not.  Fix suggested by agc@NetBSD.org and simonb@NetBSD.org.
2003-09-09 11:00:30 +00:00
jlam
81329481d9 Use pax(1) instead of "cp -R" so we preserve symlinks instead of following
them.
2003-09-09 09:15:02 +00:00
jlam
f32c4c102a Note how package views is also similar to GNU Stow, but state clearly the
main difference in philosophy between package views and these other
software management systems.
2003-09-09 09:13:20 +00:00
jlam
71ea615ef5 Document this file, and do the command length reduction by suppressing
repeated options as is done in in revision 1.3 of wrapper.sh.
2003-09-09 09:11:42 +00:00
seb
3ea756e459 Remove this unsupported float comparison. How did this worked? I wonder...
Introduce private variables _{MAKEINFO,TEXINFO_REQD}_{MAJOR,MINOR}
holding the major and minor number version numbers of available makeinfo
and of the minimum required version.
Use these to sort out if devel/gtexinfo is needed as dependency.
2003-09-09 09:10:55 +00:00
jlam
774516b55e Reduce length of command lines executed by not appending some options that
we've already seen:

-[DILR]*|-Wl,-R*|-Wl,-*,/*
	These are all only useful the first time we see them.  All other
	instances are redundant.

-l*
	Extra libraries are suppressed if they're repeated, e.g.,
	"-lm -lm -lm -lX11 -lX11 -lm -lm" -> "-lm -lX11 -lm".

The screen output is still likely to be very verbose, but you can check
in work/.work.log to see the actual commands executed.
2003-09-08 21:10:26 +00:00
jlam
56ed400b83 Provide URL for CMU depot. 2003-09-08 10:36:02 +00:00
jlam
b6b8313c8a Instead of canonicalizing all ${DEPOTBASE}/* into ${LOCALBASE}, don't
do it for rpath specifications, e.g. -Wl,-R/dir, -Wl,-rpath,/dir, etc.
This lets the depot directory for a package, in addition to the usual
/usr/pkg/lib, to be added to the rpath of a program or shared library
of an "overwrite" package.  Now, if the package instance in the
default view is forcibly removed, then shared library references will
still resolve to the existing shared libraries in the depot directory.

In the following example, I've built jpeg as a pkgviews package, and
tiff as an "overwrite" package:

% ldd /usr/pkg/lib/libtiff.so
/usr/pkg/lib/libtiff.so:
         -ljpeg.62 => /usr/pkg/lib/libjpeg.so.62
         -lz.0 => /usr/lib/libz.so.0
         -lm.0 => /usr/lib/libm387.so.0
         -lm.0 => /usr/lib/libm.so.0
% pkg_delete -f jpeg-6b
pkg_delete: package `jpeg-6b' is required by other packages:
        tiff-3.5.7nb1
% ldd /usr/pkg/lib/libtiff.so
/usr/pkg/lib/libtiff.so:
         -ljpeg.62 => /usr/pkg/packages/jpeg-6b/lib/libjpeg.so.62
         -lz.0 => /usr/lib/libz.so.0
         -lm.0 => /usr/lib/libm387.so.0
         -lm.0 => /usr/lib/libm.so.0

The benefit here is that if the jpeg package is updated and also has
a bump in the major number of the shared lib, e.g. libjpeg.so.63.0,
then you can remove the old jpeg instance from the default view and
add the new jpeg package into the default view, and
/usr/pkg/lib/libtiff.so will _still_ resolve its libjpeg.so.62
reference.

Welcome to the power of Package Views!
2003-09-08 09:18:15 +00:00
jlam
6d54ef099c Rename BUILDLINK_PKG_DBDIR into _BLNK_PKG_DBDIR. This really is a private
implementation variable.
2003-09-08 07:30:07 +00:00
jlam
fb44146d81 Allow BUILD_VIEWS to be "yes" or "YES". 2003-09-08 01:13:02 +00:00
jlam
ea5ce961a5 We want to add consistently add to the default view if we use pkgviews
and pkg_add'ing.
2003-09-08 01:06:01 +00:00
jlam
44ee1a54b6 Suggest a good default value for RCD_SCRIPTS_DIR for pkgviews users. 2003-09-06 12:04:09 +00:00
jlam
ed5b560723 Move RCD_SCRIPTS_DIR definition to bsd.pkg.defaults.mk. This implies that
RCD_SCRIPTS_DIR is user-settable in /etc/mk.conf.
2003-09-06 11:51:16 +00:00
jlam
831a403f7f Install the rcd scripts at post-install time, not at post-install-script
time.  The rc.d script needs to be recorded in the PLIST, and
post-install-script time is too late if we use dynamic PLISTs.
2003-09-06 11:43:55 +00:00
jlam
27e999941f Add .PHONY targets for Makefile correctness. 2003-09-06 11:41:31 +00:00
jlam
834edb02e6 Move PKG_SYSCONFBASE definition into bsd.pkg.defaults.mk. This implies
that it's user-settable from /etc/mk.conf.
2003-09-06 11:39:29 +00:00
cjep
2fd1bc190e Also descend to sub directories for make lint 2003-09-06 11:28:13 +00:00
tron
20f7d53ff8 Remove "/pub" from pathnames on "ftp.fu-berlin.de" because such a directory
doesn't exist. It's apparently only mapped in the FTP server configuration.
2003-09-05 19:00:57 +00:00
jlam
134c40e5d9 "make deinstall" now tries to just delete this particular package first
before trying to delete all packages with the same PKGBASE.  This is better
semantics in a pkgviews world.
2003-09-05 15:00:10 +00:00
martti
58159d04f2 Use LOCALBASE instead of ZOULARISBASE 2003-09-05 13:54:13 +00:00
jlam
440bc402a1 Move BUILDLINK_CHECK_BUILTIN.<pkg> documentation into bsd.buildlink3.mk. 2003-09-05 11:39:02 +00:00
jlam
19fd2859c5 Package Makefiles should refer to PKG_SYSCONFBASEDIR instead of
PKG_SYSCONFBASE when they want PKG_SYSCONFDIR stripped of
PKG_SYSCONFSUBDIR.  This makes PKG_SYSCONFBASE=/etc work with pkgviews by
installing all config files into /etc/packages/<pkg> instead of
occasionally putting some directly into /etc.

Also only create PKG_SYSCONFDIR if we're actually going to copy config
files.
2003-09-05 11:34:25 +00:00
jlam
e8c411d422 Typo 2003-09-05 09:44:34 +00:00
jlam
68b09207ef Check that USE_BUILDLINK2 is defined before including buildlink2.mk files. 2003-09-05 09:44:01 +00:00
jlam
6a970fe50b Allow buildlink3.mk file to specify BUILDLINK_CFLAGS.<pkg> that are
automatically added to CFLAGS and CXXFLAGS.  Note that -D... and -I...
settings should go into BUILDLINK_CPPFLAGS.<pkg> instead.  BUILDLINK_CFLAGS
is reserved for stuff like "-pthread" or other compiler-specific flags.

Also note why we add BUILDLINK_CPPFLAGS.<pkg> to both CFLAGS and CXXFLAGS
(because a lot of software just uses CFLAGS and ignores any CPPFLAGS value
that we pass to it).
2003-09-04 19:38:06 +00:00
jlam
bef0ac1b69 Provide a default definition for BUILDLINK_IS_BUILTIN.<pkg> that is yes/no
depending on whether or not the <pkg> is provided in the base system.  Also
tighten the BUILDLINK_PKG_DBDIR.<pkg> definition.
2003-09-04 05:40:25 +00:00
erh
2912824c9a Add an apache.mk, similar to java-vm.mk and emacs.mk, that allows apache
modules that will work with more than one version of the apache web server
to not require a separate package for each version of apache.  This was
originally based on java-vm.mk
	Makefile variables added:
		PKG_APACHE_ACCEPTED : Contains the list of valid versions of apache.
		USE_APR : If set, the package required apr to run.
	User variabled added:
		PKG_APACHE_DEFAULT : The version of apache to install, if there is
		                     none yet.  Defaults to apache13
	Variables set:
		PKG_APACHE : Which version of apache is being used.
2003-09-04 03:00:19 +00:00
jlam
09b844bb4c Fix typo ;; -> :; 2003-09-03 16:35:01 +00:00
tron
9502649c28 The package vulnerability list is now called "pkg-vulnerabilities". 2003-09-03 15:05:43 +00:00
jlam
1c49c25658 Require 20030824 of the pkg_install tools to get the changes for using
pkg_add(1) on non-NetBSD (or more precisely, non-poll) systems.
2003-09-03 14:08:09 +00:00
jlam
1a2276974b Don't restrict the user to only the default view. Also allow user to
customize the default view through setting DEFAULT_VIEW in /etc/mk.conf.
2003-09-03 13:56:28 +00:00
seb
17d17139aa No need to substitute anymore for ${INSTALL_INFO} in PLIST. 2003-09-02 23:38:56 +00:00
seb
99cb24f981 Test for ${PREFIX} existence before mkdir'ing it.
This fix NO_MTREE installation on Solaris when ${PREFIX} already exists
and is a symlink.

Example:

# uname -sr
SunOS 5.9
# cd /tmp
# rm -f foo
# ln -s /etc foo
# /bin/mkdir -p /tmp/foo
mkdir: "/tmp/foo": Exists but is not a directory
#
2003-09-02 12:01:14 +00:00
jlam
841b57441b Merge pkgviews-mk branch into the HEAD by running:
cd pkgsrc/mk
	cvs update -Pd -A
	cvs update -Pd -j pkgviews-mk-base -j pkgviews-mk
2003-09-02 06:59:37 +00:00
jlam
fe1d66ea29 Create new variables PKG_*_CMD that contain just the paths to the various
pkg_install tools.
2003-08-31 11:04:58 +00:00
wiz
893a275787 Add belnet and keihanna sourceforge mirrors; remove switch and osdn.
Addresses PR 22641.
2003-08-31 10:29:16 +00:00
jlam
e4ba59523f bsd.buildlink2.mk says that Solaris 9 works with full caching. 2003-08-31 10:17:16 +00:00
jlam
759dd368bc Remove N/A from this file... it's much easier to read now. 2003-08-31 10:15:42 +00:00
jlam
5ed77489aa Don't allow -R* options in dependency_libs -- rpath info shouldn't be in
there.
2003-08-31 08:56:39 +00:00
jlam
c5621e9ba4 Strip bare -L${BUILDLINK_DIR}, -L${BUILDLINK_X11_DIR} and -L${WRKSRC}, as
well as stripping -L to subdirs of these directories from dependency_libs
lines in *.lai files.  This corrects the changes in revision 1.18 of this
file and restores some functionality accidentally removed in version 1.19
of this file.  Should fix the subversion buildlink/libtool problem
reported on tech-pkg@.
2003-08-31 06:07:33 +00:00
jlam
9d564a4e5e Back out last revision since we modified bsd.pkg.install.mk to require
that {,DE}INSTALL_EXTRA_TMPL to be set if a package Makefile wants to use
them.
2003-08-30 22:57:05 +00:00
jlam
d505acc9c8 No longer assume that a DEINSTALL/INSTALL script in the package directory
is meant for {,DE}INSTALL_EXTRA_TMPL.  Package makefiles should explicitly
set those variables if they want to use them in conjunction with
USE_PKGINSTALL.
2003-08-30 22:53:39 +00:00
jlam
e19b751d03 Reorder the inclusion of bsd.pkg.install.mk so that it appears *before*
texinfo.mk.  This ensures that {,DE}INSTALL_EXTRA_TMPL isn't defined by
texinfo.mk before bsd.pkg.install.mk checks those variables.
2003-08-30 20:52:09 +00:00
jlam
8eeebf165b Add for use by the INSTALL/DEINSTALL scripts. 2003-08-30 18:42:36 +00:00
jlam
30dae47585 GNU make installed from pkgsrc can always be found as
${LOCALBASE}/bin/gmake.  ${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}/make
technically works, too, but this covers the (unsupported!!) case where the
user has GNU_PROGRAM_PREFIX="" and has moved the "make" binary directly
over the "gmake" symlink created by pkgsrc (Jeremy Reed reported this
problem on tech-pkg@ because he uses this a a debugging technique to find
out whether GNU make is actually needed by a package or not).
2003-08-27 20:03:44 +00:00
jlam
8d5649cbcd Correct the glob so that we actually match -L${BUILDLINK_DIR}/* and
-L${BUILDLINK_X11_DIR} and discard them.  (from pkgviews-mk).
2003-08-27 12:57:52 +00:00
jlam
e5462ca730 (*) Nuke the _BUILDLINK_SUBST_USE target now that subst.mk does the same
thing.

(*) Move the code to adjust Makefiles to refer to the correct
    PKGLOCALEDIR into bsd.pkg.mk and reimplement it using subst.mk so
    that it's non-USE_BUILDLINK2 packages can use it, too.

(*) Reimplement the PKGCONFIG_OVERRIDE code in bsd.pkg.mk using subst.mk.

(*) Reimplement the unbuildlink code in bsd.buildlink2.mk using subst.mk.
2003-08-27 11:29:56 +00:00
jlam
b81c512e4f subst.mk is a Makefile fragment that implements a general text replacement
facility for different classes of files in ${WRKSRC}.  For each class of
files, a target <class>-subst is created to perform the text replacement.

The following variables are used:

SUBST_STAGE.<class>
	"stage" at which we do the text replacement, e.g. pre-configure,
	post-build, etc.

SUBST_MESSAGE.<class>
	message to display, noting what is being substituted

SUBST_FILES.<class>
	files on which to run the substitution; these are relative to
	${WRKSRC}

SUBST_SED.<class>
	sed(1) substitution expression to run on the specified files

This basically extracts a useful piece of code from bsd.buildlink2.mk and
puts it in a place that allows it to be more widely used, and so that the
functionality doesn't depend on USE_BUILDLINK2 being defined.
2003-08-27 11:24:37 +00:00
wiz
1a81ad026e Add ne locale dir for gtk2. 2003-08-27 10:55:50 +00:00
jlam
53001478f3 Cut-n-pasto: s/GREP/GMAKE/ in the GNU make section. (from pkgviews-mk) 2003-08-27 01:58:25 +00:00
jlam
94036bc503 Forgot a USE_GMAKE => USE_GNU_TOOLS+=make. (from pkgviews-mk) 2003-08-27 01:01:25 +00:00
jlam
9fbdc941fe Create a symlink from the "make" requested by the package into
${TOOLS_DIR}/bin/make.  If a package wants GNU make, then it should
set:
	USE_GNU_TOOLS+=	make

in the package Makefile.  Allow for USE_GMAKE to continue to work
until we get a chance to sweep through pkgsrc and remove the usage
of this now-redundant variable.

This change allows us to avoid patching makefiles that use a bare
"make" command to invoke sub-make processes.  Idea suggested by
salo@netbsd.org in pkg/22509.
2003-08-26 20:15:23 +00:00
hubertf
5ae8aa8373 Clean up a few things in /tmp before building 2003-08-26 08:18:09 +00:00
reed
59de24e14c The standard "root" group under Linux is "root" not "wheel".
PR #22566
2003-08-25 15:47:15 +00:00
jlam
0d84a72afe Sanity check that the package is actually installed by running pkg_info(1)
before trying to create the binary package.  This makes:

	cd pkgsrc/category/foo
	make install
	pkg_delete foo
	make package

fail because package "foo" isn't actually installed, so no binary package
can be built.
2003-08-24 08:51:11 +00:00
taca
1a2b56a13f Add description of MYSQL_CHARSET and MYSQL_EXTRA_CHARSET.
Fix PR pkg/22560 by myself, OKed by wiz@.
2003-08-24 01:58:56 +00:00
jschauma
824986cd80 Set GMAKE to /usr/bin/make only of that actually exists, else set it
to ${LOCALBASE}/bin/gmake.  Patch by Soren Jacobsen in PR pkg/22506.
(Not closing that PR, as we should determine a procedure to bootstrap
on a system without any make.)
2003-08-23 16:04:26 +00:00
grant
d309157197 add support for extracting binary/library requires/provides on Darwin,
and simplify the logic to reduce code duplication.

fixes PR pkg/22492 from Julien T. Letessier.
2003-08-23 09:11:19 +00:00
grant
1e09b95da1 add LDD, from Julien T. Letessier in PR pkg/22492. 2003-08-23 09:07:07 +00:00
grant
3e632ea583 fix problem with shlib handling not being done on Darwin for
devel/gettext and other pkgs installing libraries ending in eg.
`x.y.z.so' rather than `.so.x.y.z'.

also fix off-by-one bug in shlib handling awk script causing the
first .so entry to not be commented out in the PLIST when it should
be.

ok'd by jlam.
2003-08-23 08:09:17 +00:00
jlam
f1ebe9c52b Fix a long-standing past-o that was harmless. 2003-08-23 03:57:49 +00:00
seb
c917496107 Use '${_PKG_SILENT}${_PKG_DEBUG}' instead of '@' (as seen on the pkgviews-mk
branch).
2003-08-22 22:04:03 +00:00
seb
783b9f53ba Try to deal with empty or "corrupted" Info directory file: if the
file exist when installing a package and it does not contain  at
least one line starting with '*' then remove it and let install-info
create a new one.

This should address PR pkg/22555 from reed@.
2003-08-22 18:17:03 +00:00
grant
e71e76a726 in check-shlibs, throw away warning from `type ldd' and only attempt
to run ldd if it is executable.

fixes bug where binaries just installed would be run (!) and the
install process possibly "hang" on Darwin because Darwin has no ldd!
2003-08-22 13:32:40 +00:00
gavan
8f1aedda6a Replace [ $A -nt $B ] with a portable equivalent 2003-08-21 16:24:31 +00:00
gavan
58bef710d6 Avoid circular dependency on gcc if USE_GCC[23] is set. 2003-08-21 16:16:46 +00:00
gavan
4de3840eec Fixes PR pkg/22528 2003-08-21 11:59:22 +00:00
gavan
2cf3251b24 Avoid keyword substitution in keyword matching pattern 2003-08-19 15:24:01 +00:00
gavan
44c0f50903 Remove dependence on ident and awk. This aids portability to Solaris. 2003-08-19 09:35:26 +00:00
jklos
bc9344585a Added text describing major.minor-latest directories for binaries built
from pkgsrc current.
2003-08-19 08:55:53 +00:00
cjep
f958dadcb5 Get the OS name from "uname -s" instead of assuming NetBSD.
Observed from Gavan's Solaris bulk build.
2003-08-18 19:19:33 +00:00
minoura
123ee8783e XEmacs is 21.4, not 21.1. 2003-08-18 13:16:24 +00:00
jlam
a8e872425a Avoid circular dependencies if USE_GNU_TOOLS is set unconditionally in
either the environment or in /etc/mk.conf by telling dependencies of the
named GNU tool to ignore any USE_GNU_TOOLS settings when they are built.
2003-08-17 04:06:36 +00:00
jlam
b6231ea0ad If an OS is listed in _TOOLS_REPLACE_OPSYS.<tool>, then we want to make
sure that tool is symlinked into ${TOOLS_DIR}/bin.
2003-08-17 02:03:53 +00:00
grant
bd01fe0985 put SunOS back in _TOOLS_REPLACE_OPSYS.sed. 2003-08-16 23:54:31 +00:00
grant
02cce8b3fe fix small typo: TOOLS_REPLACE -> _TOOLS_REPLACE 2003-08-16 23:49:27 +00:00
seb
53b7172739 Remove setting of INSTALL_INFO and MAKEINFO in {MAKE,CONFIGURE}_ENV
from texinfo.mk. Only set them there from tools.mk: this way they are
always set whatever the value of INFO_FILES and USE_MAKEINFO as
texinfo.mk is included only if INFO_FILES is not empty or USE_MAKEINFO is
not "no".

Please note that now with tools.mk install-info and makeinfo usage by a
package build and installation process is always caught by the
overriding scripts in ${TOOLS_DIR}/bin/{install-info,makeinfo} even if
the package does not use the buildlink framework.

Many thanks to Johnny for that!

XXX: I think I'm going to sweep over packages marked with INFO_FILES
and USE_MAKEINFO to remove the need of INSTALL_INFO and MAKEINFO in
environment and thus only relying on the overriding scripts.
This will clear a bit the clutter in {MAKE,CONFIGURE}_ENV.
2003-08-16 23:19:04 +00:00
jlam
ac0258dd3c Move the hide-tools portion of bsd.buildlink2.mk into tools.mk, and
put the tools in ${WRKDIR}/.tools/bin instead of in ${BUILDLINK_DIR},
and remove the need for buildlink2 to use USE_GNU_TOOLS.  In the
modified USE_GNU_TOOLS implementation, the following implementation-
specific variables have the following meanings:

_TOOLS_REPLACE.<tool>
        means that we want ${AWK}, ${SED}, etc. symlinked into
        ${TOOLS_DIR} as awk, sed, etc.

_TOOLS_NEED_GNU.<tool>
        means that we want to use the pkgsrc version of <tool>
        symlinked info ${TOOLS_DIR} as awk, sed, etc.  If this is
        "YES", then it always trumps _TOOLS_REPLACE.<tool>.

And we want nothing to happen if we're building the pkgsrc GNU tool
itself.  The modified USE_GNU_TOOLS implementation should also
hopefully fix the circular dependency problem.

Create a new target "tools" that is run after "patch" and before
"buildlink" that populates the ${TOOLS_DIR} directory.  This ensures
that it's always run at the right time, instead of relying on
pre-buildlink or pre-configure, which may be cancelled by
NO_BUILDLINK or NO_CONFIGURE.

XXX There is some possible fallout in texinfo.mk with the MAKE_ENV and
XXX CONFIGURE_ENV settings for INSTALL_INFO and MAKEINFO.  It looks
XXX like the MAKE_ENV and CONFIGURE_ENV settings should move from
XXX tools.mk into texinfo.mk, and they no longer need to be
XXX conditional on USE_BUILDLINK2.  I'll leave it to the texinfo.mk
XXX dude (Hi, Stoned!).
2003-08-16 08:50:17 +00:00
jlam
d742be9bff There are many uses for a common log file, so define one that may be
picked up and used by tools.mk, bsd.buildlink2.mk, etc.
2003-08-16 08:39:17 +00:00
jlam
c98b5b201d Teach the buildlink2 wrappers to respect an environment variable
BUILDLINK_WRAPPER_LOG to specify the location of the wrapper log
(which defaults to ${BUILDLINK_DIR}/.wrapper.log).
2003-08-16 06:59:54 +00:00
seb
ebd9436f7b Remove duplicate .PHONY. 2003-08-12 15:55:21 +00:00
seb
385805cf60 print-PLIST target change:
Make COMMON_DIRS generating an awk script instead of sed expressions hence
use awk instead of sed to deal with the mtree file.

This get ride of the annoying 'sed: Too many commands' message making
print-PLIST unusable with Solaris' seds.
2003-08-12 15:51:29 +00:00
seb
6baa7c1a79 As is clean-depends-list is subject to dependencies loops (uncovered
by the loops introduced by tools.mk) causing make failures.
But show-all-depends-dirs and show-all-depends-dirs-excl are not.
So use show-all-depends-dirs-excl in clean-depends target and remove
clean-depends-list altogether.
Besides this remove a bit of clutter and redundancy from this
already monstrous file.
2003-08-12 14:55:42 +00:00
grant
ac87db1d30 mark sed on Solaris as having a suitable replacement, eliminating the
circular dependency on GNU sed until this is addressed properly.
2003-08-12 11:39:46 +00:00
agc
4770eca72e In the print-PLIST target, split the expressions fed to sed(1) into two
sets, so that this target will work on all native sed programs. The extra
invocation gets lost in amongst all the other sort, grep, sed, and awk
invocations that are there, and is a much more appealling prospect than
installing GNU sed.
2003-08-12 11:35:03 +00:00
seb
e9ea51f5ad Also create /var/log/lastlog{,x} in the sandbox if they exist in the
hosting system.
2003-08-10 20:33:53 +00:00
seb
0d0e9d3ac1 USE_NEW_TEXINFO is now ubiquitous. Remove conditionals on it.
Also remove the older texinfo.mk framework as well as the previous
handling of INFO_FILES, all this is not used anymore.
2003-08-09 10:24:54 +00:00
agc
c382b01b46 Use saner values for PKGSRC_SHOW_BUILD_DEFS - make this switch on "yes"
or "YES", rather than a straight definition.
2003-08-08 12:04:40 +00:00
hubertf
086694e1f0 Document FLUXBOX_USE_* variables for pkgsrc/wm/fluxbox 2003-08-08 11:13:17 +00:00
agc
f66f6f70da Set the default value for PKGSRC_SHOW_BUILD_DEFS to be defined, to preserve
the eisting behaviour.
2003-08-08 09:58:16 +00:00
grant
1ea30e1f8f quote some args to ${GREP}.
from gavan@.
2003-08-08 08:51:01 +00:00
agc
60bc77fc38 Re-model the BUILD_DEFS display during build: if PKGSRC_SHOW_BUILD_DEFS is
defined, then show the BUILD_DEFS to the user. If not, then just keep quiet.

Whilst I'm here, re-indent the cpp-like .if/.else/.endif/.for/.endfor lines
properly.

Also, remove the ":u" modifier in the build-defs-message code - it's not
strictly necessary (duplicate definitions will be displayed, but this isn't
a major problem), and it removes the requirement to have a make(1) binary
which supports ":u".

This should fix PR 22402 from Alan Barrett, and also addresses some concerns
raised by Robert Elz.
2003-08-08 08:43:37 +00:00
agc
69f3ac9ea8 Introduce a PKGSRC_MESSAGE_RECIPIENTS, which takes the login names of
users to whom the MESSAGE file should be mailed at package
installation time, and mail the MESSAGE file at the "make install"
stage (if PKGSRC_MESSAGE_RECIPIENTS is not empty).

Inspired by PR 22328 from Jeremy Reed.
2003-08-07 16:14:05 +00:00
jmc
04f347260c Provide a new variable NO_EXPORT_CPP to further restrict CPP from getting into
MAKE_ENV. There is no effective way to unset CPP otherwise and there are
some packages (the cross compilers using gcc) where having CPP set will
break things.
2003-08-04 21:06:47 +00:00
jmc
dd22ef2ff1 Make exim user default to mail like it always had pre defaults conversion. 2003-08-04 16:11:39 +00:00
jmmv
f811830691 Remove 'faad' support from MPLAYER_DISABLE_DRIVERS. It is an input driver
needed to play files as pointed out by wiz@ (sorry for the delay) and salo@.
2003-08-04 11:43:47 +00:00
jmmv
6f4da0ac96 Let EXIM_USER be 'mail' by default, as it has always been (so the new package
does not break on systems where exim is already installed).  Noted by jmc@.
2003-08-04 11:14:07 +00:00
jmmv
31f2747385 Convert exim and exim-user to the bsd.pkg.install.mk framework:
- Introduce EXIM_GROUP and EXIM_USER to tune the details of the group and
  user used by the daemon.
- Honour PKG_SYSCONFDIR.
- Install sample files under the examples directory.
- Automatically install example files under sysconfdir using CONF_FILES.
  This simplifies exim's set up from admin's point of view.
- Use RCD_SCRIPTS to handle the startup script.

As a result, bump PKGREVISION of exim and exim-user.
2003-08-02 17:00:06 +00:00
wiz
febdd5a814 Move BUILD_DEFS check to pre-extract to avoid creating work directories in
the fetch step.
2003-08-02 13:17:05 +00:00
grant
679b21fb8f depend on the right version of grep. 2003-08-02 05:07:35 +00:00
grant
46d3d2155b comment: clarify and describe why USE_GNU_TOOLS+= must be used. 2003-08-02 04:49:14 +00:00
grant
850eaa604f handle platforms with broken tools in the base system, such as sed
and awk. as proposed on tech-pkg@, with some changes to set the
appropriate tool variables and handle OSs which provide GNU tools
in the base system (ie. do nothing).

this allows packages or users to force the use of pkgsrc GNU tools
when they are not present in the base system by defining e.g.
USE_GNU_TOOLS="awk sed".

Solaris' sed is marked as incompatible, as even the XPG4 sed is too
limited for a number of packages (especially large ones which use
libtool, as libtool calls blind 'sed'), so GNU sed is always used
on Solaris.
2003-08-02 03:46:34 +00:00
seb
2fdc2dd1cb Revert previous. USE_MAKEINFO is initialized in bsd.pkg.mk.
The problem jmc encountered in textproc/groff and leading
him to add it here was fixed in groff package itself.
2003-07-31 22:05:38 +00:00
jmc
38347ced5c Need to define USE_MAKEINFO before testing against it 2003-07-31 20:09:41 +00:00
seb
788f48db9a Sync comments with reality (Trilogy, volume 5). 2003-07-31 13:55:24 +00:00
seb
16437cbe4c Make it possible to have a package requiring makeinfo but not install-info.
INFO_FILES is now defined by default to the empty value.
If it is not empty it means that install-info -or a suitable
replacement like pkg_install-info- is required.

USE_MAKEINFO is now defined by default to the 'no' value.
If it has any other value it means that makeinfo is required.
Note that as before simply defining USE_MAKEINFO in a package
Makefile is enough to trigger the use of makeinfo. I.e. it is not
required to be '[yY][eE][sS]'.

As a side effect when using buildlink2 always create install-info and
makeinfo wrappers in ${BUILDLINK_DIR}/bin. This could help
package maintainer to catch spurious/hidden install-info and makeinfo
usage.

Note that for now this nice feature is not really enabled as the relevant
part of bsd.buildlink2.mk is still conditional upon USE_NEW_TEXINFO.
It will really be when USE_NEW_TEXINFO will be removed from pkgsrc.
2003-07-31 13:50:11 +00:00
jmmv
38dd4422e2 Let a package override the name of the automatically generated rc.d script
files inside the WRKDIR.  This is done by setting RCD_SCRIPT_WRK.<name> to
the requested filename, like:

	RCD_SCRIPT_WRK.foobar=	${WRKDIR}/foobar.sh

This fixes a problem (rc.d script not beeing generated) when there is a name
conflict in the WRKDIR (i.e., the file already exists or WRKSRC has the same
basename).
2003-07-31 10:36:03 +00:00
grant
529668ce7c include bsd.prefs.mk, since we use ${ECHO}. 2003-07-31 08:58:24 +00:00
jmmv
210c5d84be Modify the build-defs-message target so that it is only printed once, in the
pre-fetch stage.  Do this by creating a cookie file inside the WRKDIR.

Also let the user override the target from mk.conf to disable these messages.
This fixes PR pkg/22305 by Robert Elz.
2003-07-30 15:04:21 +00:00
jlam
ca8050d834 If a HEADER file exists in the package directory, then assume it's meant
for the HEADER_EXTRA_TMPL variable.
2003-07-30 10:31:20 +00:00
jlam
6a9e4d3fe5 Allow package Makefiles to insert a supplementary header to the
INSTALL/DEINSTALL scripts via HEADER_EXTRA_TMPL, that is meant to contain
variable definitions to be used by the various actions.
2003-07-30 10:27:05 +00:00
seb
95c657b976 Rename sandboxDirs to sandboxMountDirs.
Introduce sandboxEmptyFiles a list of files to create empty in the
sandbox if they exist on the hosting system. Hence put /var/run in
sandboxEmptyDirs list.

Use $cppprog instead of cp.
2003-07-30 09:25:13 +00:00
seb
4a21457080 Whitespace. 2003-07-30 09:14:04 +00:00
seb
ac47c58a83 Introduce sandboxEmptyDirs a list of directories to create empty
in the sandbox if they exist on the hosting system: put /var/spool/mqueue
as it was already created before and add /var/log for now (needed
for various packages, like security/ssh2).

Only create /var/run/utmp(x) if they exist on the hosting system.
XXX this may better be an opsys dependent action.
2003-07-29 20:31:05 +00:00
seb
3f203cfe95 Follow the trend started by jmmv@. Thanks Julio!
Remove IRCD_HYBRID_DPATH from bsd.pkg.defaults.mk and BUILD_DEFS,
set PKG_SYSCONFSUBDIR to 'ircd-hybrid' instead: the package builder is
now expected to adjust Ircd Hybrid configuration directory with
PKG_SYSCONFBASE(.${PKG_SYSCONFVAR}).

Replace local DOC_SUBST stuff with FILES_SUBST from bsd.pkg.install.mk.

Go with the previous PKGREVISION bump.

XXX Having the log files as SUPPORT_FILES is not optimal.
XXX I really should update this package.
2003-07-29 20:21:37 +00:00
jmmv
f4e532253d Go one step further: turn CANNA_GROUP and CANNA_USER build definitions and
handle the group and the user they specify with bsd.pkg.install.mk.  In fact,
these variables were already changeable.
2003-07-29 19:53:19 +00:00
jmmv
0b27543ed1 Use PKG_SYSCONFDIR when setting the default value for IRCD_HYBRID_DPATH. 2003-07-29 17:24:49 +00:00
wiz
dcf1d7f5a4 Apply pkgsrc-wip/wip/jdk1x_java-vm.mk.diff to add support for the
jdk12 and jdk13 packages from pkgsrc-wip.
2003-07-29 16:33:07 +00:00
agc
41305a0c9c Indent cpp-like statements properly 2003-07-28 20:01:54 +00:00
jmmv
784ad97939 Add the build-defs-message target, which shows a list of all variables that
can be customized for the package beeing built.  This list is extracted from
the contents of BUILD_DEFS, and the message is not shown if it's empty.
Each variable is printed together with its actual value.

The new target is called in the pre-fetch stage, so it's shown early to the
user.
2003-07-28 18:15:56 +00:00
jmmv
cc8cb1820a Introduce the MPLAYER_DISABLE_DRIVERS variable, which holds a list of "drivers"
that are not wanted in the binary program.  It is empty by default, so that all
drivers are linked in to get a full featured binary package.  Packages using
this variable include mplayer and gmplayer.  While building mencoder, disable
all of these drivers, as they are not needed.  Bump PKGREVISION.

arts is now a enabled if not present in the variable.  This detail closes
PR pkg/21775 by Marc Recht.
2003-07-27 19:59:40 +00:00
jmmv
d97f78df27 SDL_USE_NAS deprecated by the new audio/SDL-nas plugin. 2003-07-26 23:08:47 +00:00
dmcmahill
bcee7aab52 - fix bug that gave an invalid entry in the homepage field when there is
no listed homepage.  Thanks to Grant Beattie for noting this and providing a
  patch which I changed slightly.
- fix a bug which put extra stuff in the categories field.  Thanks to Grant
  for noting this.
2003-07-25 12:58:20 +00:00
dmcmahill
30b1a989cb replace the -u and -d options to tflat with 'up' and 'down' as the former
causes problems with some awks.  Patch provided by Jonathan Perkin in
PR pkg/22246
2003-07-25 11:29:33 +00:00
dmcmahill
981a376c35 - add HOMEPAGE as the last field in the INDEX file.
- make the paths be relative to PKGSRCDIR as opposed to absolute.
- some cleanup/simplification of the awk code.
2003-07-24 22:27:16 +00:00
jmmv
4634a89e73 Mark all targets that do not correspond to real files with the .PHONY
attribute.
2003-07-23 22:02:48 +00:00
jmc
d46e28d7a7 Use PKG_SKIP_REASON instead of PKG_FAIL_REASON here if qualifications aren't
met. The same message gets to the user but now it won't show a package as
broken on bulk builds that really is simply unavaiable on a given platform
2003-07-23 20:15:01 +00:00
jmc
0357645827 If CPP is set (via sys.mk) and not fully qualified in it's pathname, reset it
to the fully qualified path name to avoid rpcgen bugs with undocumented usage
of CPP.
2003-07-23 20:13:47 +00:00
dmcmahill
28fd31fa83 rework the INDEX file generation. The new approach speeds up things by
several orders of magnitude and 'make index' now takes 30 minutes or so
instead of several days on my test machine.  The approach now is to take
one pass through every package and extract some key information including
the explicitly listed dependencies.  After the data is extracted, the
dependencies are flattened in one step which avoids the extremely
inefficient recursive make that was previously used.
2003-07-23 09:41:23 +00:00
jmmv
6bf23df930 Add locale directories: af, tg, th; used by xmms. 2003-07-22 23:21:18 +00:00
agc
e25f89bf13 Ignore any errors from ldd when calculating reuires and provides 2003-07-22 13:48:48 +00:00
agc
1672441254 As part of the build information, record the full pathnames of the
shared object "provides" and "requires" information.  This is only
turned on just now if ${CHECK_SHLIBS} is set to "YES".

Example output:

% pkg_info -B libutf | grep '^PROVIDES'
PROVIDES=/usr/pkg/lib/libutf.so.2
% pkg_info -B ssam | grep '^REQUIRES'
REQUIRES=/usr/lib/libc.so.12
REQUIRES=/usr/pkg/lib/libutf.so.2
%
2003-07-22 10:12:47 +00:00
seb
751840e777 Sync comments with reality wrt to USE_MAKEINFO == "no". 2003-07-22 01:10:32 +00:00
kristerw
b154c252d9 Include "../../mk/bsd.prefs.mk" to make sure PKGPATH is defined. 2003-07-22 01:00:25 +00:00
jmmv
a468557543 Add locale directories: fo, nso, ven, xh, xx, zu; all used by kopete. 2003-07-21 17:50:05 +00:00