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
--- /dev/null
+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) */
+
+
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 )
PATCHES=(
"${FILESDIR}"/${PN}-4.85-cross.patch #432120
+ "${FILESDIR}"/${PN}-4.90-darwin-cppfix.patch #648084
)
src_unpack() {
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)"
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 )
PATCHES=(
"${FILESDIR}"/${PN}-4.85-cross.patch #432120
+ "${FILESDIR}"/${PN}-4.90-darwin-cppfix.patch #648084
)
src_unpack() {
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)"