Commit graph

1251 commits

Author SHA1 Message Date
wiz
893a275787 Add belnet and keihanna sourceforge mirrors; remove switch and osdn.
Addresses PR 22641.
2003-08-31 10:29:16 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
dmcmahill
5e93a64cfa - fix comment about what shows up in the index file.
- add ONLY_FOR_ARCHS and NOT_FOR_OPSYS to the list of variables that goes
  in the print-summary-data output.  This is the first step in speeding up
  the 'make index' process.
2003-07-19 02:50:22 +00:00
grant
31f433d64b only include gcc.buildlink2.mk if we are not using the MIPSpro or SunPro
compiler.

don't include the buildlink2.mk of the gcc package being built.
2003-07-18 04:21:16 +00:00
grant
a5caa515f7 move gcc selection back to bsd.pkg.mk as the top-level Makefile
includes bsd.prefs.mk.
2003-07-13 13:27:18 +00:00
grant
bbfe9c9c20 don't set USE_GCC2 by default as it implies the use pkgsrc gcc2, and
move handling of gcc shared libraries to bsd.prefs.mk.
2003-07-13 13:10:43 +00:00
grant
30373d0843 when creating the buildinfo file, set CC=${CC} without the version
information, and set CC_VERSION appropriately by trying -v and -V
args.

works for gcc2, gcc3 and SunPro, may need tweaking for MIPSPro.
2003-07-13 06:44:02 +00:00
wiz
dc934dad21 When generating a perl packlist, strip all leading slashes.
From Sergey Svishchev in PR 21754.
2003-07-12 15:34:37 +00:00
wiz
7eb4802333 Create directories with mode 0755, since that is what the mtree
files expect.  Noted by Toru TAKAMIZU in PR 22007, patch from seb@netbsd.
2003-07-12 10:21:33 +00:00
jlam
b36d20c1c7 Use new _OPSYS_NEEDS_XPKGWEDGE to simplify the check for whether we need a
build dependency on xpkgwedge.
2003-07-11 20:22:11 +00:00
jschauma
b6fdd52c56 Rather than hardcoding IRIX into bsd.pkg.mk when checking if xpkgwedge is
needed let's use _OPSYS_NEEDS_XPKGWEDGE to be set in defs.${OPSYS}.mk
2003-07-11 15:40:18 +00:00
grant
d6cada760d define user-visible variable PTHREAD_LDFLAGS that contains options
to link pthreaded code, ala PTHREAD_CFLAGS.

this adds support for systems which have no libpthread, but rather,
have pthreads functions in libc_r, such as FreeBSD 5.x.

export PTHREAD_CFLAGS and PTHREAD_LDFLAGS via MAKE_ENV.
2003-07-10 23:10:07 +00:00
agc
dfea60511f Append perl to the list of interpreters to be replaced if ${REPLACE_PERL}
is set, rather than a straight assignation.
2003-07-09 16:18:06 +00:00
agc
8338c82ca3 Make REPLACE_PERL more general, so that it will work with any interpreter,
and also with multiple interpreters.

Keep REPLACE_PERL for backwards compatibility.
2003-07-09 16:07:29 +00:00
agc
1303652d68 In pre-config-override, don't trumpet the fact that we're doing nothing. 2003-07-09 14:23:56 +00:00
agc
a0a34c21ee Fix a typo in a comment 2003-07-08 11:48:37 +00:00
chris
95ae206c22 Fix for _CONFIGURE_PREREQ targets not being run when a package defines a
do-configure target.  To do this I've introduced a new target,
pre-configure-overrides, that depends on ${_CONFIGURE_PREREQ}.   It's run
after pre-configure but before do-configure.

This fixes pkg/22077, and allows benchmarks/benchfft to build correctly on
a -current cats box.

Reviewed by wiz@
2003-07-08 09:20:30 +00:00
jmmv
c7fd765c70 When extracting a .zip archive, overwrite existing files without promping.
Fixes PR pkg/21732 by reed at reedmedia.net.
2003-07-02 23:02:23 +00:00
jschauma
54f06d5eb9 default MAINTAINER is tech-pkg@ 2003-06-23 14:26:32 +00:00