From owner-freebsd-hackers@FreeBSD.ORG Fri Feb 7 19:46:56 2014 Return-Path: Delivered-To: freebsd-hackers@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BCAD2AA2; Fri, 7 Feb 2014 19:46:56 +0000 (UTC) Received: from mail.allbsd.org (gatekeeper.allbsd.org [IPv6:2001:2f0:104:e001::32]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2CECC125B; Fri, 7 Feb 2014 19:46:56 +0000 (UTC) Received: from alph.d.allbsd.org (p2106-ipbf2009funabasi.chiba.ocn.ne.jp [114.146.169.106]) (authenticated bits=128) by mail.allbsd.org (8.14.5/8.14.5) with ESMTP id s17Jkb3v065230 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 8 Feb 2014 04:46:48 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from localhost (localhost [IPv6:::1]) (authenticated bits=0) by alph.d.allbsd.org (8.14.7/8.14.7) with ESMTP id s17JkZV0057442; Sat, 8 Feb 2014 04:46:36 +0900 (JST) (envelope-from hrs@FreeBSD.org) Date: Sat, 08 Feb 2014 04:45:59 +0900 (JST) Message-Id: <20140208.044559.1454108709341728013.hrs@allbsd.org> To: lev@FreeBSD.org Subject: Re: Is it possible to get make variable without recursive expansion? From: Hiroki Sato In-Reply-To: <12310461351.20140207203417@serebryakov.spb.ru> References: <12310461351.20140207203417@serebryakov.spb.ru> X-PGPkey-fingerprint: BDB3 443F A5DD B3D0 A530 FFD7 4F2C D3D8 2793 CF2D X-Mailer: Mew version 6.5 on Emacs 24.3 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Multipart/Signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="--Security_Multipart(Sat_Feb__8_04_45_59_2014_545)--" Content-Transfer-Encoding: 7bit X-Virus-Scanned: clamav-milter 0.97.4 at gatekeeper.allbsd.org X-Virus-Status: Clean X-Greylist: Sender DNS name whitelisted, not delayed by milter-greylist-4.2.7 (mail.allbsd.org [133.31.130.32]); Sat, 08 Feb 2014 04:46:48 +0900 (JST) X-Spam-Status: No, score=-94.3 required=13.0 tests=CONTENT_TYPE_PRESENT, RCVD_IN_PBL,RCVD_IN_RP_RNBL,SPF_SOFTFAIL,USER_IN_WHITELIST autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on gatekeeper.allbsd.org Cc: freebsd-hackers@FreeBSD.org X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Feb 2014 19:46:56 -0000 ----Security_Multipart(Sat_Feb__8_04_45_59_2014_545)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lev Serebryakov wrote in <12310461351.20140207203417@serebryakov.spb.ru>: le> Hello, Freebsd-hackers. le> le> le> Suppose, I have in my Makefile such construction: le> le> A=xxx le> B=yyy le> ANB=${A} and ${B} le> le> Is it possible to get value of ANB without recursive expansion, i.e. string le> "${A} and ${B} and" in this case? I know, that all expansions are done at le> last moment (If I don't use ":=" operator), but is it possible to block le> second- and more-level expansion? le> le> I need to output "ANB=${ANB}" construction to external file without further le> expansion... This may be what you want but works only with bmake: ----Makefile---- A=xxx B=yyy ANB=${A} and ${B} all: @echo ANB=$$(make -VANB) @echo ANB=$$(make .MAKE.EXPAND_VARIABLES=0 -VANB) ----Makefile---- -- Hiroki ----Security_Multipart(Sat_Feb__8_04_45_59_2014_545)-- Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEABECAAYFAlL1N/cACgkQTyzT2CeTzy3TAgCglMznIFV853ySvsJ19DHSXlux vdgAnjHp4dkjzoJWqW5u8Vof8r0X2iT/ =bTxK -----END PGP SIGNATURE----- ----Security_Multipart(Sat_Feb__8_04_45_59_2014_545)----