Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 06 Jul 2010 22:57:13 +0400
From:      Anonymous <swell.k@gmail.com>
To:        Christopher Key <cjk32@cam.ac.uk>
Cc:        freebsd-ports@freebsd.org
Subject:   equivalent of IA32_BINARY_PORT for USE_LINUX (Was: ports/148379: New port: audio/linux-Nero-AAC-Codec)
Message-ID:  <86mxu4phfa.fsf_-_@gmail.com>
In-Reply-To: <4C336E47.2020203@cam.ac.uk> (Christopher Key's message of "Tue,  06 Jul 2010 18:56:23 %2B0100")
References:  <201007051412.o65ECpFw074958@chacal.wzl33> <86iq4tyton.fsf@gmail.com> <4C336E47.2020203@cam.ac.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
(CC'ing freebsd-ports@)

Christopher Key <cjk32@cam.ac.uk> writes:

> Is there any equivalent to IA32_BINARY_PORT for linux binary
> distributions?  I assume that at the moment, linux binary
> compatibility only exists on i386 and amd64, but I don't see any
> reason why this should always be the true, in which case there would
> need to be some way to define which platforms the distributed binaries
> will run on.

IA32_BINARY_PORT checks /usr/lib32 and compat.ia32.maxvmem presence.
I don't think it'll work with dynmaic linking against 32bit library
from ports (not misc/compat[3-7]x).

As there is currently only 32bit linux base support I think only
compat.linux32.maxvmem needs to be checked for USE_LINUX case.

%%
Index: Mk/bsd.port.mk
===================================================================
RCS file: /a/.cvsup/ports/Mk/bsd.port.mk,v
retrieving revision 1.642
diff -u -p -r1.642 bsd.port.mk
--- Mk/bsd.port.mk	4 Jun 2010 08:09:17 -0000	1.642
+++ Mk/bsd.port.mk	6 Jul 2010 18:50:08 -0000
@@ -1714,10 +1714,14 @@ HAVE_COMPAT_IA32_LIBS?=  YES
 .if !defined(HAVE_COMPAT_IA32_KERN)
 HAVE_COMPAT_IA32_KERN!= if ${SYSCTL} -n compat.ia32.maxvmem >/dev/null 2>&1; then echo YES; fi
 .endif
+.if !defined(HAVE_COMPAT_LINUX32_KERN)
+HAVE_COMPAT_LINUX32_KERN!= if ${SYSCTL} -n compat.linux32.maxvmem >/dev/null 2>&1; then echo YES; fi
+.endif
 .endif
 
 .if defined(IA32_BINARY_PORT) && ${ARCH} != "i386"
 .if ${ARCH} == "amd64" || ${ARCH} == "ia64"
+.if !defined(USE_LINUX)
 .if !defined(HAVE_COMPAT_IA32_KERN)
 IGNORE=		requires a kernel with compiled-in IA32 compatibility
 .elif !defined(HAVE_COMPAT_IA32_LIBS)
@@ -1725,6 +1729,9 @@ IGNORE=		requires 32-bit libraries insta
 .endif
 _LDCONFIG_FLAGS=-32
 LIB32DIR=	lib32
+.elif !defined(HAVE_COMPAT_LINUX32_KERN)
+IGNORE=		requires a kernel with compiled-in LINUX32 compatibility
+.endif
 .else
 IGNORE=		requires i386 (or compatible) platform to run
 .endif
%%



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86mxu4phfa.fsf_-_>