Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions srcpkgs/hare/files/config.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# install locations
PREFIX = /usr/
BINDIR = $(PREFIX)/bin
MANDIR = $(PREFIX)/share/man
SRCDIR = $(PREFIX)/src
STDLIB = $(SRCDIR)/hare/stdlib
LIBEXECDIR = $(PREFIX)/libexec
TOOLDIR = $(LIBEXECDIR)/hare

# variables used during build
PLATFORM = linux
ARCH = @CARCH@
HAREFLAGS =
HARECFLAGS =
QBEFLAGS =
ASFLAGS =
LDLINKFLAGS = --gc-sections -z noexecstack

# commands used by the build script
HAREC = harec
QBE = qbe
AS = as
LD = ld
SCDOC = scdoc

# build locations
HARECACHE = .cache
BINOUT = .bin

# variables that will be embedded in the binary with -D definitions
HAREPATH = $(SRCDIR)/hare/stdlib:$(SRCDIR)/hare/third-party
VERSION = @VERSION@

# For cross-compilation, modify the variables below
LIBC = @LIBC@
AARCH64_AS=aarch64-linux-$(LIBC)-as
AARCH64_CC=aarch64-linux-$(LIBC)-gcc
AARCH64_LD=aarch64-linux-$(LIBC)-ld

RISCV64_AS=riscv64-linux-$(LIBC)-as
RISCV64_CC=riscv64-linux-$(LIBC)-gcc
RISCV64_LD=riscv64-linux-$(LIBC)-ld

X86_64_AS=x86_64-linux-$(LIBC)-as
X86_64_CC=x86_64-linux-$(LIBC)-gcc
X86_64_LD=x86_64-linux-$(LIBC)-ld
35 changes: 35 additions & 0 deletions srcpkgs/hare/template
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
pkgname=hare
version=0.26.0.1
revision=1
build_style=gnu-makefile
make_use_env=yes
short_desc="Hare programming language - standard library and build driver"
maintainer="kurth4cker <kurth4cker@gmail.com>"
license="GPL-3.0-only AND MPL-2.0"
homepage="https://harelang.org"
distfiles="https://git.sr.ht/~sircmpwn/hare/archive/${version}.tar.gz"
depends="harec>=0.26.0 tzdata"
hostmakedepends="harec scdoc"
archs="x86_64-* aarch64-* risvc64-*"
checksum=f76704920a2f457be4d2d6290dc10dcfb7319c1d1990f2305491644383466905

do_configure() {
cp "$FILESDIR"/config.mk config.mk

libc=musl
[ $XBPS_TARGET_LIBC = glibc ] && libc=gnu

sed -i "s/@LIBC@/$libc/g" config.mk
sed -i "s/@CARCH@/$XBPS_TARGET_MACHINE/g" config.mk
sed -i "s/@VERSION@/$version-void/g" config.mk

# use unprefixed toolchain for local target
sed -i "s/\(${XBPS_TARGET_MACHINE}_..\)=$XBPS_TARGET_MACHINE-linux-\$(LIBC)-/\1=/Ig" config.mk
}

do_check() {
if [ "$XBPS_CHECK_PKGS" = full ]; then
export HARETEST_INCLUDE='slow'
fi
make check
}