Add a poudriere build for the home server.

This commit is contained in:
Tom Alexander
2024-04-11 19:57:02 -04:00
parent 6d198d290d
commit ef18e94ff8
12 changed files with 141 additions and 9 deletions

View File

@@ -0,0 +1,30 @@
CPUTYPE?=broadwell
WITH_MALLOC_PRODUCTION=YES
WITHOUT_LLVM_ASSERTIONS=YES
WITH_REPRODUCIBLE_BUILD=YES
# Would be fun to experiment with:
# WITHOUT_SOURCELESS=YES
# WITHOUT_GAMES=YES
# WITHOUT_KERBEROS=YES
# WITHOUT_LEGACY_CONSOLE=YES
# WITHOUT_LIB32=YES
# WITHOUT_LOADER_GELI=YES
# WITHOUT_MLX5TOOL=YES
# WITHOUT_NDIS=YES
# WITHOUT_OFED=YES
# WITHOUT_PPP=YES
# WITH_SORT_THREADS=YES
# WITHOUT_TALK=YES
# WITHOUT_TCSH=YES
# Questionable Optimizations
WITHOUT_FLOPPY=YES
WITHOUT_HTML=YES
WITHOUT_IPFW=YES
WITHOUT_IPFILTER=YES
WITHOUT_LLVM_TARGET_ALL=YES
# Commented out because maybe I want email alerts for failing disks
# WITHOUT_MAIL=YES

View File

@@ -0,0 +1,22 @@
CPUTYPE?=broadwell
# Disable static for subversion because /usr/local/lib/libutf8proc.a not found despite utf8proc being installed
#
# Disable static for netpbm because "ld: error: undefined symbol: libdeflate_free_compressor" which is "referenced by tif_zip.o:(ZIPVSetField) in archive /usr/local/lib/libtiff.a"
#
# Disable static for libsndfile because pulseaudio and libsamplerate fails to find libsndfile.so
#
# Disable static for firefox because "ld: error: /wrkdirs/usr/ports/www/firefox/work/.build/x86_64-unknown-freebsd/release/libgkrust.a(gkrust_shared-8ce2324940b7b6ec.gkrust_shared.45f3776c712ef4bb-cgu.0.rcgu.o): Unknown attribute kind (86) (Producer: 'LLVM16.0.5-rust-1.71.0-stable' Reader: 'LLVM 13.0.1')"
#
# Disable static for zsh because histdb is throwing "failed to load module: zsh/regex" and "-regex-match not available for regex"
.if ${.CURDIR:N*/devel/subversion*} && ${.CURDIR:N*/graphics/netpbm*} && ${.CURDIR:N*/audio/libsndfile*} && ${.CURDIR:N*/www/firefox*} && ${.CURDIR:N*/shells/zsh*}
OPTIONS_SET+=STATIC LTO
.endif
.if ${.CURDIR:M*/editors/emacs*}
OPTIONS_SET+=NATIVECOMP
.endif
OPTIONS_SET+=OPTIMIZED_CFLAGS
# qemu uses STATIC_LINK instead of the more standard flag of STATIC
OPTIONS_SET+=STATIC_LINK

View File

@@ -0,0 +1,34 @@
devel/git
editors/emacs@nox
editors/mg
ftp/wget
lang/python
net/rsync
net/tcpdump
net/wireguard-tools
ports-mgmt/pkg
ports-mgmt/pkg-provides
security/doas
security/git-crypt
security/gnupg
security/libfido2
security/pcsc-tools
security/pinentry
security/sops
security/sudo
security/u2f-devd
shells/bash
shells/zsh
sysutils/ansible
sysutils/ansible-sshjail
sysutils/bhyve-firmware
sysutils/cpu-microcode
sysutils/exfat-utils
sysutils/htop
sysutils/tmux
sysutils/tree
sysutils/zrepl
textproc/aspell
textproc/colordiff
textproc/en-aspell
textproc/ripgrep

View File

@@ -131,7 +131,7 @@
- name: Create the jails
when: item.version != "CURRENT"
command: |-
poudriere jail {{poudriere_perf_flags}} -c -j {{ item.jail }} -v {{ item.version }} -B -b
echo poudriere jail {{poudriere_perf_flags}} -c -j {{ item.jail }} -v {{ item.version }} -a amd64 -K {{ item.kernel|default("GENERIC") }} -B -b
args:
creates: "/usr/local/poudriere/jails/{{ item.jail }}"
loop: "{{ poudriere_builds }}"