diff --git a/ChangeLog b/ChangeLog
index d3ec519713facc3ecf3a1e06c68adcd4b500ca6e..9ffbdf7df3ddb3707164f6543bf042435542e37d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2004-10-02  P.J. Darcy  <darcypj@us.ibm.com>
+
+	* ltcf-c.sh (tpf*): Add ld_shlibs=yes.
+	* ltcf-cxx.sh (tpf*): Likewise.
+	* ltconfig (tpf*): Add TPF OS configuration support.
+
 2004-10-01  Bernd Schmidt  <bernds_cb1@t-online.de>
 
 	* MAINTAINERS: Change my email address to my new work account.
diff --git a/ltcf-c.sh b/ltcf-c.sh
index 7cc273d36ff2cf9761f0fc01961454f2156f9154..11f897d2ef7da3afb5cf8fda37f23c099b6f8ccd 100644
--- a/ltcf-c.sh
+++ b/ltcf-c.sh
@@ -213,6 +213,10 @@ EOF
     hardcode_shlibpath_var=no
     ;;
 
+  tpf*)
+    ld_shlibs=yes
+    ;;
+
   *)
     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh
index 7edeb864b1758cff0bdfd154c3f585641a86059f..48d5a53f2f7d9b919bc9bf01e8f17017330043bf 100644
--- a/ltcf-cxx.sh
+++ b/ltcf-cxx.sh
@@ -697,6 +697,9 @@ case $host_os in
         ;;
     esac
     ;;
+  tpf*)
+    ld_shlibs=yes
+    ;;
   unixware*)
     # FIXME: insert proper C++ library support
     ld_shlibs=no
diff --git a/ltconfig b/ltconfig
index 03204787a3dcc96856b88bbe437e0338b2b7edaa..01e64be2cff7c0f882c91b6a9f04b35803ec9b13 100755
--- a/ltconfig
+++ b/ltconfig
@@ -1374,6 +1374,18 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
   esac
   ;;
 
+tpf*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='GNU/Linux ld.so'
+  ;;
+
 uts4*)
   version_type=linux
   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'