[SUGGEST] Reform eclipse and eclipse related ports

Roman Neuhauser neuhauser at sigpipe.cz
Mon Oct 17 18:04:51 PDT 2005


# swhetzel at gmail.com / 2005-10-17 17:05:18 -0500:
> On 10/17/05, Roman Neuhauser <neuhauser at sigpipe.cz> wrote:
> >    Wes said: "I have to resort to 'make search'" which presumably means
> >    he'd prefer to just ls /usr/ports/$emacs_category; while 'make
> >    search' is a bearable interface (FMPOV), you can't beat a ls.
> >
> >    Hey, what about materialized virtual categories? A bunch of
> >    symlinks, and everyone's happy. Or is that too much for CVS?
>
> It would probably be too much for CVS to handle, instead someone could
> modify bsd.port.mk to create the virtual category directories and then
> symbolicly link the ports into these categories.
> 
> The following could be added to bsd.port.mk
> 
> virtualport:
> .for CATEGORY in ${CATEGORIES}
> .if not exist ${PORTSDIR}/${CATEGORY}
>     mkdir ${PORTSDIR}/${CATEGORY}
> .endif
> .if not exist ${PORTSDIR}/${CATEGORY}/${PORTNAME}
>    ln -s ${.CURDIR} ${PORTSDIR}/${CATEGORY}/${PORTNAME}
> .endif
> .endfor
> 
> which would add the link for a specific port.  The we would need to
> add a virtualports target (bsd.subdir.mk?) that would decend thru all
> the ports creating all the symbolic links (similar to the "make
> readmes" target used in /usr/ports/ ).
> 
> Also there would need to be another target that would remove all the
> symbolic links, that way you could re-create them without worrying
> about removed symbolic links pointing to non-existant ports.
> 
> NOTE: Non of this code has been tested. If you want this feature, work
> on improving the code and submitting it as a patch to the PR database
> for Ports Managers to accept/reject.

    I'm putting this in my .plan, and will eventually work on it unless
    someone points me at a past discussion that showed there were major
    technical obstacles to this.

    I think I could manage inside /usr/ports/Mk:

    * create an update-vcats that works in all of portsdir,
      portsdir/category and portsdir/category/port
    * maintain a list of names of virtual categories in a make variable
    * create symlinks in the virtual categories this port lists in
      CATEGORIES
    * delete symlinks to this port from other virtual categories if any
    
    But I'm quite concerned about the changes needed to make things like
    the package building cluster or make index aware of this. It looks
    like it would have quite far reaching consequences.  Kris?

-- 
How many Vietnam vets does it take to screw in a light bulb?
You don't know, man.  You don't KNOW.
Cause you weren't THERE.             http://bash.org/?255991


More information about the freebsd-ports mailing list