~alpine/aports

testing/9base: new aport v1 APPLIED

Joshua Haase: 2
 testing/9base: new aport
 testing/9base: new aport

 11 files changed, 282 insertions(+), 0 deletions(-)
Export patchset (mbox)
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s https://lists.alpinelinux.org/~alpine/aports/patches/3089/mbox | git am -3
Learn more about email & git

[PATCH] testing/9base: new aport Export this patch

Closes #10855
---
 testing/9base/APKBUILD         | 50 ++++++++++++++++++++++++++++++++++
 testing/9base/config.mk.x86    | 24 ++++++++++++++++
 testing/9base/config.mk.x86_64 | 24 ++++++++++++++++
 testing/9base/dirread.patch    | 17 ++++++++++++
 4 files changed, 115 insertions(+)
 create mode 100644 testing/9base/APKBUILD
 create mode 100644 testing/9base/config.mk.x86
 create mode 100644 testing/9base/config.mk.x86_64
 create mode 100644 testing/9base/dirread.patch

diff --git a/testing/9base/APKBUILD b/testing/9base/APKBUILD
new file mode 100644
index 0000000000..525dae7bc6
--- /dev/null
+++ b/testing/9base/APKBUILD
@@ -0,0 +1,50 @@
# Contributor: Joshua Haase <hahj87@gmail.com>
# Maintainer: Joshua Haase <hahj87@gmail.com>
pkgname="9base"
pkgver="6"
pkgrel=0
pkgdesc="A port of various Plan 9 tools for Unix."
url="https://tools.suckless.org/9base/"
arch="all"
license="MIT"
depends=""
makedepends="libucontext-dev linux-headers"
install=""
subpackages="$pkgname-doc $pkgname-troff"
source="https://dl.suckless.org/tools/$pkgname-$pkgver.tar.gz config.mk.x86_64 config.mk.x86 dirread.patch"
builddir="$srcdir/$pkgname-$pkgver"

prepare() {
	default_prepare
	cp "$srcdir/config.mk.$(uname -m)" "$builddir/config.mk"
}

build() {
	cd "$builddir"
	make DESTDIR="$pkgdir" all
}

package() {
	cd "$builddir"
	install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
	make DESTDIR="$pkgdir" install
}

doc() {
	default_doc
	mkdir -p "$subpkgdir/usr/lib/9base/share"
	mv "$pkgdir/usr/lib/9base/share/man" "$subpkgdir/usr/lib/9base/share"
}

troff() {
	cd "$pkgdir"
	mkdir -p "$subpkgdir/usr/lib/9base/bin"
	mv "$pkgdir/usr/lib/9base/bin/troff" "$subpkgdir/usr/lib/9base/bin/troff"
	mkdir -p "$subpkgdir/usr/lib/9base/lib/troff"
	mv "$pkgdir/usr/lib/9base/lib/troff" "$subpkgdir/usr/lib/9base/lib/troff"
}

sha512sums="38108a94118b56c6f3982e692beb1068c52f9aecd74447d6b552b77fae5e365eab72b4781bdf07d9696ac89d54371c1cae8cc0363de510b53988302acef50dba  9base-6.tar.gz
3a30955d59ad78c1bc4e2fbd0f511eb85624ed48b0aeceef436e3456f685690e064eb1f171a2080a34a0fcb40d874277a282864c720c9e612eca3ad848dec35e  config.mk.x86_64
7a58d4762c5ec9a0191f2cce15b23b2e60ec9445c357dc2e3925a5b4d5dec1c5eed6fb3565be07a25616c0c2b0768c21737b2d35082deb17bfc7a7f5f0c0d2a6  config.mk.x86
5b47647245366e786059a28747fe9a36fd87d9df2e1a7f68e9a41f4adb7ec96f230a9abe94acbe5f82d62f4f85b061ff7ab7356d32072dd9ef7f677379f456f5  dirread.patch"
diff --git a/testing/9base/config.mk.x86 b/testing/9base/config.mk.x86
new file mode 100644
index 0000000000..9279f21262
--- /dev/null
+++ b/testing/9base/config.mk.x86
@@ -0,0 +1,24 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
OBJTYPE     = 386
#OBJTYPE     = arm
#OBJTYPE     = x86_64

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/config.mk.x86_64 b/testing/9base/config.mk.x86_64
new file mode 100644
index 0000000000..51ce200eb0
--- /dev/null
+++ b/testing/9base/config.mk.x86_64
@@ -0,0 +1,24 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
#OBJTYPE     = 386
#OBJTYPE     = arm
OBJTYPE     = x86_64

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/dirread.patch b/testing/9base/dirread.patch
new file mode 100644
index 0000000000..daf60c6311
--- /dev/null
+++ b/testing/9base/dirread.patch
@@ -0,0 +1,17 @@
--- 9base-6/lib9/dirread.c
+++ 9base-6/lib9/dirread.c
@@ -10,13 +10,7 @@
 static int
 mygetdents(int fd, struct dirent *buf, int n)
 {
-	off_t off;
-	int nn;
-
-	/* This doesn't match the man page, but it works in Debian with a 2.2 kernel */
-	off = p9seek(fd, 0, 1);
-	nn = getdirentries(fd, (void*)buf, n, &off);
-	return nn;
+	return getdents(fd, buf, n);
 }
 #elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
 static int
