summaryrefslogtreecommitdiff
path: root/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild')
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild101
1 files changed, 101 insertions, 0 deletions
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild
new file mode 100644
index 000000000000..c8f3e71d0567
--- /dev/null
+++ b/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+# from DT 8.2.1
+DEV_VER=63
+# from 10.7.4
+MD_VER=147 # adv_cmds-148 in 10.8 has no md, bug #428530
+
+DESCRIPTION="Miscellaneous commands used on macOS, High Sierra 10.13"
+HOMEPAGE="https://github.com/apple-oss-distributions"
+SRC_URI="
+ https://github.com/apple-oss-distributions/adv_cmds/blob/c8dbac91aa855b2d05282f45709b318f8bc3693d/md/md.1 \
+ -> adv_cmds-md-${MD_VER}.1
+ https://github.com/apple-oss-distributions/adv_cmds/blob/c8dbac91aa855b2d05282f45709b318f8bc3693d/md/md.c \
+ -> adv_cmds-md-${MD_VER}.c
+ https://642666.bugs.gentoo.org/attachment.cgi?id=511988 -> adv_cmds-md-${MD_VER}-compile.patch
+ https://github.com/apple-oss-distributions/developer_cmds/archive/refs/tags/developer_cmds-${DEV_VER}.tar.gz"
+S="${WORKDIR}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~arm64-macos ~ppc-macos ~x64-macos"
+
+# for ncal
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ mkdir -p "${S}"/adv_cmds-${MD_VER}/md || die
+ cd "${S}"/adv_cmds-${MD_VER} || die
+ cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.c md/md.c || die
+ cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.1 md/md.1 || die
+ eapply "${FILESDIR}"/${PN}-12-md-modern-c.patch
+
+ cd "${S}" || die
+ eapply_user
+}
+
+src_compile() {
+ local t
+ local TS
+ local flags=(
+ ${CFLAGS}
+ -I.
+ -D__FBSDID=__RCSID
+ -Du_int=uint32_t
+ -include stdint.h
+ )
+
+ # grobian 2024-04-07:
+ # removed most tools here that are provided by host as well, but
+ # newer versions, and they are in no way critical, but better
+ # figured out by Apple (e.g. tools like w/uptime and hostname)
+ # what's left here is developer tools that GCC interacts with
+ # tools from developer_cmds we could probably loose, but they've
+ # always worked up sofar, and they are needed on old targets
+ # (Darwin9) most likely, so keep them. md is just plain missing, so
+ # keep it in any case
+
+ TS="${S}/developer_cmds-developer_cmds-${DEV_VER}" # new github archives
+ # only pick those tools that do not conflict (no ctags and indent)
+ # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
+ # shell scripts
+ # don't install rpcgen, as it is heavily related to the OS it runs
+ # on (and this is the High Sierra version)
+ for t in asa unifdef what ; do
+ echo "in ${TS}/${t}:"
+ cd "${TS}/${t}" || die
+ edo $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c
+ done
+
+ # provide this one for gcc-apple
+ TS="${S}/adv_cmds-${MD_VER}"
+ for t in md ; do
+ echo "in ${TS}/${t}:"
+ cd "${TS}/${t}" || die
+ edo $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c
+ done
+}
+
+src_install() {
+ local t
+ local TS
+ mkdir -p "${ED}"/{,usr/}bin || die
+
+ TS="${S}/developer_cmds-developer_cmds-${DEV_VER}" # new github archives
+ for t in asa unifdef what ; do
+ cp "${TS}/${t}/${t}" "${ED}"/usr/bin/ || die
+ doman "${TS}/${t}/${t}.1"
+ done
+
+ TS="${S}/adv_cmds-${MD_VER}"
+ for t in md ; do
+ cp "${TS}/${t}/${t}" "${ED}"/usr/bin/ || die
+ doman "${TS}/${t}/${t}.1"
+ done
+}