summaryrefslogtreecommitdiffstats
path: root/rules/libjpeg.make
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2010-03-19 16:11:40 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2010-03-19 16:11:40 +0100
commitf2cfc7abde87062da376e030069e2665a9bba6e7 (patch)
tree88988ae7abf2ee3024bd61fbb5b11ea840697e13 /rules/libjpeg.make
parent0e1c59dfe2fdd1cfb7d00848ceb753cfc1c9929f (diff)
downloadptxdist-f2cfc7abde87062da376e030069e2665a9bba6e7.tar.gz
ptxdist-f2cfc7abde87062da376e030069e2665a9bba6e7.tar.xz
[ptxd_make_xpkg_pkg] fix 32 bit strip on 64 bit host issue
The strip command we're calling may be a 32 bit executable which runs on a 64 bit distribution. It used inside a fakeroot environment. Fakeroot works with the LD_PRELOAD trick, but the fakeroot shared lib is usually only available in 64 bits. Because the 32 bit strip cannot use the 64 bit fakeroot.so it runs ouside of the fakeroot environment. Fakeroot uses a device:inode key to track the files fakerooted. The strip utility creates a temporary file (which gets a new inode) and writes the stripped binary into it. Then if calls rename() to atomically switch the temporary file to the original one. The inode of the original file gets freed. Fakeroot doesn't notice that. If a link for a library is created later on, in the same fakeroot environemnt, it may get the inode of the deleted file. Fakeroot doesn't like that. So we create a hard link of the the original file, so that the inode stays the same and fakeroot is happy :) Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'rules/libjpeg.make')
0 files changed, 0 insertions, 0 deletions