diff options
Diffstat (limited to 'devel/binutils/builtin.mk')
-rw-r--r-- | devel/binutils/builtin.mk | 76 |
1 files changed, 53 insertions, 23 deletions
diff --git a/devel/binutils/builtin.mk b/devel/binutils/builtin.mk index 54ea70ea6a3..d5c9cbded2c 100644 --- a/devel/binutils/builtin.mk +++ b/devel/binutils/builtin.mk @@ -1,44 +1,74 @@ -# $NetBSD: builtin.mk,v 1.2 2004/03/29 05:43:29 jlam Exp $ +# $NetBSD: builtin.mk,v 1.3 2005/06/01 18:02:43 jlam Exp $ -# XXX Assume that the base OS provides a built-in binutils. +BUILTIN_PKG:= binutils +.include "../../mk/buildlink3/bsd.builtin.mk" + +### +### Determine if there is a built-in implementation of the package and +### set IS_BUILTIN.<pkg> appropriately ("yes" or "no"). +### +# XXX Assume that the base OS always provides a built-in binutils. IS_BUILTIN.binutils?= yes +### +### Determine whether we should use the built-in implementation if it +### exists, and set USE_BUILTIN.<pkg> appropriate ("yes" or "no"). +### .if !defined(USE_BUILTIN.binutils) -USE_BUILTIN.binutils?= ${IS_BUILTIN.binutils} -PREFER.binutils?= pkgsrc - -. if defined(USE_BINUTILS) -. if !empty(IS_BUILTIN.binutils:M[nN][oO]) || \ - (${PREFER.binutils} == "pkgsrc") +. if ${PREFER.binutils} == "pkgsrc" USE_BUILTIN.binutils= no +. else +USE_BUILTIN.binutils= ${IS_BUILTIN.binutils} +. if defined(BUILTIN_PKG.binutils) && \ + !empty(IS_BUILTIN.binutils:M[yY][eE][sS]) +USE_BUILTIN.binutils= yes +. for _dep_ in ${BUILDLINK_DEPENDS.binutils} +. if !empty(USE_BUILTIN.binutils:M[yY][eE][sS]) +USE_BUILTIN.binutils!= \ + if ${PKG_ADMIN} pmatch ${_dep_:Q} ${BUILTIN_PKG.binutils:Q}; then \ + ${ECHO} yes; \ + else \ + ${ECHO} no; \ + fi +. endif +. endfor . endif -. endif - -# These versions of NetBSD didn't have a toolchain that was capable of -# replacing binutils. # -_INCOMPAT_BINUTILS= NetBSD-0.*-* NetBSD-1.[01234]*-* -_INCOMPAT_BINUTILS+= NetBSD-1.5.*-* NetBSD-1.5[A-X]-* +# Some platforms don't have a toolchain that can replace pkgsrc binutils. # -# XXX _INCOMPAT_BINUTILS settings for other operating systems possibly -# XXX needed here +_INCOMPAT_BINUTILS= NetBSD-0.*-* NetBSD-1.[01234]*-* \ + NetBSD-1.5.*-* NetBSD-1.5[A-X]-* +. for _pattern_ in ${_INCOMPAT_BINUTILS} ${INCOMPAT_BINUTILS} +. if !empty(MACHINE_PLATFORM:M${_pattern_}) +USE_BUILTIN.binutils= no +. endif +. endfor +. endif # PREFER.binutils +.endif +MAKEVARS+= USE_BUILTIN.binutils + +# if USE_BINUTILS is defined, then force the use of a true binutils +# implementation. # -. for _pattern_ in ${_INCOMPAT_BINUTILS} ${INCOMPAT_BINUTILS} -. if !empty(MACHINE_PLATFORM:M${_pattern_}) +.if defined(USE_BINUTILS) +. if !empty(IS_BUILTIN.binutils:M[nN][oO]) USE_BUILTIN.binutils= no -. endif -. endfor -.endif # USE_BUILTIN.binutils +. endif +.endif +### +### The section below only applies if we are not including this file +### solely to determine whether a built-in implementation exists. +### CHECK_BUILTIN.binutils?= no .if !empty(CHECK_BUILTIN.binutils:M[nN][oO]) -.if !empty(USE_BUILTIN.binutils:M[nN][oO]) +. if !empty(USE_BUILTIN.binutils:M[nN][oO]) AR= ${BUILDLINK_PREFIX.binutils}/bin/ar AS= ${BUILDLINK_PREFIX.binutils}/bin/as LD= ${BUILDLINK_PREFIX.binutils}/bin/ld NM= ${BUILDLINK_PREFIX.binutils}/bin/nm RANLIB= ${BUILDLINK_PREFIX.binutils}/bin/ranlib -.endif +. endif .endif # CHECK_BUILTIN.binutils |