Commit graph

2462 commits

Author SHA1 Message Date
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