zstd: Move to a new zstd package

Zstd is a discrete, self-contained system component.  To match how we
package zlib, bzip2 and xz, move it to its own package, with a separate
lib package.

Add the new package to the minimal set, since this is a core component
that users expect to be installed.

This change adds a new package to the system so, until we have a proper
policy on how to handle this in release/stable branches, it should not
be MFC'd.

MFC after:	never
Reviewed by:	bapt
Sponsored by:	https://www.patreon.com/bsdivy
Differential Revision:	https://reviews.freebsd.org/D53603
This commit is contained in:
Lexi Winter 2026-01-06 04:23:22 +00:00
parent 665ac052aa
commit 9c401bf148
4 changed files with 41 additions and 1 deletions

View file

@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW:
world, or to merely disable the most expensive debugging functionality world, or to merely disable the most expensive debugging functionality
at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".)
20260106:
Zstd has moved to the new "zstd" package. If you have set-minimal
installed, this package will be installed automatically, otherwise
you might want to install it manually. This change only affects
pkgbase users.
20251222: 20251222:
Commit 9f49f436a9ec changed the internal KAPI between the NFS Commit 9f49f436a9ec changed the internal KAPI between the NFS
modules. As such, nfscommon, nfscl and nfsd must all be rebuilt modules. As such, nfscommon, nfscl and nfsd must all be rebuilt

View file

@ -1,3 +1,6 @@
PACKAGE= zstd
LIB_PACKAGE=
LIB= zstd LIB= zstd
SRCS= entropy_common.c \ SRCS= entropy_common.c \
error_private.c \ error_private.c \
@ -43,7 +46,6 @@ LIBADD= pthread
CFLAGS+= -DZSTD_DISABLE_ASM CFLAGS+= -DZSTD_DISABLE_ASM
PRIVATELIB= yes PRIVATELIB= yes
PACKAGE= runtime
ZSTDDIR= ${SRCTOP}/sys/contrib/zstd ZSTDDIR= ${SRCTOP}/sys/contrib/zstd
.PATH: ${ZSTDDIR}/lib/common ${ZSTDDIR}/lib/compress \ .PATH: ${ZSTDDIR}/lib/common ${ZSTDDIR}/lib/compress \

View file

@ -0,0 +1,30 @@
/*
* SPDX-License-Identifier: ISC
*
* Copyright (c) 2025 Lexi Winter <ivy@FreeBSD.org>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
comment = "Fast, lossless compression algorithm"
desc = <<EOD
Zstandard, also called zstd, is a fast data compression algorithm developed
by Meta Platforms, Inc. and standardised by the IETF in RFC 8478. Zstd is
designed to offer a compression ratio comparable to DEFLATE (zlib), but with
performance suitable for real-time compression applications.
EOD
annotations {
set = "minimal,minimal-jail"
}

View file

@ -1,3 +1,5 @@
PACKAGE= zstd
PROG= zstd PROG= zstd
SRCS= \ SRCS= \
benchfn.c \ benchfn.c \