summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gold/ChangeLog6
-rwxr-xr-xgold/configure9
-rw-r--r--gold/configure.ac9
3 files changed, 22 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 264001b29c..0aac2be078 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,9 @@
+2010-02-06 Ian Lance Taylor <iant@google.com>
+
+ * configure.ac: Rewrite targetobjs duplicate removal code to use
+ only shell constructs.
+ * configure: Rebuild.
+
2010-02-05 Doug Kwan <dougkwan@google.com>
PR 11247
diff --git a/gold/configure b/gold/configure
index dbc6319c8a..9fd198f275 100755
--- a/gold/configure
+++ b/gold/configure
@@ -3411,7 +3411,14 @@ fi
done
# Remove any duplicates.
-targetobjs=`echo $targetobjs | tr ' ' '\n' | sort | uniq | tr '\n' ' '`
+to=""
+for t in $targetobjs; do
+ case " $to " in
+ *" $t "*) ;;
+ *) to="$to $t" ;;
+ esac
+done
+targetobjs=$to
if test -n "$targ_32_little"; then
diff --git a/gold/configure.ac b/gold/configure.ac
index 4bf223cb51..f184d4b29d 100644
--- a/gold/configure.ac
+++ b/gold/configure.ac
@@ -163,7 +163,14 @@ for targ in $target $canon_targets; do
done
# Remove any duplicates.
-targetobjs=`echo $targetobjs | tr ' ' '\n' | sort | uniq | tr '\n' ' '`
+to=""
+for t in $targetobjs; do
+ case " $to " in
+ *" $t "*) ;;
+ *) to="$to $t" ;;
+ esac
+done
+targetobjs=$to
if test -n "$targ_32_little"; then
AC_DEFINE(HAVE_TARGET_32_LITTLE, 1,