diff options
author | Stefan Strogin <steils@gentoo.org> | 2024-08-14 13:22:23 +0300 |
---|---|---|
committer | Stefan Strogin <steils@gentoo.org> | 2024-08-29 23:58:22 +0000 |
commit | 4e7d0378ec91e04da0b9892cbc9aabd772aec8f2 (patch) | |
tree | ff158cbd58d39ec756cc9d33ff64734b9c8d97a1 /dev-util | |
parent | dev-libs/marisa: enable py3.12, also drop py3.9 (diff) | |
download | gentoo-4e7d0378ec91e04da0b9892cbc9aabd772aec8f2.tar.gz gentoo-4e7d0378ec91e04da0b9892cbc9aabd772aec8f2.tar.bz2 gentoo-4e7d0378ec91e04da0b9892cbc9aabd772aec8f2.zip |
dev-util/plan9port: add 0_pre20240617
Signed-off-by: Stefan Strogin <steils@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/plan9port/Manifest | 1 | ||||
-rw-r--r-- | dev-util/plan9port/plan9port-0_pre20240617.ebuild | 146 |
2 files changed, 147 insertions, 0 deletions
diff --git a/dev-util/plan9port/Manifest b/dev-util/plan9port/Manifest index 0659551716d1..10334b71a272 100644 --- a/dev-util/plan9port/Manifest +++ b/dev-util/plan9port/Manifest @@ -1,2 +1,3 @@ DIST plan9port-88a87fadae6629932d9c160f53ad5d79775f8f94.tar.gz 23413373 BLAKE2B 6145dd77c9e4b33ebc6d68f42ed69e320e8bfcaae474a16afb3a62e30c13a39117d7013f3cc075eb48c95a5600c4fdb457e45f65f7b25ad2acc7b19dc9cf8e64 SHA512 f008969274e790238b58ebd0d0dcfaa730557daf974797f8c4014c36ac39995b330db9c6d658655358fdb2be64905b83c35e2287b7cd66b2d3249e1da1a3e119 +DIST plan9port-a2567fcac9851e5cc965a236679f568b0e79cff2.tar.gz 23415383 BLAKE2B e2c6ea86fdc77e72778df227b3b3519b1f973f5ae042389bd1637e799cfaf461b9e921def8ae4e1761f2292dabbc7f8265061d3344bf80f884b9d19c18e4dadc SHA512 fecc317d80155dd5f07346ab2a448a0ab336a615c7f9877daeff1d010545a0360bce53b4fc5d60e3466e7db760d84657b89ff4e803f75c7129d86af99c005a7e DIST plan9port-cc4571fec67407652b03d6603ada6580de2194dc.tar.gz 23411459 BLAKE2B 439ea7dcddfc466a7fe8bea8b75a7e73558e5cdbd7f0adf9b3367d6eab9eaab8afa8e9fb60bcf83a4a614abbd52a85ddfa65b5dd757fdd2b725f554bf66f3c90 SHA512 e347ffd04c92508b3bc324d93837c831af40b5eb11583f6c61e15c0e861067c76945a1a65929c1e725f18760035a1a14a6cd16a7b8b6a14fd2422750cef1e4d4 diff --git a/dev-util/plan9port/plan9port-0_pre20240617.ebuild b/dev-util/plan9port/plan9port-0_pre20240617.ebuild new file mode 100644 index 000000000000..effd1d072064 --- /dev/null +++ b/dev-util/plan9port/plan9port-0_pre20240617.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multiprocessing toolchain-funcs readme.gentoo-r1 + +MY_HASH="a2567fcac9851e5cc965a236679f568b0e79cff2" +MY_P="${PN}-${MY_HASH}" + +DESCRIPTION="Port of many Plan 9 programs and libraries" +HOMEPAGE="https://9fans.github.io/plan9port/ https://github.com/9fans/plan9port" +SRC_URI="https://github.com/9fans/${PN}/archive/${MY_HASH}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE=" + MIT RSA Apache-2.0 public-domain BitstreamVera BZIP2 + !freefonts? ( BigelowHolmes ) +" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="X aqua freefonts" +REQUIRED_USE="?? ( X aqua )" + +DEPEND=" + X? ( + media-libs/freetype + media-libs/fontconfig + x11-apps/xauth + ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-noexecstack.patch" + "${FILESDIR}/${PN}-cflags.patch" + "${FILESDIR}/${PN}-builderr.patch" +) + +PLAN9="/opt/plan9" +EPLAN9="${EPREFIX}${PLAN9}" +QA_MULTILIB_PATHS="${PLAN9}/.*/.*" + +DOC_CONTENTS="Plan 9 from User Space has been successfully installed into +${PLAN9}. Your PLAN9 and 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 ${PLAN9}/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: +${PLAN9}/bin or the 9 command (eg: 9 troff) + +Please report any bugs to bugs.gentoo.org, NOT Plan9Port." +DISABLE_AUTOFORMATTING="yes" + +src_prepare() { + default + + if use freefonts; then + pushd font || die + rm -r big5 fixed jis luc{,m,sans} misc naga10 pelm shinonome || die + popd || 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,${EPLAN9},g" $(grep -lr /usr/local/plan9) || + die "sed failed" +} + +src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/858452 + # https://github.com/9fans/plan9port/issues/646 + filter-lto + + local -a myconf=( + CC9="$(tc-getCC)" + CC9FLAGS="'${CFLAGS} ${LDFLAGS}'" + ) + + if use X; then + myconf+=( + WSYSTYPE=x11 + FONTSRV=fontsrv + ) + elif use aqua; then + local wsystype="$(awk '{if ($1 > 10.5) print "osx-cocoa"; else print "osx"}' \ + <<< "${MACOSX_DEPLOYMENT_TARGET}")" + myconf+=( WSYSTYPE="${wsystype}" ) + else + myconf+=( WSYSTYPE=nowsys ) + fi + + printf '%s\n' "${myconf[@]}" >> LOCAL.config || + die "cannot create configuration" +} + +src_compile() { + # The INSTALL script builds mk then [re]builds everything using that + einfo "Compiling Plan 9 from User Space can take a very long time" + einfo "depending on the speed of your computer. Please be patient!" + NPROC="$(makeopts_jobs)" ./INSTALL -b || + die "Please report bugs to bugs.gentoo.org, NOT Plan9Port." +} + +src_install() { + readme.gentoo_create_doc + + rm -rf src || die + + # do* plays with the executable bit, and we should not modify them + dodir "${PLAN9}" + cp -a * "${ED}${PLAN9}" || die "cp failed" + + # build the environment variables and install them in env.d + newenvd - 60plan9 <<-EOF + PLAN9="${EPLAN9}" + PATH="${EPLAN9}/bin" + ROOTPATH="${EPLAN9}/bin" + MANPATH="${EPLAN9}/man" + EOF +} + +pkg_postinst() { + readme.gentoo_print_elog +} |