Commit graph

1202 commits

Author SHA1 Message Date
Baptiste Daroussin
2bd1e982bb factorize add-plist-docs and add-plist-examples 2015-06-22 21:34:53 +00:00
Baptiste Daroussin
2c43cad756 Make fetch-url-list an empty target depending on fetch-url-list-int 2015-06-22 21:19:05 +00:00
Baptiste Daroussin
2cda1c5c74 Make package-noinstall an alias of make package
(which is now noinstall by design)
2015-06-22 21:13:36 +00:00
Baptiste Daroussin
3bb2a897b9 Garbage collect unused command definition 2015-06-22 20:27:02 +00:00
Baptiste Daroussin
8d4196a8f2 Make USE_RC_SUBR install rc.d scripts in /etc/rc.d if PREFIX is /usr
Remove now useless USE_RC_ORDER
2015-06-22 19:55:44 +00:00
Mathieu Arnold
23171c40d3 Have make showconfig fail if the config is incorrect.
PR:		188693
Sponsored by:	Absolight
2015-06-13 03:03:51 +00:00
Mathieu Arnold
27d2d3fec9 Support .zip files in PATCHFILES and EXTRA_PATCHES.
PR:		167794 (based on)
Submitted by:	jbeich
Sponsored by:	Absolight
2015-06-13 02:01:43 +00:00
Erwin Lansing
b7e180fee3 Document check-plist and check-sanity targets.
PR:		135569
Submitted by:	alexbestms@math.uni-muenster.de
2015-06-12 20:14:56 +00:00
Baptiste Daroussin
0013e695a9 Remove NEED_ROOT, the last customer has been modified to be able to properly
package as a regular user

USES=fakeroot and USES=uidfix does a better job and is less intrusive and allows
to simplify the way we handle the different targets in the framework
2015-06-04 19:32:29 +00:00
John Marino
12a19c24bf bsd.port.mk: Implement BROKEN_${OPSYS} and BROKEN_${OPSYS}_${OSREL:R}
Examples of use:
  * BROKEN_FreeBSD=	does not link
  * BROKEN_DragonFly=	requires later jail
  * BROKEN_FreeBSD_8=	long type-name is invalid

The latter example could replace something like:

  .include <bsd.port.pre.mk>
  .if ${OPSYS} == FreeBSD && ${OSVERSION} <= 900000
  BROKEN=	long type-name is invalid
  .endif

Differential Revision:	https://reviews.freebsd.org/D2207
Reviewed by:		portmgr
Approved by:		portmgr (mat)
2015-06-02 21:17:00 +00:00
Mathieu Arnold
ace79eb6b7 This was not supposed to escape my ports tree.
With hat:	portmgr
Pointy hat to:	mat
Sponsored by:	Absolight
2015-05-29 13:12:49 +00:00
Mathieu Arnold
70444a23e6 Introduce USE_GITHUB=nodefault to allow fetching additional distfiles
from github, but not the default one.

With hat:	portmgr
Sponsored by:	Absolight
2015-05-29 13:07:33 +00:00
Mathieu Arnold
676e4ffcf4 USE_GITHUB can now fetch multiple distfiles. It uses a grouping feature
similar to MASTER_SITES/PATCH_SITES.

Some helpful variables are provided: WRKSRC_<group> for putting things in the
right place in post-extract, and DISTNAME_<group>/DISTFILE_<group> for use with
EXTRACT_ONLY.

PR:		200483
Differential Revision:	https://reviews.freebsd.org/D2608
Submitted by:	mat
With hat:	portmgr
Exp run by:	antoine
Sponsored by:	Absolight
2015-05-28 16:37:01 +00:00
Mathieu Arnold
cb28a089d6 Remove GH_COMMIT support.
Differential Revision:	https://reviews.freebsd.org/D2606
With hat:	portmgr
Sponsored by:	Absolight
2015-05-21 15:25:40 +00:00
Mathieu Arnold
18cec56a95 Use the same, working, logic for DIST/PATCH group parsing everywhere.
With hat:	portmgr
Sponsored by:	Absolight
2015-05-14 10:10:16 +00:00
Bryan Drewery
007bf7a3d4 USE_GITHUB: Fix WRKSRC to contain the full DISTVERSION prefix/suffx when GH_TAGNAME not set.
The GH_TAGNAME-based GH_TAGNAME_EXTRACT is now always used for the new style
USE_GITHUB WRKSRC default.

