summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2018-03-27 11:00:47 +0200
committerFabian Groffen <grobian@gentoo.org>2018-03-27 11:00:47 +0200
commit96f1d755b39e80fc469c6a74d8d2a025307f4840 (patch)
treef80f68f87fad31e51690a96c5eb577aba065ee47 /sys-process/lsof
parentapp-metrics/elasticsearch_exporter: Move package from app-admin/elasticsearch... (diff)
downloadgentoo-96f1d755b39e80fc469c6a74d8d2a025307f4840.tar.gz
gentoo-96f1d755b39e80fc469c6a74d8d2a025307f4840.tar.bz2
gentoo-96f1d755b39e80fc469c6a74d8d2a025307f4840.zip
sys-process/lsof: fix for Darwin, bug #648084
This is based on the work by jsteward in bug #648084. Closes: https://bugs.gentoo.org/648084 Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'sys-process/lsof')
-rw-r--r--sys-process/lsof/files/lsof-4.90-darwin-cppfix.patch12
-rw-r--r--sys-process/lsof/lsof-4.90.ebuild12
-rw-r--r--sys-process/lsof/lsof-4.91.ebuild12
3 files changed, 34 insertions, 2 deletions
diff --git a/sys-process/lsof/files/lsof-4.90-darwin-cppfix.patch b/sys-process/lsof/files/lsof-4.90-darwin-cppfix.patch
new file mode 100644
index 000000000000..fcbfeba410af
--- /dev/null
+++ b/sys-process/lsof/files/lsof-4.90-darwin-cppfix.patch
@@ -0,0 +1,12 @@
+diff -Naur a/dialects/darwin/libproc/dfile.c b/dialects/darwin/libproc/dfile.c
+--- a/dialects/darwin/libproc/dfile.c 2018-02-19 15:04:26.011578124 +0800
++++ b/dialects/darwin/libproc/dfile.c 2018-02-19 15:04:45.006502653 +0800
+@@ -43,7 +43,7 @@
+ #include "lsof.h"
+
+ #if defined(PROC_FP_GUARDED)
+-#extern struct pff_tab Pgf_tab[];
++extern struct pff_tab Pgf_tab[];
+ #endif /* defined(PROC_FP_GUARDED) */
+
+
diff --git a/sys-process/lsof/lsof-4.90.ebuild b/sys-process/lsof/lsof-4.90.ebuild
index f22dd0eaae84..8a1faa697af2 100644
--- a/sys-process/lsof/lsof-4.90.ebuild
+++ b/sys-process/lsof/lsof-4.90.ebuild
@@ -14,7 +14,7 @@ SRC_URI="ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/${MY_P}.tar.bz2
LICENSE="lsof"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="examples ipv6 rpc selinux static"
RDEPEND="rpc? ( net-libs/libtirpc )
@@ -26,6 +26,7 @@ S="${WORKDIR}/${MY_P}/${MY_P}_src"
PATCHES=(
"${FILESDIR}"/${PN}-4.85-cross.patch #432120
+ "${FILESDIR}"/${PN}-4.90-darwin-cppfix.patch #648084
)
src_unpack() {
@@ -66,6 +67,15 @@ src_configure() {
append-cppflags $(use rpc && $(tc-getPKG_CONFIG) libtirpc --cflags || echo "-DHASNOTRPC -DHASNORPC_H")
append-cppflags $(usex ipv6 -{D,U}HASIPv6)
[[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # make sys/proc_info.h available in ${T} because of LSOF_INCLUDE
+ # dummy location -- Darwin needs this for a Configure check to
+ # succeed
+ if [[ -e /usr/include/sys/proc_info.h ]] ; then
+ mkdir -p "${T}"/sys || die
+ ( cd "${T}"/sys && ln -s /usr/include/sys/proc_info.h ) || die
+ fi
+ fi
export LSOF_CFGL="${CFLAGS} ${LDFLAGS} \
$(use rpc && $(tc-getPKG_CONFIG) libtirpc --libs)"
diff --git a/sys-process/lsof/lsof-4.91.ebuild b/sys-process/lsof/lsof-4.91.ebuild
index f22dd0eaae84..8a1faa697af2 100644
--- a/sys-process/lsof/lsof-4.91.ebuild
+++ b/sys-process/lsof/lsof-4.91.ebuild
@@ -14,7 +14,7 @@ SRC_URI="ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/${MY_P}.tar.bz2
LICENSE="lsof"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="examples ipv6 rpc selinux static"
RDEPEND="rpc? ( net-libs/libtirpc )
@@ -26,6 +26,7 @@ S="${WORKDIR}/${MY_P}/${MY_P}_src"
PATCHES=(
"${FILESDIR}"/${PN}-4.85-cross.patch #432120
+ "${FILESDIR}"/${PN}-4.90-darwin-cppfix.patch #648084
)
src_unpack() {
@@ -66,6 +67,15 @@ src_configure() {
append-cppflags $(use rpc && $(tc-getPKG_CONFIG) libtirpc --cflags || echo "-DHASNOTRPC -DHASNORPC_H")
append-cppflags $(usex ipv6 -{D,U}HASIPv6)
[[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # make sys/proc_info.h available in ${T} because of LSOF_INCLUDE
+ # dummy location -- Darwin needs this for a Configure check to
+ # succeed
+ if [[ -e /usr/include/sys/proc_info.h ]] ; then
+ mkdir -p "${T}"/sys || die
+ ( cd "${T}"/sys && ln -s /usr/include/sys/proc_info.h ) || die
+ fi
+ fi
export LSOF_CFGL="${CFLAGS} ${LDFLAGS} \
$(use rpc && $(tc-getPKG_CONFIG) libtirpc --libs)"