Odin : add recipe (DEV-2025-04) (#12416)

* odin : add recipe

Semi-working recipe for Odin DEV-2025.4.
Still need to clarify :
- version is DEV-2025-4, not 2025.4, is it OK to stay with 2025.4 ?
- needs llvm17 or above : how do I handle that in the recipe?

* Update odin-2025.4.0.recipe
- Various corrections to requirements/prerequisites
- Add libs/shared files

* Finalize odin-2025.4.0.recipe

* Remove trailing spaces

* Update odin-2025.4.0.recipe

* Use of $commandBinDir instead of $binDir

* remove $secondaryArchSuffix fril cmd:odin declaration

Co-authored-by: Schrijvers Luc <begasus@gmail.com>

* mkdir $binDir -> mkdir -p $commandBinDir

* Update dev-lang/odin/odin-2025.4.0.recipe

* Update dev-lang/odin/odin-2025.4.0.recipe

---------

Co-authored-by: Schrijvers Luc <begasus@gmail.com>
This commit is contained in:
yann64
2025-06-01 17:44:24 +02:00
committed by GitHub
parent b7a2dad31f
commit 0ca4a1c7a7

View File

@@ -0,0 +1,66 @@
SUMMARY="The Data-Oriented Language for Sane Software Development"
DESCRIPTION="Odin is a general-purpose programming language with \
distinct typing, built for high performance, modern systems, and \
built-in data-oriented data types. The Odin Programming Language, \
the C alternative for the joy of programming."
HOMEPAGE="https://odin-lang.org/"
COPYRIGHT="2016-2024 Ginger Bill"
LICENSE="BSD (3-clause)"
REVISION="1"
SOURCE_URI="https://github.com/odin-lang/Odin/archive/refs/tags/dev-2025-04.tar.gz"
CHECKSUM_SHA256="c04f9adfa4d1f33110207ed2906a47b4f36a43232e5f09f9aed13e7ee4178894"
SOURCE_DIR="Odin-dev-2025-04"
commandBinDir=$binDir
ARCHITECTURES="?all x86_64"
if [ "$targetArchitecture" = "x86_gcc2" ]; then
SECONDARY_ARCHITECTURES="?x86"
commandBinDir=$prefix/bin
fi
PROVIDES="
odin$secondaryArchSuffix = $portVersion
cmd:odin= $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libLLVM$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libiconv$secondaryArchSuffix
devel:libLLVM$secondaryArchSuffix >= 20
"
BUILD_PREREQUIRES="
cmd:awk
cmd:clang++ >= 20
cmd:gcc$secondaryArchSuffix
cmd:llvm_config >= 20
cmd:make
cmd:which
"
BUILD()
{
make release-native
}
INSTALL()
{
mkdir -p $commandBinDir
mkdir -p $libDir/odin
cp -r odin base core vendor $libDir/odin
mkdir -p $dataDir/odin
mkdir -p $dataDir/odin/shared
ln -s $libDir/odin/odin $commandBinDir/odin
}
TEST()
{
./odin version
}