[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: findutils on interix
Re: findutils on interix
Thu, 28 Oct 2010 16:59:00 +0200
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:18.104.22.168) Gecko/20100913 Lightning/1.0b3pre Thunderbird/3.1.3
On 10/28/2010 04:16 PM, Eric Blake wrote:
> That's exactly what gnulib is - a library of source code workarounds for
> broken platform functions. Are you interested in porting your
> libsuacomp fixes into gnulib, so that more GNU programs can support
> Interix out of the box?
(i'll take findutils out of the CC on the next message, and continue (if we
continue) on gnulib only ;))
yeah, right. it would be really cool to see this all merged into gnulib.
see some slight problems (i don't know if we can manage to get around them...).
briefly describe what i'm doing, and you can decide on your own whether that
somehow into gnulib (as i have not enough knowledge on how gnulib is
suacomp tries to "fix" functions from the SUA libc by overriding them. this
the static case to define the symbol and make suacomp link in before the libc.
shared library case, this is a little more complicated (i'll use fork() as
*) libc.so provides both fork() and _fork().
*) fork() calls _fork().
*) fork() is a weak external, which resolves to the suacomp _fork() if it is
*) suacomp uses dlopen/dlsym to route to the real functions and modify/fix
suacomp is linked in before libc, by installing a libc.a and libc.so file to
(so better don't install suacomp in /usr ;) ), which are ld linker scripts,
suacomp before libc in all cases.
the only use case i designed all this for, is gentoo prefix (which ought to not
into /usr, etc.). i think you heard of it? the initial purpose was to fix
cpu problems with make, python, etc. however it grew a little further, so it
own poll() (select() based).
thinking of gnulib, i can see a lot of potential problems, starting fex, that
modules are copied into the packages, rather than gnulib beeing an installed
that is linked against (is this true always?).
in gentoo prefix (gentoo main too? idk) there is a "gnulib" ebuild, which
library of gnulib to fix some system deficiencies, but IIRC it's static only.
rather like suacomp to be static wherever possible to ease bugfixing, upgrades,
phew. i'm done ;) hope you didn't fall asleep somewhere on the way ;p
now, do you see any chance to merge the two concepts of gnulib and suacomp (or
there any need to merge concepts?)?
regards, and thanks for the proposal!
>> this is IMHO the best solution, as it takes the responsibility from
>> findutils to work around existing OS bugs,
> Agreed - that is the approach that most GNU projects take - isolate the
> platform bugs into wrapper function fixes, so that the rest of the
> project can assume sane POSIX semantics.