[csw-maintainers] v2-build64only

Igor Galić igalic at opencsw.org
Wed Mar 21 14:13:04 CET 2012



----- Original Message -----
> Hi Igor,
> 
> Am 20.03.2012 um 22:05 schrieb Igor Galić:
> >>> Please do not use the v2-build64only branch as I already merged
> >>> and
> >>> enhanced the functionality in the main v2 branch. Do you still
> >>> see
> >>> this behaviour in v2 with BUILD64_ONLY? If yes I would consider
> >>> this
> >>> a bug as things other than in the MERGE_DIRS should be excluded
> >>> for
> >>> extra ISAs *only* if they are provided by the default ISA.
> >> 
> >> Trying this now, also removing SKIP_MODULATIONS
> >> 
> >> Will report back when it built.
> > 
> > BUILD64_ONLY = 1 indeed builds 64bit only, SKIP_MODULATIIONS is not
> > needed. However it completely ignores all files that lie outside of
> > $bindir, $libdir and $libexec, unless I add them via
> > MERGE_EXTRA_DIRS
> 
> This should be fixed now with r17487.
> 
> > Now the problem with this is that it completely ignores this part:
> > 
> >  CLASSES = none cswpreserveconf
> 
> Please do not tinker with CLASSES, this is always set correctly
> automatically.
> (and it is named SPKG_CLASSES btw.)
> 
> In this next block there are numerous problems:
> 
> >  PROTOTYPE_MODIFIERS = config data
> 
> I suggest using PROTOYPE_MODIFIERS += config and blocking them
> together with
> the specifications. This way it is easy and straight forward to
> add/remove
> whole blocks. I updated the documentation to make this clearer:
>   https://sourceforge.net/apps/trac/gar/wiki/Prototypes
> 
> >  PROTOTYPE_FILES_config = $(sysconfdir)
> 
> This is a regex and now matches the directory only, otherwise use
>   PROTOTYPE_FILES_config += $(sysconfdir)/.*
> 
> IIRC you can only use direct files here, like
>   PRESERVECONF = $(sysconfdir)/myconf
> 
> >  PROTOTYPE_CLASS_config = cswpreserveconf
> 
> This is automatically set when using PRESERVECONF.
> 
> >  PROTOTYPE_USER_config = nobody
> >  PROTOTYPE_GROUP_config = $(shell id -ng nobody)
> 
> Why don't you use just "nobody" ?

Because nobody's group isn't always nobody, sometimes it's nogroup

> >  PROTOTYPE_FILES_data = $(datadir)
> 
> Same regex as above. $(datadir) is /opt/csw/share btw.
>   https://sourceforge.net/apps/trac/gar/browser/csw/mgar/gar/v2/gar.conf.mk#L132

ACK!

> >  PROTOTYPE_USER_data = nobody
> >  PROTOTYPE_GROUP_data = $(shell id -ng nobody)
> > 
> > So the files are a) class none, and b) belong to root:bin
> 
> After all I suggest changing this to
> 
>   PRESERVECONF += $(sysconfdir)/myconf

This won't work, since the files are.. 3209 at a rough estimate.
So I'll just.. *not* preserve the config.
 
>   PROTOTYPE_MODIFIERS += data
>   PROTOTYPE_FILES_data += $(datarootdir)/.*
>   PROTOTYPE_USER_data = nobody
>   PROTOYPE_GROUP_data = nobody

Even so, /etc/opt/csw/trafficserver and /var/opt/csw/.*?/?trafficserver 
do not belong to nobody (according to work/solaris10-i386/build-global/prototype)

But it's great progress, because it does the right thing now!
The righter thing. ;)

> Best regards
> 
>   -- Dago


So long,

i


More information about the maintainers mailing list