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