gentoo-ebuilds/sys-apps/heirloom-tools/heirloom-tools-070715-r7.ebuild
NHOrus 523077d310
sys-apps/heirloom-tools: Fix C99 and broken build graph errors
Including missing generated headers in build graph,
correct usage of gettimeoftheday, cast of pointer types to type
with same width and renaming of true and false.

Not fixed: Sometimes, in some shuffle values root makefile
tries to run branch makefiles before generating them. Don't
understand that and can't fix it.

Closes: https://bugs.gentoo.org/896314
Closes: https://bugs.gentoo.org/880189
Closes: https://bugs.gentoo.org/946205
Closes: https://bugs.gentoo.org/919459
Signed-off-by: NHOrus <jy6x2b32pie9@yahoo.com>
Closes: https://github.com/gentoo/gentoo/pull/41564
Signed-off-by: Sam James <sam@gentoo.org>
2025-04-12 21:43:40 +01:00

100 lines
2.4 KiB
Bash

# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic readme.gentoo-r1 toolchain-funcs
DESCRIPTION="Heirloom toolchest - original Unix tools"
HOMEPAGE="https://heirloom.sourceforge.net/tools.html"
SRC_URI="https://downloads.sourceforge.net/heirloom/heirloom/${PV}/heirloom-${PV}.tar.bz2"
S="${WORKDIR}/heirloom-${PV}"
LICENSE="ZLIB BSD BSD-4 CDDL GPL-2+ LGPL-2.1+ LPL-1.02 Info-ZIP public-domain"
SLOT="0"
KEYWORDS="~amd64 ~x86"
# slightly broken
RESTRICT="test"
RDEPEND="
sys-libs/ncurses:=
sys-libs/zlib
virtual/libcrypt:=
"
DEPEND="${RDEPEND}"
BDEPEND="
sys-apps/ed
app-alternatives/bc
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}"/${P}-major.patch
"${FILESDIR}"/${P}-makefile.patch
"${FILESDIR}"/${P}-glibc-2.30.patch
"${FILESDIR}"/${P}-glibc-2.31.patch
"${FILESDIR}"/${P}-gcc-10.patch
"${FILESDIR}"/${P}-clang.patch
"${FILESDIR}"/${P}-gcc-15.patch
"${FILESDIR}"/${P}-make-ordering.patch
)
src_prepare() {
default
sed -i "s:\bar\b:$(tc-getAR):g" libwchar/Makefile.mk || die
}
src_compile() {
mypaths=(
DEFBIN="${EPREFIX}/usr/lib/${PN}/5bin"
SV3BIN="${EPREFIX}/usr/lib/${PN}/5bin"
S42BIN="${EPREFIX}/usr/lib/${PN}/5bin/s42"
SUSBIN="${EPREFIX}/usr/lib/${PN}/5bin/posix"
SU3BIN="${EPREFIX}/usr/lib/${PN}/5bin/posix2001"
UCBBIN="${EPREFIX}/usr/lib/${PN}/ucb"
CCSBIN="${EPREFIX}/usr/lib/${PN}/ccs/bin"
DEFLIB="${EPREFIX}/usr/lib/${PN}/5lib"
DEFSBIN="${EPREFIX}/usr/lib/${PN}/5bin"
MANDIR="${EPREFIX}/usr/share/man/5man"
DFLDIR="${EPREFIX}/etc/default"
SPELLHIST="/dev/null"
SULOG="${EPREFIX}/var/log/sulog"
)
append-cppflags -D_GNU_SOURCE
emake -j1 \
CC="$(tc-getCC)" \
AR="$(tc-getAR)" \
RANLIB="$(tc-getRANLIB)" \
CFLAGS="${CFLAGS}" \
CFLAGS2="${CFLAGS}" \
CFLAGSS="${CFLAGS}" \
CFLAGSU="${CFLAGS}" \
CPPFLAGS="${CPPFLAGS}" \
LCURS="$($(tc-getPKG_CONFIG) --libs ncurses)" \
LDFLAGS="${LDFLAGS}" \
LIBZ="-lz" \
"${mypaths[@]}"
}
src_install() {
# we don't want to strip here, so use "true" as noop
emake -j1 \
STRIP="true" \
ROOT="${D}" \
"${mypaths[@]}" \
install
rm -r "${D}/dev" || die
dodoc CHANGES README
local DOC_CONTENTS="You may want to adjust your PATH, to enable
using the apps of ${PN} by default.
\\n\\nMan pages are installed in /usr/share/man/5man/.
You may need to set MANPATH to access them."
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}