Sophie

Sophie

distrib > Mandriva > 10.0-com > i586 > by-pkgid > c273e24ca93c9417925d6987cbe7e203 > files > 1

x86-compat-libs-9.0-2mdk.src.rpm

#!/bin/sh

RELEASE=$(sed -n "/Mandrake Linux release \([.0-9]*\).*/s//\1/p" < /etc/mandrake-release)
PACKAGE="x86-compat-libs-$RELEASE"
TMPDIR=/tmp

LIBRARIES="ICE PEX5 SM X11 XIE Xaw Xext Xfont Xft Xi Xmu Xmuu Xp Xpm Xrender Xt Xtst Xv Xxf86dga cups dps dpstk psres xrx form menu ncurses panel termcap slang BrokenLocale NoVersion c crypt dl m nsl nss1_compat nss1_nis nss1_files nss1_dns nss1_db nss_compat nss_dns nss_files nss_hesiod nss_nis nss_nisplus pthread resolv rt thread_db util db db1 db2 glib gmodule gthread gtk gdk stdc++ pam pam_misc pwdb proc popt audiofile bz2 GL GLU z crack sasl gdbm gdk_pixbuf gmp mp gsl gpm history readline mng tiff ungif xml png ssl crypto glut pnm utempter lber pbm pgm ppm ldap freetype ttf com_err des425 dyn gssapi_krb5 gssrpc k5crypto kadm5clnt kadm5srv kdb5 krb4 krb5 pty Xaw3d jpeg gtksuperwin gtkxtbin gcc_s nspr4 nss3 odbc odbcinst plc4 plds4 gobject intl lcms png12 softokn3"

rm -rf $TMPDIR/$PACKAGE
mkdir -p $TMPDIR/$PACKAGE
cd $TMPDIR/$PACKAGE

function FollowLink() {
  perl -e '{my $f = shift; $f = readlink $f while (-l $f); print $f, "\n"}' $0
}

for lib in $LIBRARIES; do 
	candidates=$(ls /lib/lib$lib.so.* /usr/kerberos/lib/lib$lib.so.* /usr/lib/lib$lib.so.* /usr/X11R6/lib/lib$lib.so.* /lib/lib$lib-[0-9]*.so /usr/lib/lib$lib-[0-9]*.so /usr/X11R6/lib/lib$lib-[0-9]*.so /lib/lib$lib-[0-9]*.so.* /usr/lib/lib$lib-[0-9]*.so.* /usr/X11R6/lib/lib$lib-[0-9]*.so.* 2>/dev/null ||:)
	echo ">> $lib"
	for file in $candidates; do 
		if [ -f $file ] && [ ! -L $file ]; then
			echo $file;
			libdir=`dirname $file`
			mkdir -p .$libdir
			cp $file .$libdir/
		fi
	done
	if [ -z "$candidates" ]; then
		candidates=$(ls /lib/lib$lib.so /usr/lib/lib$lib.so /usr/X11R6/lib/lib$lib.so 2>/dev/null ||:)
		for file in $candidates; do
			if [ -f $file ] && [ ! -L $file ]; then
				echo "alt: $file";
				libdir=`dirname $file`
				mkdir -p .$libdir
				cp $file .$libdir/
			fi
		done
	fi
done

# Get all libdirs parsed
LIBDIRS=$(find . -type d -name lib)

# Remove broken links
for libdir in $LIBDIRS; do
(cd $libdir;
	for lib in $(find . -type l -maxdepth 1); do
		target=`FollowLink $lib`
		if [ ! -f "$target" ]; then
			echo "Remove broken symlink $lib"
			rm -f $lib
		fi
	done
)
done

# We don't need the ncurses 3 things anymore...
for libdir in $LIBDIRS; do
	rm -fv $libdir/lib*.1.9.9*
	strip -R .comment $libdir/* || :
done

# Create the soname links
for libdir in $LIBDIRS; do
	chmod +x $libdir/lib*.so.*
	/sbin/ldconfig -n -N -v $libdir
done

# We need a linker too
mkdir loader
cp /lib/ld-linux.so.2 loader/

cd ..
tar jcvf $PACKAGE.tar.bz2 $PACKAGE