#!/bin/sh
# 
# set gcc 3.4.4 as base for asplinux 10
#
# 25.10.2005 Likhota Vadim
#
[ -d /usr/libexec/gcc/i686-asplinux-linux/3.4.3 ] || exit 0
[ -d /usr/lib/gcc/i686-asplinux-linux/3.4.3 ] || exit 0
[ -d /usr/include/c++/3.4.3 ] || exit 0
[ -x /usr/bin/gcc34 ] && [ -x /usr/bin/gcc ] || exit 0
[ -x /usr/bin/gcov34 ] && [ -x /usr/bin/gcov ] || exit 0
[ -x /usr/bin/protoize34 ] && [ -x /usr/bin/protoize ] || exit 0
[ -x /usr/bin/unprotoize34 ] && [ -x /usr/bin/unprotoize ] || exit 0
[ -x /usr/bin/cpp34 ] && [ -x /usr/bin/cpp ] || exit 0
[ -x /usr/bin/g++34 ] && [ -x /usr/bin/g++ ] || exit 0
[ -x /usr/bin/c++34 ] && [ -x /usr/bin/c++ ] || exit 0
[ -x /usr/bin/c++filt34 ] && [ -x /usr/bin/c++filt ] || exit 0
[ -x /usr/bin/i386-asplinux-linux-gcc ] && [ -x /usr/bin/i686-asplinux-linux-gcc34 ] || exit 0
[ -x /usr/bin/i386-asplinux-linux-g++ ] && [ -x /usr/bin/i686-asplinux-linux-g++34 ] || exit 0
[ -x /usr/bin/i386-asplinux-linux-c++ ] && [ -x /usr/bin/i686-asplinux-linux-c++34 ] || exit 0
[ -f /lib/libgcc_s-3.3.3-20040413.so.1 ] && [ -f /lib/libgcc_s-3.4.4-20050721.so.1 ] || exit 0

cd /usr/libexec/gcc/
[ -d i386-asplinux-linux ] && mv -f {i386-asplinux-linux,i386-asplinux-linux_old}
ln -sf i686-asplinux-linux i386-asplinux-linux
cd i686-asplinux-linux
[ -d 3.4.0 ] && mv -f {3.4.0,3.4.0_old}
ln -sf 3.4.3 3.4.0

cd /usr/lib/gcc/
[ -d i386-asplinux-linux ] && mv -f {i386-asplinux-linux,i386-asplinux-linux_old}
ln -sf i686-asplinux-linux i386-asplinux-linux
cd i686-asplinux-linux
[ -d 3.4.0 ] && mv -f {3.4.0,3.4.0_old}
ln -sf 3.4.3 3.4.0

cd /usr/include/c++/
[ -d 3.4.0 ] && mv -f {3.4.0,3.4.0_old}
ln -sf 3.4.3 3.4.0

cd /usr/bin
if [ -f gcc33 ]; then 
  rm -rf gcc
else
  mv -f gcc gcc33
fi
ln -sf gcc34 gcc

if [ -f gcov33 ]; then 
  rm -rf gcov
else
  mv -f gcov gcov33
fi
ln -sf gcov34 gcov

if [ -f protoize33 ]; then 
  rm -rf protoize
else
  mv -f protoize protoize33
fi
ln -sf protoize34 protoize

if [ -f unprotoize33 ]; then 
  rm -rf unprotoize
else
  mv -f unprotoize unprotoize33
fi
ln -sf unprotoize34 unprotoize

if [ -f cpp33 ]; then 
  rm -rf cpp
else
  mv -f cpp cpp33
fi
ln -sf cpp34 cpp

if [ -f c++33 ]; then 
  rm -rf c++
else
  mv -f c++ c++33
fi
ln -sf c++34 c++

if [ -f g++33 ]; then 
  rm -rf g++
else
  mv -f g++ g++33
fi
ln -sf g++34 g++

if [ -f c++filt33 ]; then 
  rm -rf c++filt
else
  mv -f c++filt c++filt33
fi
ln -sf c++filt34 c++filt

if [ -f i386-asplinux-linux-gcc33 ]; then 
  rm -rf i386-asplinux-linux-gcc
else
  mv -f i386-asplinux-linux-gcc i386-asplinux-linux-gcc33
fi
ln -sf i686-asplinux-linux-gcc34 i386-asplinux-linux-gcc
ln -sf i686-asplinux-linux-gcc34 i686-asplinux-linux-gcc

if [ -f i386-asplinux-linux-g++33 ]; then 
  rm -rf i386-asplinux-linux-g++
else
  mv -f i386-asplinux-linux-g++ i386-asplinux-linux-g++33
fi
ln -sf i686-asplinux-linux-g++34 i386-asplinux-linux-g++
ln -sf i686-asplinux-linux-g++34 i686-asplinux-linux-g++

if [ -f i386-asplinux-linux-c++33 ]; then 
  rm -rf i386-asplinux-linux-c++
else
  mv -f i386-asplinux-linux-c++ i386-asplinux-linux-c++33
fi
ln -sf i686-asplinux-linux-c++34 i386-asplinux-linux-c++
ln -sf i686-asplinux-linux-c++34 i686-asplinux-linux-c++

cd /lib
ln -sf libgcc_s-3.4.4-20050721.so.1 libgcc_s.so.1

