From d0b4c54eb698e718080690cf98ab5b8bbb4001e0 Mon Sep 17 00:00:00 2001 From: jlam Date: Wed, 10 Mar 2004 17:57:14 +0000 Subject: Split out the code that deals with checking whether the software is built-in or not into a separate builtin.mk file. The code to deal checking for built-in software is much simpler to deal with in pkgsrc. The buildlink3.mk file for a package will be of the usual format regardless of the package, which makes it simpler for packagers to update a package. The builtin.mk file for a package must define a single yes/no variable USE_BUILTIN. that is used by bsd.buildlink3.mk to decide whether to use the built-in software or to use the pkgsrc software. --- x11/randrext/buildlink3.mk | 91 +++++----------------------------------------- x11/randrext/builtin.mk | 58 +++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+), 82 deletions(-) create mode 100644 x11/randrext/builtin.mk (limited to 'x11/randrext') diff --git a/x11/randrext/buildlink3.mk b/x11/randrext/buildlink3.mk index 3e4c7ecc2f0..c5c01ef3591 100644 --- a/x11/randrext/buildlink3.mk +++ b/x11/randrext/buildlink3.mk @@ -1,95 +1,22 @@ -# $NetBSD: buildlink3.mk,v 1.2 2004/02/18 16:35:27 jlam Exp $ +# $NetBSD: buildlink3.mk,v 1.3 2004/03/10 17:57:15 jlam Exp $ -BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ +BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ RANDREXT_BUILDLINK3_MK:= ${RANDREXT_BUILDLINK3_MK}+ -.include "../../mk/bsd.prefs.mk" +.if !empty(BUILDLINK_DEPTH:M+) +BUILDLINK_DEPENDS+= randrext +.endif + +BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nrandrext} +BUILDLINK_PACKAGES+= randrext .if !empty(RANDREXT_BUILDLINK3_MK:M+) -BUILDLINK_PACKAGES+= randrext BUILDLINK_DEPENDS.randrext+= randrext>=1.0 BUILDLINK_PKGSRCDIR.randrext?= ../../x11/randrext BUILDLINK_DEPMETHOD.randrext?= build -.endif # RANDREXT_BUILDLINK3_MK - -BUILDLINK_CHECK_BUILTIN.randrext?= NO - -_X11_EXTENSIONS_RANDR_H= ${X11BASE}/include/X11/extensions/randr.h - -.if !defined(BUILDLINK_IS_BUILTIN.randrext) -BUILDLINK_IS_BUILTIN.randrext= NO -. if exists(${_X11_EXTENSIONS_RANDR_H}) -BUILDLINK_IS_BUILTIN.randrext= YES -. if !empty(BUILDLINK_CHECK_BUILTIN.randrext:M[nN][oO]) -# -# Create an appropriate package name for the built-in randr distributed -# with the system. This package name can be used to check against -# BUILDLINK_DEPENDS. to see if we need to install the pkgsrc version -# or if the built-in one is sufficient. -# -_RANDR_MAJOR!= \ - ${AWK} '/\#define[ ]*RANDR_MAJOR/ { print $$3 }' \ - ${_X11_EXTENSIONS_RANDR_H} -_RANDR_MINOR!= \ - ${AWK} '/\#define[ ]*RANDR_MINOR/ { print "."$$3 }' \ - ${_X11_EXTENSIONS_RANDR_H} -_RANDR_VERSION= ${_RANDR_MAJOR}${_RANDR_MINOR} -_RANDR_PKG= randr-${_RANDR_VERSION} -BUILDLINK_IS_BUILTIN.randrext?= YES -. for _depend_ in ${BUILDLINK_DEPENDS.randrext} -. if !empty(BUILDLINK_IS_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_IS_BUILTIN.randrext!= \ - if ${PKG_ADMIN} pmatch '${_depend_}' ${_RANDR_PKG}; then \ - ${ECHO} "YES"; \ - else \ - ${ECHO} "NO"; \ - fi -. endif -. endfor -. endif -. endif -MAKEFLAGS+= BUILDLINK_IS_BUILTIN.randrext=${BUILDLINK_IS_BUILTIN.randrext} -.endif - -.if !empty(BUILDLINK_CHECK_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_USE_BUILTIN.randrext= YES -.endif -.if !defined(BUILDLINK_USE_BUILTIN.randrext) -. if !empty(BUILDLINK_IS_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_USE_BUILTIN.randrext= YES -. else -BUILDLINK_USE_BUILTIN.randrext= NO -. endif - -. if !empty(PREFER_NATIVE:M[yY][eE][sS]) && \ - !empty(BUILDLINK_IS_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_USE_BUILTIN.randrext= YES -. endif -. if !empty(PREFER_PKGSRC:M[yY][eE][sS]) -BUILDLINK_USE_BUILTIN.randrext= NO -. endif -. if !empty(PREFER_NATIVE:Mrandr) && \ - !empty(BUILDLINK_IS_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_USE_BUILTIN.randrext= YES -. endif -. if !empty(PREFER_PKGSRC:Mrandr) -BUILDLINK_USE_BUILTIN.randrext= NO -. endif -.endif - -.if !empty(BUILDLINK_USE_BUILTIN.randrext:M[nN][oO]) -. if !empty(BUILDLINK_DEPTH:M+) -BUILDLINK_DEPENDS+= randrext -. endif -.endif - -.if !empty(RANDREXT_BUILDLINK3_MK:M+) -BUILDLINK_DEPENDS.randrext+= randrext>=1.0 -. if !empty(BUILDLINK_USE_BUILTIN.randrext:M[yY][eE][sS]) -BUILDLINK_PREFIX.randrext= ${X11BASE} -. endif USE_X11= yes + .endif # RANDREXT_BUILDLINK3_MK BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} diff --git a/x11/randrext/builtin.mk b/x11/randrext/builtin.mk new file mode 100644 index 00000000000..af142fe125d --- /dev/null +++ b/x11/randrext/builtin.mk @@ -0,0 +1,58 @@ +# $NetBSD: builtin.mk,v 1.1 2004/03/10 17:57:15 jlam Exp $ + +_X11_EXTENSIONS_RANDR_H= ${X11BASE}/include/X11/extensions/randr.h + +.if !defined(IS_BUILTIN.randrext) +IS_BUILTIN.randrext= no +. if exists(${_X11_EXTENSIONS_RANDR_H}) +IS_BUILTIN.randrext= yes +# +# Create an appropriate package name for the built-in randr distributed +# with the system. This package name can be used to check against +# BUILDLINK_DEPENDS. to see if we need to install the pkgsrc version +# or if the built-in one is sufficient. +# +_RANDR_MAJOR!= \ + ${AWK} '/\#define[ ]*RANDR_MAJOR/ { print $$3 }' \ + ${_X11_EXTENSIONS_RANDR_H} +_RANDR_MINOR!= \ + ${AWK} '/\#define[ ]*RANDR_MINOR/ { print "."$$3 }' \ + ${_X11_EXTENSIONS_RANDR_H} +_RANDR_VERSION= ${_RANDR_MAJOR}${_RANDR_MINOR} +BUILTIN_PKG.randrext= randrext-${_RANDR_VERSION} +MAKEFLAGS+= BUILTIN_PKG.randrext=${BUILTIN_PKG.randrext} +. endif +MAKEFLAGS+= IS_BUILTIN.randrext=${IS_BUILTIN.randrext} +.endif + +CHECK_BUILTIN.randrext?= no +.if !empty(CHECK_BUILTIN.randrext:M[yY][eE][sS]) +USE_BUILTIN.randrext= yes +.endif + +.if !defined(USE_BUILTIN.randrext) +USE_BUILTIN.randrext?= ${IS_BUILTIN.randrext} + +. if defined(BUILTIN_PKG.randrext) +USE_BUILTIN.randrext= yes +. for _depend_ in ${BUILDLINK_DEPENDS.randrext} +. if !empty(USE_BUILTIN.randrext:M[yY][eE][sS]) +USE_BUILTIN.randrext!= \ + if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.randrext}; then \ + ${ECHO} "yes"; \ + else \ + ${ECHO} "no"; \ + fi +. endif +. endfor +. endif +.endif # USE_BUILTIN.randrext + +.if !empty(USE_BUILTIN.randrext:M[nN][oO]) +BUILDLINK_DEPENDS.randrext+= randrext>=1.0 +.endif + +.if !empty(USE_BUILTIN.randrext:M[yY][eE][sS]) +BUILDLINK_PREFIX.randrext= ${X11BASE} +USE_X11= yes +.endif -- cgit v1.2.3