-- 
2.17.1

[PATCH v2] testing/9base: new aport Export this patch

Closes #10855, see !299

The port for s390x is as recommended on https://plan9port-review.googlesource.com/1030
---

  - Fixed lint problems.
  - Added config.mk for all architectures, and a patch for s390x.
  - Passed tests on https://gitlab.alpinelinux.org/alpine/aports/merge_requests/299

 testing/9base/APKBUILD          | 48 +++++++++++++++++++++++++++++++++
 testing/9base/config.mk.i686    | 24 +++++++++++++++++
 testing/9base/config.mk.ppc64le | 22 +++++++++++++++
 testing/9base/config.mk.s390x   | 22 +++++++++++++++
 testing/9base/config.mk.x86_64  | 24 +++++++++++++++++
 testing/9base/dirread.patch     | 17 ++++++++++++
 testing/9base/s390x.patch       | 10 +++++++
 7 files changed, 167 insertions(+)
 create mode 100644 testing/9base/APKBUILD
 create mode 100644 testing/9base/config.mk.i686
 create mode 100644 testing/9base/config.mk.ppc64le
 create mode 100644 testing/9base/config.mk.s390x
 create mode 100644 testing/9base/config.mk.x86_64
 create mode 100644 testing/9base/dirread.patch
 create mode 100644 testing/9base/s390x.patch

diff --git a/testing/9base/APKBUILD b/testing/9base/APKBUILD
new file mode 100644
index 0000000000..ddecc8c6b1
--- /dev/null
+++ b/testing/9base/APKBUILD
@@ -0,0 +1,48 @@
# Contributor: Joshua Haase <hahj87@gmail.com>
# Maintainer: Joshua Haase <hahj87@gmail.com>
pkgname="9base"
pkgver=6
pkgrel=0
pkgdesc="A port of various Plan 9 tools for Unix."
url="https://tools.suckless.org/9base/"
arch="all"
license="MIT"
makedepends="libucontext-dev linux-headers"
subpackages="$pkgname-doc $pkgname-troff"
source="https://dl.suckless.org/tools/9base-$pkgver.tar.gz config.mk.x86_64 config.mk.i686 config.mk.s390x config.mk.ppc64le dirread.patch s390x.patch"

prepare() {
	default_prepare
	cp "$srcdir/config.mk.$(uname -m)" "$builddir/config.mk"
}

build() {
	make DESTDIR="$pkgdir" all
}

package() {
	install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
	make DESTDIR="$pkgdir" install
}

doc() {
	default_doc
	mkdir -p "$subpkgdir/usr/lib/9base/share"
	mv "$pkgdir/usr/lib/9base/share/man" "$subpkgdir/usr/lib/9base/share"
}

troff() {
	cd "$pkgdir"
	mkdir -p "$subpkgdir/usr/lib/9base/bin"
	mv "$pkgdir/usr/lib/9base/bin/troff" "$subpkgdir/usr/lib/9base/bin/troff"
	mkdir -p "$subpkgdir/usr/lib/9base/lib/troff"
	mv "$pkgdir/usr/lib/9base/lib/troff" "$subpkgdir/usr/lib/9base/lib/troff"
}

