From: Andi K. <an...@fi...> - 2009-11-06 22:48:08
|
> $(abspath $(FOO)) only exists in 3.81+, along with some of the other > built-in functions IIRC. Replacing $(abspath ) with $(shell readlink > -f "$(FOO)" 2>/dev/null) is possible, but there are some associated > issues with that solution: > > 1. They must have readlink > 1. It may fail if their shell is toast (in this case, they're kind of SoL). > 2. It may fail if their's a bug (that's my job to fix). > > It's bad practice to use $(shell ) because it also consumes a lot more > resources allocating a separate shell, and all that badness associated > with it. With := it's probably not too bad to call the shell. > > If $(patsubst ) is toast, then I'll have to replace it with $(shell ) > call to awk or perl. As a datapoint the kernel uses patsubst and afaik it builds with 3.80 > I really do appreciate the feedback. As I stated before though, 3.80 > is where we need to draw the line in the sand, because 3.79 is a > buggy, ancient PoS, so RHEL 4 users and other users of distros around > that era will _need_ to compile 3.80, or 3.81 and install it on their > target systems. At least for me that works, but I don't speak for RHEL4 users. -Andi -- ak...@li... -- Speaking for myself only. |