I've been spinning my wheels because of a stale payload.
In the fallback directory, the payload file depends on the ../{../}*/payload.elf file. If you change that to ../../payload.lzma.elf to retry, it won't get the new file if payload is newer than payload.lzma.elf.
It seems like there are several possible fixes, but the one I like is changing buildtarget to remove the payload* files from normal, fallback, etc. The problem is that it doesn't look like buildtarget knows about those directories.
Is there a better way?
Thanks, Myles
On Fri, Nov 02, 2007 at 12:18:33PM -0600, Myles Watson wrote:
I've been spinning my wheels because of a stale payload.
In the fallback directory, the payload file depends on the ../{../}*/payload.elf file. If you change that to ../../payload.lzma.elf to retry, it won't get the new file if payload is newer than payload.lzma.elf.
It seems like there are several possible fixes, but the one I like is changing buildtarget to remove the payload* files from normal, fallback, etc. The problem is that it doesn't look like buildtarget knows about those directories.
Is there a better way?
If I understand you right, you want to change something in the code and then rebuild an image? If so, I recommend to _always_ 'rm -rf BUILDDIR' and re-do the "./buildtarget foo/bar" etc.
That's the safest thing to do, you can then be sure that no old stuff is still left around and being incorrectly re-used. Yes, it's not really elegant or fast, but it's the one thing that works for sure.
HTH, Uwe.
On Fri, Nov 02, 2007 at 12:18:33PM -0600, Myles Watson wrote:
I've been spinning my wheels because of a stale payload.
In the fallback directory, the payload file depends on the ../{../}*/payload.elf file. If you change that to
../../payload.lzma.elf to
retry, it won't get the new file if payload is newer than
payload.lzma.elf.
It seems like there are several possible fixes, but the one I like is changing buildtarget to remove the payload* files from normal, fallback, etc. The problem is that it doesn't look like buildtarget knows about
those
directories.
Is there a better way?
If I understand you right, you want to change something in the code and then rebuild an image? If so, I recommend to _always_ 'rm -rf BUILDDIR' and re-do the "./buildtarget foo/bar" etc.
Not just a change in the code, sometimes just a different payload (ADLO vs. FILO), but it's the same dependency issue.
Given that you recommend _always_ removing the BUILDDIR, I think the best thing to do is to put the 'rm -rf BUILDDIR' into buildtarget. There's no reason to make it two steps. It makes sense that when you run buildtarget that it takes care of the details to make it build.
That's the safest thing to do, you can then be sure that no old stuff is still left around and being incorrectly re-used. Yes, it's not really elegant or fast, but it's the one thing that works for sure.
Is that on the wake?
Thanks, Myles
On 11/5/07, Uwe Hermann uwe@hermann-uwe.de wrote:
If I understand you right, you want to change something in the code and then rebuild an image? If so, I recommend to _always_ 'rm -rf BUILDDIR' and re-do the "./buildtarget foo/bar" etc.
no, this is a sign that our makefiles are broken and need fixing.
I will try to look at this bug tonight.
ron
On 11/2/07, Myles Watson myles@pel.cs.byu.edu wrote:
I've been spinning my wheels because of a stale payload.
In the fallback directory, the payload file depends on the ../{../}*/payload.elf file. If you change that to ../../payload.lzma.elf to retry, it won't get the new file if payload is newer than payload.lzma.elf.
Right. This is a bug in the makefile design.
Will try to fix.
ron