s6 and friends 2.0

From: toki clover <tokiclover_at_gmail.com>
Date: Sat, 27 Dec 2014 21:35:30 +0100

Hello Laurent and the list,

First, thanks Laurent for updating s6 as it is a promising project although
I do not use it right now for reasons discussed in a Gentoo Forum thread.

I've noticed your 2.0 release campaign. So, I tried to install the new
goodies.

Two notes before my actual try of the software will follow as both took me
unecessary times to just be able to install.

First, a minor note: Why do you keep those two extra digits in the release
version? I guess MAJOR.MINOR.PATCH are enough most of the times and
then sometimes a tiny fix would require a SUB-PATCH digit, honestly, one
can just delay a release a few days, to make sure everything is alright, and
increment the patch digit.
This a minor note which required me to pay extra attention to the release
version string!

Second, why is there this long list of configure directory:
--
exec_prefix='$prefix'
dynlibdir='$prefix/lib'
libexecdir='$exec_prefix/libexec'
bindir='$exec_prefix/bin'
sbindir='$exec_prefix/sbin'
libdir='$prefix/usr/lib/'$package
includedir='$prefix/usr/include'
sysdeps='$prefix/usr/lib/skalibs/sysdeps'
--
which doe not even respect ABI string when I end up with this:
--
 * Contents of dev-libs/skalibs-2.0.0.0:
