420 Commits

Author SHA1 Message Date
Matthias Andree
f261c43501 security/openssl32: Revert "Remove expired port"
This reverts commit 38010f8c963447fe75bb7965f62e61e8f0e37c87.

I am removing the patch because it contains unapproved changes to Mk/
while the approval for the following is pending:
PR:		289938
2025-10-01 14:01:39 +02:00
Matthias Andree
38010f8c96 security/openssl32: Remove expired port
2025-09-30 security/openssl32: Please use security/openssl35 (LTS)

At the same time, update Mk/ infrastructure to remove traces of
openssl31 (forgotten at the time when we removed it) and openssl32,
and fill in openssl34 openssl35 openssl36 instead.
2025-10-01 11:58:17 +02:00
Hiroki Tagato
49afbbefb7 Mk/Scripts/cargo-crates-git-common.awk: add support for codeberg.org
This change adds support for URLs beginning with
git+https://codeberg.org. Now a rust-based port can pull in its
dependent crates from Codeberg.org.

PR:		288481
Reviewed by:	mikael
Approved by:	mikael (rust)
2025-07-29 10:36:18 +09:00
Baptiste Daroussin
815623f49e databases/libgdamm5: remove
libgdamm5 is depending on gnome components not supported anymore
and has no consumers in the ports tree.
2025-07-25 09:24:01 +02:00
Baptiste Daroussin
00fcba7525 gnome: remove gconfmm from the gnome framework
gconf is deprecated, and only one consumer is left in the ports tree,
this consumer is not using the gnome framework for this dependency.
2025-07-24 14:56:54 +02:00
Andriy Gapon
72eb9c0257 check_have_symbols.sh: remove pipefail shell option
There is only one pipeline, with two commands, in the script and the
receiving awk script is carefully written to produce a correct exit
status for any situation.

For that reason pipefail was already redundant.  More than that,
pipefail was actually harmful because the awk script would terminate
early upon detecting success.  Because of that, readelf could get
SIGPIPE and terminate with non-zero status.  "Thanks" to pipefail the
whole pipeline would have non-zero exit status well.

The issue manifested itself as sporadic failures of the script during
bulk poudriere builds.

Discussed with:	bapt
2025-07-03 18:51:58 +03:00
Joseph Mingrone
eb3f437563
Mk/Scripts/qa.sh: Fix false positives in LIB_DEPENDS warnings
To warn when library dependencies may not be required, the proxydeps()
function compares the libraries listed in LIB_DEPENDS with those
reported by ldd.  However, the list from ldd is sanitized to remove
version information from the library names, while the entries from
LIB_DEPENDS are not.  This leads to comparisons such as libreadline.so.8
from LIB_DEPENDS versus libreadline.so from ldd, resulting in false
positives.  Adjust the comparison to avoid such false-positive warnings.

Event:		Kitchener-Waterloo Hackathon 202506
Reviewed by:	emaste, rene
Approved by:	portmgr (rene)
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D50860
2025-06-16 20:24:17 -03:00
Joseph Mingrone
9b1d46cf04
Mk/Scripts/qa.sh: Fix typo in comment
Sponsored by:	The FreeBSD Foundation
2025-06-14 17:15:35 -03:00
Baptiste Daroussin
60e57080d5 Mk/Uses/gnome.mk: remove metacity component 2025-06-11 18:09:38 +02:00
Olivier Duchateau
4f5eb42b4a Mk/Uses: rename nautilus3 into nautilus4 2025-06-11 12:07:06 +02:00
Baptiste Daroussin
2ec0ea0e3f Mk: add a new HAS_SYMBOL_VERSION
When a port is tagged with this (should contain the list of libraries
with SYMBOL version) the ports tree will add an extra check that
the built library actually have symbols versions.
2025-03-20 17:49:02 +01:00
Charlie Li
e87d8134a3
gnome.mk: rename gdkpixbuf2 to gdkpixbuf to prepare for port move
The GTK 1-based gdk-pixbuf has not existed for some time.

