Page MenuHomeFreeBSD

Remove support for FreeBSD 11.4
ClosedPublic

Authored by rene on Sep 17 2021, 4:32 PM.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 41851
Build 38739: arc lint + arc unit

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
Mk/Scripts/rust-compat11-canary.sh
24

We should separately track a rust update to no longer need FreeBSD 11 syscalls

multimedia/vlc is OK on behalf of multimedia. What is removed was originally added by me (see dda7c32cfd52d).

My ports look OK but can you drop more stuff? See attached example.

  • devel/aml: drop files/patch-freebsd11
  • emulators/rpcs3: drop files/patch-rpcs3_Emu_system__config.h
  • emulators/yuzu: drop files/patch-freebsd11
  • graphics/mesa-devel: drop files/patch-freebsd11
  • multimedia/aom: drop FreeBSD < 12 conditionals in files/patch-aom_\_ports_arm__cpudetect.c
  • multimedia/aom: drop FreeBSD < 12 conditionals in files/patch-aom_\_ports_ppc__cpudetect.c
  • multimedia/dav1d: drop files/patch-neon-freebsd11
  • multimedia/libvpx: drop FreeBSD < 12 conditionals in files/patch-vpx_\_ports_arm__cpudetect.c
  • multimedia/libvpx: drop FreeBSD < 12 conditionals in files/patch-vpx_\_ports_ppc__cpudetect.c
  • net/waypipe: drop files/patch-neon-freebsd11
  • sysutils/keyd: drop -D_WITH_GETLINE
  • x11-toolkits/wlroots: drop FreeBSD 11.* notes in pkg-message
  • x11-toolkits/wlroots: drop files/patch-include_wlr_types_wlr__seat.h
  • x11-wm/gamescope: drop -D_WITH_DPRINTF
  • x11-wm/picom: drop files/patch-src_log.c
  • x11/taiga: drop -D_WITH_GETLINE
  • x11/waybar: drop -D_WITH_GETLINE
  • (for gecko@) www/firefox: drop files/patch-freebsd11

net-im/ejabberd changes look good to me. Thank you for wrangling this.

OK for dns/powerdns and dns/powerdns-recursor

All other instances of _WITH_GETLINE and _WITH_DPRINTF can be dropped as well. See attached example.

$ rg -l -e _WITH_GETLINE -e _WITH_DPRINTF
audio/surge-synthesizer-lv2/files/patch-vstgui.surge_vstgui_lib_platform_linux_x11fileselector.cpp
audio/vst3sdk/files/patch-vstgui4_vstgui_lib_platform_linux_x11fileselector.cpp
chinese/fcitx-libpinyin/files/patch-src__CMakeLists.txt
chinese/ibus-libpinyin/files/patch-src_PYLibPinyin.cc
chinese/libpinyin/Makefile
devel/android-tools-simpleperf/files/Makefile
devel/bear/files/extra-patch-source_intercept_source_report_libexec_Logger.cc
devel/evemu/Makefile
mail/thunderbird/files/patch-cubeb-oss
misc/lxi-tools/Makefile
multimedia/obs-studio/Makefile
multimedia/subtitleripper/Makefile
security/libfido2/Makefile
sysutils/cfengine-devel/files/patch-cf-execd_cf-execd-runagent.c
sysutils/cfengine318/files/patch-cf-execd_cf-execd-runagent.c
sysutils/hexpeek/Makefile
sysutils/netevent/Makefile
sysutils/sleuthkit/Makefile
textproc/dwdiff/Makefile
www/firefox-esr/files/patch-cubeb-oss
x11-drivers/xf86-video-intel/Makefile

devel/bear/Makefile
37

Can you drop the actual file as well? files/extra-patch-source_intercept_source_report_libexec_Logger.cc still exists.

For kde@ ports (net/qt5-network, devel/qca) approved.
For adridg@ ports (net-im/mtxclient) approved.

Feel free to remove the qca-legacy port as well.

Mk/Uses/qca.mk
25

This can be more thorough -- the legacy port devel/qca-legacy can be removed, as well as the variable naming it, here. But that is cleanup kde@ can do afterwards.

All -fuse-ld=lld instances can be dropped. FreeBSD < 13 powerpc* has Clang/LLD disabled by default and should be using GNU bfd from devel/binutils via USES=compiler:c11 or similar. See attached example.

security/isal-kmod is ok.

One suggestion: it is really hard to review a large change like this as it took me quite a while to figure out which part was relevant for me to review. I would consider breaking this up into multiple reviews/commits in the future if possible. Even one per category might be a decent compromise. Another option might be to split it along functional lines (e.g. one commit to remove all the 'IGNORE_FreeBSD_11' and a separate commit to remove OSVERSION checks, etc.). Some of the followup commits to remove classes of things might also be good candidates for splitting into separate commits/reviews as well.

Looks good for emulators/i386-wine and emulators/i386-wine-devel, thanks!

Changes to:

mail/isync
net/httping

LGTM

LGTM for multimedia/mkvtoolnix, multimedia/vlc

Given 11.4 EOL is 30th September, is the plan to remove support for 11.4 from ports before the 2021Q4 quarterly is branched?

All changes to my port looked fine.

(IMO early 12.x prior to 12-STABLE branch point 1200500 should be removed too).

graphics/rawtherapee LGTM

Comments to portmgr, skimming through more than just my own patches,

  • the diversity of OpenSSL 1.0.2 workaround and refusals weasling out was astonishing. While the 1.1.1 -> 3.0.0 transition isn't as hard as 1.0.2 -> 1.1.1 in my experience, we may want to offer standard workarounds or requirements in the framework. Some means to tell the framework "this port needs OpenSSL 3.0.0".
  • to some lesser extent, we may have had FreeBSD 11 exclusions due to insufficient compiler support, and we may want the ports framework to cater for compiler upgrades in an easy manner, too

