Commit graph

373 commits

Author SHA1 Message Date
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
Stefan Eßer
0d7e17c121 Mk/Scripts: protect URL string by enclosing it quotes
The format of the manifest file does not allow commas in values.
Since URLs may include commas, they need to be protected against
interpretation of these commas as field separators.

This update unbreaks the package generation for ports that have
a comma in the URL.

Approved by:	portmgr (implcit)
2022-09-09 18:46:47 +02:00
Stefan Eßer
ddd0e820c8 Mk/bsd.ports.mk: Add suppport for WWW in Makefiles
Expect the project website or other relevant URL of a port to be
specified in a WWW macro in its Makefile.

This information used to be available in WWW: lines at the end of
each port's pkg-descr file. By moving it into the Makefile, this
value is easier to access, verify, and maintain.

A WWW: line is added to the "desc" element of package manifests
based on the WWW macro value by the create-manifest.sh script.
This restores the previous contents of this line in the manifest
(as e.g. expected by the Freshports website).

The ports-mgmt/portlint port has been updated in commit 9800743f0
(version 2.19.13) to support the planned introduction of WWW in
port Makefiles.

Approved by:		portmgr (tcberner)
Differential Revision:	https://reviews.freebsd.org/D36434
2022-09-07 21:32:54 +02:00
Yuri Victorovich
6af95e9e48 Mk/Scripts/qa.sh: Bogus 'xx doesn't have a SONAME' messages are printed by stage-qa for some shared libraries
Reason: 'grep -q SONAME' ends before it drains the pipe, pipe fails
when the remaining output is too long, and 'set -o pipefail'
causes the whole command to fail when it is supposed to succeed.

Remedy: Please apply the attached patch fix-SONAME.patch, or
alternatively remove 'set -o pipefail' from qa.sh

