cookutils diff cook @ rev 421
cook, cross, *.conf: improve cross compilation and small clean
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sat May 19 04:47:53 2012 +0200 (2012-05-19) |
parents | 999aed12cf89 |
children | 50cd87593dae |
line diff
1.1 --- a/cook Mon May 14 13:52:55 2012 +0200 1.2 +++ b/cook Sat May 19 04:47:53 2012 +0200 1.3 @@ -17,9 +17,6 @@ 1.4 broken="$CACHE/broken" 1.5 blocked="$CACHE/blocked" 1.6 1.7 -# Old style compatibility 1.8 -SOURCES_REPOSITORY=$SRC 1.9 - 1.10 # 1.11 # Functions 1.12 # 1.13 @@ -319,8 +316,7 @@ 1.14 1.15 # Copy all generic files (locale, pixmaps, .desktop). We use standard paths, 1.16 # so some packages need to copy these files with the receipt and genpkg_rules. 1.17 -copy_generic_files() 1.18 -{ 1.19 +copy_generic_files() { 1.20 # $LOCALE is set in cook.conf 1.21 if [ "$LOCALE" ]; then 1.22 if [ -d "$install/usr/share/locale" ]; then 1.23 @@ -373,8 +369,7 @@ 1.24 # Find and strip : --strip-all (-s) or --strip-debug on static libs as well 1.25 # as removing uneeded files like in Python packages. Cross compiled binaries 1.26 # must be stripped with cross-tools aka $ARCH-slitaz-*-strip 1.27 -strip_package() 1.28 -{ 1.29 +strip_package() { 1.30 case "$ARCH" in 1.31 arm|x86_64) export STRIP=${HOST_SYSTEM}-strip ;; 1.32 *) export STRIP=strip ;; 1.33 @@ -442,9 +437,9 @@ 1.34 echo "cook: $ARCH sysroot: $SYSROOT" 1.35 else 1.36 echo "cook: adding /usr/cross/$ARCH/bin to PATH" 1.37 - export PATH=$PATH:/usr/cross/$ARCH/bin 1.38 + export PATH=$PATH:$CROSS_PREFIX/bin 1.39 fi 1.40 - export CROSS_COMPILE=$HOST_SYSTEM- 1.41 + export CROSS_COMPILE=${HOST_SYSTEM}- 1.42 echo "cook: using cross-tools: $CROSS_COMPILE" 1.43 export CC=${HOST_SYSTEM}-gcc 1.44 export CXX=${HOST_SYSTEM}-g++ 1.45 @@ -452,9 +447,7 @@ 1.46 export AS=${HOST_SYSTEM}-as 1.47 export RANLIB=${HOST_SYSTEM}-ranlib 1.48 export LD=${HOST_SYSTEM}-ld 1.49 - export STRIP=${HOST_SYSTEM}-strip 1.50 - #export PKGCONFIG=${HOST_SYSTEM}-pkg-config 1.51 - ;; 1.52 + export STRIP=${HOST_SYSTEM}-strip ;; 1.53 esac 1.54 1.55 [ "$QA" ] && receipt_quality 1.56 @@ -775,8 +768,7 @@ 1.57 fi 1.58 } 1.59 1.60 -tac() 1.61 -{ 1.62 +tac() { 1.63 sed '1!G;h;$!d' $1 1.64 } 1.65 1.66 @@ -895,7 +887,7 @@ 1.67 # Use setup pkgs from cross.conf or cook.conf. When cross compiling 1.68 # ARCH-setup or 'cross check-env' should be used before: cook setup 1.69 case "$ARCH" in 1.70 - arm) 1.71 + arm|x86_64) 1.72 if [ ! -x "/usr/bin/cross" ]; then 1.73 gettext "ERROR: cross is not installed"; echo 1.74 exit 1 1.75 @@ -905,7 +897,7 @@ 1.76 esac 1.77 for pkg in $SETUP_PKGS; do 1.78 if [ "$forced" ]; then 1.79 - tazpkg get-install $pkg --forced 1.80 + tazpkg -gi $pkg --forced 1.81 else 1.82 [ -d "$INSTALLED/$pkg" ] || tazpkg get-install $pkg 1.83 fi 1.84 @@ -938,7 +930,7 @@ 1.85 arch=${1%-setup} 1.86 check_root 1.87 echo "" 1.88 - gettext "Setting up your cross environment"; echo 1.89 + boldify $(gettext "Setting up your cross environment") 1.90 separator 1.91 init_db_files 1.92 sed -i \ 1.93 @@ -959,22 +951,22 @@ 1.94 /etc/slitaz/cook.conf ;; 1.95 esac 1.96 . /etc/slitaz/cook.conf 1.97 - echo "Target arch : $ARCH" 1.98 - echo "Configure args: $CONFIGURE_ARGS" 1.99 + echo "Target arch : $ARCH" 1.100 + echo "Configure args : $CONFIGURE_ARGS" 1.101 if [ "$SYSROOT" ]; then 1.102 - echo "Arch sysroot: $SYSROOT" 1.103 + echo "Arch sysroot : $SYSROOT" 1.104 CC=/usr/bin/${HOST_SYSTEM}-gcc 1.105 else 1.106 - echo "Path: /usr/cross/$ARCH/bin" 1.107 + echo "Additional path : /usr/cross/$ARCH/bin" 1.108 CC=/usr/cross/$ARCH/bin/${HOST_SYSTEM}-gcc 1.109 fi 1.110 if [ -x $CC ]; then 1.111 - echo "Cross compiler: ${HOST_SYSTEM}-gcc" 1.112 + echo "Cross compiler : ${HOST_SYSTEM}-gcc" 1.113 else 1.114 - echo "WARNING: C compiler is missing: ${HOST_SYSTEM}-gcc" 1.115 + colorize "C compiler is missing: ${HOST_SYSTEM}-gcc" 36 1.116 echo "Run 'cross compile' to cook a toolchain" 1.117 fi 1.118 - echo "" ;; 1.119 + separator && echo "" ;; 1.120 test) 1.121 # Test a cook environment. 1.122 echo "Cook test: testing the cook environment" | log