diff options
author | jlam <jlam@pkgsrc.org> | 2004-01-25 13:26:43 +0000 |
---|---|---|
committer | jlam <jlam@pkgsrc.org> | 2004-01-25 13:26:43 +0000 |
commit | 8e850d04592ee921e1bb4221257a6b8fcb05a541 (patch) | |
tree | d3676178bff6415d67ea9366754061200af1e4fe /mk | |
parent | 93ad14ffc43848303b82ad0408f8d8b425af3c96 (diff) | |
download | pkgsrc-8e850d04592ee921e1bb4221257a6b8fcb05a541.tar.gz |
Instead of directly manipulating DEPENDS, BUILD_DEPENDS, and RECOMMENDED,
create _BLNK_ADD_TO.<depmethod> for each of depencdency methods above from
the BUILDLINK_DEPEND.<pkg> and BUILDLINK_RECOMMENDED.<pkg> lists and save
the created values so they don't need to constantly be recomputed.
Diffstat (limited to 'mk')
-rw-r--r-- | mk/buildlink3/bsd.buildlink3.mk | 62 |
1 files changed, 36 insertions, 26 deletions
diff --git a/mk/buildlink3/bsd.buildlink3.mk b/mk/buildlink3/bsd.buildlink3.mk index 465554d7f84..9e457be3414 100644 --- a/mk/buildlink3/bsd.buildlink3.mk +++ b/mk/buildlink3/bsd.buildlink3.mk @@ -1,4 +1,4 @@ -# $NetBSD: bsd.buildlink3.mk,v 1.56 2004/01/25 13:09:46 jlam Exp $ +# $NetBSD: bsd.buildlink3.mk,v 1.57 2004/01/25 13:26:43 jlam Exp $ # # An example package buildlink3.mk file: # @@ -98,41 +98,51 @@ _BLNK_PACKAGES+= ${_pkg_} . endif .endfor -DEPENDS?= # empty -BUILD_DEPENDS?= # empty - -.for _pkg_ in ${_BLNK_DEPENDS} -# # Add the proper dependency on each package pulled in by buildlink3.mk # files. BUILDLINK_DEPMETHOD.<pkg> contains a list of either "full" or # "build", and if any of that list if "full" then we use a full dependency # on <pkg>, otherwise we use a build dependency on <pkg>. By default, # we use a full dependency. # -. if !defined(BUILDLINK_DEPMETHOD.${_pkg_}) +.if !defined(_BLNK_ADD_TO.DEPENDS) || !defined(_BLNK_ADD_TO.BUILD_DEPENDS) || \ + !defined(_BLNK_ADD_TO.RECOMMENDED) +_BLNK_ADD_TO.DEPENDS= # empty +_BLNK_ADD_TO.BUILD_DEPENDS= # empty +_BLNK_ADD_TO.RECOMMENDED= # empty +. for _pkg_ in ${_BLNK_DEPENDS} +. if !defined(BUILDLINK_DEPMETHOD.${_pkg_}) BUILDLINK_DEPMETHOD.${_pkg_}= full +. endif +. if !empty(BUILDLINK_DEPMETHOD.${_pkg_}:Mfull) +_BLNK_DEPMETHOD.${_pkg_}= _BLNK_ADD_TO.DEPENDS +_BLNK_RECMETHOD.${_pkg_}= _BLNK_ADD_TO.RECOMMENDED +. elif !empty(BUILDLINK_DEPMETHOD.${_pkg_}:Mbuild) +_BLNK_DEPMETHOD.${_pkg_}= _BLNK_ADD_TO.BUILD_DEPENDS . endif -. if !empty(BUILDLINK_DEPMETHOD.${_pkg_}:Mfull) -_BLNK_DEPMETHOD.${_pkg_}= DEPENDS -_BLNK_RECMETHOD.${_pkg_}= RECOMMENDED -. elif !empty(BUILDLINK_DEPMETHOD.${_pkg_}:Mbuild) -_BLNK_DEPMETHOD.${_pkg_}= BUILD_DEPENDS -. endif -. if defined(BUILDLINK_DEPENDS.${_pkg_}) && \ +. if defined(BUILDLINK_DEPENDS.${_pkg_}) && \ defined(BUILDLINK_PKGSRCDIR.${_pkg_}) -. for _depend_ in ${BUILDLINK_DEPENDS.${_pkg_}} -. if empty(${_BLNK_DEPMETHOD.${_pkg_}}:M${_depend_}\:*) +. for _depend_ in ${BUILDLINK_DEPENDS.${_pkg_}} +. if empty(${_BLNK_DEPMETHOD.${_pkg_}}:M${_depend_}\:*) ${_BLNK_DEPMETHOD.${_pkg_}}+= ${_depend_}:${BUILDLINK_PKGSRCDIR.${_pkg_}} -. endif -. endfor -. endif -. if defined(BUILDLINK_RECOMMENDED.${_pkg_}) && \ - defined(_BLNK_RECMETHOD.${_pkg_}) && \ - defined(BUILDLINK_PKGSRCDIR.${_pkg_}) -. for _rec_ in ${BUILDLINK_RECOMMENDED.${_pkg_}} -${_BLNK_RECMETHOD.${_pkg_}}+= \ - ${_rec_}:${BUILDLINK_PKGSRCDIR.${_pkg_}} -. endfor +. endif +. endfor +. endif +. if defined(BUILDLINK_RECOMMENDED.${_pkg_}) && \ + defined(BUILDLINK_PKGSRCDIR.${_pkg_}) +. for _rec_ in ${BUILDLINK_RECOMMENDED.${_pkg_}} +. if empty(${_BLNK_RECMETHOD.${_pkg_}}:M${_depend_}\:*) +${_BLNK_RECMETHOD.${_pkg_}}+= ${_rec_}:${BUILDLINK_PKGSRCDIR.${_pkg_}} +. endif +. endfor +. endif +. endfor +MAKEFLAGS+= _BLNK_ADD_TO.DEPENDS="${_BLNK_ADD_TO.DEPENDS}" +MAKEFLAGS+= _BLNK_ADD_TO.BUILD_DEPENDS="${_BLNK_ADD_TO.BUILD_DEPENDS}" +MAKEFLAGS+= _BLNK_ADD_TO.RECOMMENDED="${_BLNK_ADD_TO.RECOMMENDED}" +.endif +.for _depmethod_ in DEPENDS BUILD_DEPENDS RECOMMENDED +. if !empty(_BLNK_ADD_TO.${_depmethod_}) +${_depmethod_}+= ${_BLNK_ADD_TO.${_depmethod_}} . endif .endfor |