PR:		259992
Approved by:	tcberner@ (as portmgr)
2022-07-09 07:52:33 -07:00
Dmitri Goutnik
3012ca2179 */*: Introduce versioned Go ports
- Mk/Uses/go.mk: add support for selecting Go port version in USES=go;
- Mk/bsd.default-versions.mk: add GO_DEFAULT;
- convert lang/go-devel to the master and lang/go{117,118} to slave
  ports;
- add lang/go meta-port that provides go and gofmt symlinks to the
  current default version.

PR:		264336
Reviewed by:	ygy jwb yuri mikael drtr0jan@yandex.ru decke mat
Differential Revision:	https://reviews.freebsd.org/D35346
2022-06-06 13:19:10 -05:00
Tobias C. Berner
e250aeb4a1 KDE: Update KDE Gear to 22.04
Thursday, 21 April 2022

Welcome to KDE Gear ⚙️ 22.04!

Skip to What’s New

KDE Gear ⚙️ 22.04 brings you all the updates added to a long list of KDE
apps over the last four months. KDE programs allow you to work, create
and play without having to submit yourself to extortionate licenses and
intrusive advertising, or surrender your privacy to unscrupulous
corporations.

Below you will discover a selection of the changes added in the last
four months to software designed to make your life better. But remember,
there is much, much more: games, social media apps, utilities for
communicating, developing and creating stuff… All these things have been
worked on to give you more stability and boost your productivity.

If you want to see a full list of everything we have done, check out the
complete changelog.

WARNING: There’s a lot!

All the details can be found here:
	https://kde.org/announcements/gear/22.04.0/
2022-04-21 13:26:44 +02:00
Baptiste Daroussin
522332dbc7 devel/glib: convert gio modules and glib schemas to triggers
Use trigger to compile glib schemas, and generate gio modules cache

PR:		262567
Reviewed by:	tcberner
Exp-run by:	antoine
Differential Revision:	https://reviews.freebsd.org/D34564
2022-03-18 11:00:23 +01:00
Baptiste Daroussin
1bc4afd4b4 devel/ORBit2: remove gnome2 library 2022-03-15 20:16:13 +01:00
Dan Langille
7b279c9e09 devel/ruby-gems: Update to 3.3.7
These are fixes Ruby 3.0

Changes were compiled against all dependencies of devel/ruby-gems and
they all built cleanly.

There are five known build failures, all prexisting:

* devel/rubygem-xdg5: requires Ruby 3.0
* devel/rubygem-xdg: requires Ruby 3.1
* graphics/rubygem-objectdetect: port explicitly marked broken
* mail/rubygem-tmail: port explicitly marked broken
* science/cdcl: marked broken, unfetchable

Plus, science/rubygem-ruby-dcl gets skipped because of science/cdcl

PR:		258108
Approved by:	ruby (zi@)
2022-02-20 13:06:12 +00:00
Tobias C. Berner
45526ecbee framework: Add new USES 'magick' for graphics/ImageMagick*
A new USES has been added to depend on ImageMagick.

	USES=magick

adds a LIB_DEPENDS on graphics/ImageMagick${IMAGEMAGICK_DEFAULT}.

If a specific version is required, use for example

	USES=magick:6        resp.     USES=magick:7

If only a build, run or test is required, use for example

	USES=magick:build    resp.     USES=magick:6,build,test

If a dependency on the nox11 flavor is required, use for example

	USES=magick:nox11    resp.     USES=magick:7,nox11,run,test

See magick.mk for more details on the available flags.

The tree has been completely converted to make use of this.

Approved by:	bapt
Differential Revision: https://reviews.freebsd.org/D32754
2021-12-11 14:50:53 +01:00
Joseph Mingrone
6ff48ecff7
Mk/Scripts/qa.sh: Turn off pipefail when piping to grep -q
The pipeline

   readelf -d "${dep_file}" | grep -q SONAME

can fail because grep -q closes the output early resulting sigpipe being
sent to readelf.  Other possible solutions are to turn off pipefail for
the file or remove the -q grep argument.

Credit to ashish@ for the detective work to discover the root cause of
this.

Differential Revision: https://reviews.freebsd.org/D31211

Reviewed by:	emaste
Approved by:	bapt (portmgr) mat (portmgr)
2021-11-19 17:13:26 -04:00
Tobias Kortkamp
2bad8d171a
Uses/cargo: Rework git source support based on patch-in-config sections
Git sources from `Cargo.lock` are added to `CARGO_CRATES` through
the normal mechanism of `make cargo-crates` by the porter.  They
are used to populate `MASTER_SITES`, `DISTFILES` with static
git-archive(1) tarballs a la `USE_GITHUB`, `USE_GITLAB`.  In the
configure phase we generate `[patch]` sections in the config file
which will cause `cargo update` to auto-update `Cargo.lock` to point
to the appropriate extraction directories.

Normally `cargo update` would connect to the network to update all
Git sources but since rust-1.55.0 our cargo has been patched to
skip this when `CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE` is set in the
environment.

This replaces the old `CARGO_USE_GITHUB`, `CARGO_USE_GITLAB` hacks
where this was done by editing all `Cargo.toml` with sed(1) calls.

Additionally, we try to automatically infer the individiual crate
sub-directories inside the Git sources based on `package.name` in
`Cargo.toml` to remove the need for `CARGO_GIT_SUBDIR`.

USES=cargo also now sets `WRKSRC_crate_$name` for each crate to
point to the crate extraction directories.

PR:		256581
Reviewed by:	jbeich
2021-10-25 10:49:06 +02:00
Rene Ladan
620968a43a cleanup: drop support for EOL FreeBSD 11.X
Search criteria used:
- 11.4
- OSREL*
- OSVER*
- *_FreeBSD_11

Input from:
- adridg: devel/qca-legacy
- jbeich: _WITH_DPRINTF, _WITH_GETLINE, GNU bfd workarounds
- sunpoet: security/p5-*OpenSSL*

Reviewed by:	doceng, kde, multimedia, perl, python, ruby, rust
Differential Revision: https://reviews.freebsd.org/D32008
Test Plan: make index
2021-09-30 23:23:30 +02:00
Tobias Kortkamp
628c61939e
Scripts/split-url.awk: Pass result array as parameter 2021-09-08 21:05:19 +02:00
Tobias Kortkamp
efeac961a7
Scripts/split-url.awk: Add reverse function to stitch the URL back together 2021-09-08 21:05:18 +02:00
Tobias Kortkamp
217c3e9d72
Scripts/split-url.awk: Split query strings too
Also reset state on function entry otherwise split_url() cannot
really be called multiple times since there would be garbage values
in the url array from previous calls.
2021-09-08 21:05:18 +02:00
Tobias Kortkamp
d8fbaa503c
Scripts/cargo-crates.awk: Move split_url() to separate file
Also stop leaking local variables
2021-09-07 18:53:36 +02:00
Kevin Bowling
b5a56c9450 Mk/Scripts/qa.sh: Add QA for libglvnd
Reported by:	tcbrener
Reviewed by:	tcbrener
Differential Revision:	https://reviews.freebsd.org/D31375
2021-08-02 09:20:45 -07:00
Li-Wen Hsu
09704c68fc
Mk/: Update the URLs in the comments to the latest location
Reviewed by:	rene
Differential Revision: https://reviews.freebsd.org/D31152
2021-07-16 16:16:45 +08:00
Po-Chuan Hsieh
fcb34faf70
Mk/Scripts/smart_makepatch.sh: Force diff to produce the patch file instead of "Binary files ... differ" message
It helps avoid generating wrong patches, e.g. patch-grpc.gemspec in r567838 [1].

from diff manpage:
    -a --text
        Treat all files as ASCII text.  Normally diff will simply print
	"Binary files ... differ" if files contain binary characters.
        Use of this option forces diff to produce a diff.

[1] https://cgit.FreeBSD.org/ports/diff/net/rubygem-grpc130/files/patch-grpc.gemspec?id=073c1c710a0c7254820adab9920c1903ace83fae

PR:		257027
Approved by:	mat (portmgr)
2021-07-15 00:15:03 +08:00
Guangyuan Yang
de745e3b9f Mk/*: Update the link about adopting ports
Approved by:	rene (portmgr), lwhsu (mentor)
Differential Revision:	https://reviews.freebsd.org/D30744
2021-06-20 19:29:13 -04:00
Baptiste Daroussin
9c23cce831 devel/libbonobo: remove
Gnome2 lib, dead upstream, no consumers left in the ports tree
2021-05-01 23:00:05 +02:00
Baptiste Daroussin
8e6f2eb82e devel/gnome-vfs: remove
Dead upstream, no consumers left in the ports tree
2021-05-01 15:29:37 +02:00
Baptiste Daroussin
e9cac8e2ce x11/libgnome: remove
Gnome2 library dead upstream with no consumers left in the ports tree
2021-05-01 15:26:12 +02:00
Baptiste Daroussin
eaec3af059 Mk/*: cleanup leftovers from ancient removal 2021-05-01 14:58:26 +02:00
Baptiste Daroussin
b391fefab5 qa.sh: adjust after removal of some gnome ports 2021-05-01 14:47:33 +02:00
Mathieu Arnold
0b1ee55426
Cleanup executable bits, prompted by 9e1d7c39a1. 2021-04-08 11:36:35 +02:00
Mathieu Arnold
5d33e04596
framework: Remove $FreeBSD$
Where appropriate fiddle with a few other things.
2021-04-06 16:27:10 +02:00
Baptiste Daroussin
6b1ccfbb27 Remove upgrade script
It never actually really have been a thing, and can be done
directly in install/deinstall scripts

Reviewed by:	mat (portmgr)
Differential Revision:	https://reviews.freebsd.org/D29427
2021-03-29 07:42:20 +00:00
Olivier Cochard
578eb55645 Allows atf scripts to pass qa
Approved by:	rene
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28581
2021-03-08 14:11:44 +00:00
Gerald Pfeifer
b2e6ef7f3b Revert r562049 which I committed by mistake.
Pointy hat:	gerald
2021-01-19 15:04:17 +00:00
Gerald Pfeifer
db1e3fae20 GCC_DEFAULT now sits at 10, so remove the special setting we added for
powerpc64le which is a nop now (essentially reverting revision 559637).

Reported by:	pkubaj
2021-01-19 15:02:22 +00:00
Rene Ladan
8a45ee228f Remove graphics/jpeg which has expired in favor of graphics/jpeg-turbo
Update qa checks and add a note to UPDATING to help users migrate.
Differential Revision:	https://reviews.freebsd.org/D27425
2020-12-01 19:12:47 +00:00
Adam Weinberger
db15051ca5 Add education virtual category
PR:		248402
Submitted by:	PauAmma
2020-11-20 07:16:06 +00:00
Mathieu Arnold
292183dbc4 Ignore readelf's return value.
PR:		251110 (with style fixes)
Submitted by:	John Hein
2020-11-16 10:50:54 +00:00
Mathieu Arnold
47b1e9c0c2 Ignore grep return value.
Most of the time, we use grep in a test, where its return value is
important.  In this instance, it is only used for filtering, and we do
not care about its return value, so ignore it.

PR:             250723
Exp-run by:     antoine
Differential Revision:  https://reviews.freebsd.org/D27007
2020-11-11 13:30:03 +00:00
Mathieu Arnold
f916081e1c Add set pipefail in most framework scripts.
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
2020-11-11 13:29:52 +00:00
Tobias C. Berner
9e0e8d17a4 Prefer graphics/ligvrsvg2-rust over graphics/librsvg2
- switch to the more modern version of librsvg2 on architectures
  supporting rust
- this will fix some graphical issues on these architectures

PR:		250276
Exp-run by:	antoine
Submitted by:	tobik
Differential Revision:	https://reviews.freebsd.org/D18878
2020-11-09 17:08:12 +00:00
Mathieu Arnold
aeda355b1b Backout r554139. 2020-11-05 16:51:30 +00:00
Mathieu Arnold
e9b2078c6c Add set pipefail in most framework scripts.
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.
2020-11-05 16:42:35 +00:00
Steve Wills
550c20cac5 Fix permissions 2020-10-19 19:38:03 +00:00
Steve Wills
dd763c441c Revert 2020-10-19 12:19:14 +00:00
Matthias Andree
2b627c0022 Make executable. 2020-10-17 14:39:32 +00:00
Matthias Andree
07deda6217 Tools/scripts/sed_checked.sh: make more useful
- when sed expressions fail, report them, and the failing files,
  to aid developers in identifying the commits
- check whether a REINPLACE_CMD is partially effective, or totally
  ineffective, and adjust wording (please check vs. please FIX)
- use SED variable instead of /usr/bin/sed if set, for consistency.

portmgr@ hasn't raised objections other than performing power play,
and haven't responded with reasons to core@s question in
https://reviews.freebsd.org/D24240#592660 posed Sept 30 (17 days ago)

Approved by:	portmgr@ (timeout, 200 days)
Differential Revision:	https://reviews.freebsd.org/D24240
2020-10-17 12:37:13 +00:00
Tobias C. Berner
0edfaee1ed KDE's August 2020 Apps Update
Dozens of KDE apps are getting new releases from KDE’s release service. New
features, usability improvements, re-designs and bug fixes all contribute to
helping boost your productivity and making this new batch of applications more
efficient and pleasant to use.

Full announcement:
        https://kde.org/announcements/releases/2020-08-apps-update/
2020-08-13 17:10:30 +00:00
Mathieu Arnold
466a092fb2 Move script to a more appropriate location. 2020-08-03 13:53:06 +00:00
Ryan Steinmetz
178b0490c2 - Update wording/style on REINPLACE_CMD checks 2020-08-03 13:46:11 +00:00
Tobias C. Berner
89fc0f48dc Update KDE Framewokrs to 5.72
July 04, 2020. KDE today announces the release of KDE Frameworks 5.72.0.

KDE Frameworks are over 70 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well tested
libraries with friendly licensing terms. For an introduction see the KDE
Frameworks web page.

This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.

Changelog:
	https://kde.org/announcements/kde-frameworks-5.72.0.php?site_locale=en

- net/kdav became a framework and was therefore moved to net/kf5-kdav.
- thanks to adridg@ for fixing the fallout

Exp-run by:	antoine
PR:		247907
2020-07-21 17:15:38 +00:00