No functional or package changes.
2025-03-17 00:02:08 -04:00
Max Brazhnikov
40967778d7 KDE: remove reference to kipi 2025-02-22 15:18:02 +03:00
Gleb Popov
b2f07f85ad Framework: Allow setting the 'vital' flag from a port
Approved by:	bapt
Differential Revision: https://reviews.freebsd.org/D48697
Sponsored by:	Future Crew, LLC
2025-01-28 15:02:38 +03:00
Jason E. Hale
ec01959545 Mk/Scripts/qa.sh: Add warnings for Qt6 components
Reviewed by:	arrowd, mat
Approved by:	portmgr (mat)
Differential Revision:	https://reviews.freebsd.org/D48028
2024-12-15 02:58:54 -05:00
Gleb Popov
c9c6f17d34 Scripts/check_leftovers.sh: Remove exceptions for GHC
These exceptions come from the era when we were packaging Haskell libraries.
Registering a Haskell library in the global store results in changes in
package.conf.d and doc directories.

We don't install Haskell libs anymore, so there is no need in these exceptions.
Moreover, both paths are now wrong, because:

- share/doc/ghc-%%GHC_VERSION%% was changed to share/doc/ghc
- lib/ghc-%%GHC_VERSION%%/package.conf.d was changed to lib/ghc-%%GHC_VERSION%%/lib/package.conf.d
2024-11-08 22:21:40 +03:00
Robert Clausecker
77d61ade3f Mk/Scripts/desktop-categories.sh: fix whitespace issue, alphabetize
A copy paste error from when the patch set was reworked to name the
category "filesystems" instead of "fs."

Reported by:	danfe
Fixes:		6e2da9672f79f44048d597f0f61e4646cdeade9d
Pull Request:	https://github.com/freebsd/freebsd-ports/pull/302
PR:		281988
2024-11-08 13:36:00 +01:00
Robert Clausecker
6e2da9672f filesystems: add new category for file systems and related utilities
The filesystems category houses file systems and file system utilities.
It is added mainly to turn the sysutils/fusefs-* pseudo-category into
a proper one, but is also useful for the sundry of other file systems
related ports found in the tree.

Ports that seem like they belong there are moved to the new category.
Two ports, sysutils/fusefs-funionfs and sysutils/fusefs-fusepak are
not moved as they currently don't fetch and don't have TIMESTAMP set
in their distinfo, but that is required to be able to push a rename
of the port by the pre-receive hook.

Approved by:	portmgr (rene)
Reviewed by:	mat
Pull Request:	https://github.com/freebsd/freebsd-ports/pull/302
PR:		281988
2024-11-06 16:17:35 +01:00
Muhammad Moinur Rahman
bca5175cb2
Mk/Scripts: Fix typos
Approved by:	portmgr (just-fix-it)
2024-09-12 17:09:32 +02:00
Michael Osipov
4c51f2b5e4 Mk/: Possible values for "ssl" are inconsistent
Co-authored-by:	Mathieu Arnold <mat@FreeBSD.org>
PR:		278406
Approved by:	jrm (mentor), otis (mentor), mat (portmgr)
Differential Revision:	https://reviews.freebsd.org/D46059
2024-08-03 17:59:49 +02:00
Michael Osipov
4280a82efe Mk/Scripts/do-users-groups.sh: Make users and groups creation fail-fast
Fail fast when pw(8) fails to create a user or a group. Especially when it is
not the last command in the pre-install script then the exit code will be 0 and
the failure will go unnoticed.

PR:		267384
Approved by:	jrm (mentor)
Differential Revision:	https://reviews.freebsd.org/D42719
2024-05-03 09:44:53 +02:00
Muhammad Moinur Rahman
72a9fbf7cb
Mk/Scripts: Fix qa for manprefix
As man pages have been moved PREFIX/share/man adjust the qa check.

