summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe/binconfig-disabled.bbclass
blob: cbe2078e0f347d20d84f3d27d4fe268bea734606 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#
# Copyright OpenEmbedded Contributors
#
# SPDX-License-Identifier: MIT
#

#
# Class to disable binconfig files instead of installing them
#

# The list of scripts which should be disabled.
BINCONFIG ?= ""

FILES:${PN}-dev += "${bindir}/*-config"

do_install:append () {
	for x in ${BINCONFIG}; do
		# Make the disabled script emit invalid parameters for those configure
		# scripts which call it without checking the return code.
		echo "#!/bin/sh" > ${D}$x
		echo "echo 'ERROR: $x should not be used, use an alternative such as pkg-config' >&2" >> ${D}$x
		echo "echo '--should-not-have-used-$x'" >> ${D}$x
		echo "exit 1" >> ${D}$x
		chmod +x ${D}$x
	done
}

SYSROOT_PREPROCESS_FUNCS += "binconfig_disabled_sysroot_preprocess"

binconfig_disabled_sysroot_preprocess () {
	for x in ${BINCONFIG}; do
		configname=`basename $x`
		install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}
		install ${D}$x ${SYSROOT_DESTDIR}${bindir_crossscripts}
	done
}