#!/bin/bash
-hvpatch()
+hvconfig_pre()
{
- # Manually applying patches if specified
- if [ -n "${GCC_PATCHES}" ]; then
- for p in ${GCC_PATCHES}; do
- apply_patch ${PACKAGE}-${p}.patch ${PACKAGE}
- done
- fi
-
- case "${HVL_TARGET}" in
- "x86")
- apply_patch ${PACKAGE}-specs-1.patch ${PACKAGE}
- ;;
- "x86_64")
- apply_patch ${PACKAGE}-pure64_specs-1.patch ${PACKAGE}
- ;;
- esac
-}
+ export AR=ar
+ export LDFLAGS="-Wl,-rpath,/cross-tools/lib"
-configure_pre()
-{
# Common options for passes 1 & 2
- CONFIGURE_OPTS="${CONFIGURE_OPTS} \
+ CONFIGURE_OPTS+=" \
--build=${CLFS_HOST} \
--host=${CLFS_HOST} \
--target=${CLFS_TARGET} \
--with-local-prefix=/tools \
--disable-nls \
--with-mpfr=/cross-tools \
- --with-gmp=/cross-tools"
+ --with-gmp=/cross-tools \
+ --with-ppl=/cross-tools \
+ --with-cloog=/cross-tools \
+ --enable-cloog-backend=isl \
+ --disable-multilib"
- if [ -n "${GCC_PASS1}" ]; then
- CONFIGURE_OPTS="${CONFIGURE_OPTS} \
+ if [ "x${HVLABEL}" = "x${GCC}-pass1" ]; then
+ CONFIGURE_OPTS+=" \
--disable-shared \
--without-headers \
--with-newlib \
--disable-threads \
--enable-languages=c"
else
- CONFIGURE_OPTS="${CONFIGURE_OPTS} \
+ CONFIGURE_OPTS+=" \
--enable-shared \
--enable-languages=c,c++ \
--enable-__cxa_atexit \
--enable-threads=posix"
fi
- case "${HVL_TARGET}" in
- *)
- CONFIGURE_OPTS="${CONFIGURE_OPTS} --with-ppl=/cross-tools \
- --with-cloog=/cross-tools \
- --disable-multilib"
- ;;
- esac
-
cd ${LFS_TMP}/${PACKAGE}
# Change the StartFile Spec to point to the correct library location:
sed -e "s@\(^CROSS_SYSTEM_HEADER_DIR =\).*@\1 /tools/include@g" \
-i gcc/Makefile.in
- if [ -n "${GCC_PASS1}" ]; then
+ if [ "x${HVLABEL}" = "x${GCC}-pass1" ]; then
# We will create a dummy limits.h so the build will not use the one
# provided by the host distro:
touch /tools/include/limits.h
fi
}
+hvconfig_post()
+{
+ unset AR
+ unset LDFLAGS
+}
+
hvbuild()
{
- if [ -n "${GCC_PASS1}" ]; then
+ if [ "x${HVLABEL}" = "x${GCC}-pass1" ]; then
${HVMAKE} all-gcc all-target-libgcc
${HVMAKE} install-gcc install-target-libgcc
else