Greetings, I'm working on updating Hugs for the Debian GNU/Linux system, and have run into the following problem. With Debian, a package installs its binaries into a temporary directory (known as DESTDIR in Debian Makefiles) and then builds an archive. When the package is installed, it unpacks that archive into the real directory structure.
Now I've altered parts of the hugs makefiles to use DESTDIR, so that they install into the correct subdirectories for later packing (and I've attached a patch for that), but I run into the following problem: the program ffihugs is expecting to use the prelude already installed on the system. That is fine when installing from upstream, but since Debian uses this temporary directory, the new Prelude is not installed at this point in the installation process, and so ffihugs dies like this: ---------- /bin/cp ../include/GreenCard.h /home/ijones/usr/src/hugs/hugs98-Nov2002/debian/tmp/hugs/usr/share/hugs98/include /bin/cp HsFFI.h /home/ijones/usr/src/hugs/hugs98-Nov2002/debian/tmp/hugs/usr/share/hugs98/include ./ffihugs -N +G -W +L"../lib/exts/Storable_aux.c" HugsStorable runhugs: Error occurred Reading file "/usr/share/hugs98/lib/Prelude.hs": ERROR "/usr/share/hugs98/lib/Prelude.hs" - Prelude does not define standard type "Int8" make[1]: *** [install_libexts_ffi] Error 1 make[1]: Leaving directory `/home/ijones/usr/src/hugs/hugs98-Nov2002/src' make: *** [debian/binary-arch.stamp] Error 2 debuild: fatal error at line 456: dpkg-buildpackage failed! ---------- Is there a way you or I can alter the build system so ffihugs looks at the right place at the right time? (It looks at $DESTDIR during installation and in the correct place afterward). peace, isaac
destDirDiff
Description: Binary data
