summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-01-13 14:22:26 +0100
committerMichał Górny <mgorny@gentoo.org>2024-01-13 18:53:17 +0100
commit3fe65af75b1e6e70fbf11ed2224832ffc4ee4087 (patch)
tree2e8d3fc0faf3b329283b7939b9475e46bf0df72b /dev-build/pmake
parentMove {sys-devel → dev-build}/bmake (diff)
downloadgentoo-3fe65af75b1e6e70fbf11ed2224832ffc4ee4087.tar.gz
gentoo-3fe65af75b1e6e70fbf11ed2224832ffc4ee4087.tar.bz2
gentoo-3fe65af75b1e6e70fbf11ed2224832ffc4ee4087.zip
Move {sys-devel → dev-build}/pmake
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-build/pmake')
-rw-r--r--dev-build/pmake/Manifest2
-rw-r--r--dev-build/pmake/files/pmake-1.111.1-ldflags.patch13
-rw-r--r--dev-build/pmake/files/pmake-1.98-skipdots.patch12
-rw-r--r--dev-build/pmake/metadata.xml5
-rw-r--r--dev-build/pmake/pmake-1.111.3.3-r1.ebuild65
5 files changed, 97 insertions, 0 deletions
diff --git a/dev-build/pmake/Manifest b/dev-build/pmake/Manifest
new file mode 100644
index 000000000000..149a5aafe345
--- /dev/null
+++ b/dev-build/pmake/Manifest
@@ -0,0 +1,2 @@
+DIST pmake_1.111-3.3.debian.tar.gz 31648 BLAKE2B 31aca433bbeac4275d4c2af0cfd33ef81b0086b0dec107edfc1fba55b15480367ebf62abccd6e2e48f0c7ccc25c59f0b07eed7ac950a5037b73c267b066a9638 SHA512 b22a1d9e371712732f196d91ac3eb9239fa98ee8ee05754576e7a5878cab88976cb10bb6be90706df5ac738373f519468403c23f6a3ff3860a2968b3222a66ed
+DIST pmake_1.111.orig.tar.gz 264383 BLAKE2B 54dd510251441b54c9f5d7f6061109b0222191b3acdded1394b51b72b87bbd4255edd80fab46976d92c58929693b6809a9f2c4f001cab8c9cdaabfac9f3adac9 SHA512 ad48708ea014d6a38ad36303504c52992b51a1e815564f1710849d859b1fc3cd58c4a1a71f54ec902c9b69112e9cd1e1a64282ff738439cdb209a4f75c364c22
diff --git a/dev-build/pmake/files/pmake-1.111.1-ldflags.patch b/dev-build/pmake/files/pmake-1.111.1-ldflags.patch
new file mode 100644
index 000000000000..d6047d48994b
--- /dev/null
+++ b/dev-build/pmake/files/pmake-1.111.1-ldflags.patch
@@ -0,0 +1,13 @@
+Index: pmake/Makefile.boot
+===================================================================
+--- pmake.orig/Makefile.boot
++++ pmake/Makefile.boot
+@@ -36,7 +36,7 @@ LIBOBJ= lst.lib/lstAppend.o lst.lib/lstA
+
+ bmake: ${OBJ} ${LIBOBJ}
+ # @echo 'make of make and make.0 started.'
+- ${CC} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS}
++ ${CC} ${LDFLAGS} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS}
+ @ls -l $@
+ # nroff -h -man make.1 > make.0
+ # @echo 'make of make and make.0 completed.'
diff --git a/dev-build/pmake/files/pmake-1.98-skipdots.patch b/dev-build/pmake/files/pmake-1.98-skipdots.patch
new file mode 100644
index 000000000000..6783a9799919
--- /dev/null
+++ b/dev-build/pmake/files/pmake-1.98-skipdots.patch
@@ -0,0 +1,12 @@
+diff -urN pmake-2.0.orig/dir.c pmake-2.0/dir.c
+--- pmake-2.0.orig/dir.c 2005-02-08 09:26:28.932978574 -0500
++++ pmake-2.0/dir.c 2005-02-08 09:36:18.208704201 -0500
+@@ -1528,6 +1528,8 @@
+ Hash_InitTable (&p->files, -1);
+
+ while ((dp = readdir (d)) != (struct dirent *) NULL) {
++ if (!strcmp(dp->d_name, ".") || !strcmp(dp->d_name, ".."))
++ continue;
+ #if defined(sun) && defined(d_ino) /* d_ino is a sunos4 #define for d_fileno */
+ /*
+ * The sun directory library doesn't check for a 0 inode
diff --git a/dev-build/pmake/metadata.xml b/dev-build/pmake/metadata.xml
new file mode 100644
index 000000000000..85e4ed814fa2
--- /dev/null
+++ b/dev-build/pmake/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/dev-build/pmake/pmake-1.111.3.3-r1.ebuild b/dev-build/pmake/pmake-1.111.3.3-r1.ebuild
new file mode 100644
index 000000000000..edf3149254bb
--- /dev/null
+++ b/dev-build/pmake/pmake-1.111.3.3-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs linux-info
+
+MY_P="${PN}-$(ver_cut 1-2)"
+DEBIAN_SOURCE="${PN}_$(ver_cut 1-2).orig.tar.gz"
+DEBIAN_PATCH="${PN}_$(ver_rs 2 '-').debian.tar.gz"
+
+DESCRIPTION="BSD build tool to create programs in parallel. Debian's version of NetBSD's make"
+HOMEPAGE="http://www.netbsd.org/"
+SRC_URI="
+ mirror://debian/pool/main/p/pmake/${DEBIAN_SOURCE}
+ mirror://debian/pool/main/p/pmake/${DEBIAN_PATCH}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+
+S="${WORKDIR}/${PN}"
+
+PATCHES=(
+ "${WORKDIR}"/debian/patches
+
+ # pmake makes the assumption that . and .. are the first two
+ # entries in a directory, which doesn't always appear to be the
+ # case on ext3... (05 Apr 2004 agriffis)
+ "${FILESDIR}"/${PN}-1.98-skipdots.patch
+
+ # Don't ignore ldflags
+ "${FILESDIR}"/${PN}-1.111.1-ldflags.patch
+)
+
+src_compile() {
+ # The following CFLAGS are almost directly from Red Hat 8.0 and
+ # debian/rules, so assume it's okay to void out the __COPYRIGHT
+ # and __RCSID. I've checked the source and don't see the point,
+ # but whatever... (07 Feb 2004 agriffis)
+ CFLAGS="${CFLAGS} -Wall -Wno-unused -D_GNU_SOURCE \
+ -DHAVE_STRERROR -DHAVE_STRDUP -DHAVE_SETENV \
+ -D__COPYRIGHT\(x\)= -D__RCSID\(x\)= -I. \
+ -DMACHINE=\\\"gentoo\\\" -DMACHINE_ARCH=\\\"$(tc-arch-kernel)\\\" \
+ -D_PATH_DEFSHELLDIR=\\\"${EPREFIX}/bin\\\" \
+ -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk\\\" \
+ -DHAVE_VSNPRINTF -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk/${PN}\\\""
+
+ emake -f Makefile.boot \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ insinto /usr/share/mk/${PN}
+ doins -r mk/.
+
+ newbin bmake pmake
+ dobin mkdep
+
+ doman mkdep.1
+ newman make.1 pmake.1
+
+ dodoc PSD.doc/tutorial.ms
+}