Reported by:	eduardo
Approved by:	portmgr (blanket)
2024-04-12 18:02:31 +02:00
Michael Osipov
3887897fba Mk/Scripts/do-users-groups.sh: Make message endings consistent (cleanup)
Approved by:	jrm (mentor), otis (mentor), rene (portmgr)
Differential Revision:	https://reviews.freebsd.org/D44694
2024-04-10 21:01:18 +02:00
Tijl Coosemans
830ec37170 Mk/Scripts/do-depends.sh: Avoid make -D flag
Both FreeBSD make and GNU make pass command line flags to sub-makes
through the MAKEFLAGS environment variable, but the flags aren't
compatible and GNU make 4.4 exits with an error when it encounters
flags it doesn't understand, e.g. -D.

Avoid using the flag for now until ports run gmake with SETENVI.

This fixes the case where a port is built using make directly and it
recurses to build a dependency that uses gmake.  Poudriere does not
use this feature of the ports tree to build dependencies so it's not
affected.

PR:		272216, 277492
2024-03-06 21:22:21 +01:00
Muhammad Moinur Rahman
b18af1280f
Mk/Scripts: Add qa check for man pages
portmgr@ has been actively working on moving man pages from
${PREFIX}/man to ${PREFIX}/share/man. Majority of the ports belonging to
non-committers or aliases has been migrated to ${PREFIX}/share/man.
There are still around 1000+ ports remaining mainly from the committers.
portmgr@ has planned to make the hard change after the split of 2024Q3
after which ports that installs man pages in ${PREFIX}/man will no
longer build or will be BROKEN.

Approved by:	portmgr
2024-02-29 20:52:23 +01:00
Gleb Popov
2c24a73ff2 Features/debuginfo.mk: Automatically generate a subpackage with debugging info.
Differential Revision: https://reviews.freebsd.org/D43515

Tested by:	flo
Approved by:	portmgr, emaste
2024-02-03 09:31:13 +03:00
Fernando Apesteguía
d9fc94dd9d Scripts/qa.sh: fine tune USES=ssl recommendation
Try to avoid the "you need USES=ssl" in ports that provide a libssl.so or
libcrypto.so libraries themselves like security/openssl or security/libressl.

PR:			270035
Approved by:		portmgr (mat@)
Differential Revision:	https://reviews.freebsd.org/D41973
2024-01-20 19:47:41 +01:00
Luca Pizzamiglio
47564762a3 component: add SUBPACKAGES
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
2024-01-01 22:58:53 +01:00
Muhammad Moinur Rahman
d70baa4455 www/kf5-kdewebkit: Remove expired port
2023-12-31 www/kf5-kdewebkit: Depends on deprecated www/qt5-webkit
2023-12-31 01:06:37 +01:00
Baptiste Daroussin
9fee351280 dialog: force UTF-8 locale
On some terminal, namely "putty" and "linux", the unicode capability
are not properly exposed, resulting in a not so nice UI, forcing
the env to be unicode friendly with executing the DIDALOG commnands
make the output nice in those environements
2023-10-11 09:56:27 +02:00
Baptiste Daroussin
0e73ed9372 config: switch from dialog4ports to portconfig
dialog4ports is using libdialog which is being decommissioned from
base replaced by bsddialog. We cannot switch to depending on
devel/cdialog because it build depends on too many things, on the other
hand the author of bsddialog made portconfig as a drop-in replacement
for dialog4ports, it only build depends on devel/bsddialog (we use
the version in port to be sure to have the right version on all
supported versions of the ports tree)

Reported by:	Herbert J. Skuhra" <herbert@gojira.at>
2023-10-10 13:58:31 +02:00
Mikael Urankar
8fae936cf5 Mk/Scripts/cargo-crates-git-configure.awk: Generate the patch.crates-io section after parsing all the Cargo.toml files
If we have multiple Cargo.toml files with the same crates in the
[patch.crates-io] section we will end up with crates defined mutiple
times and cargo will refuse to proceed.
Write this section after parsing all the Cargo.toml files.

