diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index cf9294175b2e34654474417627c16284847a9bdc..337056ec8cc70b216993549b5842588acf2c5805 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2002-12-30  Loren J. Rittle  <ljrittle@acm.org>
+
+	* src/Makefile.am: Resolve non-portable use of $<.
+	* src/Makefile.in: Rebuilt.
+
 2002-12-30  Phil Edwards  <pme@gcc.gnu.org>
 
 	* configure.in (GLIBCPP_ENABLE_CXX_FLAGS):  Do not pass arguments,
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index 0cffb7fd3ec6109e03114cd58759430704ed6bdc..534d58c4f90e01696cd52fee6bc84c1aa3406830 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -39,7 +39,7 @@ toolexeclib_LTLIBRARIES = libstdc++.la
 if GLIBCPP_BUILD_VERSIONED_SHLIB
 version_arg = -Wl,--version-script=libstdc++-symbol.ver
 libstdc++-symbol.ver:  ${glibcpp_srcdir}/@SYMVER_MAP@
-	@LN_S@  $< ./libstdc++-symbol.ver || true
+	@LN_S@  ${glibcpp_srcdir}/@SYMVER_MAP@ ./libstdc++-symbol.ver || true
 else
 version_arg =
 libstdc++-symbol.ver:
@@ -83,25 +83,25 @@ target_sources = \
 	time_members.cc
 
 codecvt_members.cc: ${glibcpp_srcdir}/@CCODECVT_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCODECVT_CC@ . || true
 
 collate_members.cc: ${glibcpp_srcdir}/@CCOLLATE_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCOLLATE_CC@ . || true
 
 ctype_members.cc: ${glibcpp_srcdir}/@CCTYPE_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCTYPE_CC@ . || true
 
 messages_members.cc: ${glibcpp_srcdir}/@CMESSAGES_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CMESSAGES_CC@ . || true
 
 monetary_members.cc: ${glibcpp_srcdir}/@CMONEY_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CMONEY_CC@ . || true
 
 numeric_members.cc: ${glibcpp_srcdir}/@CNUMERIC_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CNUMERIC_CC@ . || true
 
 time_members.cc: ${glibcpp_srcdir}/@CTIME_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CTIME_CC@ . || true
 
 # Source files linked in via configuration/make substitution for a
 # particular target, but with ad hoc naming rules.
@@ -110,10 +110,10 @@ target_sources_extra = \
 	c++locale.cc 
 
 c++locale.cc: ${glibcpp_srcdir}/@CLOCALE_CC@
-	@LN_S@ $< ./$@ || true
+	@LN_S@ ${glibcpp_srcdir}/@CLOCALE_CC@ ./$@ || true
 
 basic_file.cc: ${glibcpp_srcdir}/@BASIC_FILE_CC@
-	@LN_S@ $< ./$@ || true
+	@LN_S@ ${glibcpp_srcdir}/@BASIC_FILE_CC@ ./$@ || true
 
 # Sources present in the src directory.
 sources = \
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index f6ad9cf4926d57c1290ab749dd9006277b481744..ca82e73c1b76ec37aef9b2a152db57eefaa03478 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
 
 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
@@ -266,7 +266,7 @@ DIST_COMMON =  Makefile.am Makefile.in
 
 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
 
-TAR = tar
+TAR = gtar
 GZIP_ENV = --best
 SOURCES = $(libstdc___la_SOURCES)
 OBJECTS = $(libstdc___la_OBJECTS)
@@ -378,7 +378,7 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
 	  awk '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-	  || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags  $$unique $(LISP))
+	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
 
 mostlyclean-tags:
 
@@ -485,35 +485,35 @@ distclean-generic clean-generic maintainer-clean-generic clean \
 mostlyclean distclean maintainer-clean
 
 @GLIBCPP_BUILD_VERSIONED_SHLIB_TRUE@libstdc++-symbol.ver:  ${glibcpp_srcdir}/@SYMVER_MAP@
-@GLIBCPP_BUILD_VERSIONED_SHLIB_TRUE@	@LN_S@  $< ./libstdc++-symbol.ver || true
+@GLIBCPP_BUILD_VERSIONED_SHLIB_TRUE@	@LN_S@  ${glibcpp_srcdir}/@SYMVER_MAP@ ./libstdc++-symbol.ver || true
 @GLIBCPP_BUILD_VERSIONED_SHLIB_FALSE@libstdc++-symbol.ver:
 
 codecvt_members.cc: ${glibcpp_srcdir}/@CCODECVT_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCODECVT_CC@ . || true
 
 collate_members.cc: ${glibcpp_srcdir}/@CCOLLATE_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCOLLATE_CC@ . || true
 
 ctype_members.cc: ${glibcpp_srcdir}/@CCTYPE_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CCTYPE_CC@ . || true
 
 messages_members.cc: ${glibcpp_srcdir}/@CMESSAGES_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CMESSAGES_CC@ . || true
 
 monetary_members.cc: ${glibcpp_srcdir}/@CMONEY_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CMONEY_CC@ . || true
 
 numeric_members.cc: ${glibcpp_srcdir}/@CNUMERIC_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CNUMERIC_CC@ . || true
 
 time_members.cc: ${glibcpp_srcdir}/@CTIME_CC@
-	@LN_S@ $< . || true
+	@LN_S@ ${glibcpp_srcdir}/@CTIME_CC@ . || true
 
 c++locale.cc: ${glibcpp_srcdir}/@CLOCALE_CC@
-	@LN_S@ $< ./$@ || true
+	@LN_S@ ${glibcpp_srcdir}/@CLOCALE_CC@ ./$@ || true
 
 basic_file.cc: ${glibcpp_srcdir}/@BASIC_FILE_CC@
-	@LN_S@ $< ./$@ || true
+	@LN_S@ ${glibcpp_srcdir}/@BASIC_FILE_CC@ ./$@ || true
 strstream.lo: strstream.cc
 	$(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -Wno-deprecated -c $<
 strstream.o: strstream.cc