summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authortriaxx <triaxx@pkgsrc.org>2021-07-19 09:55:04 +0000
committertriaxx <triaxx@pkgsrc.org>2021-07-19 09:55:04 +0000
commit09d55e715ed338cb2317d1e7647a8f1bbb6d46d4 (patch)
treedc03d4f436f2f5da537947fda8d918f753e6f723 /mk
parenteae9a96255cb20bc97e05ab826f0a2ce7b6d4f71 (diff)
downloadpkgsrc-09d55e715ed338cb2317d1e7647a8f1bbb6d46d4.tar.gz
mk: Fix PR pkg/56299
Add a test to check that an xbase set is installed when a tool depends on X11 and X11_TYPE=native. Thanks to Greg and Edgar for their comments and suggestions!
Diffstat (limited to 'mk')
-rw-r--r--mk/tools/replace.mk16
1 files changed, 15 insertions, 1 deletions
diff --git a/mk/tools/replace.mk b/mk/tools/replace.mk
index 420d9973396..51f3e12697d 100644
--- a/mk/tools/replace.mk
+++ b/mk/tools/replace.mk
@@ -1,4 +1,4 @@
-# $NetBSD: replace.mk,v 1.291 2020/10/06 17:36:50 rillig Exp $
+# $NetBSD: replace.mk,v 1.292 2021/07/19 09:55:04 triaxx Exp $
#
# Copyright (c) 2005 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -1276,6 +1276,16 @@ TOOLS_PATH.makedepend= ${X11BASE}/bin/makedepend
######################################################################
.for _t_ in ${_USE_TOOLS}
+###
+### For each tool that depends on X11 for its native version, make
+### sure it is really installed (i.e. xbase has been installed).
+###
+. if defined(TOOLS_PATH.${_t_}) && !empty(X11_TYPE:Mnative)
+. if !exists(${TOOLS_PATH.${_t_}}) && !empty(TOOLS_PATH.${_t_}:M${X11BASE}*)
+_tmiss_+= ${_t_}
+. endif
+. endif
+
. if !empty(_TOOLS_USE_PKGSRC.${_t_}:M[yY][eE][sS]) && \
!defined(TOOLS_IGNORE.${_t_})
#####
@@ -1336,6 +1346,10 @@ ${_v_}?= ${TOOLS_CMDLINE_${_TOOLS_VARNAME.${_t_}}}
. endif
.endfor
+.if !empty(_tmiss_)
+PKG_FAIL_REASON+= "${X11BASE}: X11_TYPE=native but xbase set is not installed (missing: ${_tmiss_}). Either set X11_TYPE to modular or install xbase."
+.endif
+
######################################################################
# For each tool that pkgsrc requires, make sure that the "TOOL" name