On Friday 24 of August 2012 17:20:08 David C. Rankin wrote:
On 08/24/2012 10:11 AM, David C. Rankin wrote:
As with the other person who originally posted http://trinity-devel.pearsoncomputing.net/?0::6608, the change is apparently necessary so that correct *directory* information is provided for the build. You must be exporting some path somewhere in your build such that telling make to use the correct directory information with '$^' results in double-path information in your build. I don't know. It is either broken on your end or on my end. I'm not using any exports to build, just the code from GIT. Building just from GIT without altering the environment requires the patch I submitted.
I'll test the patch and report back. Looking closely at what my patch does and what your patch does, I appears that they both accomplish the same thing regarding the path information from 2 different directions:
AC_PATH_PROGS(MOC_QT3, [moc-tqt], no, [$QT3_PREFIX:$PATH])
You seem to be providing the ':$PATH' information explicitly, while:
'$^' is a list of all the prerequisites of the rule, including the names of the directories in which they were found.
What I don't know is which is the 'most correct' way to do it. After testing, if your works for my build, I'm happy just pushing yours. Will report back.
The code that is in the GIT expects, that MOC_QT3 directs to moc-tqt. In this case is: $(MOC_QT3) moc $^ -o $@
expanded to: moc-tqt moc _input_file_ -o _output_file_
In your build environment probably MOC_QT3 directs to moc-qt3 == is expanded to: moc-qt3 moc _input_file_ -o _output_file_
And this leads to FTBFS for you. Therefore your patch which remove "moc" solves problem in your build environment. But for others is expanded to: moc-tqt _input_file_ -o _output_file_
And this leads to FTBFS for others. My patch tries to change your build environment == to set MOC_QT3 to moc-tqt instead of moc-qt3.
Slavek --