PR:		273280
Reviewed by:	tobik
2023-10-08 18:41:17 +02:00
Tobias Kortkamp
6b1b157425
cargo.mk: Strip vV from GitHub tags only when followed by a digit
Fixes the following in games/veloren-weekly when iced crates have a tag
similar to veloren-winit-0.28

$ cd games/veloren-weekly
$ make cargo-crates-merge
$ make
[...]
===>  Configuring for veloren-weekly-s20230830
===>   Cargo config:
find: /usr/ports/games/veloren-weekly/work/egui_winit_platform-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
find: /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28: No such file or directory
[...]
[patch.'https://gitlab.com/Imbris/keyboard-keynames.git']
keyboard-keynames = { path = '/usr/ports/games/veloren-weekly/work/keyboard-keynames-veloren-winit-0.28-fca4bbdfa51bf054b155a455935b3792975c989d' }
[...]
[patch.'https://github.com/Imberflur/egui_winit_platform.git']
egui_winit_platform = { path = '/usr/ports/games/veloren-weekly/work/egui_winit_platform-eloren-winit-0.28' }
[...]
[patch.'https://github.com/Imberflur/iced']
iced_core = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_futures = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_graphics = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_native = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_style = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
iced_winit = { path = '/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28' }
[...]
===>   Updating Cargo.lock
error: failed to load source for dependency `iced_core`

Caused by:
  Unable to update /usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28

Caused by:
  failed to read `/usr/ports/games/veloren-weekly/work/iced-eloren-winit-0.28/Cargo.toml`

Caused by:
  No such file or directory (os error 2)
*** Error code 101

Stop.
make[1]: stopped in /usr/ports/games/veloren-weekly

