harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gregory Shimansky <gshiman...@apache.org>
Subject Re: [build] use.libstdc++6=true default?
Date Sat, 07 Feb 2009 11:28:11 GMT
On 7 February 2009 Mark Hindess wrote:
> Perhaps we should make use.libstdc++6=true the default?  Or maybe even try
> a little harder to make a better guess at the default with a patch like
> the one appended?

Hmm it is not this easy. The library libstdc++ belongs to gcc, and its 
location depends on gcc version (gcc may be even installed in a non-standard 
location). Guessing it is not easy without configure script. Here's what I 
get when I execute "locate libstdc++.so.6" on Gentoo Linux:

/usr/lib64/gcc/x86_64-pc-linux-gnu/3.4.6/32/libstdc++.so.6
/usr/lib64/gcc/x86_64-pc-linux-gnu/3.4.6/32/libstdc++.so.6.0.3
/usr/lib64/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6
/usr/lib64/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6.0.3
/usr/lib64/gcc/x86_64-pc-linux-gnu/4.1.2/32/libstdc++.so.6
/usr/lib64/gcc/x86_64-pc-linux-gnu/4.1.2/32/libstdc++.so.6.0.8
/usr/lib64/gcc/x86_64-pc-linux-gnu/4.1.2/libstdc++.so.6
/usr/lib64/gcc/x86_64-pc-linux-gnu/4.1.2/libstdc++.so.6.0.8

The naming of path like "x86_64-pc-linux-gnu" is very platform dependent as 
well.

Someone might even want to use Intel compiler to build Harmony, I recall icc 
used to work at some point of time and produced quite an optimized code.

> Index: working_classlib/make/properties.xml
> ===================================================================
> --- working_classlib/make/properties.xml        (revision 741852)
> +++ working_classlib/make/properties.xml        (working copy)
> @@ -313,6 +313,12 @@
>      </condition>
>      <property name="hy.portlib.stubs" value="false" />
>
> +    <condition property="use.libstdc++6" value="true">
> +        <and>
> +            <isset property="is.linux" />
> +            <available file="/usr/lib/libstdc++.so.6" type="file" />
> +        </and>
> +    </condition>
>      <condition property="hy.libstdc++.suffix" value=".libstdc++6">
>          <isset property="use.libstdc++6"/>
>      </condition>
> Index: common_resources/make/properties.xml
> ===================================================================
> --- common_resources/make/properties.xml        (revision 741852)
> +++ common_resources/make/properties.xml        (working copy)
> @@ -69,6 +69,12 @@
>      <property name="hy.test.timeout" value="900000" />
>      <property name="hy.test.vmargs" value="" />
>
> +    <condition property="use.libstdc++6" value="true">
> +        <and>
> +            <isset property="is.linux" />
> +            <available file="/usr/lib/libstdc++.so.6" type="file" />
> +        </and>
> +    </condition>
>      <condition property="hy.platform.suffix" value=".libstdc++6">
>          <isset property="use.libstdc++6"/>
>      </condition>



-- 
Gregory

Mime
View raw message