You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Nataly Naumova <na...@gmail.com> on 2006/06/16 10:57:55 UTC

Re: [drlvm] apr question (linux)

On 6/16/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
> Why exactly is APR slightly massaged and then specially built?
>
> Why can't we just do the regular ./configure -> make sequence to build it?

Hi Geir,

here's the reason of not building *extra* things by their own build.
Initially there was a concept not to use own build for every *extra*
things, such as APR or  CLASSLIB in order to support different
compilers and configurations. For APR it was not trivial to build it
in different modes (debug/release, different compilers etc.), that was
required for building DRLVM. For CLASSLIB it was done primary for the
same reasons and it was really easy to specify a compiler and a mode
to build.
So we have written our own builds for such *extra* things (as a part
of drlvm build). But in the APR case it was impossible to produce the
same building as APR did on linux. So the compromise decision was done
to invoke the APR configure, and then to build using drlvm build. Such
decision may be considerred as a hack, but it really simplifies the
building for different configurations (debug/release), different
compilers, etc.
But you can try to build APR using its own build (make-based), but
please be sure that it will be able to build in debug/release
configurations and it will be very good if it will be possible to
build by different compilers (msvc/icl/gcc/icc), not only by default
compilers.

Thanks.
-- 
Nataly Naumova,
Intel Middleware Products Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [drlvm] apr question (linux)

Posted by Geir Magnusson Jr <ge...@pobox.com>.

Nataly Naumova wrote:
> On 6/16/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>> Why exactly is APR slightly massaged and then specially built?
>>
>> Why can't we just do the regular ./configure -> make sequence to build
>> it?
> 
> Hi Geir,
> 
> here's the reason of not building *extra* things by their own build.
> Initially there was a concept not to use own build for every *extra*
> things, such as APR or  CLASSLIB in order to support different
> compilers and configurations. For APR it was not trivial to build it
> in different modes (debug/release, different compilers etc.), that was
> required for building DRLVM. For CLASSLIB it was done primary for the
> same reasons and it was really easy to specify a compiler and a mode
> to build.
> So we have written our own builds for such *extra* things (as a part
> of drlvm build). But in the APR case it was impossible to produce the
> same building as APR did on linux. So the compromise decision was done
> to invoke the APR configure, and then to build using drlvm build. Such
> decision may be considerred as a hack, but it really simplifies the
> building for different configurations (debug/release), different
> compilers, etc.
> But you can try to build APR using its own build (make-based), but
> please be sure that it will be able to build in debug/release
> configurations and it will be very good if it will be possible to
> build by different compilers (msvc/icl/gcc/icc), not only by default
> compilers.

Thanks.  That's a perfectly reasonable explanation :) with the
unpleasant side effect of putting a lot of work on my shoulders :)

I'm all for supporting both issues.  I would guess that debug/release is
easy (or should be)  but the compiler thing may be another story.  I
don't know.

What I'd like to do is reduce the amount of maintenance that we have to
do, so that as the depdencies evolve and change, we don't have to worry
as much.  It's also easier when we have some issue to not start off a
problem with "when using our custom build of your project...."

I also think that we can engage w/ the APR community (for example) to
offer tweaks that we need that don't hurt anyone else...

geir


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [drlvm] apr question (linux)

Posted by Geir Magnusson Jr <ge...@pobox.com>.
I realize my response wasn't clear, but I was advocating that we switch
to APR-defined make strategy...

I re-read my response, and it was clear to me I was thinking it, but
didn't state explicitly.

geir

Garrett Rooney wrote:
> On 6/16/06, Nataly Naumova <na...@gmail.com> wrote:
> 
>> here's the reason of not building *extra* things by their own build.
>> Initially there was a concept not to use own build for every *extra*
>> things, such as APR or  CLASSLIB in order to support different
>> compilers and configurations. For APR it was not trivial to build it
>> in different modes (debug/release, different compilers etc.), that was
>> required for building DRLVM. For CLASSLIB it was done primary for the
>> same reasons and it was really easy to specify a compiler and a mode
>> to build.
>> So we have written our own builds for such *extra* things (as a part
>> of drlvm build). But in the APR case it was impossible to produce the
>> same building as APR did on linux. So the compromise decision was done
>> to invoke the APR configure, and then to build using drlvm build. Such
>> decision may be considerred as a hack, but it really simplifies the
>> building for different configurations (debug/release), different
>> compilers, etc.
>> But you can try to build APR using its own build (make-based), but
>> please be sure that it will be able to build in debug/release
>> configurations and it will be very good if it will be possible to
>> build by different compilers (msvc/icl/gcc/icc), not only by default
>> compilers.
> 
> Uhh, you can't just switch compilers without rerunning configure...
> Or, well, you could, but it seems like a screamingly bad idea to me.
> Who knows what subtle but important little thing could change.  That
> said, you should just be able to set the CC env var to the new
> compiler, rerun configure, and there you go.
> 
> Also, the APR make based build won't work for visual c++, it's just
> not built for it.  Patches to make it work more than welcome, but it's
> not there yet.  There are patches out there to make it work for Mingw
> on windows, but nobody has finished applying them because they're a
> bit invasive.
> 
> That said, I still think hardcoding a specific version of APR into
> your built system like this is a horrible idea.  As it stands any time
> you submit a bug report to APR the first response will likely be "ok,
> now build it the right way and see if it happens then".
> 
> -garrett
> 
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> 
> 
> 

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [drlvm] apr question (linux)

Posted by Garrett Rooney <ro...@electricjellyfish.net>.
On 6/16/06, Nataly Naumova <na...@gmail.com> wrote:

> here's the reason of not building *extra* things by their own build.
> Initially there was a concept not to use own build for every *extra*
> things, such as APR or  CLASSLIB in order to support different
> compilers and configurations. For APR it was not trivial to build it
> in different modes (debug/release, different compilers etc.), that was
> required for building DRLVM. For CLASSLIB it was done primary for the
> same reasons and it was really easy to specify a compiler and a mode
> to build.
> So we have written our own builds for such *extra* things (as a part
> of drlvm build). But in the APR case it was impossible to produce the
> same building as APR did on linux. So the compromise decision was done
> to invoke the APR configure, and then to build using drlvm build. Such
> decision may be considerred as a hack, but it really simplifies the
> building for different configurations (debug/release), different
> compilers, etc.
> But you can try to build APR using its own build (make-based), but
> please be sure that it will be able to build in debug/release
> configurations and it will be very good if it will be possible to
> build by different compilers (msvc/icl/gcc/icc), not only by default
> compilers.

Uhh, you can't just switch compilers without rerunning configure...
Or, well, you could, but it seems like a screamingly bad idea to me.
Who knows what subtle but important little thing could change.  That
said, you should just be able to set the CC env var to the new
compiler, rerun configure, and there you go.

Also, the APR make based build won't work for visual c++, it's just
not built for it.  Patches to make it work more than welcome, but it's
not there yet.  There are patches out there to make it work for Mingw
on windows, but nobody has finished applying them because they're a
bit invasive.

That said, I still think hardcoding a specific version of APR into
your built system like this is a horrible idea.  As it stands any time
you submit a bug report to APR the first response will likely be "ok,
now build it the right way and see if it happens then".

-garrett

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org