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.
- Update to the 1.6.8 final release. (which fixes a couple of
coredumping bugs)
- Update Oni Guruma (alternative BSDL regexp engine) to 20021210.
- Attach a small knob for debugging.
lang/ruby-devel
- Update to 1.8.0 preview 1 + errata patch. (fixes a couple of
coredumping bugs)
- Update Oni Guruma (alternative BSDL regexp engine) to 20021210.
- Fix pkg-plist nits.
lang/ruby16-shim-ruby18
- Update to 1.8.0 preview 1. (sync with 1.6.8 & 1.8.0 preview1)
- Fix pkg-plist nits.
Approved by: lioux (and self)
A Merry Christmas to: all of you
1.7.3.2002.12.11, and lang/ruby-devel to 1.7.3-2002.12.12.
- Fix a few bugs that lead to core dump, one in the ruby interpreter
and another in the syslog module.
Reported by: ume (net/dtcp was a victim)
- Fix an installation problem occasionally seen on bento. (a bug in
Makefile that caused race)
Submitted by: bento
- Fix a problem that irb(1) didn't work because the symlink was wrong.
Submitted by: Jos Backus <jos@catnook.com>
- Get rid of move & symlink spaghetti completely from the installation
process.
Discussed with: portmgr (will)
later, and INDEX on earlier systems. Use this in the 'make index' and
associated targets. This is necessary to deal with the substantially
different dependencies of ports between 4.x and 5.0 (e.g. ports that
depend on perl).
but do not cause the program to be executed prior to configure step. This is
done to accomodate a couple of rather odd ports.
Basically, this amounts to redefining USE_*_VER in terms of USE_*, WANT_*_VER.
It's pretty gross, but it works.
Approved by: implicitly by kris
Completely rewrote the automake/autoconf support. The comments at the top of the file have been greatly expanded in order to explain just what you are allowed to do and what will get you a visit from Mr. Hose. Please read this information.
Added DOCSDIR, EXAMPLESDIR to PLIST_SUB.
Added a PERL_LEVEL variable (documented up top) that gives an integer
value that can be used for comparisons to determine whether the user's
perl is new enough or not, or to enable or disable certain dependencies
(AHEM FILE::SPEC) based on the perl version.
Added a SITE_PERL variable, which points to the correct "site-packages"
directory. This is also added to PLIST_SUB.
No gerbils were harmed (seriously, anyway) in the making of this patch,
however some of them may be a bit sore for a few days.
Submitted by: billg
Reviewed by: kris
Approved by: kris
Obtained from: you really don't want to know this one
they will not be overridden.
Reviewed by: freebsd-java
Approved by: Herve Quiroz <herve.quiroz@esil.univ-mrs.fr>
Dave Glowacki <dglo@hyde.ssec.wisc.edu>
* Add USE_PERL_RUN and USE_PERL_BUILD to add {RUN,BUILD}_DEPENDS on the
perl5 port if required (i.e. on 5.0 or later) (USE_PERL adds both,
which is not always appropriate) [1]
* On 5.0 systems without perl, depend on the full path to the perl port
binaries to not pick up the system perl wrapper
* If PERL_CONFIGURE is defined, move the USE_PERL setting earlier in
the makefile so it actually adds a dependency. [2]
Noticed by: dougb [1]
Submitted by: sobomax [2]
Tested on: bento
extensively tested on the bento cluster, but the committed version
introduces significant new breakage at a very inopportune time. This
will be revisited later.
totally rewrote the autoconf/automake support section, with
provisions for autoconf 2.54 and automake 1.7.x when they are
ready.
Minor change:
Added DOCSDIR, EXAMPLESDIR, and DATADIR to PLIST_SUB.
PR: 42351
Reviewed by: kris
Approved by: kris
* If the ${COMMENT} file does not exist, use the value of the
${PORTCOMMENT} variable instead. This will allow us to incrementally
phase out pkg-comment [1]
* Miscellaneous fixes to the MASTER_SITES_N code [2]
* Correct fmt(1) invocation so it works on older systems [3]
* Improve the security-check target: [4]
- Look for setuid/setgid binaries, and binaries that include
calls to accept()/recvfrom() (which are likely to be network
servers or have network server capability)
- Check these binaries for insecure functions (if PORTS_AUDIT is
set in the environment, check for a larger set of functions
such as strcat/strcpy/sprintf)
- Report network servers that are started by default.
Submitted by: eric [1], lioux [2], fenner [3], kris [4]
PR: ports/36078 [2], ports/36709 [2]
FreeBSD/sparc64 fails to build this and somehow the entire OS gets
frozen while running `miniruby'. I'd appreciate if someone with a
clue could help me fix the problem.
the list of sites from the www/linux-netscape6 port. I looked at fenner's
survey, and removed some sites which did not carry Netscape 7 or which have
been offline for a long time. Also, for some mysterious reason it takes 80
seconds to get a login prompt when I use the hostname ftp.netscape.com, so I
replaced it in the list with two of the hosts it seems to point to, with the
quicker one first and the slower one last.
Submitted by: Kimura Fuyuki
Reviewed by: sada (as originally submitted)
PR: 42678
components to build or not build with. For example:
# make WITHOUT_GNOME=esound
Will build a port that can optionally use esound support, without it.
You can also specify multiple components separated with a space:
# make WITHOUT_GNOME="esound gnomelibs"
The converse is true for WITH_GNOME. Note, that this is backwards
compatible with the old WITH/WITHOUT_GNOME macros. That is,
# make -DWITHOUT_GNOME
Will turn off all optional GNOME components. Also,
# make WITHOUT_GNOME=yes
Will do the same thing.
* Mark a port BROKEN if it includes an unknown GNOME component [1]
PR: 41873 [1]
Submitted by: Edwin Groothuis <edwin@mavetju.org> [1]
Not objected to by: sobomax
ftp.jp.FreeBSD.org is back in sync with ftp.FreeBSD.org.
Thanks to: kuriyama & the administrators
MASTER_SITE_RUBY:
ftp.chg.ru is back in sync with ftp.ruby-lang.org.
Thanks to: Serge Krashakov <sakr@Chg.RU>
MASTER_SITE_FESTIVAL, MASTER_SITE_FESTIVAL_OGI:
Assign using += instead of = like other ones.
ftp.iij.ad.jp because ftp.ruby-lang.org is currently unstable.
ftp.iij.ad.jp has much more capacious bandwidth and is synchronized
with the master site tightly enough.
- ftp.dti.ad.jp is a good one. Add it to various MASTER_SITE_*.
fixes several coredump bugs and fatal threading problems.
Remove the autoconf dependency by including a pre-generated configure
script in the distfile. It now also includes a pre-generated parse.c
made by bison 1.35.
* Fix some problems in previous revision relating to writability test of
${DISTDIR}, by moving the check a) after we have made the directory if
it doesn't exist, and b) inside the loop that actually fetches files,
so the check isn't performed with every port make operation that depends
on the fetch target (this breaks non-fetch targets as a different user)
[2]
Submitted by: bmah [1]
Reported by: ijliao [2]
Tested on: bento
containing a pregenerated configure and a parse.c generated with bison
1.35. This is to offer a smaller (.tar.bz2) distfile, remove the
autoconf dependency and benefit from a bit more efficient parse.c than
that which byacc(1) generates.
* Replace some bare uses of cat with ${CAT}
* [ports/19112] Ignore RCS files (*,v) when applying patches
* [ports/19270] Check whether ${DISTDIR} is writable and fail with a
better error message if not (mostly caused by trying to fetch as the
wrong user)
* [ports/23560] Force patch backup files to be created with .orig suffix
* [ports/34717] Don't enclose PTHREAD_LIBS in quotes, because it will
cause problems if used in an already-quoted string.
* [ports/34987] Fix an awk warning in MASTER_SORT/MASTER_SORT_REGEX code
* [misc/38724] Change some uses of the deprecated test -h to test -L
* [1] Registering real dependencies: dependency registration looks at the
currently-installed version of the dependency and registers that version,
instead of registering the version in ports which may be newer than
what is installed.
* [2] Further 100% speed-up of dependency registration process by eliminating
second call to package-depends (using information from the first call
stored in +CONTENTS file of package being installed). Very useful
for developing GNOME or similar packages with zillion dependencies,
when package-depends target could take few minutes to complete;
* [2] Proper set-up of ${SHELL} variable in build environment, so that user's
interactive shell isn't picked instead. This has various implications,
ranging from build process speed-up due to using /bin/sh to invoke
libtool instead of bash or any other much more bloated user's shell
(configure scripts often pick it up from the ${SHELL} environment),
to fixing problems some users have when building random ports.
Submitted by: sobomax [1] [2],
Aleksandr A. Babaylov <.@babolo.ru> [ports/19112],
Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> [ports/19270],
Alan Bawden <Alan@LCS.MIT.EDU> [ports/23560],
Christian Weisgerber <naddy@mips.inka.de> [ports/34717],
knu [ports/34987], april <april@oublinet.net> [ports/38724]
PR: ports/19112, ports/19270, ports/23560, ports/34717,
ports/34987, ports/36237, ports/38724
Tested on: bento 4-exp build
qt2 then you better change it to say so or else it's on the hit list. Will
has said that all kde2 ports must be fixed or gone before 4.7 ports freeze.
Submitted by: Tilman Linneweh <tilman@arved.de>
Reviewed by: resident psychopath and wild and crazy guy AlanE
Approved by: billg@microsoft.com ("anything to get rid of some free s/w")
- Add missed gnomeaudio into _USE_GNOME_ALL;
- refine dependencies for all components;
- add new redefineable knob GNOME_HTML_DIR, which allows to override value of
--with-html-dir configure argument;
- remove USE_REINPLACE workaround - real fix was just committed into
bsd.port.mk;
- improve example of gnome-optional port's logick;
- improve conditions when PLIST_SUB is defined for gnome-optional ports.
bsd.gnomeng.mk. Also increase OSVERSION `sed -i'check to be 500036 on
-current, as users report that 500034 isn't sufficient to catch new sed(1)
functionality.
Approved by: portmgr (silently)
converted to USE_GNOMENG. The real fix for bsd.port.mk will be committed
later, after portmgr@ approval.
Prompted by: Rasmus Skaarup <mfbsd@skaarup.org>
General:
[1] Add a means of updating via patches rather than always using tarballs.
Unfortunately, this method proved unreliable due to the binary files
included with most of the KDE tarballs. For now, leave this support
in until I can decide what to do with it.
[2] Remove patches that were fixed in KDE CVS for KDE_3_0_BRANCH. This
includes removal of malloc.h (from our viewpoint at least), a bug in
kiconloader, and a typo in knode.
[3] Move the current KDE version number to KDE_VERSION in bsd.kde.mk.
[4] Support the notion of KDE_PREFIX.
[5] Move arts and kde3-i18n* ports to use Makefile.kde.
french/kde3-i18n:
[6] Remove cruft from when this was generated with a core dump in the
3.0.1 distribution generation.
All other ports: No changes of note not mentioned above.
Thanks to the quick testers for their assistance with this upgrade:
Tested by: Matt Douhan <matt@athame.co.uk>
Andy Fawcett <andy@athame.co.uk>
Dave Cantrell <phaedrus@alltel.net>
to make GNOME1 platform more modular and will eventually replace bsd.gnome.mk
completely. For the time being, it should be explicitly activated by the
USE_GNOMENG knob, so that it is possible to do gradual conversion.
Reviewed by: marcus, gnome@
where sed(1) can't do in-place editing add a new USE_REINPLACE knob, which
if turned on defines REINPLACE_CMD and adds textproc/sed_inplace port into
BUILD_DEPENDS if necessary.
Not objected by: portmgr@
problems people were seeing with e.g. devel/pth and friends installed.
They conflict with GCC3 and may not be an issue anymore. But if someone
reports the issue again we'll address it with a finer comb next time.
- Allow installation to python-specific hierarchy. This will
benefit users of Zope and mod_python.
- Add PYTHON_*DIR variables to PLIST_SUB.
PR: 38769
Submitted by: Hye-Shik Chang <perky@fallin.lv>
The net has to be in *VERY* bad shape for you to fail on 21 sites and
finally get the needed file from the 22nd site.
If the list was meant more do document possible sites for to list in
/etc/make.conf, they could be re-added as comments.
[1] Warn people about Qt1, remove warning about Qt3, and fix something I
forgot to fix before committing the Qt3/KDE3 stuff.
[2] Programs that were using USE_QT_VER=3 were looking in the wrong
place for the headers if they relied solely on QTCPPFLAGS to give
it to them.
Reported by: [2] Frank Laszlo <laszlof@earthlink.net>
Remove the FTP listing for eu.dl.sourceforge.net, since it has not
allowing FTP connections at least since 22 hours ago. I left the
HTTP listing for the site.
sourceforge has made available. Additionally, the first site listed
(prdownloads) now gives a HTML selection page when you try to download
a file which causes md5 mismatch and is generally an ugly mess.
Update MASTER_SITE_SOUREFORGE with handful of approved roundrobin HTTP
and FTP sites
Submitted by: Sean Kelly <smkelly@zombie.org>
have been removed because it was not broken and a lot of working
ports depended on it. The qt145 port now installs files named
*qt1* instead of *qt* so it does not conflict with the other qt
versions.
it is decided what JDK ports have been installed.
Tested with: java/jdom net/spread
Reviewed requested from: java@FreeBSD.orgports@FreeBSD.org
Reviewed by: John Merryweather Cooper <john_m_cooper@yahoo.com>
1. Make PY_DISTUTILS recently added into <bsd.python.mk> actually working.
PR: 36537
Submitted by: tg
2. Propagate error code from failed `make depends', when one of the ports
we depend upon is marked BROKEN/FORBIDDEN.
PR: 25522
Submitted by: alex
3. By default, when bsd.port.mk configurating Makefile.PL only pass
PREFIX as argument, but some Perl module (eg. Test-Harness) needed
INSTALLPRIVLIB and/or INSTALLARCHLIB in order to install, otherwise
default installation will goes to /usr/lib and not ${PREFIX}/lib,
in some case, adding these tag to CONFIGURE_ARGS is not bad.
PR: 29681
Submitted by: Shell Hung <shell@shellhung.org>
4. Update patch-libtool target, so that it doesn't break ports with
autoconf 2.13-generated configure script. USE_LIBTOOL is still not
very useful for such cases, but at least it doesn't break them badly
anymore.
PR: 31142
Submitted by: wjv
5. Make `make search' working even when /usr/obj/usr/ports exists.
PR: 31862
Submitted by: gad
6. When configure script fails unexpectedly don't dump thousands lines of
config.log to the user's screen, because it usually doesn't contain
information useful for tracking the problem anyway. Instead display a
message asking a user to report the failure to the proper entity
(maintainer) and what to include into the problem report.
PR: 34459, 35488
Submitted by: Thomas Hurst <freaky@aagh.net>
Alan Eldridge <ports@geeksrus.net>
sobomax
other countless hackers whose names are lost in the noise
Text of message suggested by: asmodai
7. Make PREFIX=/usr situation more sane. When PREFIX is set to /usr,
bsd.port.mk uses MANPREFIX=${PREFIX} and BSD.local.dist for mtree as
always, however those defaults are not appropriate for /usr, and better
options are available.
PR: 36030
Submitted by: DougB
8. Use ${ECHO_CMD} instead of ${ECHO} everywhere in the bsd.port.mk to
avoid clashing with system .mk settings (${ECHO} has a different meaning
there). Actually the patch is imcomplete, because large portion of those
${ECHO_CMD}s should be ${ECHO_MSG}, but this one will at least make Bruce
happy, which shouldn't be underestimated.
PR: 34988
Submitted by: knu
All of the above tested by: bento
Special thanks goes to: kris (for his help with getting this tested)
-------------------------- THE END (to be continued) ------------------------
which probably isn't supposed to be removed is misc/instant-workstation,
which had a dependency on audio/xamp (being removed), so I removed that
dependency and bumped PORTREVISION. All other ports are real dependents
upon Qt 1.x, including KDE 1.x stuff.
Code in bsd.kde.mk supporting these ports is also removed or adjusted.
Also, some adjustments made to accomodate Qt3/KDE3 ports, which will be
committed Real Soon Now (TM), pending repo-copies.
This commit made in impending view of Qt3/KDE3 entering ports tree.
will call the equivalent of `python setup.py {build|install}'. This
should help with most current extensions to the Python language.
PR: 36537
Submitted by: Hye-Shik Chang <perky@fallin.lv>
summarizing the stages. Identified a sixth stage. Renamed the
JDK_FILE setting to _JDK_FILE, for consistency with other
settings that are only used internally in the mk file.
Tested with: jakarta-tomcat-3.3.1_7 (www/jakarta-tomcat3),
jakarta-tomcat-4.0.3_3 (www/jakarta-tomcat),
orion-1.5.2_17 (www/orion)