[PROPOSAL] Ports using SCM repositories as source instead of distfiles

Garrett Cooper yanefbsd at gmail.com
Thu Dec 11 01:01:47 PST 2008


On Thu, Dec 11, 2008 at 12:23 AM, Dmitry Marakasov <amdmi3 at amdmi3.ru> wrote:
> * Ashish Shukla आशीष शुक्ल (wahjava.ml at gmail.com) wrote:
>
>> This is what Debian and Gentoo does. Remember we don't have to pass
>> DESTDIR variable to 'make -C /usr/ports/editors/emacs-cvs' instead it
>> will be passed to the 'gmake' process invoked by port's Makefile. If we
>
> I understand. But you're implying that there is Makefile and it supports
> DESTDIR. As I understand, you're referring to autotools-based ports.
> Remember, those are less than 1/4 of the collection.
>
>> pass DESTDIR to port's commandline, then it will install all
>> dependencies in that chroot which is not desired, we simply care about
>> the files installed by that port. Since there're already 20,000 ports we
>> can't do it by default, so we've to hack some knob (like
>> REQUIRES_DYNAMIC_INSTALLATION) which if defined will enable this
>> behaviour.
>
> So if I understand correctly, you're proposing to only use dynamic
> plist generation for the ports that support it without modification,
> i.e. autotools-based?
>
> My opinion is that we should support the feature for all ports, or don't
> support it at all. Only getting rid of ~5k pkg-plists is not a huge
> accomplishment considering the mess it causes and I doubt it's worth
> the work on adding the feature to port.mk and then rebuilding and
> testing all affected ports. Being able to forget about pkg-plists
> once and forever however would be a huge accomplishment and if that's
> possible it should be done sooner or later.
>
> --
> Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
> amdmi3 at amdmi3.ru  ..:  jabber: amdmi3 at jabber.ru    http://www.amdmi3.ru

Agreed. I've come across many ports where folks haven't written
Makefiles properly and it results in problems .

Most cases you can make the following assumption: if a port can be
cross-compiled, it can most likely be installed under another
destination directory. The converse is not necessarily true.

These are issues which should be documented in a Makefile FAQ for
everyone, and this should be noted whenever an issue is found so that
folks can be educated and things like this can be fixed.

-Garrett


More information about the freebsd-ports mailing list