--- eclass/toolchain-funcs.eclass.orig 2014-01-17 04:01:16.000000000 +0000 +++ eclass/toolchain-funcs.eclass 2014-03-30 23:24:57.000000000 +0100 @@ -353,6 +353,13 @@ return ${ret} } +# @FUNCTION: tc-has-unsigned-char +# @USAGE: [toolchain prefix] +# @DESCRIPTION: +# See if the toolchain's char type is unsigned. +tc-has-unsigned-char() { + $(tc-getCC "$@") ${CFLAGS} -dM -E - < /dev/null | grep -Fxq "#define __CHAR_UNSIGNED__ 1" +} # Parse information from CBUILD/CHOST/CTARGET rather than # use external variables from the profile. --- dev-util/cmake/cmake-2.8.12.2.ebuild.orig 2014-03-25 09:31:15.000000000 +0000 +++ dev-util/cmake/cmake-2.8.12.2.ebuild 2014-03-30 23:16:34.000000000 +0100 @@ -65,6 +65,7 @@ "${FILESDIR}"/${PN}-2.8.12.1-FindImageMagick.patch "${FILESDIR}"/${PN}-2.8.12.1-FindFreetype.patch "${FILESDIR}"/${PN}-2.8.12.2-hppa-bootstrap.patch + "${FILESDIR}"/${PN}-2.8.12.2-no-cross-docs.patch ) cmake_src_bootstrap() { @@ -83,10 +84,8 @@ sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die fi - tc-export CC CXX LD - # bootstrap script isn't exactly /bin/sh compatible - ${CONFIG_SHELL:-sh} ./bootstrap \ + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ --prefix="${T}/cmakestrap/" \ ${par_arg} \ || die "Bootstrap failed" @@ -153,6 +152,16 @@ $(cmake-utils_use_build ncurses CursesDialog) ) + if tc-is-cross-compiler ; then + mycmakeargs+=(-DKWSYS_LFS_WORKS=1) + + if tc-has-unsigned-char ; then + mycmakeargs+=(-DKWSYS_CHAR_IS_SIGNED=0) + else + mycmakeargs+=(-DKWSYS_CHAR_IS_SIGNED=1) + fi + fi + if use qt4 || use qt5 ; then mycmakeargs+=( -DBUILD_QtDialog=ON