dev-util/plan9port: add version 2021.03.21 and 2021.10.05
Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Maciej Barć <xgqt@riseup.net>
This commit is contained in:
parent
847142dc63
commit
2aebb15ce9
2
dev-util/plan9port/Manifest
Normal file
2
dev-util/plan9port/Manifest
Normal file
@ -0,0 +1,2 @@
|
||||
DIST plan9port-2021.03.21.tar.gz 23413373 BLAKE2B 6145dd77c9e4b33ebc6d68f42ed69e320e8bfcaae474a16afb3a62e30c13a39117d7013f3cc075eb48c95a5600c4fdb457e45f65f7b25ad2acc7b19dc9cf8e64 SHA512 f008969274e790238b58ebd0d0dcfaa730557daf974797f8c4014c36ac39995b330db9c6d658655358fdb2be64905b83c35e2287b7cd66b2d3249e1da1a3e119
|
||||
DIST plan9port-2021.10.05.tar.gz 23410060 BLAKE2B dc1923064254a337551657222648e7ac0f84b0a65b33b74333efbe8a2eb1521fa468306ef24207f27ebe4260ab4ab0dd56e7f3b6e291c6c0c0781780c1df8a7a SHA512 5e61c953e9acb3fcce51a77417d8b9123352fa7eddddf09ca20803be2938a7173303bceb0cbd8625eba3afd952953b407a3315bd96f3751ecb3298d78dcc97b4
|
29
dev-util/plan9port/files/plan9port-builderr.patch
Normal file
29
dev-util/plan9port/files/plan9port-builderr.patch
Normal file
@ -0,0 +1,29 @@
|
||||
Prevent mk from ignoring errors
|
||||
|
||||
By default, the plan9port INSTALL script doesn't report build error,
|
||||
which can result in a mostly broken build begin installed.
|
||||
--- a/INSTALL
|
||||
+++ b/INSTALL
|
||||
@@ -65,7 +65,6 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
-(
|
||||
if [ `uname` = SunOS ]; then
|
||||
# On Solaris x86, uname -p cannot be trusted.
|
||||
echo "* Running on Solaris: checking architecture..."
|
||||
@@ -159,7 +158,7 @@
|
||||
echo "* Warning: not all binaries built successfully."
|
||||
fi
|
||||
echo "* Installing everything in $PLAN9/bin..."
|
||||
- mk -k install || exit 1
|
||||
+ mk install || exit 1
|
||||
if [ ! -x $PLAN9/bin/cleanname -o ! -x $PLAN9/bin/acme -o ! -x $PLAN9/bin/sam ]; then
|
||||
echo " "
|
||||
echo "* Warning: not all binaries built successfully."
|
||||
@@ -211,5 +210,4 @@
|
||||
echo " PLAN9=$PLAN9 export PLAN9"
|
||||
echo ' PATH=$PATH:$PLAN9/bin export PATH'
|
||||
fi
|
||||
-) 2>&1 | tee install.log | $awk -f $PLAN9/dist/isum.awk -v 'copy='install.sum
|
||||
|
16
dev-util/plan9port/files/plan9port-cflags.patch
Normal file
16
dev-util/plan9port/files/plan9port-cflags.patch
Normal file
@ -0,0 +1,16 @@
|
||||
Prevent resetting CFLAGS and LDFLAGS
|
||||
|
||||
This allows the plan9port build to inherit cflags from the environment.
|
||||
|
||||
(This patch must be applied after plan9port-noexecstack.patch)
|
||||
--- a/src/mkhdr
|
||||
+++ b/src/mkhdr
|
||||
@@ -11,8 +11,6 @@
|
||||
LD=9l
|
||||
AS=9a
|
||||
AR=9ar
|
||||
-CFLAGS=
|
||||
-LDFLAGS=
|
||||
AFLAGS=--noexecstack
|
||||
CLEANFILES=
|
||||
NUKEFILES=
|
19
dev-util/plan9port/files/plan9port-noexecstack.patch
Normal file
19
dev-util/plan9port/files/plan9port-noexecstack.patch
Normal file
@ -0,0 +1,19 @@
|
||||
Remove unneeded executable stack
|
||||
|
||||
Assembly routines in libthread and libmp use an executable stack by
|
||||
default. This is not needed and can be removed using --noexecstack.
|
||||
|
||||
Patch by Andy Spencer
|
||||
|
||||
http://code.swtch.com/plan9port/issue/76/
|
||||
--- a/src/mkhdr
|
||||
+++ b/src/mkhdr
|
||||
@@ -13,7 +13,7 @@
|
||||
AR=9ar
|
||||
CFLAGS=
|
||||
LDFLAGS=
|
||||
-AFLAGS=
|
||||
+AFLAGS=--noexecstack
|
||||
CLEANFILES=
|
||||
NUKEFILES=
|
||||
YACC=9 yacc
|
20
dev-util/plan9port/metadata.xml
Normal file
20
dev-util/plan9port/metadata.xml
Normal file
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>xgqt@protonmail.com</email>
|
||||
<name>Maciej Barć</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
Plan9Port is a set of Plan 9 utilities ported to the POSIX
|
||||
environment - also know as Plan 9 from User Space.
|
||||
</longdescription>
|
||||
<upstream>
|
||||
<bugs-to>https://github.com/9fans/plan9port</bugs-to>
|
||||
<remote-id type="github">9fans/plan9port</remote-id>
|
||||
</upstream>
|
||||
<use>
|
||||
<flag name="freefonts">Don't install BigelowHolmes fonts</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
158
dev-util/plan9port/plan9port-2021.03.21.ebuild
Normal file
158
dev-util/plan9port/plan9port-2021.03.21.ebuild
Normal file
@ -0,0 +1,158 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
GIT_HASH="88a87fadae6629932d9c160f53ad5d79775f8f94"
|
||||
|
||||
inherit multiprocessing toolchain-funcs readme.gentoo-r1 flag-o-matic
|
||||
|
||||
DESCRIPTION="Port of many Plan 9 programs and libraries"
|
||||
HOMEPAGE="https://9fans.github.io/plan9port/"
|
||||
|
||||
if [[ "${PV}" == *9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/9fans/${PN}.git"
|
||||
else
|
||||
SRC_URI="https://github.com/9fans/${PN}/archive/${GIT_HASH}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${GIT_HASH}"
|
||||
fi
|
||||
|
||||
LICENSE="MIT RSA Apache-2.0 public-domain BitstreamVera BZIP2
|
||||
!freefonts? ( BigelowHolmes )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="X aqua -freefonts truetype"
|
||||
REQUIRED_USE="?? ( X aqua )"
|
||||
|
||||
DEPEND="
|
||||
X? ( x11-apps/xauth )
|
||||
truetype? (
|
||||
media-libs/freetype
|
||||
media-libs/fontconfig
|
||||
)
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-noexecstack.patch"
|
||||
"${FILESDIR}/${PN}-cflags.patch"
|
||||
"${FILESDIR}/${PN}-builderr.patch"
|
||||
)
|
||||
|
||||
DIR9="/opt/plan9/"
|
||||
EDIR9="${EPREFIX}/${DIR9}"
|
||||
|
||||
DOC_CONTENTS="Plan 9 from User Space has been successfully installed into
|
||||
${DIR9}. Your PATH environment variables have also been
|
||||
appropriately set, please use env-update and source
|
||||
/etc/profile to bring that into immediate effect.
|
||||
|
||||
Please note that ${DIR9}/bin has been appended to the
|
||||
*end* or your PATH to prevent conflicts. To use the Plan9
|
||||
versions of common UNIX tools, use the absolute path:
|
||||
${DIR9}/bin or the 9 command (eg: 9 troff)
|
||||
|
||||
Please report any bugs to bugs.gentoo.org, NOT Plan9Port."
|
||||
DISABLE_AUTOFORMATTING="yes"
|
||||
|
||||
QA_MULTILIB_PATHS="${DIR9}/.*/.*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if use freefonts; then
|
||||
pushd font >/dev/null || die
|
||||
rm -r big5 fixed jis luc{,m,sans} misc naga10 pelm shinonome || die
|
||||
popd >/dev/null || die
|
||||
rm -r postscript/font/luxi || die
|
||||
fi
|
||||
|
||||
case "${CHOST}" in
|
||||
*apple* )
|
||||
sed -i 's/--noexecstack/-noexecstack/' src/mkhdr ||
|
||||
die "Failed to sed AFLAGS"
|
||||
;;
|
||||
* )
|
||||
rm -rf mac || die
|
||||
;;
|
||||
esac
|
||||
|
||||
# Don't hardcode /bin and /usr/bin in PATH
|
||||
sed -i '/PATH/s,/bin:/usr/bin:,,' INSTALL || die "sed on \"INSTALL\" failed"
|
||||
|
||||
# Don't hardcode /usr/{,local/}include and prefix /usr/include/*
|
||||
sed -Ei \
|
||||
-e 's,-I/usr(|/local)/include ,,g' \
|
||||
-e "s,-I/usr(|/local)/include,-I${EPREFIX}/usr\1/include,g" \
|
||||
src/cmd/fontsrv/freetyperules.sh INSTALL $(find . -name "makefile") ||
|
||||
die "sed failed"
|
||||
|
||||
# Fix paths, done in place of ./INSTALL -c
|
||||
einfo "Fixing hard-coded /usr/local/plan9 paths"
|
||||
sed -i "s,/usr/local/plan9,${EDIR9},g" $(grep -lr "/usr/local/plan9") ||
|
||||
die "sed failed"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
filter-flags -fno-common
|
||||
append-cflags -fcommon
|
||||
|
||||
local -a myconf=(
|
||||
CC9="$(tc-getCC)"
|
||||
CC9FLAGS="'${CFLAGS} ${LDFLAGS}'"
|
||||
)
|
||||
|
||||
if use X; then
|
||||
myconf+=( WSYSTYPE="x11" )
|
||||
elif use aqua; then
|
||||
local wsystype
|
||||
wsystype="$(
|
||||
awk '{if ($1 > 10.5) print "osx-cocoa"; else print "osx"}' \
|
||||
<<< "${MACOSX_DEPLOYMENT_TARGET}"
|
||||
)"
|
||||
myconf+=( WSYSTYPE="${wsystype}" )
|
||||
else
|
||||
myconf+=( WSYSTYPE="nowsys" )
|
||||
fi
|
||||
|
||||
if use truetype; then
|
||||
myconf+=( FONTSRV="fontsrv" )
|
||||
else
|
||||
myconf+=( FONTSRV= )
|
||||
fi
|
||||
|
||||
printf '%s\n' "${myconf[@]}" >> LOCAL.config ||
|
||||
die "cannot create configuration"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The INSTALL script builds mk then [re]builds everything using that
|
||||
NPROC="$(makeopts_jobs)" ./INSTALL -b || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
einstalldocs
|
||||
readme.gentoo_create_doc
|
||||
|
||||
# Clean up compiled code & source
|
||||
rm -rf src || die
|
||||
|
||||
# do* plays with the executable bit, and we should not modify them
|
||||
dodir "${DIR9}"
|
||||
cp -a ./* "${ED}/${DIR9}/" || die
|
||||
|
||||
# Build the environment variables and install them in env.d
|
||||
newenvd - 60plan9 <<-EOF
|
||||
PLAN9="${EDIR9}"
|
||||
PATH="${EDIR9}/bin"
|
||||
ROOTPATH="${EDIR9}/bin"
|
||||
MANPATH="${EDIR9}/man"
|
||||
EOF
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
158
dev-util/plan9port/plan9port-2021.10.05.ebuild
Normal file
158
dev-util/plan9port/plan9port-2021.10.05.ebuild
Normal file
@ -0,0 +1,158 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
GIT_HASH="e683bdfa76a5c2c54422a6bd2934b133d77ba610"
|
||||
|
||||
inherit multiprocessing toolchain-funcs readme.gentoo-r1 flag-o-matic
|
||||
|
||||
DESCRIPTION="Port of many Plan 9 programs and libraries"
|
||||
HOMEPAGE="https://9fans.github.io/plan9port/"
|
||||
|
||||
if [[ "${PV}" == *9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/9fans/${PN}.git"
|
||||
else
|
||||
SRC_URI="https://github.com/9fans/${PN}/archive/${GIT_HASH}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${GIT_HASH}"
|
||||
fi
|
||||
|
||||
LICENSE="MIT RSA Apache-2.0 public-domain BitstreamVera BZIP2
|
||||
!freefonts? ( BigelowHolmes )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="X aqua -freefonts truetype"
|
||||
REQUIRED_USE="?? ( X aqua )"
|
||||
|
||||
DEPEND="
|
||||
X? ( x11-apps/xauth )
|
||||
truetype? (
|
||||
media-libs/freetype
|
||||
media-libs/fontconfig
|
||||
)
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-noexecstack.patch"
|
||||
"${FILESDIR}/${PN}-cflags.patch"
|
||||
"${FILESDIR}/${PN}-builderr.patch"
|
||||
)
|
||||
|
||||
DIR9="/opt/plan9/"
|
||||
EDIR9="${EPREFIX}/${DIR9}"
|
||||
|
||||
DOC_CONTENTS="Plan 9 from User Space has been successfully installed into
|
||||
${DIR9}. Your PATH environment variables have also been
|
||||
appropriately set, please use env-update and source
|
||||
/etc/profile to bring that into immediate effect.
|
||||
|
||||
Please note that ${DIR9}/bin has been appended to the
|
||||
*end* or your PATH to prevent conflicts. To use the Plan9
|
||||
versions of common UNIX tools, use the absolute path:
|
||||
${DIR9}/bin or the 9 command (eg: 9 troff)
|
||||
|
||||
Please report any bugs to bugs.gentoo.org, NOT Plan9Port."
|
||||
DISABLE_AUTOFORMATTING="yes"
|
||||
|
||||
QA_MULTILIB_PATHS="${DIR9}/.*/.*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if use freefonts; then
|
||||
pushd font >/dev/null || die
|
||||
rm -r big5 fixed jis luc{,m,sans} misc naga10 pelm shinonome || die
|
||||
popd >/dev/null || die
|
||||
rm -r postscript/font/luxi || die
|
||||
fi
|
||||
|
||||
case "${CHOST}" in
|
||||
*apple* )
|
||||
sed -i 's/--noexecstack/-noexecstack/' src/mkhdr ||
|
||||
die "Failed to sed AFLAGS"
|
||||
;;
|
||||
* )
|
||||
rm -rf mac || die
|
||||
;;
|
||||
esac
|
||||
|
||||
# Don't hardcode /bin and /usr/bin in PATH
|
||||
sed -i '/PATH/s,/bin:/usr/bin:,,' INSTALL || die "sed on \"INSTALL\" failed"
|
||||
|
||||
# Don't hardcode /usr/{,local/}include and prefix /usr/include/*
|
||||
sed -Ei \
|
||||
-e 's,-I/usr(|/local)/include ,,g' \
|
||||
-e "s,-I/usr(|/local)/include,-I${EPREFIX}/usr\1/include,g" \
|
||||
src/cmd/fontsrv/freetyperules.sh INSTALL $(find . -name "makefile") ||
|
||||
die "sed failed"
|
||||
|
||||
# Fix paths, done in place of ./INSTALL -c
|
||||
einfo "Fixing hard-coded /usr/local/plan9 paths"
|
||||
sed -i "s,/usr/local/plan9,${EDIR9},g" $(grep -lr "/usr/local/plan9") ||
|
||||
die "sed failed"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
filter-flags -fno-common
|
||||
append-cflags -fcommon
|
||||
|
||||
local -a myconf=(
|
||||
CC9="$(tc-getCC)"
|
||||
CC9FLAGS="'${CFLAGS} ${LDFLAGS}'"
|
||||
)
|
||||
|
||||
if use X; then
|
||||
myconf+=( WSYSTYPE="x11" )
|
||||
elif use aqua; then
|
||||
local wsystype
|
||||
wsystype="$(
|
||||
awk '{if ($1 > 10.5) print "osx-cocoa"; else print "osx"}' \
|
||||
<<< "${MACOSX_DEPLOYMENT_TARGET}"
|
||||
)"
|
||||
myconf+=( WSYSTYPE="${wsystype}" )
|
||||
else
|
||||
myconf+=( WSYSTYPE="nowsys" )
|
||||
fi
|
||||
|
||||
if use truetype; then
|
||||
myconf+=( FONTSRV="fontsrv" )
|
||||
else
|
||||
myconf+=( FONTSRV= )
|
||||
fi
|
||||
|
||||
printf '%s\n' "${myconf[@]}" >> LOCAL.config ||
|
||||
die "cannot create configuration"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The INSTALL script builds mk then [re]builds everything using that
|
||||
NPROC="$(makeopts_jobs)" ./INSTALL -b || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
einstalldocs
|
||||
readme.gentoo_create_doc
|
||||
|
||||
# Clean up compiled code & source
|
||||
rm -rf src || die
|
||||
|
||||
# do* plays with the executable bit, and we should not modify them
|
||||
dodir "${DIR9}"
|
||||
cp -a ./* "${ED}/${DIR9}/" || die
|
||||
|
||||
# Build the environment variables and install them in env.d
|
||||
newenvd - 60plan9 <<-EOF
|
||||
PLAN9="${EDIR9}"
|
||||
PATH="${EDIR9}/bin"
|
||||
ROOTPATH="${EDIR9}/bin"
|
||||
MANPATH="${EDIR9}/man"
|
||||
EOF
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
Loading…
Reference in New Issue
Block a user