add odin package template
This commit is contained in:
@@ -0,0 +1,56 @@
|
|||||||
|
# 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
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user