summaryrefslogtreecommitdiff
path: root/etc/mkpkg.conf
blob: a3bae3c743b47eefb88717960a77a8a97e547ebd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# mkpkg.conf - build and install configuration for rawnix.org
# https://rawnix.org

# Compiler
export CC=clang
export CXX=clang++

# Build flags
export CFLAGS="-O2 -pipe -march=x86-64-v3 -fstack-protector-strong -D_FORTIFY_SOURCE=2"
export CXXFLAGS="$CFLAGS"
export LDFLAGS="-Wl,-O1 -Wl,--as-needed"
export CPPFLAGS="-I/include"
export PKG_CONFIG_PATH="/lib/pkgconfig:/usr/lib/pkgconfig"

# Parallel jobs
export MAKEFLAGS="-j$(nproc)"

# Language-specific build cache dirs (relative to $SRC keeps them in work/)
export CARGO_HOME="$SRC/.cargo"
export GOPATH="$SRC/.go"
export YARN_CACHE_FOLDER="$SRC/.yarn"
export npm_config_cache="$SRC/.npm"

# Package managers must not phone home mid-build
export YARN_DISABLE_SELF_UPDATE_CHECK=true
export npm_config_update_notifier=false

# Source and package directories (defaults to port directory)
#MKPKG_SOURCE_DIR="/usr/src"
#MKPKG_PACKAGE_DIR="/usr/packages"

# Work directory — uncomment to build in RAM (requires ~50% of RAM free)
#MKPKG_WORK_DIR="/dev/shm"

# Signature keys (signify format)
# Public key is embedded per-port via signify() in MAKEPKG
# Secret key is only needed for signing (port maintainers)
#MKPKG_SECRET_KEY="/etc/ports/keys/yourkey.sec"

# Build options
#MKPKG_IGNORE_CHECKSUMS="no"
#MKPKG_IGNORE_SIGNATURE="no"
#MKPKG_NO_STRIP="no"

# Package compression — gz (default), xz, zst, bz2, lz
# Affects the package extension and the compressor mkpkg invokes.
# Parallel compressors are used automatically when installed:
#   gz → pigz, bz2 → lbzip2/pbzip2, lz → plzip; xz/zst thread via -T0.
# For very large packages (llama.cpp, rocm-*) "zst" is much faster than gz.
#MKPKG_COMPRESSION_MODE="gz"

# ── Install options ───────────────────────────────────────────────────

# IGNORE_NEW yes|no
#   yes: silently accept packages with new files not in .footprint
#   no:  block installation if package has undeclared new files (default)
IGNORE_NEW=no