Dmitry Marakasov writes: > * Ashish Shukla आशीष शुक्ल ([EMAIL PROTECTED]) wrote:
>> > Current DESTDIR implementation uses chroot and obviously requires >> > complete system installed in DESTDIR. Also installing a port will >> > install all dependencies in the chroot as well. >> >> The Debian package building system, also expects the package files in a >> directory named ${packageroot}/debian/${packagename}/ which you can >> install by doing 'make install DESTDIR=debian/${packagename}' in >> ${packageroot} directory (the directory where you've extracted the >> package tarball, similar to the FreeBSD's ${WRKSRC} directory. >> >> So, my idea is to specify "make -C ${WRKSRC} install >> DESTDIR=/var/tmp/${PORTNAME}" >> in the "install" target of port's Makefile, not to be confused with >> upstream package's Makefile. And I think you confused it with passing >> 'DESTDIR' variable to 'make' commandline to start port building >> procedure: > How do you expect all ports to respect DESTDIR in their Makefiles, > while many ports don't even use make? As I've said, that will require > tremendous amount of hacking and is not even possible sometimes. How about adding a variable like REQUIRES_DYNAMIC_INSTALLATION=yes, which will then generate a plist on the basis of "/var/tmp/${PORTNAME}", so now it is the port's responsibility to install all contents to "/var/tmp/${PORTNAME}" either by "make install DESTDIR=..." or by some other way. Having that REQUIRES_DYNAMIC_INSTALLATION also includes a 'post-install' target which will copy all files from /var/tmp/${PORTNAME} to ${PREFIX}. -- Ashish Shukla
pgplWmDn8BjDr.pgp
Description: PGP signature