This was not spotted before since all but 1 github ports were using 'v' as a
prefix, where github already stripped it. So the default GH_PROJECT-DISTVERSION
was fine. The other case was x11-fonts/sourcesanspro-ttf where
GH_TAGNAME was defined to have the full DISTVERSION prefix/suffx.

Tested against all current USE_GITHUB !GH_COMMIT ports.

PR:		199913
With hat:	portmgr
Reported by:	jbeich
2015-05-04 17:42:29 +00:00
Antoine Brodin
f7f5de9089 Remove _*OWNGRP, with staging it's not useful anymore
With hat:	portmgr
Original submission:	bapt
Exp-run:	self
2015-05-04 13:21:17 +00:00
Baptiste Daroussin
0f5d587ef2 Remove unintended change from r385384 those will come later 2015-05-04 08:55:04 +00:00
Baptiste Daroussin
dd86eab2d5 Mark NEED_ROOT as deprecated, It was a wrong idea as people are abusing it.
There is now USES=fakeroot for complicated cases if needed.
2015-05-04 08:53:20 +00:00
Bryan Drewery
aa6ad6e726 USE_GITHUB: For the new support, fix DISTNAME to be more consistent.
When using GH_TAGNAME the DISTNAME would have GH_PROJECT and GH_ACCOUNT in
it. When not using GH_TAGNAME it would not have this. Now both cases
will add in the GH_PROJECT and GH_ACCOUNT.

Add special care to ensure that the DISTVERSION is not added in twice. If
a port does GH_TAGNAME=v${PORTVERSION} it will be added in twice though. For
that case DISTVERSIONPREFIX=v should be set and no GH_TAGNAME should be used.

empty() is used rather than (!defined || !${}) to support fmake.

The purpose of setting DISTNAME at all in these cases is to make it more clear
that the distfile is from *GITHUB* and to avoid collisions if a project were
to be renamed or moved. Without adding in GH_PROJECT and GH_ACCOUNT then there
are real risks that collisions on filenames would happen on renamed or moved
projects, which is fairly common. A GITHUB-generated file may not match
a custom-rolled or git-archive-rolled distfile.

PR:		199069
With hat:	portmgr
Testing done:	All USE_GITHUB ports without GH_COMMIT were checksum/fetch/extract/WRKSRC tested.
2015-04-28 18:44:04 +00:00
Antoine Brodin
a5673b92fb Do not error on dependency on ${NONEXISTENT}:dir:target when STRICT_DEPENDS
is set

Reviewed by:	bdrewery
With hat:	portmgr
2015-04-28 15:56:30 +00:00
Bryan Drewery
7925d59ca7 Add a STRICT_DEPENDS feature which validates dependencies are installed, does
not install missing ones, and considers any missing ones as fatal.

This will be used by Poudriere to validate dependency lines are correct.

An example case is:
  RUN_DEPENDS= foo:${PORTSDIR}/ports-mgmt/bar where the port does not provide
  anything named 'foo'. In every phase it will attempt to install the bar port
  to satisfy the depdendency and continue to fail to satisfy it. This can
  eventually lead to unexpected errors such as trying to install a port
  in the 'stage' phase when running as non-root and will encounter a pkg(8)
  permissions issue.

  This sort of issue occurred in http://lists.freebsd.org/pipermail/freebsd-ports/2015-April/098892.html

Discussed with:	bapt
With hat:	portmgr
2015-04-21 18:16:31 +00:00
Tijl Coosemans
f3d0196f85 Remove the destination of a copy before copying to it because it may be
a symlink and then cp follows the link.

Approved by:	portmgr (antoine)
2015-04-21 09:03:52 +00:00
Tijl Coosemans
68edbeeaae - Display a stage-qa warning when ports use PREFIX/var instead of /var
- Add --localstatedir=/var to _LATE_CONFIGURE_ARGS (like --mandir) but not
  when CONFIGURE_ARGS already sets it.  (GNU configure scripts set it to
  PREFIX/var when PREFIX != /usr.)
- Add --localstatedir="${PREFIX}/var" to CONFIGURE_ARGS in some ports so
  they aren't affected by this change (for now at least).  This commit is
  meant to ensure that new ports don't make the same mistake.

