wok-next diff gcc6/receipt @ rev 20616

xrdp: up 0.9.3.1; zopfli: fix build; gcc61: attempt to fix; add gcc6 (latest among 6.x.x).
gcc61 and gcc6 are broken now.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Sat Apr 21 05:15:11 2018 +0300 (2018-04-21)
parents
children d958fec46c9f
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/gcc6/receipt	Sat Apr 21 05:15:11 2018 +0300
     1.3 @@ -0,0 +1,105 @@
     1.4 +# SliTaz package receipt v2.
     1.5 +
     1.6 +PACKAGE="gcc6"
     1.7 +VERSION="6.4.0"
     1.8 +CATEGORY="development"
     1.9 +SHORT_DESC="The GNU Compiler Collection"
    1.10 +MAINTAINER="pankso@slitaz.org"
    1.11 +LICENSE="GPL2"
    1.12 +WEB_SITE="http://gcc.gnu.org/"
    1.13 +
    1.14 +TARBALL="gcc-$VERSION.tar.xz"
    1.15 +WGET_URL="ftp://gcc.gnu.org/pub/gcc/releases/gcc-$VERSION/$TARBALL"
    1.16 +
    1.17 +# We need gawk since busybox awk is not sufficient. We have BUILD_DEPENDS
    1.18 +# for cookutils that are not used by tazwok/cook-toolchain since it installs
    1.19 +# and uses its own copy.
    1.20 +BUILD_DEPENDS="mpc-library-dev mpfr-dev gmp-dev elfutils-dev zlib-dev"
    1.21 +SPLIT="gcc6-lib-base"
    1.22 +
    1.23 +compile_rules() {
    1.24 +	case $ARCH in
    1.25 +		arm*)
    1.26 +			ARCH_ARGS="--with-tune=armv6"
    1.27 +			;;
    1.28 +		i?86)
    1.29 +			ARCH_ARGS="--with-tune=$ARCH"
    1.30 +			export CFLAGS="-march=i486 -Os -pipe"
    1.31 +			export CXXFLAGS="$CFLAGS"
    1.32 +			;;
    1.33 +		x86_64)
    1.34 +			ARCH_ARGS="--with-tune=nocona"
    1.35 +			export CFLAGS="-march=nocona -Os -pipe"
    1.36 +			export CXXFLAGS="$CFLAGS"
    1.37 +			;;
    1.38 +	esac
    1.39 +
    1.40 +	echo "CFLAGS   : $CFLAGS"
    1.41 +	echo "LDFLAGS  : $LDFLAGS"
    1.42 +
    1.43 +	pkgversion="SliTaz"
    1.44 +	languages="c,c++"
    1.45 +
    1.46 +	# Use libiberty.a from binutils.
    1.47 +	sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in || return 1
    1.48 +
    1.49 +	sed -i 's/^T_CFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in
    1.50 +
    1.51 +	mkdir -p ../gcc-build && cd ../gcc-build
    1.52 +
    1.53 +	$src/configure \
    1.54 +		--libexecdir=/usr/lib \
    1.55 +		--enable-nls \
    1.56 +		--enable-languages=${languages} \
    1.57 +		--enable-shared \
    1.58 +		--with-system-zlib \
    1.59 +		--enable-clocale=gnu \
    1.60 +		--enable-objc-gc \
    1.61 +		--enable-__cxa_atexit \
    1.62 +		--enable-lto \
    1.63 +		--enable-threads=posix \
    1.64 +		--disable-bootstrap \
    1.65 +		--program-suffix=-6 \
    1.66 +		--libdir=/usr/libgcc6 \
    1.67 +		--with-pkgversion="$pkgversion" \
    1.68 +		--disable-multilib \
    1.69 +		$ARCH_ARGS \
    1.70 +		$CONFIGURE_ARGS &&
    1.71 +	make && make install
    1.72 +}
    1.73 +
    1.74 +genpkg_rules() {
    1.75 +	case $PACKAGE in
    1.76 +		gcc6)
    1.77 +			mkdir -p  $fs/usr/share
    1.78 +			cp -a $install/usr/bin $fs/usr
    1.79 +
    1.80 +			# Copy all libs. Do not hide gcc-lib-base.
    1.81 +			cp -a $install/usr/lib* $fs/usr
    1.82 +
    1.83 +			# Include files.
    1.84 +			cp -a $install/usr/include $fs/usr
    1.85 +
    1.86 +			# Remove build directory.
    1.87 +			rm -rf $WOK/$PACKAGE/source/$PACKAGE-build
    1.88 +			rm -rf $WOK/$PACKAGE/$PACKAGE-build
    1.89 +			DEPENDS="binutils libgomp libobjc gcc-lib-base mpc-library elfutils"
    1.90 +			TAGS="compiler C C++"
    1.91 +			;;
    1.92 +		gcc6-lib-base)
    1.93 +			mkdir -p $fs/usr/lib
    1.94 +			cp -a $install/usr/libgcc61/libgcc_s.so* $fs/usr/lib
    1.95 +			cp -a $install/usr/libgcc61/libstdc++.so* $fs/usr/lib
    1.96 +			rm -f $fs/usr/lib/*-gdb.py
    1.97 +			CAT="development|base libraries, libgcc_s and libstdc++"
    1.98 +			PROVIDE="gcc-lib-base"
    1.99 +			;;
   1.100 +	esac
   1.101 +}
   1.102 +
   1.103 +post_remove_gcc61_lib_base() {
   1.104 +	cd "$1/usr/lib"
   1.105 +	ln -s libstdc++.so.6.*.* libstdc++.so.6
   1.106 +	ln -s libstdc++.so.6.*.* libstdc++.so
   1.107 +	cd - >/dev/null
   1.108 +}