aboutsummaryrefslogtreecommitdiff
path: root/Mk/Scripts/do-depends.sh
Commit message (Collapse)AuthorAgeFilesLines
* framework: Remove $FreeBSD$Mathieu Arnold2021-04-061-1/+0
| | | | Where appropriate fiddle with a few other things.
* Add set pipefail in most framework scripts.Mathieu Arnold2020-11-111-0/+1
| | | | | | | | | | | | | | | | set pipefail changes the pipeline return status from being the return status of the last command to the last non 0 exit status of any command in the pipeline. This is needed to make sure all the commands in a pipeline did actually return a non 0 status and not only the last one. PR: 250723 Exp-run by: antoine Reviewed by: bapt Approved by: bapt Differential Revision: https://reviews.freebsd.org/D27007 Notes: svn path=/head/; revision=554893
* Backout r554139.Mathieu Arnold2020-11-051-1/+0
| | | | Notes: svn path=/head/; revision=554142
* Add set pipefail in most framework scripts.Mathieu Arnold2020-11-051-0/+1
| | | | | | | | | | set pipefail changes the pipeline return status from being the return status of the last command to the last non 0 exit status of any command in the pipeline. This is needed to make sure all the commands in a pipeline did actually return a non 0 status and not only the last one. Notes: svn path=/head/; revision=554139
* Fix overlays when using flavors.Mathieu Arnold2020-07-061-7/+8
| | | | | | | | | | | Move FLAVOR processing before the overlays processing so that flavors can be used with overlays. PR: 247741 Submitted by: mikael Notes: svn path=/head/; revision=541336
* Don't show private variable name in user message.Bryan Drewery2020-04-101-1/+1
| | | | Notes: svn path=/head/; revision=531389
* Add support for overlaysBaptiste Daroussin2019-09-031-2/+10
| | | | | | | | | | | | | | | | | | | | | overlays are a way to help users to integrate their own ports tree with the official ports tree without having to maintain clone of the official tree and remerge on regular basis. The ports tree will lookup in the overlays (in the order the are listed in OVERLAY variable) for the dependencies and the USES. It will use the first found. in order to use it the user have to declare his overlays that way in their make.conf: OVERLAYS= overlay1 overlay2 overlay3 Reviewed by: manu Approved by: swills Differential Revision: https://reviews.freebsd.org/D21468 Notes: svn path=/head/; revision=510950
* Force ports depending on a fetch target to actually run checksum.Mathieu Arnold2019-08-131-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents an improbable MITM attack on dependencies where the target is "fetch" and the port is built manuallt. (Which means a port depends on a dependency being fetched, but not built or anything else.) In this case, as the target is only "fetch", the distribution files of the dependency are not checked against the dependency's distinfo file. One could, in theory, impersonate the dependency's master site and provide a malicious distribution file. The ports that could in theory be affected are russian/gd, ukrainian/gd, and ukrainian/webalizer. They are only affected when building manually, as when building with poudriere, the *-depends target do not have network access, and the build would fail if the distribution files are not already present. (From the dependencies being built normally, where checksum would have ran.) The detail is described here: https://www.reddit.com/r/BSD/comments/br62hm/freebsd_cryptographic_bypass_and_mitmbased/ Reported by: emaste (on IRC) Reviewed by: swills emaste antoine MFH: 2019Q3 Differential Revision: https://reviews.freebsd.org/D21230 Notes: svn path=/head/; revision=508819
* Fix 'make -j'.Bryan Drewery2017-12-071-3/+3
| | | | | | | | | | | | | - Pass MAKEFLAGS down into do-depends properly. - Remove redundant dependencies, run-depends and lib-depends, from targets that already depend on earlier targets that depend on the needed targets. Reported by: emaste With hat: portmgr Notes: svn path=/head/; revision=455690
* Implement basic flavors.Mathieu Arnold2017-09-261-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Do not start migrating any ports, a hook will prevent it** This has been a long awaiting feature, most of the work has been done by bapt, bdrewery and antoine, I am just the one actually doing the commit. All this informations, and more to come are in the first link to our wiki in the bottom block. A roadmap is in the second link. To define a different flavors in a port, before any include, set: FLAVORS= flavor1 flavor2 [...] The first flavor in the list will be the default. You can then check for flavors after includ'ing bsd.port.options.mk with: .if ${FLAVOR} == flavor2 [some stuff] .endif To build flavor2, simply run: make FLAVOR=flavor2 To depend on a specific flavor, write @<flavor> at the end of the depend string, like: RUN_DEPENDS= something:origin@foo Submitted by: bapt, bdrewery, antoine Reviewed by: portmgr More infos: https://wiki.freebsd.org/Ports/FlavorsMigration Todo List: https://wiki.freebsd.org/Ports/FlavorsAndSubPackages With hat: portmgr Differential Revision: https://reviews.freebsd.org/D10327 Notes: svn path=/head/; revision=450663
* Don't truncate DEPENDS_ARGS here.Bryan Drewery2016-10-311-2/+2
| | | | | | | | | | | This code seems unused though since bsd.port.mk has its own handling for clean-depends. PR: 212273 With hat: portmgr Notes: svn path=/head/; revision=425026
* Fix package depends install not respecting DEPENDS_ARGS for the PKGFILE lookup.Bryan Drewery2016-06-241-6/+4
| | | | | | | | This also optimizes the PKGBASE/PKGFILE lookup with the new port_var_fetch(), which passes in the known DEPENDS_ARGS. Notes: svn path=/head/; revision=417413
* Show proper variable in error.Bryan Drewery2016-06-241-1/+1
| | | | | | | With hat: portmgr Notes: svn path=/head/; revision=417411
* Ease debugging of Mk/Scripts scripts.Mathieu Arnold2016-05-201-0/+2
| | | | | | | | Sponsored by: Absolight Differential Revision: https://reviews.freebsd.org/D6474 Notes: svn path=/head/; revision=415573
* Use normal PORTSDIR rather than dp_PORTSDIR so it is passed around properly.Bryan Drewery2015-12-041-2/+2
| | | | | | | | | | | | This fixes errors when PORTSDIR is not set and /usr/ports is not used. The /usr/share/bsd.port.mk logic will auto set PORTSDIR, but this was not being passed into children in the dependency scripts. With hat: portmgr Reported by: bapt Notes: svn path=/head/; revision=403013
* - Only consider missing dependency origins to be fatal if they were notBryan Drewery2015-11-131-8/+21
| | | | | | | | | | | | satisfied and needed to be installed. This restores older behavior of allowing a partial checkout where dependencies are already installed. [1] - Delay fatal errors show that all can be shown at once. With hat: portmgr Reported by: lev [1] Notes: svn path=/head/; revision=401524
* Fix error message when not finding a packageBaptiste Daroussin2015-09-021-1/+1
| | | | Notes: svn path=/head/; revision=395910
* Split LIB_DEPENDS and the other _DEPENDS types.Mathieu Arnold2015-07-241-6/+15
| | | | | | | | | | | | Reviewed by: bapt, pgolluci Exp-run by: mat Approved by: bapt With hat: portmgr Sponsored by: Absolight Differential Revision: https://reviews.freebsd.org/D3150 Notes: svn path=/head/; revision=392816
* Factorize the function to validate envBaptiste Daroussin2015-07-011-12/+1
| | | | | | | | Reviewed by: antoine Differential Revision: https://reviews.freebsd.org/D2966 Notes: svn path=/head/; revision=391119
* Add PATH environment when trying to find libraries this fixes building underBaptiste Daroussin2015-06-301-1/+1
| | | | | | | | | | qemu emulation Reported by: Sylvain Garrigues (via #poudriere) Tested by: Sylvain Garrigues (via #poudriere) Notes: svn path=/head/; revision=390989
* Refactor dependency checks and installationBaptiste Daroussin2015-06-281-0/+177
This is an important step to prepare the ports tree for VARIANTS(aka flavours) and subpackage by making the dependency code easier to deal with. Change: - Externalize in a proper shell script the code that was an inlined shell script - Add better validation on the syntaxe used - test after the dependency has been installed that it actually really fulfill the pattern searched (improving QA) - Unify lib-depends with other dependency checks - Make ${PORTSDIR} not mandatory anymore in _DEPENDS lines: aka pattern:${PORTSDIR}/category/port can now be written pattern:category/port /!\ Please to not use this syntax yet! poudriere have received a fix to be able to handle this new syntax (but no new release of poudriere has it yet) portmaster/portupgrade hasn't been checked. if one cares about those last 2 it would be really nice to provide patches to them! - Remove _DEPENDS_ALWAYS it has half broken for a while and did not really make sense. - Keep STRICT_DEPENDS for now it might not be necessary anymore given all the new checks added, but until someone confirms it is worth keeping it. Note that all the env passed are prefixed by 'dp_' to avoid polluting children make Differential Revision: https://reviews.freebsd.org/D2897 Reviewed by: antoine Exp-run by: antoine Notes: svn path=/head/; revision=390865