[uClibc] Autoconfiscating uClibc
Carl Miller
chaz at energoncube.net
Sun May 30 00:13:27 UTC 2004
> > I was wondering how much effort would take to add
> > autoconf support to the uClibc build infrastructure.
> >
> > I don't think uClibc itself would benefit much from
> > this change. The kernel KBuild infrastructure is up
> > to the task and very convenient for the user.
>
> We definitely don't want to use autoconf. But...
>
> > However, autoconfiscation would make it easy
> > to integrate uClibc into GCC's uberbaum build
> > machinery in place of newlib.
> >
> > Building an uClibc based toolchain in a single step
> > without a complex external script would be a very
> > desiderable feature.
>
> Agreed, and it is something I've thought about off and on. Adding a
> "configure" script should be easy enough to do. So the bulk of the
> work would probably be making the uClibc build system respect VPATH.
>
> > If somebody wants to do the uClibc related work,
> > I'll do the required changes in GCC's top-level
> > configure and automake and push patches into
> > GCC's repository.
>
> Regretably, neither Erik or I have had any significant amount of time
> for uClibc development in what seems like months. And the only patch
> I've seen (maybe a year ago) towards integrating uClibc in gcc's
> build system added a configure script that actually copied the entire
> uClibc source tree to the build dir.
Manuel, are you maybe talking about this patch (attached)?
If so, I don't think you took a very close look at it. I most definitely
do not copy the entire source tree to the build dir. I make a parallel
set of directories, but do not populate them with source files. In this
respect, it works very much like a regular autoconf configure script.
The one thing I do copy wholesale is the include directory. That's
because I found it easiest to have everything that's an installable
target resident in the build directory (admittedly a bit of laziness on
my part; with some more work, I could probably work around that issue).
For a C library, the entire set of header files are themselves installable
targets.
I wonder, if that was your worst objection to this patch, why did you not
raise it earlier? I've never heard that particular objection before. I
have heard two other objections, which are well-founded:
1) This patch is against the 0.9.23 release, which is quite old.
Yes, it is. 0.9.23 was the most current release when I began working
on this, and I haven't bothered to update the patch to more recent
releases or to the current CVS. That's largely due to the fact that I
got very little positive feedback about this patch, and got the
impression that even if I did rework it to apply cleanly to current
sources, nobody would use it. If that impression is wrong, let me know,
and I think I could be fairly easily convinced to freshen it up.
2) It uses Perl. Several people were trying to build uClibc in very
minimal environments in which Perl was not available.
I hadn't thought of that when I created this patch, but that's a very
good point. I've since put a little thought into how I could do the
same job without Perl, but haven't taken any action on it yet. Largely
the same reasons as in #1 above, but also I think it might turn out to
be significantly more work than addressing issue #1, and I have limited
time to devote to this.
But that it's lame because it copies the entire source tree? I agree,
that would be lame, but the allegation is provably false. I could see an
objection to copying the entire set of header files, as I thought that was
less than perfectly clean myself, but that's a "lameness infraction" an
order of magnitude or two smaller than the one charged. And given some
positive feedback, I might be encouraged to address that issue as well.
------Carl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: uclibc-makefiles.patch.gz
Type: application/octet-stream
Size: 18464 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/uclibc/attachments/20040529/f9a6349f/attachment.obj
More information about the uClibc
mailing list