fix modules_install via NFS
authorSam Ravnborg <sam@ravnborg.org>
Wed, 7 Jan 2009 19:52:43 +0000 (20:52 +0100)
committerSam Ravnborg <sam@ravnborg.org>
Wed, 7 Jan 2009 20:44:20 +0000 (21:44 +0100)
commit8b249b6856f16f09b0e5b79ce5f4d435e439b9d6
treed7915dd672c03ff04faef8fc50b741cef01f1a86
parent8d1a0a13edecfdcb47fee3238ed4a2af2a2867f9
fix modules_install via NFS

Rafael reported:

I get the following error from 'make modules_install' on my test boxes:

  HOSTCC  firmware/ihex2fw
/home/rafael/src/linux-2.6/firmware/ihex2fw.c:268: fatal error: opening dependency file firmware/.ihex2fw.d: Read-only file system
compilation terminated.
make[3]: *** [firmware/ihex2fw] Error 1
make[2]: *** [_modinst_post] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2

where the configuration is that the kernel is compiled on a build box
with 'make O=<destdir> -j5' and then <destdir> is mounted over NFS read-only by
each test box (full path to this directory is the same on the build box and on
the test boxes).  Then, I cd into <destdir>, run 'make modules_install' and get
the error above.

The issue turns out to be that we when we install firmware pick
up the list of firmware blobs from firmware/Makefile.
And this triggers the Makefile rules to update ihex2fw.

There were two solutions for this issue:
1) Move the list of firmware blobs to a separate file
2) Avoid ihex2fw rebuild by moving it to scripts

As I seriously beleive that the list of firmware blobs should be
done in a fundamental different way solution 2) was selected.

Reported-and-tested-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: David Woodhouse <dwmw2@infradead.org>
firmware/.gitignore
firmware/Makefile
scripts/.gitignore
scripts/Makefile
scripts/ihex2fw.c [moved from firmware/ihex2fw.c with 100% similarity]