tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bmake bug with expanding pattern macro replacements



On Sat, Apr 25, 2020 at 02:44:00PM +0200, Joerg Schilling wrote:
> Hi,
> 
> I discovered that bmake is silently changing the statement:
> 
> 	FOO= $(BAR:%foo=hallo)
> 
> into:
> 
> 	FOO= $(BAR:%foo=%hallo)
> 
> and this prevents it from being useful and it is in conflict with the accepted 
> POSIX behavior:
> 
> 	https://www.austingroupbugs.net/view.php?id=519#c1206
> 
> BTW: POSIX also requires make to support the -p option and this is missing from 
> bmake.
> 
 
The fix for this broke wip/openhexagon.

--
MODULES=		SSVUtils-c8190f843ab5bdfcff99e92aec7421c413c887e3  \
			SSVEntitySystem-8123beabe3bc8ffe91cb94e6ba061254f3bba18b  \
			SSVJsonCpp-a45c64c418dc0b1fab1eec52fa70b6a14308c635  \
			SSVUtilsJson-95836250e3a9b65883f22991190e652a455121c1  \
			SSVStart-112229f184f5e4cf88c71fe67b4588806d290f71  \
			SSVMenuSystem-03d32b26b2880a35d5daa1ad7ab6199a4d19c742  \
			SSVLuaWrapper-ca905bddae86358182cf85eff2d0220ccdd785d0  \
			SSVOpenHexagonAssets-1d125de695be2e74c9f2ad3198e8b5b29911d010  \
			SSVOpenHexagon-2.0-preview

CONFIGURE_DIRS+=        ${MODULES:NSSVOpenHexagon*:C/-.*//:=extlibs/%} .

target:
	@echo ${CONFIGURE_DIRS}

--

Old "make target" would print:
extlibs/SSVUtils extlibs/SSVEntitySystem extlibs/SSVJsonCpp extlibs/SSVUtilsJson extlibs/SSVStart extlibs/SSVMenuSystem extlibs/SSVLuaWrapper .

Now:
SSVUtilsextlibs/% SSVEntitySystemextlibs/% SSVJsonCppextlibs/% SSVUtilsJsonextlibs/% SSVStartextlibs/% SSVMenuSystemextlibs/% SSVLuaWrapperextlibs/% .



I cargo culted it to
-CONFIGURE_DIRS+=        ${MODULES:NSSVOpenHexagon*:C/-.*//:=extlibs/%} 
+CONFIGURE_DIRS+=        ${MODULES:NSSVOpenHexagon*:C/-.*//:%=extlibs/%}

Is this the expected fix?


Home | Main Index | Thread Index | Old Index