summaryrefslogtreecommitdiffhomepage
path: root/sofort
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2021-06-08 23:40:14 +0000
committermidipix <writeonce@midipix.org>2021-06-09 01:00:17 +0000
commit76003d86d8c2d4ee1ace698adeb7f0b6e98723c4 (patch)
tree7eab19c21529728621b2f6c7eab33a0d5f985cdc /sofort
parentcd7ba4c13aa2be8a12661dea2f1f46a5f16d8a45 (diff)
downloadmdso-76003d86d8c2d4ee1ace698adeb7f0b6e98723c4.tar.bz2
mdso-76003d86d8c2d4ee1ace698adeb7f0b6e98723c4.tar.xz
build system: cfgtest: added cfgtest_macro_definition().
Diffstat (limited to 'sofort')
-rw-r--r--sofort/cfgtest/cfgtest.sh37
1 files changed, 37 insertions, 0 deletions
diff --git a/sofort/cfgtest/cfgtest.sh b/sofort/cfgtest/cfgtest.sh
index 46c431f..fba7b24 100644
--- a/sofort/cfgtest/cfgtest.sh
+++ b/sofort/cfgtest/cfgtest.sh
@@ -261,6 +261,10 @@ cfgtest_common_init()
cfgtest_inc=
cfgtest_src="$cfgtest_code_snippet"
+ elif [ "$cfgtest_type" = 'macro' ]; then
+ cfgtest_inc=
+ cfgtest_src="$cfgtest_code_snippet"
+
elif [ "$cfgtest_type" = 'ldflag' ]; then
cfgtest_inc=
cfgtest_src=
@@ -544,6 +548,39 @@ cfgtest_code_snippet_asm()
}
+cfgtest_macro_definition()
+{
+ # init
+ cfgtest_prolog 'macro definition' "${1}"
+
+ cfgtest_code_snippet=$(printf '%s\n' \
+ "#ifndef ${1}" \
+ "#error macro ${1} is not defined." \
+ "#endif")
+
+ cfgtest_common_init 'macro'
+
+ # execute
+ cfgtest_ret=1
+
+ printf '%s' "$cfgtest_src" \
+ | eval $(printf '%s' "$cfgtest_cmd") \
+ > /dev/null 2>&3 \
+ || cfgtest_epilog 'macro' '(error)' "${1}" \
+ || return
+
+ # result
+ cfgtest_ret=0
+
+ printf 'cfgtest: %s compiler: above macro definition test compiled successfully.\n\n' \
+ "$mb_cfgtest_cfgtype" >&3
+
+ cfgtest_epilog 'macro' '(defined)'
+
+ return 0
+}
+
+
cfgtest_library_presence()
{
# init