- games/acm: the configure script in this port is very old; instead of
  patching it more, just replace GNU_CONFIGURE with HAS_CONFIGURE.
- irc/charybdis: it already used /var but adding --localstatedir=/var
  changed the behaviour of the configure script; adjust the port to this.

PR:		199506
Exp-run by:	antoine
Approved by:	portmgr (antoine)
2015-04-20 19:06:29 +00:00
Gerald Pfeifer
728fb3cb3d Abstract ${WRKDIR}/pkg/${PKGNAME}${PKG_SUFX} which appears five times
and introduce and use WRKDIR_PKGFILE instead.

PR:		199526
Approved by:	portmgr (bdrewery)
2015-04-19 18:33:37 +00:00
Bryan Drewery
005a60b7c9 Improve the OSVERSION==UNAME_r validation from r369644 by skipping it
if OSVERSION is specified on the cmdline. This makes testing simpler.

This only works for bmake.

	# make -V CONFIGURE_LIBS
	-lnew_release
	# make -V CONFIGURE_LIBS OSVERSION=800000
	-lolder_release
	# env OSVERSION=800000 make -V CONFIGURE_LIBS
	make: "/root/svn/ports/Mk/bsd.port.mk" line 1182: UNAME_r (11.0-CURRENT) and OSVERSION (800000) do not agree on major version number.
	# echo OSVERSION=800000 >> /etc/make.conf
	# make -V CONFIGURE_LIBS
	make: "/root/svn/ports/Mk/bsd.port.mk" line 1182: UNAME_r (11.0-CURRENT) and OSVERSION (800000) do not agree on major version number.

Reported by:	danfe
With hat:	portmgr
2015-04-15 16:14:47 +00:00
Gerald Pfeifer
1540c897ae Simplify the description of BUNDLE_LIBS.
Approved by:	portmgr (bapt)
2015-04-12 23:01:32 +00:00
Gerald Pfeifer
b9dd907905 Fix grammar in description of BUNDLE_LIBS.
Approved by:	portmgr (erwin)
2015-04-10 08:23:22 +00:00
Antoine Brodin
35da4891c2 - Make it possible to override _MAKE_JOBS when MAKE_JOBS_NUMBER=1
- Override it for USES=ninja
With this commit and r383571, ports using ninja and waf now respect
MAKE_JOBS_NUMBER when it's equal to 1

PR:		197910
With hat:	portmgr
2015-04-10 05:45:15 +00:00
Baptiste Daroussin
39cad29a6e Remove USE_GNUSTEP from bsd.port.mk 2015-04-09 07:49:34 +00:00
Baptiste Daroussin
671d1d9bd1 Introduce CONFIGURE_CMD which default on ./${CONFIGURE_SCRIPT} so that we can
have a variable to overwrite in order to be able to reuse the configure
framework with other mechanism then regulars ./configure
2015-04-08 14:59:25 +00:00
Baptiste Daroussin
4edad698c1 pkg sets the defaults owner and group already, no need to specify it via
COPYTREE_* anymore (which also helps creating packages as non root)
2015-04-08 06:57:20 +00:00
Baptiste Daroussin
ee2ae85707 Remove check for NO_STAGE in bsd.port.mk bsd.sanity.mk already takes care of
that
2015-04-07 12:29:04 +00:00
Baptiste Daroussin
dd64c3e552 USE_BZIP2 and USE_XZ are not used anymore in the ports tree mark them as
unsupported
2015-04-07 12:13:52 +00:00
Baptiste Daroussin
b6f1784044 Fix EXTRACT_SUFFIX documentation
Remove documentation on the deprecated USE_BZIP2 and USE_XZ
2015-04-07 11:40:08 +00:00
Baptiste Daroussin
6ffd63e003 Finish r383230
Reported by:	kwm
2015-04-04 21:51:40 +00:00
Baptiste Daroussin
76028fecb8 Rename HCC into HOSTCC which is more natural 2015-04-04 16:23:55 +00:00
Bryan Drewery
7be82df818 Fix invoking DEV tests when not in a port. This fixes some cases where
'make -f Mk/bsd.port.mk -V ...' would invoke the tests and cause
unexpected errors such as with r370475.