sha512sums="38108a94118b56c6f3982e692beb1068c52f9aecd74447d6b552b77fae5e365eab72b4781bdf07d9696ac89d54371c1cae8cc0363de510b53988302acef50dba  9base-6.tar.gz
3a30955d59ad78c1bc4e2fbd0f511eb85624ed48b0aeceef436e3456f685690e064eb1f171a2080a34a0fcb40d874277a282864c720c9e612eca3ad848dec35e  config.mk.x86_64
7a58d4762c5ec9a0191f2cce15b23b2e60ec9445c357dc2e3925a5b4d5dec1c5eed6fb3565be07a25616c0c2b0768c21737b2d35082deb17bfc7a7f5f0c0d2a6  config.mk.i686
61e67a22abf8f7d3dbfadda92cf0836e8726ae8225939318d0bf34dc05b47a12dd41de895f7b5df515ba5cd783dae368cce98706366cc28360a1987b4e7c652c  config.mk.s390x
dd0f9ff55e103fd16f689f01e41769cf6bc6370201e790bf64236570cda2d0e6ef2954f1b5798feb4ebd65fc1a0563ce71c8a9b7fb05166a8ff28ac8be472dfe  config.mk.ppc64le
5b47647245366e786059a28747fe9a36fd87d9df2e1a7f68e9a41f4adb7ec96f230a9abe94acbe5f82d62f4f85b061ff7ab7356d32072dd9ef7f677379f456f5  dirread.patch
f1f05e2a6081f2a451256de9af669e1ff1e82b6603b376677825421c11bd6ef22a8ab0eb89c15b0589252bada71b58214b6306127bdd379952203105f14e49e9  s390x.patch"
diff --git a/testing/9base/config.mk.i686 b/testing/9base/config.mk.i686
new file mode 100644
index 0000000000..9279f21262
--- /dev/null
+++ b/testing/9base/config.mk.i686
@@ -0,0 +1,24 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
OBJTYPE     = 386
#OBJTYPE     = arm
#OBJTYPE     = x86_64

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/config.mk.ppc64le b/testing/9base/config.mk.ppc64le
new file mode 100644
index 0000000000..4b4a4d9629
--- /dev/null
+++ b/testing/9base/config.mk.ppc64le
@@ -0,0 +1,22 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
OBJTYPE     = power

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/config.mk.s390x b/testing/9base/config.mk.s390x
new file mode 100644
index 0000000000..3efca66629
--- /dev/null
+++ b/testing/9base/config.mk.s390x
@@ -0,0 +1,22 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
OBJTYPE     = s390x

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/config.mk.x86_64 b/testing/9base/config.mk.x86_64
new file mode 100644
index 0000000000..51ce200eb0
--- /dev/null
+++ b/testing/9base/config.mk.x86_64
@@ -0,0 +1,24 @@
# Customize to fit your system

# paths
PREFIX      = /usr/lib/9base
MANPREFIX   = ${PREFIX}/share/man

VERSION     = 6
#OBJTYPE     = 386
#OBJTYPE     = arm
OBJTYPE     = x86_64

# Linux/BSD
#CFLAGS      += -Wall -Wno-missing-braces -Wno-parentheses -Wno-switch -c -I. -DPREFIX="\"${PREFIX}\""
CFLAGS      += -c -I. -DPREFIX="\"${PREFIX}\""
LDFLAGS     += -static

# Solaris
#CFLAGS      = -fast -xtarget=ultra -D__sun__ -c -I. -DPREFIX="\"${PREFIX}\""
#LDFLAGS     = -dn

# compiler
AR          = ar rc
CC          = cc
YACC        = ../yacc/9yacc
diff --git a/testing/9base/dirread.patch b/testing/9base/dirread.patch
new file mode 100644
index 0000000000..daf60c6311
--- /dev/null
+++ b/testing/9base/dirread.patch
@@ -0,0 +1,17 @@
--- 9base-6/lib9/dirread.c
+++ 9base-6/lib9/dirread.c
@@ -10,13 +10,7 @@
 static int
 mygetdents(int fd, struct dirent *buf, int n)
 {
-	off_t off;
-	int nn;
-
-	/* This doesn't match the man page, but it works in Debian with a 2.2 kernel */
-	off = p9seek(fd, 0, 1);
-	nn = getdirentries(fd, (void*)buf, n, &off);
-	return nn;
+	return getdents(fd, buf, n);
 }
 #elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
 static int
diff --git a/testing/9base/s390x.patch b/testing/9base/s390x.patch
new file mode 100644
index 0000000000..49a24eed7d
--- /dev/null
+++ b/testing/9base/s390x.patch
@@ -0,0 +1,10 @@
--- /dev/null
+++ 9base-6/lib9/getcallerpc-s390x.c
@@ -0,0 +1,7 @@
+#include <lib9.h>
+
+ulong
+getcallerpc(void *x)
+{
+	__builtin_return_address(0);
+}
-- 
2.17.1