Apache OpenOffice (AOO) Bugzilla – Issue 61170
dmake macro TMD is not working correctly
Last modified: 2013-08-07 15:34:52 UTC
I accidentally found that the TMD macro is not set correctly if the current dir is changed to a full part or a path that contains spaces. E.g.: - - - snip - - - SHELL*:=/bin/sh SHELLFLAGS*:=-ce all .SETDIR=/cygdrive/d/temp : +echo "PWD:$(PWD):" +echo "MAKEDIR:$(MAKEDIR):" +echo "TMD:$(TMD):" - - - snip - - - or - - - snip - - - SHELL*:=/bin/sh SHELLFLAGS*:=-ce all ".SETDIR=test dir" : +echo "PWD:$(PWD):" +echo "MAKEDIR:$(MAKEDIR):" +echo "TMD:$(TMD):" - - - snip - - - test with: $ dmake.exe -r
Created attachment 33565 [details] Patch for dmake/
Committed to dmake43p1. Testcase is pending ...
Committed testcase and micro optimization to dmake43p01. TMD was also verified to work when dmake is build as a native w32 binary.
ause: Please verify!
Regression testing by Steve found an inconsistency. The old $(TMD) results always had a trailing slash / after .. but no slash after real directory names. The current implementation never has a trailing slash (this breaks the main dmake bootstrap makefile dmake/makefile.mk) but also points out a problem: You cannot use $(TMD)/somefile as this results in the absolute path /somefile if $(PWD)=$(MAKEDIR). Always adding a slash if $(TMD)!="" is an option but not consistent with the path representation in PWD or MAKEDIR. Solution: Set TMD=. if $(PWD)=$(MAKEDIR).
Created attachment 33829 [details] Patch for dmake/
Committed to dmake43p01. @shay: Can you please verify?
Yep, works for me. I tried using dmake to (re)build itself (which is what was originally failing) and now it works fine. I've also tried out a few other perl related things (perl itself, plus several CPAN modules) and they're all building without error.
.