With hat:	portmgr
2015-04-04 05:33:45 +00:00
Baptiste Daroussin
6e184a1329 Add a note about BUNDLE_LIBS
Suggested by:	gerald
2015-04-01 06:07:59 +00:00
Bryan Drewery
52131930a1 Fix duplicate values in ENV vars and X_BUILD_FOR truncating BUILD_DEPENDS.
PKG_NOTES/PKG_ENV/CONFIGURE_ENV/MAKE_ENV/CO_ENV/QA_ENV were using += before the
double include check so any port using bsd.port.options.mk or bsd.port.pre.mk
would have duplicated items in these vars.

All ports would have their BUILD_DEPENDS truncated with X_BUILD_FOR.

PR:		198803 (exp run by antoine)
Differential Revision:	https://reviews.freebsd.org/D2113
With hat:	portmgr
2015-03-29 19:45:39 +00:00
John Marino
c560a85625 Mk: remove PTHREAD_LIBS and PTHREAD_CFLAGS variable
For bsd.gecko.mk, replace PTHREAD_LIBS with "-pthread", the same value
it was using before.

Approved by:	PTHREAD blanket (completes task)
Approved by:	portmgr (bapt)
2015-03-26 08:57:36 +00:00
Bryan Drewery
a79013b978 Fix 20 year old doc bug. MASTER_SITE_OVERRIDE has not 'overridden' since r2004.
With hat:	portmgr
2015-03-25 21:12:07 +00:00
Bryan Drewery
0803843ae4 Github's main archive link silently is converting tags starting with 'v' to
not have 'v' in the filename downloaded or the extraction directory. The
filename is not an issue since we force to use DISTNAME via the ?dummy trick
to fetch(1). Due to this though we must make the same replacement for tags
since we are not using their filename (which matches the extraction dir).

Incidentally this is working if DISTVERSIONPREFIX=v is used since that value
was not used in WRKSRC.

With hat:	portmgr
PR:		198869
2015-03-24 16:42:38 +00:00
Bryan Drewery
b4623773d9 Introduce a BSDMAKE?= /usr/bin/make and use it as the default MAKE_CMD.
With hat:	portmgr
2015-03-23 04:03:00 +00:00
Bryan Drewery
945a87d01c Fix fetching x11-fonts/sourcesanspro-ttf from r381780; Don't modify GH_TAGNAME.
Pointyhats to:	bdrewery
With hat:	portmgr
Reported by:	antoine
2015-03-20 22:32:00 +00:00
Bryan Drewery
37a1520519 For the new USE_GITHUB with only GH_TAGNAME set default DISTNAME to
include GH_PROJECT/GH_ACCOUNT/GH_TAGNAME. This prevents the distfile
having the same name despite changing one of these values and causing
a bad checksum.

Differential Revision:	https://reviews.freebsd.org/D2103
Reviewed by:	mat
With hat:	bdrewery
2015-03-20 20:07:50 +00:00
Bryan Drewery
69d5e85c26 Default the WRKSRC to the proper extracted name for USE_GITHUB when
GH_TAGNAME is defaulted to the new DISTVERSIONPREFIX/DISTVERSION/DISTVERSIONSUFFIX
change in r381689.

This actually fixes the build for sysutils/zfstools, broken in r381704.

With hat:	portmgr
2015-03-20 07:25:43 +00:00
Bryan Drewery
965611a692 Fix renamed distfiles missed in r381688. Also fix the GHR ports updated in
r381648 which were expecting DISTVERSIONPREFIX/SUFFIX to be used in the
tag fetched from github by defaulting GH_TAGNAME to the same value
as DISTVERSION would get by only when GH_COMMIT is not set (when using the
new scheme).

With hat:	portmgr
2015-03-19 20:45:03 +00:00
Bryan Drewery
5b5a90256d Update USE_GITHUB so it does not require GH_COMMIT.
Using this new scheme allows only setting the _tag_ or _commit hash_ in
GH_TAGNAME and not having to know the hash for a tag.  This scheme will
download a tarball that has a different checksum than before due to a changed
directory name for extraction.

The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
  GH -> GHL
  GITHUB -> GITHUB_LEGACY

Differential Revision:	https://reviews.freebsd.org/D748
Submitted by:	amdmi3
Reviewed by:	mat, swills, antoine, bdrewery
With hat:	portmgr
2015-03-19 16:44:57 +00:00
Antoine Brodin
3f58690a6f Commit what was exp-ran in PR 198132 (and unbreak INDEX) 2015-03-05 23:10:55 +00:00