341 lines
15 KiB
Bash
341 lines
15 KiB
Bash
if [ "${TRACE}" = "1" ] ; then
|
||
exit 0
|
||
fi
|
||
|
||
if [ "${DEBUG}" = "1" ] ; then
|
||
set -x
|
||
fi
|
||
|
||
ARCH=riscv64
|
||
TARGET_VENDOR=unknown
|
||
TARGET_OS=linux
|
||
LIBC=gnu
|
||
ABI=
|
||
# riscv64-unknown-linux-gnu
|
||
GNU_TARGET_NAME=${ARCH}-${TARGET_VENDOR}-${TARGET_OS}-${LIBC}${ABI}
|
||
|
||
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
|
||
PROJECT_DIR=$(realpath "${SCRIPT_DIR}/../..")
|
||
OUTPUT_DIR=${PROJECT_DIR}/output
|
||
DL_DIR=${PROJECT_DIR}/dl
|
||
HOST_DIR=${OUTPUT_DIR}/host
|
||
BUILD_DIR=${OUTPUT_DIR}/build
|
||
TARGET_DIR=${OUTPUT_DIR}/target
|
||
IMAGES_DIR=${OUTPUT_DIR}/images
|
||
STAGING_DIR=${HOST_DIR}/${GNU_TARGET_NAME}/sysroot
|
||
STAGING_SUBDIR=${GNU_TARGET_NAME}/sysroot
|
||
|
||
MAXNUM_CPUS=$(nproc)
|
||
|
||
CROSS_COMPILE=${HOST_DIR}/bin/${GNU_TARGET_NAME}-
|
||
|
||
export HOST_DIR TARGET_DIR STAGING_DIR
|
||
|
||
# FIXME: 我们目前假设 DL_DIR 已经存在, 其创建不作为构建的一部分。
|
||
# 以后获取可以考虑为 download 专门写个脚本来创建 DL_DIR 并下载所需的所有的包。
|
||
|
||
# UPDATE_CONFIG_HOOK
|
||
function update_config_guess_sub() {
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Updating config.sub and config.guess"
|
||
for file in config.guess config.sub; do
|
||
for i in $(find $1 -name $file); do
|
||
cp ${PROJECT_DIR}/support/gnuconfig/$file $i
|
||
done
|
||
done
|
||
}
|
||
|
||
# LIBTOOL_PATCH_HOOK
|
||
function patch_libtool() {
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Patching libtool"
|
||
for i in `find $1 -name ltmain.sh`; do
|
||
ltmain_version=`sed -n '/^[ \t]*VERSION=/{s/^[ \t]*VERSION=//;p;q;}' $i | \
|
||
sed -e 's/\([0-9]*\.[0-9]*\).*/\1/' -e 's/\"//'`;
|
||
ltmain_patchlevel=`sed -n '/^[ \t]*VERSION=/{s/^[ \t]*VERSION=//;p;q;}' $i | \
|
||
sed -e 's/\([0-9]*\.[0-9]*\.*\)\([0-9]*\).*/\2/' -e 's/\"//'`;
|
||
if test ${ltmain_version} = '1.5'; then
|
||
patch -i ${PROJECT_DIR}/support/libtool/buildroot-libtool-v1.5.patch ${i};
|
||
elif test ${ltmain_version} = "2.2"; then
|
||
patch -i ${PROJECT_DIR}/support/libtool/buildroot-libtool-v2.2.patch ${i};
|
||
elif test ${ltmain_version} = "2.4"; then
|
||
if test ${ltmain_patchlevel:-0} -gt 2; then
|
||
patch -i ${PROJECT_DIR}/support/libtool/buildroot-libtool-v2.4.4.patch ${i};
|
||
else
|
||
patch -i ${PROJECT_DIR}/support/libtool/buildroot-libtool-v2.4.patch ${i};
|
||
fi
|
||
elif test ${ltmain_version} = "2.5"; then
|
||
patch -i ${PROJECT_DIR}/support/libtool/buildroot-libtool-v2.4.4.patch ${i};
|
||
fi
|
||
done
|
||
}
|
||
|
||
# Fixing package configuration files when do staging installing.
|
||
# parameter: 1 - the package config file name, e.g., pkg-config, cmake
|
||
function fix_package_config_files_for_staging_install() {
|
||
if [ -n "${1}" ] ; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Fixing package configuration files" ;\
|
||
/usr/bin/sed -i -e "s,${HOST_DIR},@HOST_DIR@,g" \
|
||
-e "s,${OUTPUT_DIR},@BASE_DIR@,g" \
|
||
-e "s,^\(exec_\)\?prefix=.*,\1prefix=@STAGING_DIR@/usr,g" \
|
||
-e "s,-I/usr/,-I@STAGING_DIR@/usr/,g" \
|
||
-e "s,-L/usr/,-L@STAGING_DIR@/usr/,g" \
|
||
-e 's,@STAGING_DIR@,$(dirname $(readlink -e $0))/../..,g' \
|
||
-e 's,@HOST_DIR@,$(dirname $(readlink -e $0))/../../../..,g' \
|
||
-e "s,@BASE_DIR@,${OUTPUT_DIR},g" \
|
||
${STAGING_DIR}/usr/bin/${1} ;
|
||
fi
|
||
}
|
||
|
||
# Fixing libtool files when do staging installing.
|
||
function fix_libtool_files_for_staging_install() {
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Fixing libtool files"
|
||
for la in $(find ${STAGING_DIR}/usr/lib* -name "*.la"); do
|
||
cp -a "${la}" "${la}.fixed" && \
|
||
/usr/bin/sed -i -e "s:${OUTPUT_DIR}:@BASE_DIR@:g" \
|
||
-e "s:${STAGING_DIR}:@STAGING_DIR@:g" \
|
||
-e "s:\(['= ]\)/usr:\\1@STAGING_DIR@/usr:g" \
|
||
-e "s:\(['= ]\)/lib:\\1@STAGING_DIR@/lib:g" \
|
||
-e "s:@STAGING_DIR@:${STAGING_DIR}:g" \
|
||
-e "s:@BASE_DIR@:${OUTPUT_DIR}:g" \
|
||
"${la}.fixed" && \
|
||
if cmp -s "${la}" "${la}.fixed"; then \
|
||
rm -f "${la}.fixed"; \
|
||
else \
|
||
mv "${la}.fixed" "${la}"; \
|
||
fi || exit 1;
|
||
done
|
||
}
|
||
|
||
# Check the specified kernel headers version actually matches the
|
||
# version in the toolchain.
|
||
# toolchain/helpers.mk
|
||
function check_kernel_headers_version() {
|
||
if ! ${PROJECT_DIR}/support/scripts/check-kernel-headers.sh ${1} ${2} ${3} ${4}; then
|
||
exit 1;
|
||
fi
|
||
}
|
||
|
||
# Defined in toolchain/helpers.mk
|
||
function copy_toolchain_lib_root() {
|
||
LIBPATTERN="${1}"
|
||
LIBPATHS=`find ${STAGING_DIR} -name "${LIBPATTERN}" 2>/dev/null`
|
||
for LIBPATH in ${LIBPATHS} ; do
|
||
while true ; do
|
||
LIBNAME=`basename ${LIBPATH}`
|
||
DESTDIR=`echo ${LIBPATH} | sed "s,^${STAGING_DIR},," | xargs dirname`
|
||
mkdir -p ${TARGET_DIR}/${DESTDIR}
|
||
rm -fr ${TARGET_DIR}/${DESTDIR}/${LIBNAME}
|
||
if test -h ${LIBPATH} ; then
|
||
cp -d ${LIBPATH} ${TARGET_DIR}/${DESTDIR}/${LIBNAME}
|
||
OLD_LIBPATH="${LIBPATH}"
|
||
LIBPATH="`readlink -f ${LIBPATH}`"
|
||
if [ "${LIBPATH}" = "" ]; then
|
||
echo "LIBPATH empty after trying to resolve symlink ${OLD_LIBPATH}" 1>&2
|
||
exit 1
|
||
fi
|
||
elif test -f ${LIBPATH}; then
|
||
/usr/bin/install -D -m0755 ${LIBPATH} ${TARGET_DIR}/${DESTDIR}/${LIBNAME}
|
||
break
|
||
else
|
||
exit -1
|
||
fi
|
||
done
|
||
done
|
||
}
|
||
|
||
function kconfig_enable_option() {
|
||
if ! grep -q "^${1}=[my]" ${PKGBUILD_DIR}/.config; then
|
||
/usr/bin/sed -i -e "/^\(# \)\?${1}\>/d" ${PKGBUILD_DIR}/.config && echo "${1}=y" >> ${PKGBUILD_DIR}/.config;
|
||
fi
|
||
}
|
||
|
||
function kconfig_disable_option() {
|
||
/usr/bin/sed -i -e "/^\(# \)\?${1}\>/d" ${PKGBUILD_DIR}/.config && echo "# ${1} is not set" >> ${PKGBUILD_DIR}/.config
|
||
}
|
||
|
||
# ${1}: base directory to search in
|
||
# ${2}: suffix of file (optional)
|
||
# example:
|
||
# cd ${TARGET_DIR};
|
||
# LC_ALL=C find . -not -path './riscv64-unknown-linux-gnu/sysroot/*' \( -type f -o -type l \) -printf '%T@:%i:%#m:%y:%s,%p\n' \
|
||
# | LC_ALL=C sort > ${PKGBUILD_DIR}/.files-list.before
|
||
function pkg_size_before() {
|
||
cd ${1};
|
||
LC_ALL=C find . -not -path "./${STAGING_SUBDIR}/*" \( -type f -o -type l \) -printf '%T@:%i:%#m:%y:%s,%p\n' \
|
||
| LC_ALL=C sort > ${PKGBUILD_DIR}/.files-list${2}.before;
|
||
}
|
||
|
||
# ${1}: base directory to search in
|
||
# ${2}: suffix of file (optional)
|
||
function pkg_size_after() {
|
||
cd ${1}; \
|
||
LC_ALL=C find . -not -path "./${STAGING_SUBDIR}/*" \( -type f -o -type l \) -printf '%T@:%i:%#m:%y:%s,%p\n' \
|
||
| LC_ALL=C sort > ${PKGBUILD_DIR}/.files-list${2}.after
|
||
LC_ALL=C comm -13 \
|
||
${PKGBUILD_DIR}/.files-list${2}.before \
|
||
${PKGBUILD_DIR}/.files-list${2}.after \
|
||
| sed -r -e "s/^[^,]+/${PKGBUILDNAME}/" \
|
||
> ${PKGBUILD_DIR}/.files-list${2}.txt
|
||
rm -f ${PKGBUILD_DIR}/.files-list${2}.before
|
||
rm -f ${PKGBUILD_DIR}/.files-list${2}.after
|
||
}
|
||
|
||
# ${1} step name
|
||
function step_start() {
|
||
printf "%s:%-5.5s:%-20.20s: %s\n" "$(date +%s.%N)" "start" "${1}" "${PKGBUILDNAME}" >>"${BUILD_DIR}/build-time.log"
|
||
if [ "${1}" == "download" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Downloading"
|
||
elif [ "${1}" == "extract" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Extracting"
|
||
elif [ "${1}" == "patch" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Patching"
|
||
elif [ "${1}" == "configure" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Configuring"
|
||
elif [ "${1}" == "build" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Building"
|
||
elif [ "${1}" == "install-host" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Installing to host directory"
|
||
elif [ "${1}" == "install-staging" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Installing to staging directory"
|
||
elif [ "${1}" == "install-target" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Installing to target"
|
||
elif [ "${1}" == "install-image" ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Installing to images directory"
|
||
fi
|
||
|
||
if [ "${1}" == "configure" ]; then
|
||
mkdir -p ${HOST_DIR} ${TARGET_DIR} ${STAGING_DIR} ${IMAGES_DIR}
|
||
pkg_size_before ${TARGET_DIR}
|
||
pkg_size_before ${STAGING_DIR} -staging
|
||
pkg_size_before ${IMAGES_DIR} -images
|
||
pkg_size_before ${HOST_DIR} -host
|
||
fi
|
||
}
|
||
|
||
# ${1} step name
|
||
# ${2} 如果 ${1} 为 "patch", 则可能存在 ${2},用于标识构建类型;目前支持的有效值为
|
||
# "autotool", 其他情况不给出则默认为不适用 autotools,譬如采用 kconfig 的,
|
||
# 如 linux,busybox 等。
|
||
# 对于该分支,如果 ${2} 为空则 ${3} 也必须为空
|
||
# 如果 ${1} 为 "install-staging", 则可能存在 ${2}
|
||
# ${3} 如果 ${1} 为 "patch" 并且 ${2} 为 "autotools",则可以继续指定 ${3} 用于指
|
||
# 定是否需要忽略给 libtool 打补丁,"ignore_libtool_patch" 表示忽略。默认如果
|
||
# 不指明则缺省要给 libtool 打补丁
|
||
function step_end() {
|
||
if [ "${1}" == "patch" ]; then
|
||
# 如果是采用 autotools 方式构建才有可能需要更新 config.guess
|
||
# 以及对 libtool 打补丁。
|
||
# 但也有几种情况是不需要在 patch 阶段对 libtool 打补丁的
|
||
# 一种是 configure 阶段会运行 autoreconf,对该种情况我们会在
|
||
# 运行完 autoreconf 后再对 libtool 打补丁
|
||
# 还有一种情况是明确不需要对 libtool 打补丁的,譬如本身就是在
|
||
# 构建 libtool。
|
||
if [ "${2}" == "autotools" ]; then
|
||
update_config_guess_sub ${PKGBUILD_DIR}
|
||
if [ "${3}" != "ignore_libtool_patch" ]; then
|
||
patch_libtool ${PKGBUILD_DIR}
|
||
fi
|
||
fi
|
||
elif [ "${1}" == "install-host" ]; then
|
||
rm -f -rf ${HOST_DIR}/share/info/dir
|
||
elif [ "${1}" == "install-staging" ]; then
|
||
rm -f -rf ${STAGING_DIR}/share/info/dir
|
||
fix_package_config_files_for_staging_install ${2}
|
||
fix_libtool_files_for_staging_install
|
||
elif [ "${1}" == "install-target" ]; then
|
||
rm -f -rf ${TARGET_DIR}/share/info/dir
|
||
fi
|
||
printf "%s:%-5.5s:%-20.20s: %s\n" "$(date +%s.%N)" "end" "${1}" "${PKGBUILDNAME}" >>"${BUILD_DIR}/build-time.log"
|
||
if [ "${1}" == "install-host" ]; then
|
||
${PROJECT_DIR}/support/scripts/check-host-rpath ${PKGBUILDNAME} ${HOST_DIR} ${OUTPUT_DIR}/per-package
|
||
fi
|
||
# 这里应该有一步 step_check_build_dir,但从 make 的 log 看感觉这里传入的 $(STAGING_DIR)/$(O) 会有问题
|
||
# FIXME,先不加这个 check
|
||
mkdir -p ${PKGBUILD_DIR}
|
||
if [ "${1}" == "download" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_downloaded
|
||
elif [ "${1}" == "extract" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_extracted
|
||
elif [ "${1}" == "patch" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_patched
|
||
elif [ "${1}" == "configure" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_configured
|
||
elif [ "${1}" == "build" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_built
|
||
elif [ "${1}" == "install-host" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_host_installed
|
||
elif [ "${1}" == "install-staging" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_staging_installed
|
||
elif [ "${1}" == "install-target" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_target_installed
|
||
elif [ "${1}" == "install-image" ]; then
|
||
touch ${PKGBUILD_DIR}/.stamp_images_installed
|
||
fi
|
||
}
|
||
|
||
function stamp_downloaded() {
|
||
local STARTED=n
|
||
# PKGSOURCE is MUST to have; PKGSOURCE2 is OPTIONAL
|
||
if [ ! -z "${PKGSOURCE}" ]; then
|
||
for p in ${PKGURL}; do
|
||
f=`basename ${p}`
|
||
if [ ! -e "${DL_DIR}/${PKGSOURCE_DIR}/${f}" ] ; then
|
||
if [ ${STARTED} = "n" ]; then
|
||
step_start download
|
||
STARTED=y
|
||
fi
|
||
mkdir -p ${DL_DIR}/${PKGSOURCE_DIR}
|
||
(cd ${DL_DIR}/${PKGSOURCE_DIR}; wget ${PKGURL})
|
||
if [ $? -ne 0 ]; then
|
||
echo ">>> ${PKGBUILDNAME} ${PKGVERSION} Downloading FAILED!!!"
|
||
exit 1
|
||
fi
|
||
fi
|
||
done
|
||
if [ ${STARTED} = "y" ]; then
|
||
step_end download
|
||
fi
|
||
fi
|
||
if [ "${ONLY_DOWNLOAD}" = "y" ] ; then
|
||
exit 0
|
||
fi
|
||
}
|
||
|
||
function stamp_extracted() {
|
||
step_start extract
|
||
step_end extract
|
||
}
|
||
|
||
# ${1}: see comments for ${2} of step_end
|
||
function stamp_patched() {
|
||
step_start patch
|
||
step_end patch ${1}
|
||
}
|
||
|
||
function stamp_configured() {
|
||
step_start configure
|
||
step_end configure
|
||
}
|
||
|
||
function stamp_built() {
|
||
step_start build
|
||
step_end build
|
||
}
|
||
|
||
function stamp_installed() {
|
||
pkg_size_after ${TARGET_DIR}
|
||
pkg_size_after ${STAGING_DIR} -staging
|
||
pkg_size_after ${IMAGES_DIR} -images
|
||
pkg_size_after ${HOST_DIR} -host
|
||
${PROJECT_DIR}/support/scripts/check-bin-arch -p ${PKGBUILDNAME} -l ${PKGBUILD_DIR}/.files-list.txt -r ${CROSS_COMPILE}readelf -a "RISC-V"
|
||
touch ${PKGBUILD_DIR}/.stamp_installed
|
||
}
|
||
|
||
HOST_MAKE_ENV='GIT_DIR=. PATH="${HOST_DIR}/bin:${HOST_DIR}/sbin:${PATH}" PKG_CONFIG="${HOST_DIR}/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="${HOST_DIR}/lib/pkgconfig:${HOST_DIR}/share/pkgconfig"'
|
||
|
||
HOST_CONFIGURE_OPTS='GIT_DIR=. PATH="${HOST_DIR}/bin:${HOST_DIR}/sbin:${PATH}" PKG_CONFIG="${HOST_DIR}/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="${HOST_DIR}/lib/pkgconfig:${HOST_DIR}/share/pkgconfig" AR="/usr/bin/ar" AS="/usr/bin/as" LD="/usr/bin/ld" NM="/usr/bin/nm" CC="/usr/bin/gcc" GCC="/usr/bin/gcc" CXX="/usr/bin/g++" CPP="/usr/bin/cpp" OBJCOPY="/usr/bin/objcopy" RANLIB="/usr/bin/ranlib" CPPFLAGS="-I${HOST_DIR}/include" CFLAGS="-O2 -I${HOST_DIR}/include" CXXFLAGS="-O2 -I${HOST_DIR}/include" LDFLAGS="-L${HOST_DIR}/lib -Wl,-rpath,${HOST_DIR}/lib" INTLTOOL_PERL=/usr/bin/perl'
|
||
|
||
AUTORECONF_OPTS='GIT_DIR=. PATH="${HOST_DIR}/bin:${HOST_DIR}/sbin:${PATH}" PKG_CONFIG="${HOST_DIR}/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="${HOST_DIR}/lib/pkgconfig:${HOST_DIR}/share/pkgconfig" AR="/usr/bin/ar" AS="/usr/bin/as" LD="/usr/bin/ld" NM="/usr/bin/nm" CC="/usr/bin/gcc" GCC="/usr/bin/gcc" CXX="/usr/bin/g++" CPP="/usr/bin/cpp" OBJCOPY="/usr/bin/objcopy" RANLIB="/usr/bin/ranlib" CPPFLAGS="-I${HOST_DIR}/include" CFLAGS="-O2 -I${HOST_DIR}/include" CXXFLAGS="-O2 -I${HOST_DIR}/include" LDFLAGS="-L${HOST_DIR}/lib -Wl,-rpath,${HOST_DIR}/lib" INTLTOOL_PERL=/usr/bin/perl ACLOCAL="${HOST_DIR}/bin/aclocal" AUTOCONF="${HOST_DIR}/bin/autoconf -I "${STAGING_DIR}/usr/share/aclocal" -I "${HOST_DIR}/share/aclocal"" AUTOHEADER="${HOST_DIR}/bin/autoheader -I "${STAGING_DIR}/usr/share/aclocal" -I "${HOST_DIR}/share/aclocal"" AUTOMAKE="${HOST_DIR}/bin/automake" GTKDOCIZE=/bin/true'
|
||
|
||
TARGET_MAKE_ENV='GIT_DIR=. PATH="${HOST_DIR}/bin:${HOST_DIR}/sbin:${PATH}"'
|
||
|
||
TARGET_CONFIGURE_OPTS='GIT_DIR=. PATH="${HOST_DIR}/bin:${HOST_DIR}/sbin:${PATH}" AR="${CROSS_COMPILE}gcc-ar" AS="${CROSS_COMPILE}as" LD="${CROSS_COMPILE}ld" NM="${CROSS_COMPILE}gcc-nm" CC="${CROSS_COMPILE}gcc" GCC="${CROSS_COMPILE}gcc" CPP="${CROSS_COMPILE}cpp" CXX="${CROSS_COMPILE}g++" FC="${CROSS_COMPILE}gfortran" F77="${CROSS_COMPILE}gfortran" RANLIB="${CROSS_COMPILE}gcc-ranlib" READELF="${CROSS_COMPILE}readelf" STRIP="${CROSS_COMPILE}strip" OBJCOPY="${CROSS_COMPILE}objcopy" OBJDUMP="${CROSS_COMPILE}objdump" AR_FOR_BUILD="/usr/bin/ar" AS_FOR_BUILD="/usr/bin/as" CC_FOR_BUILD="/usr/bin/gcc" GCC_FOR_BUILD="/usr/bin/gcc" CXX_FOR_BUILD="/usr/bin/g++" LD_FOR_BUILD="/usr/bin/ld" CPPFLAGS_FOR_BUILD="-I${HOST_DIR}/include" CFLAGS_FOR_BUILD="-O2 -I${HOST_DIR}/include" CXXFLAGS_FOR_BUILD="-O2 -I${HOST_DIR}/include" LDFLAGS_FOR_BUILD="-L${HOST_DIR}/lib -Wl,-rpath,${HOST_DIR}/lib" FCFLAGS_FOR_BUILD="" DEFAULT_ASSEMBLER="${CROSS_COMPILE}as" DEFAULT_LINKER="${CROSS_COMPILE}ld" CPPFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=1" CXXFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=1" LDFLAGS="" FCFLAGS=" -O2 -g0" FFLAGS=" -O2 -g0" PKG_CONFIG="${HOST_DIR}/bin/pkg-config" STAGING_DIR="${STAGING_DIR}" INTLTOOL_PERL=/usr/bin/perl' |