Merge branch 'vuplus-1.6k' of code.vuplus.com:/opt/repository/openembedded into vuplu...
[vuplus_openembedded] / recipes / gcc / gcc-configure-cross.inc
1 require gcc-configure-common.inc
2
3 USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
4
5 EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
6                       --with-gxx-include-dir=${STAGING_DIR_TARGET}/${target_includedir}/c++ \
7                       --with-sysroot=${STAGING_DIR_TARGET} \
8                       --with-build-sysroot=${STAGING_DIR_TARGET}"
9
10 do_configure_prepend () {
11         export CC="${BUILD_CC}"
12         export AR_FOR_TARGET="${TARGET_SYS}-ar"
13         export AS_FOR_TARGET="${TARGET_SYS}-as"
14         export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
15         export LD_FOR_TARGET="${TARGET_SYS}-ld"
16         export NM_FOR_TARGET="${TARGET_SYS}-nm"
17         export OBJDUMP_FOR_TARGET="${TARGET_SYS}-objdump"
18         export OBJCOPY_FOR_TARGET="${TARGET_SYS}-objcopy"
19         export STRIP_FOR_TARGET="${TARGET_SYS}-strip"
20         export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc ${TARGET_CC_ARCH}"
21 }
22
23 LIBGCCS_VAR = "-lgcc_s"
24 LIBGCCS_VAR_avr32 = ""
25
26 do_stage_append () {
27         for d in info man share/doc share/locale ; do
28                 rm -rf ${CROSS_DIR}/$d
29         done
30
31         # Fix a few include links so cross builds are happier
32         if [ ! -e ${STAGING_INCDIR}/c++ ]; then
33                 mkdir -p ${STAGING_INCDIR}
34                 mkdir -p ${CROSS_DIR}/${TARGET_SYS}/include/c++
35                 ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
36                         ${STAGING_INCDIR}/
37         fi
38
39         # We probably don't need these
40         rmdir ${CROSS_DIR}/include || :
41
42         # We don't really need to keep this around
43         # rm -rf ${CROSS_DIR}/share but leave java there
44         for d in share/man share/info;
45         do
46                 rm -rf ${CROSS_DIR}/$d
47         done
48
49         #fix up libsupc++ and libstdc++ la files
50         for d in lib lib/nof; do
51                 sed -i "s|dependency_libs\s*=\s*.*|dependency_libs='-L${CROSS_DIR}/${TARGET_SYS}/$d ${LIBGCCS_VAR} -lc -lm '|" ${CROSS_DIR}/${TARGET_SYS}/$d/libsupc++.la || true
52                 sed -i "s|dependency_libs\s*=\s*.*|dependency_libs='-L${CROSS_DIR}/${TARGET_SYS}/$d ${LIBGCCS_VAR} -lc -lm '|" ${CROSS_DIR}/${TARGET_SYS}/$d/libstdc++.la || true
53         done
54 }
55