Old ports bugs analyzis

Arseny Nasokin eirnym at gmail.com
Tue Mar 30 20:25:46 UTC 2010

  With pleasure

On 30 Mar 2010, at 23:14, Alexey Shuvaev <shuvaev at physik.uni-wuerzburg.de 
 > wrote:

> On Tue, Mar 30, 2010 at 01:05:39AM +0400, Eir Nym wrote:
>> I work on creating system for system and ports autobuilder with  
>> custom
>> settings for my FreeBSD machines. I know about many programs, which  
>> do
>> same, but I don't like strange depends, which are not controlled by
>> OPTIONS and some another
>> I've analyse ports tree and want to say about.
>> There're lot problems with ports to create per-port PRs
>> manually.Common types of problems are listed here:
>> 0) Main part of problems in tons of ports, which has hidden options
>> (WITH & WITHOUT checking), but not using OPTIONS for them.
>> 1) There many libraries added with BUILD&RUN dependencies, not as  
>> 2) Some ports has only BUILD depends to libraries, but links them  
>> dynamicly.
>> 3) All(?) samba33 slaves define dependency as "samba33", and make
>> warning me about master target redefinition when do something on  
>> them.
>> 4) many ports define dependencies as
>> "${.CURDIR}/../../<category>/<dep-port-name>"
>> 5) And some adds trailing slash.
>> I want fix these problems, but I have no much time to fix several
>> thousands of ports. This work (include PR sending) needs about is 1-2
>> month per 8-10 hours a day.
> If the problems are so common, maybe there are not so many problems
> at all? :)

Yes, it's features! Let's all bugs will be features! Do you remember  
The Bat mail client, which doesn't want support standarts at all?

Cases 0, 2, 3 and 4 are bugs.
0: I want to control options via OPTIONS, not by knowledge about  
Makefile syntax with much time.
2: build port, install, remove lib and get this port unusable.
3: where program should find package orign "samba33"?
4: when reading Makefile, it hard to explain where port is. And when  
ports tree has changed place in system, it's not good idea to rebuild  

2, 5 are questions at most.
2: libraries should be LIB_DEPENDS

>> I put my analysys in several work files:
>> I've removed ${PORTSDIR} from paths for readability in index files.
>> http://freebsd.eroese.org/bsd.local.mk - different describe target
>> (clean and simple)
>> http://freebsd.eroese.org/portInfo.py - py-IDX maker. old, but  
>> enough version.
>> http://freebsd.eroese.org/tag  - portsnap(8) tag
>> http://freebsd.eroese.org/IDX - special maked IDX
>> http://freebsd.eroese.org/py-IDX - human readable format of IDX, see
>> py program for comments about types.
> I have tried to understand what is in these files but have not managed
> it completely.
> The file py-IDX lists 2 of my ports, devel/slglade and
> x11-toolkits/gtkdatabox as being fixed:
> fix devel/slglade
> fix x11-toolkits/gtkdatabox
> Could you elaborate more what was 'fixed' in these 2 examples?
I've striped out debug output from top.

I've updated files py-IDX and python program.

And also put some documentation in file http://freebsd.eroese.org/docs

> Thanks,
> Alexey.

More information about the freebsd-ports mailing list