PR:		273468
Reported by:	jbeich
2023-10-02 13:33:25 +02:00
Po-Chuan Hsieh
05b4880d25
Mk/Scripts/qa.sh: Fix typo
Approved by:	portmgr (blanket)
2023-09-22 11:22:14 +08:00
Tobias C. Berner
f3790c0170 sanity: warn about unnused LIB_DEPENDS entries
`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
2023-09-12 20:27:47 +02:00
Baptiste Daroussin
c501f81fa7 Mk: depulicate WWW information
Stop duplication the WWW informations within the packages

Since september 2022 the WWW lines has been moved from pkg-descr
to Makefile, however the ports tree continued to push this info
at the end of pkg-descr automatically, which is a duplicated
information.

Differential Revision:	https://reviews.freebsd.org/D41523
Reviewed by:		mat
2023-08-21 17:50:16 +02:00
Jan Beich
d01ac94bba devel/llvm: recommend USES=llvm for stage-qa 2023-08-10 12:39:11 +02:00
Jan Beich
ac2cd9087f www/py-django: drop unused stage-qa check after ff89f3f090b3
Depending on non-existent ports is already illegal.
2023-08-10 12:39:10 +02:00
Jan Beich
6684f2f2f3 lang/julia: allow consumers after fed755e222a5
Only one Julia version is currently supported, so it's not a meta port.
2023-08-10 12:39:10 +02:00
Jan Beich
4553130a9c lang/mono: convert to a meta port after 6c225bcc570e
- Removing everything in favor of RUN_DEPENDS
- Add QA check to prevent future consumers

PR:		251795
2023-08-10 12:39:09 +02:00
Mateusz Piotrowski
5457f710e8 framework: Fix fetch-url-list and fetch-urlall-list
The fetch-url-list and fetch-urlall-list targets are meant to produce
a list of URLs from which a port fetches its distfiles and patches.

Currently, those targets were not working as expected as they print
parts of the output meant for other targets like the fetch-list target.

For example:

    mateusz.piotrowski@server /ports/x11-servers/xwayland-devel$ make fetch-urlall-list
    [...]
    mkdir -p "xorg" &&
    -o xorg/proto-xorgproto-824001c947cb1962209c6a8f2c63c2637877220d_GL0.tar.gz
    [...]

This patch prevents do-fetch.sh from printing the "mkdir" line and the
"-o" line.

While here:

- Remove the outdated comment about escaping. There is no excessive
  escaping happening there anymore.
- Indent cases in the case statement to match the style of the rest of
  the file.

Reviewed by:	pizzamig
Approved by:	portmgr (pizzamig)
Sponsored by:	Klara Inc.
Differential Revision:	https://reviews.freebsd.org/D40808
2023-07-12 16:18:21 +02:00
Andrew "RhodiumToad" Gierth
873d4f6f99 Mk/Scripts: Fix ports depends-list.sh
depends-list.sh fails in two ways: one is a simple quoting bug which
causes empty FLAVOR variables to be propagated; the other is that
de-duplication is being done without regard for flavors.

The upshot of these is that where a port depends on a specific flavor
(first bug) or on multiple flavors (second bug, usually caused by build
dependencies) of another port, the constructed dependency list is
incomplete, and so -recursive targets do not do all the required work.
(This is especially annoying for fetch-recursive.)

Reviewed by: portmgr@FreeBSD.org
PR:		269982
Differential Revision: https://reviews.freebsd.org/D40491
2023-06-13 22:09:59 +02:00
Yuri Victorovich
c92e6eff6f Mk/Scripts: Add quotes to $0 in the stripped() function in qa.sh
This is a followup to the previous patch that fixed the bug with
missing unstripped file suggestions.

PR:		270398
Suggested by:	mat@
2023-06-05 08:24:03 -07:00
Yuri Victorovich
67ce8cec00 Mk/Scripts: Fix the 'stripped' check from 'make check-plist' to report all unstripped files
Prior to this patch, the 'stripped' check always skipped the first
unstripped file.

It uses the "find [...] -exec sh -c 'readelf -S -- /dev/null $0 "$@" || :' -- {} +"
command. When arguments are passed to shell like this:
"sh -c 'script' arg1 arg2 arg3" - $@ within the script is assigned
to 'arg2 arg3', and $0 is assigned to arg1. This is a quirk in
how shells handle arguments in case when the script is passed
using -c.

This patch adds $0 to account for the first passed file.

PR:		270398
Approved by:	portmgr-lurkers (garga)
2023-06-01 23:45:29 -07:00
Charlie Li
67de7ad43c
strip_RECORD.py: move to Mk/Scripts
Requested by: mat
2023-03-09 06:18:17 -05:00
Olivier Duchateau
1ccad74cc8 x11/budgie: + Budgie desktop environment.
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
2023-03-04 21:18:16 +03:00
Tijl Coosemans
4a51f972d1 Mk/Scripts/makesum.sh: Fix for distinfo files with nothing but a TIMESTAMP
PR:		267904
2022-12-25 23:05:55 +01:00
Bryan Drewery
f0191973ea Mk/Scripts: Fix potential error creating .metadir/+DESC
In some builds it could be possible that pkg-descr is not writable.
We could either install -m 0644 the file over or just let sh create
it.

This change also opens the destination file only once now.

Fixes: ddd0e820c
2022-12-13 21:11:01 -08:00
Tobias Kortkamp
18052912af
Uses/cargo: Fix invalid WRKSRC for crates fetched from GitLab with tag
When using tags the archive fetched from GitLab has the
corresponding commit hash appended to the directory root too.

snui@git+https://gitlab.com/snakedye/snui.git?tag=v0.1.4\#83873f1e148a9c84471c10f166c9a945a44d3e64

would result in

WRKSRC_crate_snui=	${WRKDIR}/snui-v0.1.4

but it must be

WRKSRC_crate_snui=	${WRKDIR}/snui-v0.1.4-83873f1e148a9c84471c10f166c9a945a44d3e64

PR:		266724
Reported by:	jbeich
2022-10-08 14:21:19 +02:00
Stefan Eßer
45530097ae Mk/bsd.port.mk: support multiple URLs in WWW
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
2022-09-21 13:23:44 +02:00