Xref: utzoo comp.bugs.sys5:740 comp.unix.wizards:13933 Path: utzoo!attcan!uunet!lll-winken!ames!mailrus!cwjcc!hal!ncoast!allbery From: allbery@ncoast.UUCP (Brandon S. Allbery) Newsgroups: comp.bugs.sys5,comp.unix.wizards Subject: Re: make bug Message-ID: <13312@ncoast.UUCP> Date: 7 Jan 89 16:31:26 GMT References: <502@Aragorn.dde.uucp> <904@philmds.UUCP> Reply-To: allbery@ncoast.UUCP (Brandon S. Allbery) Followup-To: comp.bugs.sys5 Organization: Cleveland Public Access UN*X, Cleveland, Oh Lines: 36 As quoted from <904@philmds.UUCP> by leo@philmds.UUCP (Leo de Wit): +--------------- | In article <502@Aragorn.dde.uucp> ct@dde.uucp (Claus Tondering) writes: | +--------------- | |ALPHA = foo | |BETA = $(ALPHA) bar | | | |all: | | echo $(BETA:bar=hello) | | | |Running make with this makefile will result in the execution of the | |command "echo $(ALPHA) hello", which is certainly not what I would | |expect. | | | |Why is ALPHA not substituted in the last example? Bug or feature? | | What would you expect? "$(BETA:bar=hello)" is certainly not Make syntax. | Make doesn't know about sh or csh variable substitution, if that was | your intention. +--------------- Beg pardon, but did you examine the Newsgroups: line? The System III/System V (and, I believe, recent SunOS) "make", sometimes called "augmake", *does* support this. It's fairly limited, however; it only substitutes at the end of words, and there are no wildcards. I have noticed that *some* recursive substitutions fail; I don't know why. It doesn't seem to matter whether substitutions are involved or not. (I had the biggest problem with imported environment variables.) ++Brandon -- Brandon S. Allbery, comp.sources.misc moderator and one admin of ncoast PA UN*X uunet!hal.cwru.edu!ncoast!allbery ncoast!allbery@hal.cwru.edu ncoast is registering as "ncoast.org" -- watch for the official announcement! Send comp.sources.misc submissions to comp-sources-misc@.