X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=tools%2Fmake-functions;h=d5f0a71262750a62a743314678c6159f9431b35a;hp=356d7a6174a1d233e0c88168695ccdd1709d9a99;hb=949c20d97f6b348701515049b042eff326ae4017;hpb=601f8347ccb1e9c5e3f250ff26d4097ecd698875 diff --git a/tools/make-functions b/tools/make-functions index 356d7a6174..d5f0a71262 100644 --- a/tools/make-functions +++ b/tools/make-functions @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2011 IPFire Team # +# Copyright (C) 2007-2016 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -68,15 +68,21 @@ configure_target() { fi case "${target_arch}" in + x86_64) + BUILDTARGET="${target_arch}-unknown-linux-gnu" + CROSSTARGET="${target_arch}-cross-linux-gnu" + CFLAGS_ARCH="-m64 -mtune=generic" + ;; + i586) BUILDTARGET="${target_arch}-pc-linux-gnu" - CROSSTARGET="${BUILD_ARCH}-cross-linux-gnu" + CROSSTARGET="${target_arch}-cross-linux-gnu" CFLAGS_ARCH="-march=i586 -mtune=generic -fomit-frame-pointer" ;; armv5tel) BUILDTARGET="${target_arch}-unknown-linux-gnueabi" - CROSSTARGET="${BUILD_ARCH}-cross-linux-gnueabi" + CROSSTARGET="${target_arch}-cross-linux-gnueabi" CFLAGS_ARCH="-march=armv5te -mfloat-abi=soft -fomit-frame-pointer" MACHINE_TYPE="arm" ;; @@ -103,7 +109,7 @@ configure_target() { MACHINE="${TARGET_ARCH}" CFLAGS="-O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC" - CFLAGS="${CFLAGS} -fstack-protector-all --param=ssp-buffer-size=4 ${CFLAGS_ARCH}" + CFLAGS="${CFLAGS} -fstack-protector-strong --param=ssp-buffer-size=4 ${CFLAGS_ARCH}" CXXFLAGS="${CFLAGS}" } @@ -112,7 +118,7 @@ configure_target_guess() { x86_64|i686|i586) echo "i586" ;; - armv7*|armv6*|armv5*) + aarch64|armv7*|armv6*|armv5*) echo "armv5tel" ;; *) @@ -355,7 +361,7 @@ qemu_is_required() { fi case "${BUILD_ARCH},${target_arch}" in - x86_64,arm*|i?86,arm*) + x86_64,arm*|i?86,arm*|i?86,x86_64) return 0 ;; *) @@ -370,6 +376,15 @@ qemu_install_helper() { return 0 fi + if [ ! -e /proc/sys/fs/binfmt_misc/status ]; then + exiterror "binfmt_misc not mounted. QEMU_TARGET_HELPER not useable." + fi + + if [ ! $(cat /proc/sys/fs/binfmt_misc/status) = 'enabled' ]; then + exiterror "binfmt_misc not enabled. QEMU_TARGET_HELPER not useable." + fi + + if [ -z "${QEMU_TARGET_HELPER}" ]; then exiterror "QEMU_TARGET_HELPER not set" fi @@ -407,12 +422,17 @@ qemu_find_target_helper_name() { arm*) magic="7f454c4601010100000000000000000002002800" ;; + x86_64) + magic="7f454c4602010100000000000000000002003e00" + ;; esac [ -z "${magic}" ] && return 1 local file for file in /proc/sys/fs/binfmt_misc/*; do + # skip write only register entry + [ $(basename "${file}") = "register" ] && continue # Search for the file with the correct magic value. grep -qE "^magic ${magic}$" "${file}" || continue @@ -450,8 +470,8 @@ entershell() { NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ CCACHE_DIR=/usr/src/ccache \ - CCACHE_COMPRESS=1 \ - CCACHE_COMPILERCHECK="none" \ + CCACHE_COMPRESS="${CCACHE_COMPRESS}" \ + CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \ KVER=$KVER \ BUILDTARGET="$BUILDTARGET" \ CROSSTARGET="${CROSSTARGET}" \ @@ -573,8 +593,9 @@ lfsmake2() { CONFIG_ROOT=$CONFIG_ROOT \ NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \ - CCACHE_COMPILERCHECK="none" \ + CCACHE_DIR=/usr/src/ccache \ + CCACHE_COMPRESS="${CCACHE_COMPRESS}" \ + CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \ KVER=$KVER MAKETUNING=$MAKETUNING \ BUILDTARGET="$BUILDTARGET" \ CROSSTARGET="${CROSSTARGET}" \ @@ -614,8 +635,9 @@ ipfiremake() { NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \ SYSTEM_RELEASE="$SYSTEM_RELEASE" \ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \ - CCACHE_COMPILERCHECK="none" \ + CCACHE_DIR=/usr/src/ccache \ + CCACHE_COMPRESS="${CCACHE_COMPRESS}" \ + CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \ KVER=$KVER MAKETUNING=$MAKETUNING \ BUILDTARGET="$BUILDTARGET" \ CROSSTARGET="${CROSSTARGET}" \ @@ -653,8 +675,9 @@ ipfiredist() { CONFIG_ROOT=$CONFIG_ROOT \ NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \ - CCACHE_COMPILERCHECK="none" \ + CCACHE_DIR=/usr/src/ccache \ + CCACHE_COMPRESS="${CCACHE_COMPRESS}" \ + CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \ KVER=$KVER \ BUILDTARGET="$BUILDTARGET" \ CROSSTARGET="${CROSSTARGET}" \ @@ -738,4 +761,19 @@ update_langs() { $BASEDIR/tools/check_strings.pl it > $BASEDIR/doc/language_issues.it $BASEDIR/tools/check_langs.sh > $BASEDIR/doc/language_missings beautify message DONE + + echo -ne "Updating language lists..." + update_language_list ${BASEDIR}/src/installer/po + update_language_list ${BASEDIR}/src/setup/po + beautify message DONE +} + +update_language_list() { + local path="${1}" + + local lang + for lang in ${path}/*.po; do + lang="$(basename "${lang}")" + echo "${lang%*.po}" + done | sort -u > "${path}/LINGUAS" }