/usr
/usr/lib
/usr/lib/libskarnet.so -> libskarnet.so.2
/usr/lib/libskarnet.so.2 -> libskarnet.so.2.0
/usr/lib/libskarnet.so.2.0 -> libskarnet.so.2.0.0
/usr/lib/libskarnet.so.2.0.0 -> libskarnet.so.2.0.0.0
/usr/lib/libskarnet.so.2.0.0.0
/usr/share
/usr/share/doc
/usr/share/doc/skalibs-2.0.0.0
/usr/share/doc/skalibs-2.0.0.0/AUTHORS.bz2
/usr/share/doc/skalibs-2.0.0.0/README.bz2
/usr/share/leapsecs.dat
/usr/usr
/usr/usr/include
/usr/usr/include/skalibs
/usr/usr/include/skalibs/alloc.h
/usr/usr/include/skalibs/allreadwrite.h
/usr/usr/include/skalibs/avlnode.h
/usr/usr/include/skalibs/avltree.h
/usr/usr/include/skalibs/avltreen.h
/usr/usr/include/skalibs/biguint.h
/usr/usr/include/skalibs/bitarray.h
/usr/usr/include/skalibs/bufalloc.h
/usr/usr/include/skalibs/buffer.h
/usr/usr/include/skalibs/bytestr.h
/usr/usr/include/skalibs/cbuffer.h
/usr/usr/include/skalibs/cdb.h
/usr/usr/include/skalibs/cdb_make.h
/usr/usr/include/skalibs/config.h
/usr/usr/include/skalibs/datastruct.h
/usr/usr/include/skalibs/direntry.h
/usr/usr/include/skalibs/diuint.h
/usr/usr/include/skalibs/diuint32.h
/usr/usr/include/skalibs/djbtime.h
/usr/usr/include/skalibs/djbunix.h
/usr/usr/include/skalibs/env.h
/usr/usr/include/skalibs/envalloc.h
/usr/usr/include/skalibs/environ.h
/usr/usr/include/skalibs/error.h
/usr/usr/include/skalibs/fmtscan.h
/usr/usr/include/skalibs/functypes.h
/usr/usr/include/skalibs/gccattributes.h
/usr/usr/include/skalibs/genalloc.h
/usr/usr/include/skalibs/genset.h
/usr/usr/include/skalibs/gensetdyn.h
/usr/usr/include/skalibs/genwrite.h
/usr/usr/include/skalibs/getpeereid.h
/usr/usr/include/skalibs/gidstuff.h
/usr/usr/include/skalibs/iobuffer.h
/usr/usr/include/skalibs/iopause.h
/usr/usr/include/skalibs/ip46.h
/usr/usr/include/skalibs/kolbak.h
/usr/usr/include/skalibs/lolstdio.h
/usr/usr/include/skalibs/md5.h
/usr/usr/include/skalibs/mininetstring.h
/usr/usr/include/skalibs/netstring.h
/usr/usr/include/skalibs/nonposix.h
/usr/usr/include/skalibs/nsig.h
/usr/usr/include/skalibs/random.h
/usr/usr/include/skalibs/randomegd.h
/usr/usr/include/skalibs/rc4.h
/usr/usr/include/skalibs/rrandom.h
/usr/usr/include/skalibs/segfault.h
/usr/usr/include/skalibs/selfpipe.h
/usr/usr/include/skalibs/setgroups.h
/usr/usr/include/skalibs/sgetopt.h
/usr/usr/include/skalibs/sha1.h
/usr/usr/include/skalibs/sha256.h
/usr/usr/include/skalibs/sig.h
/usr/usr/include/skalibs/siovec.h
/usr/usr/include/skalibs/skaclient.h
/usr/usr/include/skalibs/skalibs.h
/usr/usr/include/skalibs/skamisc.h
/usr/usr/include/skalibs/socket.h
/usr/usr/include/skalibs/stdcrypto.h
/usr/usr/include/skalibs/stddjb.h
/usr/usr/include/skalibs/stralloc.h
/usr/usr/include/skalibs/strerr.h
/usr/usr/include/skalibs/strerr2.h
/usr/usr/include/skalibs/surf.h
/usr/usr/include/skalibs/sysdeps.h
/usr/usr/include/skalibs/tai.h
/usr/usr/include/skalibs/uint.h
/usr/usr/include/skalibs/uint16.h
/usr/usr/include/skalibs/uint32.h
/usr/usr/include/skalibs/uint64.h
/usr/usr/include/skalibs/ulong.h
/usr/usr/include/skalibs/unirandom.h
/usr/usr/include/skalibs/unirandomdev.h
/usr/usr/include/skalibs/unirandomegd.h
/usr/usr/include/skalibs/unisurf.h
/usr/usr/include/skalibs/unix-timed.h
/usr/usr/include/skalibs/unix-transactional.h
/usr/usr/include/skalibs/unixmessage.h
/usr/usr/include/skalibs/unixonacid.h
/usr/usr/include/skalibs/ushort.h
/usr/usr/include/skalibs/webipc.h
/usr/usr/lib
/usr/usr/lib/skalibs
/usr/usr/lib/skalibs/sysdeps
/usr/usr/lib/skalibs/sysdeps/rt.lib
/usr/usr/lib/skalibs/sysdeps/socket.lib
/usr/usr/lib/skalibs/sysdeps/sysclock.lib
/usr/usr/lib/skalibs/sysdeps/sysdeps
/usr/usr/lib/skalibs/sysdeps/sysdeps.h
/usr/usr/lib/skalibs/sysdeps/tainnow.lib
/usr/usr/lib/skalibs/sysdeps/target
/usr/usr/lib/skalibs/sysdeps/util.lib
--
Notice the pita with the double `usr'.
Actually the ABI should be respected with this:
--
/usr/lib64
/usr/lib64/libskarnet.so -> libskarnet.so.2
/usr/lib64/libskarnet.so.2 -> libskarnet.so.2.0
/usr/lib64/libskarnet.so.2.0 -> libskarnet.so.2.0.0
/usr/lib64/libskarnet.so.2.0.0 -> libskarnet.so.2.0.0.0
/usr/lib64/libskarnet.so.2.0.0.0
/usr/lib64/skalibs
/usr/lib64/skalibs/sysdeps
/usr/lib64/skalibs/sysdeps/rt.lib
/usr/lib64/skalibs/sysdeps/socket.lib
/usr/lib64/skalibs/sysdeps/sysclock.lib
/usr/lib64/skalibs/sysdeps/sysdeps
/usr/lib64/skalibs/sysdeps/sysdeps.h
/usr/lib64/skalibs/sysdeps/tainnow.lib
/usr/lib64/skalibs/sysdeps/target
/usr/lib64/skalibs/sysdeps/util.lib
--
Even with configure command line, I still got the double usr mess because
of the way the configure script hardcode a few paths.
--
./configure --prefix=/usr --build=x86_64-pc-linux-gnu
--host=x86_64-pc-linux-gnu --mandir=/usr/share/man
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
--localstatedir=/var/lib --dynlibdir=/usr/lib64 --libdir=/usr/lib64/skalibs
--datadir=/usr/share --sysdepdir=/usr/lib64/skalibs/sysdeps --disable-static
--
So, I've tried to make a little patch quickly which I could send to
upstream...
but it ended being big.
But it did not work quite well, I had to dig into the build script a little
further.
I will try later to make full patch witt simple settings like the following:
--
prefix=
libdir='$prefix/lib'
includedir='$prefix/include'
sysdeps='$libdir/$package/sysdeps'
--
I was quite to see that despite the configure switches, many path were
still hardcoded which defeated the purpose of putting those switches in
place.
I ended up needing too much time to dig into the packes
(skalibs/execline/s6).
First, I wanted to help simplify the build scripts, well at least provide
something
workable... And then issue after issue pilled up. So, I'm stopping here and
will
respond to this mail with a what I have and comments for each patch.
I did not touch s6 main package because I invested too much time in the
others...
too bad, I will not be able to test your new release.
Thanks.
-- 
Error 404: gentoo user <0123456789> was not found
Received on Sat Dec 27 2014 - 20:35:30 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:18 UTC