summaryrefslogtreecommitdiff
path: root/Mk/bsd.port.mk (follow)
Commit message (Collapse)AuthorAgeFilesLines
* all: drop support for FreeBSD 13.2 which reached EOL todayRene Ladan5 days1-2/+2
| | | | | | | Thanks again to jbeich for noticing various things I overlooked. Reviewed by: acm, ashish, eduardo, ehaupt, eugen, jbeich, martymac, mat, nobukata, sunpoet, tagattie, yuri, arrowd, kde Differential Revision: https://reviews.freebsd.org/D45141
* Revert "Framework: Introduce bsd.sponsor.mk"Mathieu Arnold12 days1-2/+0
| | | | This reverts commit 274cd4df4dcce0a9aa78da47bb6e35ab3dbcbf8c.
* Framework: Introduce bsd.sponsor.mkGleb Popov12 days1-0/+2
| | | | Differential Revision: https://reviews.freebsd.org/D44487
* Mk/bsd.port.mk: Update comment about quoting do-fetch env varsJoseph Mingrone2024-06-161-3/+2
| | | | | | Reviewed by: portmgr (mat) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45607
* Mk/bsd.port.mk: simplify WITH_<feat> codeMathieu Arnold2024-04-161-32/+10
| | | | Differential Revision: https://reviews.freebsd.org/D44793
* framework: reintroduce the feature enabling codeMathieu Arnold2024-04-121-8/+34
| | | | | | | | | | | | | | | | | | | | | | | For each feature (see in Mk/Features) users can now set these variables in their make.conf. Using LTO as an example. To enable globally: WITH_LTO= yes To disable globally (for example ssp is enabled by default): WITHOUT_LTO= yes To enable for a specific list of ports: WITH_LTO_PORTS= lang/perl5.36 To disable for a specific list of ports: WITHOUT_LTO_PORTS= lang/perl5.36 Differential Revision: https://reviews.freebsd.org/D44750
* Revert "Mk/bsd.port.mk: Allow WITHOUT_FEATURE_PORTS to cancel WITH_FEATURE"Mathieu Arnold2024-04-111-30/+9
| | | | This reverts commit d697653cffd19ddaf3cdee2589a830c72ab39777.
* Framework: Finalize switch to share/man for manpagesMuhammad Moinur Rahman2024-04-111-4/+2
| | | | | PR: 277603 Approved by: portmgr
* Framework: Use WRK_ENV when handling USE_LOCALEGleb Popov2024-03-281-2/+1
| | | | PR: 276478
* */*: Various Linux CentOS 7 updatesTijl Coosemans2024-03-251-1/+1
|
* Mk/bsd.port.mk: Add __MAKE_CONF=${NONEXISTENT} to WRK_ENVTijl Coosemans2024-03-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | And remove it from individual ports. Use WRK_ENV in custom build commands where necessary. FreeBSD make(1) includes /usr/share/mk/sys.mk and that includes /etc/make.conf if it exists. This happens when you run make in a port directory but it also happens when the upstream build system uses make. This commit disables make.conf inclusion in the latter case because users can define variables like CFLAGS in make.conf that override ports framework variables and this can cause problems that are difficult to diagnose. If there are any build customisations made through make.conf that stop working because of this commit then they should be made available by the ports tree through some mechanism, e.g. an option in a port. Some ports were picking up variables from Poudriere make.conf and required fixes: - astro/wmspaceweather x11-clocks/wmcalclock: Add OPSYS to MAKE_ENV. - games/zhlt: Add ARCH to MAKE_ENV. - graphics/tachyon: Upstream ARCH is not ports tree ARCH. Set ALL_TARGET=bsd so upstream ARCH is defined correctly. Enable multi-threading support while here. PR: 277455 Exp-run by: antoine
* Mk/bsd.port.mk: remove LEGAL related variablesBaptiste Daroussin2024-03-061-13/+0
| | | | | | | | This is noop since the ports tree does nothing with the variables anymore for a while Reviewed by: mat Differential Revision: https://reviews.freebsd.org/D44252
* Mk/*: Build with a clean environmentTijl Coosemans2024-02-291-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Both our make and gmake use the MAKEFLAGS environment variable but the values aren't compatible and the latest version of gmake complains about that. To rule out that any environment variable can cause problems like this, add a new command SETENVI=/usr/bin/env -i that clears the environment, and use it to run upstream build systems with a clean environment. Introduce a new variable WRK_ENV that contains the environment to use with SETENVI in all targets that run upstream build commands. Variables that are common between CONFIGURE_ENV and MAKE_ENV could be moved to WRK_ENV but for now it just contains a minimal environment: HOME=${WRKDIR}: Fixes USES=elixir ports that were using the user's HOME. OSVERSION: For cross building; determines the output of uname -K and getosreldate(3); affects net/freebsd-telnetd for example. PATH: Fixes USES=gem ports that were using the user's PATH. PWD=$${PWD}: Preserve current working directory; affects USES=go ports. TERM: To preserve colored output to terminals. TMPDIR: For users who define that. UNAME_*: For cross building; determines the output of uname(1); affects lang/python* for example. This commit deals with everything under Mk/. Ports that have their own targets running upstream build commands can switch to SETENVI later. The ports tree adds its definition of ARCH to the MAKEFLAGS environment variable, which is interpreted by sub-makes as command line arguments, which means that any definition of ARCH in upstream makefiles was overridden. The following ports required fixes now that this is no longer the case. games/iortcw, games/q3cellshading, games/tremulous: These use Quake 3 engine code. Fix use of ARCH. Reduce diff between FreeBSD code and Linux code. games/legesmotus: Remove ARCH related patches. lang/ocaml: Patch configure script so it detects amd64 correctly. Also make the powerpc case consistent with the other architectures. This also affects other ocaml ports like devel/ocaml-ocamlbuild and math/ocaml-num that include a Makefile.config installed by lang/ocaml. While here, use SETENVI in check-test target. net/libnatpmp: Use of upstream definition of ARCH triggers installation in PREFIX/lib64 on amd64. Disable this. PR: 276478 Approved by: portmgr (antoine) Exp-run by: antoine
* Mk/bsd.port.mk: Allow WITHOUT_FEATURE_PORTS to cancel WITH_FEATUREGleb Popov2024-02-291-9/+30
| | | | | | Differential Revision: https://reviews.freebsd.org/D43949 Sponsored by: Serenity Cybersecurity, LLC
* Framework: Introduce testing featureGleb Popov2024-02-291-2/+2
| | | | | | | | | Setting WITH_TESTING=yes will cause running `make test` between `stage` and `package` in the default pipeline. This feature is off by default. Sponsored by: Serenity Cybersecurity, LLC
* subpackages: fix minor regressionBaptiste Daroussin2024-02-121-0/+2
| | | | | | | | | | | | | | | | | Before subpackages, when running package there where 2 cases: case 1: ${PACKAGES} directory exist: packages are created in the work/pkg directory then copies into ${PACKAGES} directory case 2: ${PACKAGES} does not exist: packages where only created in work/pkg After subpackages in the case 2, the packages get copied into the directory actually running the make package comment. This change makes the framework behave like before subpackages Reported by: Antonio Huete Jimenez (tuxilio from Dragonfly irc channel)
* subpackages: fix make flavors-package-namesBaptiste Daroussin2024-02-051-1/+1
| | | | | | | | | if the ports has flavors and subpackages then the list of names are properly displayed 1 per line, but if the ports as no flavors then it reported everything inline, breaking pkg version and probably other tools Reported by: many
* Features/debuginfo.mk: Automatically generate a subpackage with debugging info.Gleb Popov2024-02-031-3/+3
| | | | | | | Differential Revision: https://reviews.freebsd.org/D43515 Tested by: flo Approved by: portmgr, emaste
* Mk/bsd.port.mk: Sunset MANPREFIXMuhammad Moinur Rahman2024-01-291-13/+4
| | | | | | | | | | | | | | | | For historical reasons FreeBSD had been using PREFIX/man to install man pages and a variable MANPREFIX was utilized to do this. While the rest of the UNIX/Linux world had been mostly using PREFIX/share. As the first step of moving to PREFIX/share/man this commit removes all the references to the MANPREFIX variable. Apart from MAKE_ARGS this variable no longer exists and should not be used to refer to PREFIX anymore in the future. The entire shift to PREFIX/share/man will take some more times as there are around 4000 ports which installs man page to PREFIX/man. PR: 276551 Approved by: portmgr (exp-run)
* features: Add support to enable sanitizersOlivier Cochard2024-01-181-1/+1
| | | | | | | | | | | | | | | Can be activated/deactivated globally via WITH_SANITIZE Can be activated individualy via WITH_SANITIZE_PORTS Each port can individually mark itself as not supporting the feature via SANITIZE_UNSAFE= Approved by: bapt, arrowd Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D43497
* Mk/*: unconditionally use .MAKE.UID and .MAKE.GIDChristian Weisgerber2024-01-151-7/+1
| | | | | | | | Since FreeBSD 12 has been EOLed, the built-in make(1) variables .MAKE.UID and .MAKE.GID are always available. PR: 276259 Approved by: arrowd
* Mk/bsd.port.mk: Introduce generic WITH_<FEATURE>_PORTS knob.Gleb Popov2024-01-111-4/+14
| | | | | | | | | This allows enabling any feature supported by Ports Framework for a selected ports. It was only possible to do WITH_DEBUG_PORTS before. Differential Revision: https://reviews.freebsd.org/D43369 Approved by: bapt
* MAN?PREFIX: undefine those variablesBaptiste Daroussin2024-01-111-9/+0
| | | | | | | | | MAN?PREFIX where confusing (people kept messing around with them) did not bring any real value or functionnality. Reviewed by: portmgr (mat) Approved by: portmgr (mat) Differential Revision: https://reviews.freebsd.org/D43392
* subpackages: fix flavors-package-namesBaptiste Daroussin2024-01-021-4/+4
| | | | | | | | | | | Before subpackages was introduced, flavors-package-names was printing the full <name>-<version>, a regression was introduced with subpackages which made it print <name>. One of the side effect of this is pkg version -v -P was determining all the ports as orphaned. Reported by: stephen@
* component: add SUBPACKAGESLuca Pizzamiglio2024-01-011-92/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit add SUBPACKAGES support to the framework. Fix users of _LICENSE_DIR Fix multi/dual license Add annotation to packages about being a subpkg Make do-depends aware of the subpackages Add PKGBASE.subpkg variable Fix actual-package-depends target Fix dependencies in sub-packages Implement LICENSE support Fix PLIST_FILES.subpkg Make DESCR.subpkg warning message shorter Add SUBPACKES to the list of OPTIONS_HELPERS Fix _strip_perms Simplify METADIR as in the original patch Fix _PLIST Fix the case when there are no subpackages Fix typo Fix _PKGDIR initialization Fix PLIST Fix typo in RE Fix METADIR Fix type in PKGFILE Fix [build|run]-depends-list targets Initial import of the subpackage framework This import is based on https://reviews.freebsd.org/D16457 PR: 275735 Differential Revision: https://reviews.freebsd.org/D40549
* */*: Sunset 12.4-RELEASE/12-STABLE from ports treeMuhammad Moinur Rahman2023-12-311-2/+2
| | | | | | | | | | | | | | | | | | | | | - Remove all references to defunct ARCH arm - Remove all references to defunct ARCH sparc64 - Remove x11-drivers/xf86-video-sunffb which requires defunct sparc64 ARCH - Remove sysutils/afbinit requires defunct sparc64 ARCH - Remove all references to bktr driver - Remove all references to defunct FreeBSD_12 - Remove all references to OSVERSION/OSREL corresponding to 12 - Remove conditionals in Mk/Uses/cabal.mk - Remove sparc reference from Mk/Uses/qt-dist.mk - Remove BROKEN_sparc64/NOT_FOR_ARCH=sparc64 - Remove BROKEN_FreeBSD_12* from: - Remove OpenSSL patches from: - Remove conditional flags for OSVERSION >= 1300000 to fixed flags. Also move conditional flags for non sparc64/arm ARCH to fixed flags. Reviewed by: brooks, jbeich, rene, salvadore Differential Revision: https://reviews.freebsd.org/D42068
* Mk/bsd.port.mk: Remove duplicate variable in JSON outputFernando Apesteguía2023-11-261-1/+0
| | | | | | | | Remove duplicate pkg_depends when generating a JSON description of the three Approved by: delphij@ Fixes: 3d9f300e01f5ecdb140027096c603623264ecc07 Differential Revision: https://reviews.freebsd.org/D42373
* Mk/bsd.port.mk: add COMMENT to make describe-jsonFernando Apesteguía2023-10-251-0/+1
| | | | | | Follow up to 3d9f300e01f5ecdb140027096c603623264ecc07. Approved by: portmgr@ (bapt@ via mail)
* Mk/bsd.port.mk: fix indentation (per ts=4) and trim excessive linefeedsAlexey Dokuchaev2023-10-221-20/+8
| | | | While here, spell two common Latin contractions properly.
* Mk/bsd.port.{subdir}.mk: create describe-jsonFernando Apesteguía2023-10-181-0/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Create "describe-json" target to get a JSON-compliant representation of the ports tree. It can be invoked from a single port directory, a category directory or from the ports tree top directory. It supports FLAVORS. E.g. It is possible to execute the following: cd math/qalculate-qt && make describe-json-qt6 Performance-wise it is equivalent to a simple "make describe" although it offers a more complete vision of the port in an easily parseable format. Times for describe: 1345.39 real 933.06 user 403.01 sys 1317.00 real 929.22 user 406.43 sys 1316.83 real 930.82 user 404.70 sys 1316.75 real 928.05 user 407.39 sys 1316.58 real 930.69 user 404.59 sys Times for describe-json: 1320.38 real 924.80 user 414.48 sys 1320.66 real 926.14 user 413.41 sys 1320.41 real 924.08 user 415.30 sys 1320.37 real 922.96 user 416.35 sys 1320.25 real 924.25 user 414.95 sys Some examples assuming the output is saved in the `describe.json` file. Show all ports in the "accessibility" category: jq '.accessibility' describe.json Show ports in the "accessibility" category with a USES=iconv dependency: jq '.accessibility.[] | select(.uses | index("iconv")) | .pkgorigin' describe.json Show ports in the tree that Uses=kmod: jq '.[].[] | select(.uses | index("kmod")) | .pkgorigin' describe.json Show ports having a LIB_DEPENDS on devel/binutils: jq '.[].[] | select(.lib_depends | map(test("devel/binutils")) | any) | .pkgorigin' describe.json Show ports in the "database" category which have no maintainer and are marked as deprecated: jq '.databases.[] | select(.maintainer=="ports@FreeBSD.org" and .deprecated!=" ") | .pkgorigin, .deprecated' describe.json Approved by: portmgr (bapt@) Differential Revision: https://reviews.freebsd.org/D42131
* sanity: warn about unnused LIB_DEPENDS entriesTobias C. Berner2023-09-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | `stage-qa` already warns about missing dependencies. However, it does not warn about possibly unneeded ones. This change tries to address this, by simply walking the list of linked against shared libraries and then matching the entries of LIB_DEPENDS against them. Note: this may lead to false positives -- as always, user your brain, and don't rely on output of static tools alone. Possible output might look like: [...] ====> Running Q/A tests (stage-qa) Warning: you might not need LIB_DEPENDS on libqgpgme.so Warning: you might not need LIB_DEPENDS on libintl.so Warning: you might not need LIB_DEPENDS on libKF5IconThemes.so Warning: you might not need LIB_DEPENDS on libqca-qt5.so Warning: you might not need LIB_DEPENDS on libQt5Test.so [...] Note, that in this case all are false positives. Differential Revision: https://reviews.freebsd.org/D27304
* all: remove support for expired FreeBSD 13.1Rene Ladan2023-08-011-1/+1
| | | | | | | Approved by: portmgr (implicit), salvadore (gcc ports) Reviewed by: jbeich Differential Revision: https://reviews.freebsd.org/D40845
* bsd.sites.mk: Support tag names with USE_GITLABFelix Palmen2023-07-121-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Since quite some time, it's possible to download generated tarballs from gitlab for a tag name without knowing the corresponding git hash. This is preferable because you have a single source of truth about the software version. Support this by replacing GL_COMMIT with GL_TAGNAME which also accepts a commit hash, similar to USE_GITHUB. Unfortunately, there's a catch, the DISTFILE must be named exactly: ${GL_PROJECT}-${GL_TAGNAME}.tar.bz2, otherwise it extracts in a directory that contains the commit hash. So, we can't add the gitlab account or the revision suffix to make it work. Therefore, detect whether GL_TAGNAME contains a commit hash, and if it does, use the old behavior of deriving DISTNAME and DISTFILES. Document in CHANGES, also add a DEV_WARNING similar to USE_GITHUB when there's an URL in MASTER_SITES that looks like a gitlab URL. With support for tags, there shouldn't be any reason left to hardcode such an URL in MASTER_SITES. PR: 248967 Approved by: portmgr (tcberner, mentor) Differential Revision: https://reviews.freebsd.org/D37077
* framework: Implement fetch-url-recursive-list and fetch-urlall-recursive-listMateusz Piotrowski2023-07-121-0/+26
| | | | | | | | | | | | The recursive variants of fetch-url-list and fetch-urlall-list provide a stable interface to a list of all the to-be-accessed URLs. That is quite handy, e.g., when a list like that is necessary to implement security policies. Reviewed by: pizzamig Approved by: portmgr (pizzamig) Sponsored by: Klara Inc. Differential Revision: https://reviews.freebsd.org/D40810
* Mk/bsd.port.mk: Allow category_port_VARS= in make.conf for arbitrary ↵Andrew Gierth2023-07-121-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | per-port overrides. Currently the only way to specify make.conf variables (other than port options which have their own mechanism) in a per-port fashion is to use conditionals on .CURDIR, which is fragile since it tends to involve assumptions about where the ports tree is mounted. Instead, allow category_portname_VARS= to be set in make.conf to provide arbitrary assignments when building a specified port. For example one might use devel_llvm10_VARS= MAKE_JOBS_NUMBER=2 or converters_lua-iconv_VARS= TRYBROKEN=yes This is intended to be consistent with the existing category_portname_SET= variables for port options, and uses the same syntax for values as option_VARS= in port makefiles, but without the case-folding behavior since that makes it impossible to handle mixed-case or lowercase variable names. Reviewed by: koobs, mat, adamw, mandree, 0mp Approved by: portmgr (bapt) Differential Revision: https://reviews.freebsd.org/D24324 VAR+=val can be used to append to a variable, and VAR@ to unset one entirely.
* Mk/bsd.port.mk: Enable verbose output when pkgconfig file(s) ends up in ↵Daniel Engberg2023-05-061-0/+4
| | | | | | | | | wrong path To avoid confusion and silently fix issues that occurs Reviewed by: mat Approved by: portmgr (bofh)
* */*: Sunset 12.3-RELEASE from ports tree12.3-eolMuhammad Moinur Rahman2023-03-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Mk/bsd.port.mk: mark FreeBSD 12.3 as unsupported. - Mk/Uses/cabal.mk: Remove the text-2 workaround for 12.3-RELEASE - biology/wfa2-lib: remove obsolete patch - databases/mongodb60: remove IGNORE for EOL FreeBSD 12.3 - devel/concurrencpp: remove workaround for EOL FreeBSD 12.3 - devel/electron22: remove IGNORE for EOL FreeBSD 12.3 - devel/malloy: this should build fine on 12.4-RELEASE - devel/qcoro: remove BROKEN for EOL FreeBSD 12.3 - devel/root: remove workaround for EOL FreeBSD 12.3 - editors/imhex: remove IGNORE for EOL FreeBSD 12.3 - emulators/ppsspp: remove workaround for EOL FreeBSD 12.3 - emulators/rpcs3: remove workaround for EOL FreeBSD 12.3 - emulators/yuzu: remove workaround for EOL 12.3-RELEASE - games/aquaria: remove support for EOL FreeBSD 12.3 - games/punchy: remove workaround for EOL FreeBSD 12.3 - graphics/cxxplot: remove support for EOL FreeBSD 12.3 - lang/gcc11*: bump a __FreeBSD_version in libphobos to 1204000 - lang/rust: untangle OSVERSION logic a bit - misc/mbuffer: remove workaround for EOL FreeBSD 12.3 for aarch64 - sysutils/libdisplay-info: remove workaround for EOL FreeBSD 12.3 - www/*chromium: remove IGNORE for EOL FreeBSD 12.3 - x11/hyprpaper: remove workaround for expired FreeBSD 12.3 - x11-wm/labwc: remove workaround for EOL FreeBSD 12.3 - x11-wm/kwinft: remove workaround for EOL FreeBSD 12.3 - www/iridium: remove IGNORE for EOL FreeBSD 12.3 Differential Revision: https://reviews.freebsd.org/D38664
* x11/budgie: + Budgie desktop environment.Olivier Duchateau2023-03-041-1/+1
| | | | | | | | | | | | | This is import of complete Budgie desktop, it contains: - Uses 'budgie.mk' framework - Add virtual category (budgie) in `Mk/bsd.port.mk` - Meta-port `x11-wm/budgie` - New icon theme `x11-themes/tela-icon-theme` Reviewed by: rene, tcberner, lbartoletti, arrowd Differential Revision: https://reviews.freebsd.org/D37224
* SMP: Use nproc(1) instead of sysctl kern.smp.cpusMateusz Guzik2023-02-161-1/+1
| | | | | | | | | | | | The former respects cpuset, while the latter does not. $ cpuset -l 1 -- make -V MAKE_JOBS_NUMBER 1 As nproc is newly introduced, keep the previous variant as a fallback for the time being. Differential Revision: https://reviews.freebsd.org/D38457
* Mk/**ldap.mk: Convert USE_LDAP to USES=ldapMuhammad Moinur Rahman2023-02-081-4/+0
| | | | | | | | | | | | | | | Convert the USE_LDAP=yes to USES=ldap and adds the following features: - Adds the argument USES=ldap:server to add openldap2{4|5|6}-server as RUN_DEPENDS - Adds the argument USES=ldap<version> and replaces WANT_OPENLDAP_VER - Adds OPENLDAP versions in bsd.default-versions.mk - Adds USE_OPENLDAP/WANT_OPENLDAP_VER in Mk/bsd.sanity.mk - Changes consumers to use the features Reviewed by: delphij Approved by: portmgr Differential Revision: https://reviews.freebsd.org/D38233
* Mk/**ruby.mk: Switch from USE_RUBY=yes to USES=rubyMuhammad Moinur Rahman2023-01-141-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | Switch from Mk/bsd.ruby.mk to Mk/Uses/ruby.mk Notable changes are. - Mk/bsd.ruby.mk is moved to Mk/Uses/ruby.mk. - USE_RUBY=yes is replaced with USES=ruby. - USE_RUBY_EXTCONF is replaced with USES=ruby:extconf. - USE_RUBY_RDOC is replaced with USES=ruby:rdoc. - USE_RUBY_SETUP is replaces with USES=ruby:setup. - RUBY_NO_BUILD_DEPENDS and RUBY_NO_RUN_DEPENDS are replaced with USES=ruby:{build,none,run}. - RUBY_REQUIRE isn't used anywhere, so removed. - USES=gem now implies USES=ruby. This is mainly the work of yasu@ at https://reviews.freebsd.org/D27863 I have just made some cosmetic changes and ran exp-run to test that the tree is not in a BROKEN state. Approved by: portmgr Differential Revision: https://reviews.freebsd.org/D37925
* component: Mk frameworkLuca Pizzamiglio2023-01-111-0/+5
| | | | | | | | Add check to detect colon in .CURDIR, because it's not supported this patch detects the colon and shows a proper error message Reviewed By: #portmgr, tcberner Differential Revision: https://reviews.freebsd.org/D37500
* Mk/bsd.port.mk: Pass MASTER_SITE_SUBDIR to submake of makesum targetTijl Coosemans2022-12-251-0/+1
| | | | | | This fixes make makesum in Linux ports. Uses/linux.mk only defines MASTER_SITE_SUBDIR if MASTER_SITES is undefined so it was empty in the submake.
* Mk/bsd.sanity.mk: Reduce parsing during package buildsBryan Drewery2022-12-211-0/+3
| | | | | | | | | | This disables bsd.sanity.mk when PACKAGE_BUILDING is set such that it only is loaded during 'make [all]' or 'make check-sanity'. It is assumed the package tool will manually call the target if it wants the check. Otherwise we get redundant logic and filesystem lookups from this file for every other build target. Prodded by: mjg
* Mk/**tex.mk: Convert bsd.tex.mk to USES=texMuhammad Moinur Rahman2022-12-191-4/+0
| | | | | | | | | | | | | | | | | - Update all the consumers to use USES=tex - USE_TEX=yes is the old way of writing USES=tex which has been removed and replaced in all ports - Almost all of the USE_TEX features remains unchanged - Some consumers had the same variables defined both in the mk infrastructure and also in the ports which have been removed from the ports as those are redundant. In case any of the consumers are failing to build please make sure that the nexessary USES=tex is there. Unlike previous USE_TEX=yes will no longer load the required VARS for tex and related dependencies. Reviewed by: portmgr Approved by: portmgr (blanket)
* hardening: add relro and bind_now featuresBaptiste Daroussin2022-10-261-1/+1
| | | | | | | | As usual with features, this can be activated/deactivated via WITH/WITHOUT_<feature> Each port can individually mark itself as not supporting the feature via <feature>_UNSAFE=
* features: Add support to build ports as PIE executables.Jatin Kataria2022-10-261-3/+6
| | | | | | This will allow utilization of ASLR provided by the kernel. Sponsored by: Netflix
* Mk/bsd.port.mk: Use .MAKE.UID instead of calling id(1)Christian Weisgerber2022-10-151-0/+4
| | | | | | | | | Save an invocation of id(1) by using the built-in .MAKE.UID variable instead. Check availability of .MAKE.UID first, since older versions of bmake (12.x) don't have it yet. PR: 266942 Approved by: bapt
* Mk: remove ancient 'make update-patches' target.Rene Ladan2022-09-281-13/+0
| | | | | | | People should use 'make makepatch' instead which creates patches with the expected filename and header. Differential Revision: https://reviews.freebsd.org/D36767
* Mk/bsd.port.mk: support multiple URLs in WWWStefan Eßer2022-09-211-2/+3
| | | | | | | | | | | | | | | | | | | The WWW macro was supposewd to hold only one URL pointing to the most useful starting point for a user searching for additional information, configuration examples, etc. Some port maintainers have set the WWW macro to a list of URLs, breaking assumptions by scripts and tools in the ports system and of external users of the ports system. This change allows WWW to hold a list of URLs by only considering the first list element in places where only a single URL is supported. This mirrors the previous behavior of only using the first line tagged with "WWW: " in the pkg-descr file. Approved by: portmgr (tcberner) Differential Revision: https://reviews.freebsd.org/D36558