OK.
On 12/24/2018 8:54 AM, Jeremie Courreges-Anglas wrote:
> As reported by Landry,
>
> < landry_> Error: /usr/obj/ports/boost_1_66_0/fake-sparc64/usr/local/lib/libboost_locale-mt.a does not exist
> < landry_> Error: /usr/obj/ports/boost_1_66_0/fake-sparc64/usr/local/lib/libboost_locale-mt.so.9.0 does not exist
> < landry_> fallout from otto's work ?
> < landry_> - Boost.Locale needs either iconv or ICU library to be built.
> < landry_> - iconv (libc) : no (cached)
> < landry_> - iconv (separate) : no (cached)
> < landry_> - icu : no (cached)
> < landry_> - icu (lib64) : no (cached)
> < landry_> faster bulks \o/
> < landry_> strange because the log still says - locale : building
>
> (Same failure on macppc.)
>
> ICU detection for Boost.Locale fails and libboost_locale.so isn't built.
> The breakage is due (at least) to char16_t now being used in the public
> icu headers. This is not supported by base-gcc, and supported by
> ports-gcc with -std=c++11 or newer.
>
> The diff below:
> - restores the printing of compile commands, "-d+2", lost in the update
> to boost-1.65.1. It's hard to debug anything without this.
> - adds -std=gnu++11 to CXXFLAGS on archs using ports-gcc (which defaults
> tp gnu++98)
> - force the build to respect PORTS_PATH, so that g++ from ports-gcc is
> used instead of g++ from base
>
> This fixes boost for me on sparc64, landry has put it earlier in sparc64
> and macppc bulks.
>
> The last hunk is unrelated but puts sparc64 in line with other archs,
> where no -mcpu/-march flags are used by default. I'm not sure -mcpu=v7
> is meaningful and can do harm here, but better safe than sorry.
>
> No REVISION bump since boost hasn't built on ports-gcc archs since the
> last bump, and clang builds shouldn't be affected. I can add a bump if
> people prefer, though.
>
> ok?
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/boost/Makefile,v
> retrieving revision 1.76
> diff -u -p -r1.76 Makefile
> --- Makefile 13 Dec 2018 19:52:46 -0000 1.76
> +++ Makefile 24 Dec 2018 13:39:01 -0000
> @@ -97,6 +97,7 @@ BUILD_PACKAGES= ${MULTI_PACKAGES:N-md}
> TOOLSET= clang
> .else
> TOOLSET= gcc
> +CXXFLAGS+= -std=gnu++11
> .endif
>
> MAKE_ENV= GCC="${CC}" GXX="${CXX}"
> @@ -105,6 +106,7 @@ BJAM_CONFIG= -sICU_PATH=${LOCALBASE} \
> -sBZIP2_INCLUDE=${LOCALBASE}/include \
> -sBZIP2_LIBPATH=${LOCALBASE}/lib \
> -q \
> + -d+2 \
> -j${MAKE_JOBS} \
> --layout=tagged \
> pch=off \
> @@ -157,6 +159,7 @@ do-configure:
> # b2 doesn't seem to respect python parameter, we need to run twice with
> # separate python environments
> do-build:
> + export ${MAKE_ENV}; \
> cd ${WRKSRC} && chmod -R a+x ./ && \
> /bin/sh ./bootstrap.sh ${BOOTSTRAP} ${PY2_BOOTSTRAP} && \
> ./b2 ${BJAM_CONFIG} python=${MODPY_DEFAULT_VERSION_2} && \
> Index: patches/patch-tools_build_src_tools_gcc_jam
> ===================================================================
> RCS file: /cvs/ports/devel/boost/patches/patch-tools_build_src_tools_gcc_jam,v
> retrieving revision 1.5
> diff -u -p -r1.5 patch-tools_build_src_tools_gcc_jam
> --- patches/patch-tools_build_src_tools_gcc_jam 31 Jan 2018 21:54:49 -0000 1.5
> +++ patches/patch-tools_build_src_tools_gcc_jam 24 Dec 2018 13:39:01 -0000
> @@ -41,3 +41,12 @@ Index: tools/build/src/tools/gcc.jam
> }
>
> ###
> +@@ -1354,7 +1355,7 @@ cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ;
> + ##
> + cpu-flags gcc OPTIONS : x86 : atom : -march=atom ;
> + # Sparc
> +-cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 : default ;
> ++cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 ;
> + cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ;
> + cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ;
> + cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ;
>
No comments:
Post a Comment