Files
Arquivotheca.SunOS-4.1.4/usr.lib/libpixrect/liborder
seta75D ff309bfe1c Init
2021-10-11 18:37:13 -03:00

38 lines
910 B
Bash

#!/bin/sh
# @(#)liborder 1.1 94/10/31 SMI
#
# Given a preferred ordering of the object modules in the file $1, and a list
# of actual object modules in the directory $2, create a list of
# object modules for the "ld" command line. As time goes on, new modules
# get created and old ones get deleted without the preferred list getting
# updated.
#
# The algorithm here is to delete unused object modules from the preferred
# ordering and then append the new modules to the resulting list.
#
# (based on ECD "objsort")
#
objlist=$1
objdir=$2
myname=`basename $0`
case $# in
2) ;;
*) echo "usage: $myname object-list object-directory" ; exit 1 ;;
esac
OLD=/tmp/$myname.old.$$
NEW=/tmp/$myname.new.$$
trap 'rm -f /tmp/$myname.*.$$; exit 1' 1 2 15
sed '/^#/d;/^$/d' $objlist > $OLD
(cd $objdir && ls *.o) > $NEW
{
fgrep -f $NEW $OLD
fgrep -v -f $OLD $NEW
} | sed "s,^,$objdir/,"
rm -f /tmp/$myname.*.$$