From 49d25ab464e0e02bb910a75791077b1393d22b6e Mon Sep 17 00:00:00 2001 From: Dmitry Eremin-Solenikov Date: Fri, 16 Sep 2011 10:55:15 +0400 Subject: icecc-create-env: a tool to create icecc toolchain tarballs IceCC needs tarballs with toolchains to work correctly. This is a version largely based on one from org.openembedded.dev, plus a patch to support recent compilers, LTO, etc. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Richard Purdie --- .../icecc-create-env/icecc-lto-update.patch | 103 +++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 meta/recipes-devtools/icecc-create-env/icecc-create-env/icecc-lto-update.patch (limited to 'meta/recipes-devtools/icecc-create-env/icecc-create-env') diff --git a/meta/recipes-devtools/icecc-create-env/icecc-create-env/icecc-lto-update.patch b/meta/recipes-devtools/icecc-create-env/icecc-create-env/icecc-lto-update.patch new file mode 100644 index 0000000000..b396261d69 --- /dev/null +++ b/meta/recipes-devtools/icecc-create-env/icecc-create-env/icecc-lto-update.patch @@ -0,0 +1,103 @@ +--- a/icecc-create-env 2006-12-14 09:50:46.000000000 +0300 ++++ b/icecc-create-env 2011-08-31 17:52:45.000000000 +0400 +@@ -27,9 +27,6 @@ + # readlink is not portable enough. + path=`ls -H $path` + toadd="$name=$path" +- if test "$name" = "$path"; then +- toadd=$path +- fi + is_contained "$toadd" && return + if test -z "$silent"; then + echo "adding file $toadd" +@@ -117,6 +114,14 @@ + add_file "$specfile" + fi + ++ltofile=`$added_gcc -print-prog-name=lto1` ++pluginfile="${ltofile%lto1}liblto_plugin.so" ++if test -r "$pluginfile" ++then ++ add_file $pluginfile ${pluginfile#*usr} ++ add_file $pluginfile /usr${pluginfile#*usr} ++fi ++ + tempdir=`mktemp -d /tmp/iceccenvXXXXXX` + new_target_files= + for i in $target_files; do +@@ -140,49 +147,44 @@ + done + + #sort the files +- target_files=`for i in $new_target_files; do echo $i; done | sort` ++target_files=`for i in $new_target_files; do echo $i; done | sort` + + #test if an archive name was supplied + #if not use the md5 of all files as the archive name + if test -z "$archive_name"; then +-md5sum=NONE +-for file in /usr/bin/md5sum /bin/md5 /usr/bin/md5; do +- if test -x $file; then +- md5sum=$file +- break +- fi +-done ++ md5sum=NONE ++ for file in /usr/bin/md5sum /bin/md5 /usr/bin/md5; do ++ if test -x $file; then ++ md5sum=$file ++ break ++ fi ++ done + +-#calculate md5 and use it as the archive name +-archive_name=`for i in $target_files; do $md5sum $tempdir/$i; done | sed -e 's/ .*$//' | $md5sum | sed -e 's/ .*$//'` || { +- if test -z "$silent"; then +- echo "Couldn't compute MD5 sum." ++ #calculate md5 and use it as the archive name ++ archive_name=`for i in $target_files; do test -f $tempdir/$i && $md5sum $tempdir/$i; done | sed -e 's/ .*$//' | $md5sum | sed -e 's/ .*$//'`.tar.gz || { ++ if test -z "$silent"; then ++ echo "Couldn't compute MD5 sum." ++ fi ++ exit 2 ++ } ++ mydir=`pwd` ++else ++ mydir="`dirname "$archive_name"`" ++ ++ #check if we have a full path or only a filename ++ if test "$mydir" = "." ; then ++ mydir=`pwd` ++ else ++ mydir="" + fi +- exit 2 +-} +- + fi + + if test -z "$silent"; then +-echo "creating $archive_name.tar.gz" ++echo "creating $archive_name" + fi + +-if test -z "$archive_name"; then +- mydir=`pwd` +-else +-# mydir=dirname ${archive_name} +- mydir=${archive_name%/*} +- +-#check if we have a full path or only a filename +- if test -z "$mydir"; then +- mydir=`pwd` +- else +- mydir="" +- fi +- +-fi + cd $tempdir +-tar -czhf "$mydir/$archive_name".tar.gz $target_files || { ++tar -czhf "$mydir/$archive_name" $target_files || { + if test -z "$silent"; then + echo "Couldn't create archive" + fi -- cgit 1.2.3-korg