Date: Thu, 11 Dec 2008 03:32:12 +0530 From: wahjava.ml@gmail.com (Ashish Shukla =?utf-8?B?4KSG4KS24KWA4KS3IA==?= =?utf-8?B?4KS24KWB4KSV4KWN4KSy?=) To: Dmitry Marakasov <amdmi3@amdmi3.ru> Cc: FreeBSD Ports Mailing List <freebsd-ports@freebsd.org> Subject: Re: [PROPOSAL] Ports using SCM repositories as source instead of distfiles Message-ID: <87zlj3heor.fsf@chateau.d.lf> In-Reply-To: <20081210181125.GA86341@hades.panopticon> (Dmitry Marakasov's message of "Wed, 10 Dec 2008 21:11:25 %2B0300") References: <87fxkxjywk.fsf@chateau.d.lf> <20081209143052.GA29817@hades.panopticon> <873agxjn1x.fsf@chateau.d.lf> <20081209181354.GB29817@hades.panopticon> <87tz9di38u.fsf@chateau.d.lf> <20081209222042.GC29817@hades.panopticon> <8763lsi10m.fsf@chateau.d.lf> <20081210181125.GA86341@hades.panopticon>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-=-= Content-Type: text/plain; charset=utf-8 Dmitry Marakasov writes: > * Ashish Shukla आशीष शुक्ल (wahjava.ml@gmail.com) 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 --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAklAPGkACgkQHy+EEHYuXnRDBwCg0ySHngPoGFctQT2oGApU1w6h J2sAoJZ5TR+5Au5ovb9RJ0lzDQ/Y/fNJ =KANp -----END PGP SIGNATURE----- --=-=-=--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87zlj3heor.fsf>