Comment to @fluffy - opensmtpd-devel (2016) looks much older than opensmtpd 6.8.0 (p2 released in 2020), do we need to keep it or should it go before 2021Q4? Or at least marked DEPRECATED and expiring? It seems opensmtpd is a good migration patch.

rene marked 12 inline comments as done.
  • security/ipsec-tools: Re-add support for older FreeBSD versions
  • Address change requests.
Mk/Uses/qca.mk
25

Yes, initially I was more enthusiastic in cleaning this up, but decided leaving the variables in would be more flexible for future updates.

lang/perl5-devel/Makefile
201

Oops, that one fell out.

misc/mc/Makefile
94 ↗(On Diff #95305)

Fair enough, the other option would be to remove the OPSYS check entirely (or do we support DragonFlyBSD here) ?

  • More cleanup from jbeich@

LGTM for devel/py-keystone-engine and lang/python310.

dbaio added a subscriber: dbaio.

doceng: misc/freebsd-doc-en

Thanks, @rene.
LGTM for databases/rocksdb and ftp/bsdftpd-ssl.
As perl@, LGTM for security/p5-Crypt-OpenSSL-CA and security/p5-OpenCA-OpenSSL (though the SSL_DEFAULT check needs to be improved by adding at least openssl).
As ruby@, LGTM for devel/rubygem-rice.

dch accepted this revision.EditedSep 20 2021, 7:11 AM

LGTM and thanks for the 🚀 prep work to get this organised!

  • ✅ databases/couchdb3
  • ✅ databases/foundationdb
  • ✅ databases/foundationdb-devel
  • ✅ lang/zig
  • ✅ lang/zig-devel
  • ✅ www/h2o
  • ✅ www/h2o-devel
  • ✅ sysutils/kvmclock-kmod

with erlang hat on DELETE devel/erlang-exmpp entirely

  • ⏱ last upstream patches more than 10 years ago
  • 🔴 port has no dependencies
  • doesn't support modern erlang anymore ☣

I don't believe anybody is using this port at all. If not, we urgently need to save them from themselves.

openzfs* changes look reasonable to me.

LGTM for security/dsniff and security/openssl, thanks.

mongodb changes are fine by me

danfe added inline comments.
misc/mc/Makefile
94 ↗(On Diff #95305)

Fair enough, the other option would be to remove the OPSYS check entirely (or do we support DragonFlyBSD here)?

Actually, we should be really checking if user's diff is GNU or BSD one rather then checking OSVERSION (and/or OPSYS). I've replaced the check just now, so it's no longer an issue.

fernape added a subscriber: fernape.

LGTM.

Thanks!

  • security/ipsec-tools: Re-add support for older FreeBSD versions
  • Address change requests.
  • More cleanup from jbeich@
  • More cleanup from jbeich@
  • Chase more *_FreeBSD_11
  • Chase more OSVER*

Comment to @fluffy - opensmtpd-devel (2016) looks much older than opensmtpd 6.8.0 (p2 released in 2020), do we need to keep it or should it go before 2021Q4? Or at least marked DEPRECATED and expiring? It seems opensmtpd is a good migration patch.

Yeah, I've dropped it in favor of mail/opensmtpd today.

  • security/ipsec-tools: Re-add support for older FreeBSD versions
  • Address change requests.
  • More cleanup from jbeich@
  • More cleanup from jbeich@
  • Chase more *_FreeBSD_11
  • Chase more OSVER*
  • Chase WITH_GETLINE removal, from jbeich@
  • Chase _WITH_DPRINTF removal, from jbeich@
  • Remove obsolete devel/qca-legacy, from adridg@
  • Remove now obsolete GNU bfd workarounds, from jbeich@
  • Remove obsolete devel/erlang-exmpp, from dch@
rene marked an inline comment as done.Tue, Sep 28, 9:49 PM
  • security/ipsec-tools: Re-add support for older FreeBSD versions
  • Address change requests.
  • More cleanup from jbeich@
  • More cleanup from jbeich@
  • Chase more *_FreeBSD_11
  • Chase more OSVER*
  • Chase WITH_GETLINE removal, from jbeich@
  • Chase _WITH_DPRINTF removal, from jbeich@
  • Remove obsolete devel/qca-legacy, from adridg@
  • Remove now obsolete GNU bfd workarounds, from jbeich@
  • Remove obsolete devel/erlang-exmpp, from dch@
  • Chase a few more OSVERSION / OSREL cleanups
  • More cleanups
  • security/ipsec-tools: Re-add support for older FreeBSD versions
  • Address change requests.
  • More cleanup from jbeich@
  • More cleanup from jbeich@
  • Chase more *_FreeBSD_11
  • Chase more OSVER*
  • Chase WITH_GETLINE removal, from jbeich@
  • Chase _WITH_DPRINTF removal, from jbeich@
  • Remove obsolete devel/qca-legacy, from adridg@
  • Remove now obsolete GNU bfd workarounds, from jbeich@
  • Remove obsolete devel/erlang-exmpp, from dch@
  • Chase a few more OSVERSION / OSREL cleanups
  • More cleanups
  • Some cleanups for security/p5-*OpenSSL* from sunpoet@
  • emulators/mesen: simplify after 11.X and 12.0 EOL
This revision is now accepted and ready to land.Thu, Sep 30, 9:34 PM