'make deinstall' behaviour and stricter checking for an installed package.
There were some edge-case problems with these patches that we were not
able to solve in time for 5.1-RELEASE. They'll probably reappear in
a modified form soon after release.
Discussed with: marcus, Sergey Matveychuk <sem@ciam.ru>
- Stage II of pkg-comment removal; do not write out the comment to a
temporary file, but process it inline [2].
- Add support for the CONFLICTS variable to register the fact that a
port conflicts with installed packages. This relies on the -C
argument to pkg_create which is not yet present in 4.x, so the
variable is currently a NOP on 4.x. [3]
- Fix pkg-plist support for html manpages. This was broken as
committed in r1.402.
Submitted by: trevor [1], lioux [2],
Sergey Matveychuk <sem@ciam.ru> [3]
PR: 24292 [1], 47146 [3]
avoid installing packages when the target is configure or extract
[1]
- If PYTHON_VERSION is set, do not automatically add a dependency on
python: USE_PYTHON must now be specified explicitly. This allows the
variable to be set in make.conf or the environment to specify a
preference for the python version to be used. [2]
- When checking for an existing installation of the port, check by
port origin instead of only looking for the current version of the
package. [3]
- Do not install perllocal.pod files; they are not used on FreeBSD. [4]
- Improve 'make deinstall' to deinstall any existing version of the
package (e.g. older versions) instead of only trying to deinstall the
version currently described by the port. [5]
- Check for world-writable files/directories in the security-check
target. [6]
- Improve the patching of libtool so it works with pathnames ending in
a slash. [7]
- Allow ports that use the INSTALL macros to install files when
running as non-root (i.e. don't try to chown/chgrp) [8].
- Add the USE_GETOPT_LONG variable, which adds a dependency on
libgnugetopt on systems older than 500041, and uses the system version
otherwise. [9]
- Improve the fetch-required target to correctly deal with fetching
dependencies that use the ':target' form. [10]
- Add support for re-fetching interrupted distfiles. The FETCH_REGET
variable specifies the number of times to try continuing the distfile
fetch if it fails the md5 checksum. [11]
PR: 36083 [1], 44875 [2], 48646 [3], 48960 [4], 49017 [5], 49969 [6],
50069 [7], 50159 [8], 50323 [9], 50669 [10], 12325 [11]
Submitted by: dinoex [1], Gerhard Schmidt <estartu@augusta.de> [2],
Sergey Matveychuk <sem@ciam.ru> [3] [5], tobez [4],
Erwin Lansing <erwin@lansing.dk> [4],
Arjan de Vet <devet@devet.org> [6],
Hartmut Brandt <brandt@fokus.fraunhofer.de> [7], gerald [8],
Sergei Kolobov <sergei@kolobov.com> [9],
Erwin Lansing <erwin@lansing.dk> [10], alex [11]
complete previous commit by adding support of Blackdown and IBM 1.4.1 JDKs
(existing in ports tree for long time), add support for Sun JDK 1.2.2 and
fix/update comments appropriately to this and previous Maxim's commits.
away with the USE_GNOMNG macro (though I will keep this macro around for
a bit just in case). It also adds GNOME 2 component support.
A new macro has also been introduced called GNOME_DESKTOP_VERSION. Users can
set this in /etc/make.conf or define it when building ports. Current allowed
values are 1 or 2. Depending on the value of this macro, certain ports
may be marked BROKEN if they would conflict with the desired GNOME
desktop version.
Also note, the old USE_GTK, USE_GNOME=yes, USE_IMLIB, USE_ESOUND, and
USE_GLIB are now obsolete. Backwards compatability has been provided,
but those macros should no longer be used.
Special thanks to all the users on freebsd-gnome@ that help test these
patches, and provided feedback. Documentation updates to the FreeBSD
GNOME project site will be forthcoming.
so they appear after the *_depends targets. This fixes builds on systems
that don't yet have libtool installed (prior to this commit the
patch-libtool target would be called before the libtool port was
installed by the dependency targets, and it would therefore fail).
Submitted by: Claude Buisson <cbuisson@nerim.net>
* Fix 'make package-depends' so it doesn't overflow on large ports [2]
* Fix logic in 'USE_PACKAGE_DEPENDS' [3]
Submitted by: dinoex [1][3], marcus [2]
PR: ports/48860 [1], ports/36083 [3]
meaning and default settings [1]
* Add PATCH_DEPENDS and EXTRACT_DEPENDS, and convert various
internal bsd.port.mk dependencies to use them [2]
* Set the default MAN3PREFIX to ${PREFIX}/lib/perl5/${PERL_VERSION}
for perl ports, removing the need to define this locally in every
port [3]
* Replace perllocal.pod with perllocal.pod-${PORTNAME} so that perl
ports can be made to clean up after themselves properly [4]
* Properly quote filenames in the security-check target. This
unbreaks package registration for ports that install filenames
containing metacharacters [5]
* Use "cat /dev/null >" instead of "rm -f" in the makesum target so
that the file retains the correct ownership and permissions [6]
* Add a USE_PACKAGE_DEPENDS knob that may be set in the environment or
make.conf, and which attempts to use existing local packages to
satisfy port dependencies, instead of building them from ports [7]
* Add a first attempt at fetch-required and fetch-required-list
targets which fetch or print all the distfiles that are required to
build the port. Dependencies that are already installed need not
have their distfiles listed, and will not be reported [8].
This needs more work, because ports that do things like:
BUILD_DEPENDS= ${NONEXISTENT}:${PORTSDIR}/foo/bar:blee
will not have their distfiles listed and will therefore fail to fetch
completely. The target needs to be changed to include distfiles for
ports that have a target listed
Submitted by: Mark Linimon <linimon@lonesome.com> [1],
Jim Trigg <jtrigg@spamcop.net> [2], skv [3],
kuriyama [4], marcus [5], sheldonh [6], dinoex [7],
Erwin Lansing <erwin@lansing.dk>
PR: 44841 [1], 29856 [2], 39662 [3], 48439 [5], 48450 [6],
36083 [7], 48473 [8]
(RESTRICTED, NO_PACKAGE, NO_CDROM, BROKEN) to match current reality. Add
documentation of the FORBIDDEN and IGNORE variables.
Garbage collect the commented-out FORBIDDEN string for the openssl ports
since we no longer need to forbid crypto software.
This has just been taken from the list of the primary debian mirror
sites (http://www.debian.org/mirror/list). Other mirrors could be
added.
PR: 47881
Submitted by: Kimura Fuyuki <fuyuki@hadaly.org>
with the same semantics as the current COMMENT variable (location
of the pkg-comment file), and reclaim COMMENT for the comment string
itself. To work around the problems with metacharacters in comment
strings, comments are written to a temporary comment file as needed. [1]
* Support regexps in LIB_DEPENDS [2]
* Move the CD_MOUNTPTS variable to <bsd.port.pre.mk> [3]
* Improve 'make readmes' target [4]:
- ^A and ^B have been replaced by | to avoid printing problems in
'make readme'.
- Add %%EMAIL%%, %%MAINTAINER%% (not used yet) and %%WEBSITE%%
substitutions
- Add pretty-print-www-site target.
* Add support for USE_GCC=3.2 [5]
* Use 'uname -p' instead of 'uname -m' to set the ARCH variable. [6]
* Add a ${YACC} variable [7]
* Path MANPREFIX in MAKE_ENV [8]
* Use the full patch to mkhtmlindex in MKHTMLINDEX [9]
* Avoid overflowing the commandline when constructing the _TMLINKS
variable (fixes 'make index'). [10]
Submitted by: lioux [1], mi [2], mbr [3][5],
Cyrille Lefevre <clefevre@citeweb.net> [4],
nyan [6], cy [7], dougb [8], anholt [9],
fenner [10] (based on)
PR: ports/34126 [2], ports/30983 [3] (based on),
ports/31389 [4], ports/47306 [5] (based on),
ports/35514 [6], ports/44496 [7],
ports/44895 [8], ports/45549 [9]
Add MASTER_SITE_APACHE and MASTER_SITE_APACHE_HTTPD. The
former holds all software released by the Apache project
but the later doesn't.
This list is based on http://www.apache.org/mirrors/ . Since
the list is so long, I eliminate some mirrors that just
didn't respond or held old contents. But still too long.
PR: ports/41219
Submitted by: Kimura Fuyuki <fuyuki@hadaly.org>
which now supports FreeBSD/sparc64.
Set ONLY_FOR_ARCHS to i386, alpha and sparc64. Ruby does not support
IA64 yet. It does not even build or install correctly. We need some
clue to the IA64 stack structure and handling of the IA64 register
windows.
option instead. ftp-master still has the old distfile of ruby-rdtool
before a repack and the checksum mismatch it causes is getting a show
stopper on bento.