57 lines
1.3 KiB
Plaintext
57 lines
1.3 KiB
Plaintext
|
|
# Template file for 'odin'
|
||
|
|
pkgname=odin
|
||
|
|
version=2026.06
|
||
|
|
revision=1
|
||
|
|
_tag="dev-${version//./-}"
|
||
|
|
archs="x86_64"
|
||
|
|
hostmakedepends="clang llvm22 llvm22-devel make which"
|
||
|
|
makedepends="llvm22-devel"
|
||
|
|
checkdepends="python3"
|
||
|
|
depends="clang"
|
||
|
|
short_desc="Data-oriented programming language"
|
||
|
|
maintainer="Desolate"
|
||
|
|
license="BSD-3-Clause"
|
||
|
|
homepage="https://odin-lang.org/"
|
||
|
|
nostrip=yes
|
||
|
|
distfiles="https://github.com/odin-lang/Odin/archive/refs/tags/${_tag}.tar.gz"
|
||
|
|
checksum=9f91df15e06e782bdd2825926efc256ad1a79b3e022a1398e4e10dcc4d4d95fa
|
||
|
|
wrksrc="Odin-${_tag}"
|
||
|
|
|
||
|
|
do_build() {
|
||
|
|
export CXX=clang++
|
||
|
|
export LLVM_CONFIG=llvm-config
|
||
|
|
make release
|
||
|
|
|
||
|
|
make -C vendor/cgltf/src
|
||
|
|
make -C vendor/miniaudio/src
|
||
|
|
make -C vendor/stb/src
|
||
|
|
}
|
||
|
|
|
||
|
|
do_check() {
|
||
|
|
./odin check examples/all -strict-style
|
||
|
|
python3 tests/core/download_assets.py tests/core/assets
|
||
|
|
./odin test tests/core/speed.odin -o:speed -file -all-packages
|
||
|
|
./odin test tests/vendor -all-packages
|
||
|
|
./odin test tests/internal -all-packages
|
||
|
|
}
|
||
|
|
|
||
|
|
do_install() {
|
||
|
|
vmkdir usr/lib/odin
|
||
|
|
vinstall odin 755 usr/lib/odin
|
||
|
|
for d in base core shared vendor; do
|
||
|
|
vcopy "$d" usr/lib/odin
|
||
|
|
done
|
||
|
|
|
||
|
|
# Create wrapper script to ensure ODIN_ROOT is set correctly
|
||
|
|
cat > odin.sh <<EOF
|
||
|
|
#!/bin/sh
|
||
|
|
export ODIN_ROOT=/usr/lib/odin
|
||
|
|
exec /usr/lib/odin/odin "\$@"
|
||
|
|
EOF
|
||
|
|
vbin odin.sh odin
|
||
|
|
|
||
|
|
vlicense LICENSE
|
||
|
|
vdoc PROPOSAL-PROCESS.md
|
||
|
|
vdoc README.md
|
||
|
|
}
|