From b8dd5f9d9bb7b165559e7ba4c90054afb524ce4a Mon Sep 17 00:00:00 2001 From: David Lamparter Date: Sat, 25 Aug 2018 07:35:31 +0200 Subject: [PATCH] build: add Makefile variable easy access This adds 2 helper targets for use in scripts to easily get at Makefile variables without parsing the Makefile or config.status. Signed-off-by: David Lamparter --- Makefile.am | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Makefile.am b/Makefile.am index 0ecab8b1f9..b9003b8358 100644 --- a/Makefile.am +++ b/Makefile.am @@ -8,6 +8,20 @@ AM_CPPFLAGS += -I$(top_srcdir) -I$(top_srcdir)/include -I$(top_srcdir)/lib \ DEFS = @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)/\" -DCONFDATE=$(CONFDATE) LIBCAP = @LIBCAP@ +# these two targets are provided to easily grab autoconf/Makefile variables +# you can use either: +# eval `make VARFD=3 shvar-CFLAGS 3>&1 1>&2` +# CFLAGS="`make VARFD=3 var-CFLAGS 3>&1 1>&2`" +# where the former can be used to set several variables at once. Note the +# fd redirections -- this is to prevent garbage from make rebuilding other +# targets from causing issues. +.PHONY: shvar-% var-% +VARFD ?= 1 +shvar-%: + @echo "$*=\"$($*)\"" >&$(VARFD) +var-%: + @echo "$($*)" >&$(VARFD) + # overwriting these vars breaks cross-compilation. let's be helpful and warn. # # note: "#AUTODERP# " will be removed from Makefile by configure. These are -- 2.39.5