3.2 PATCH: Avoid hardcoded uses of pwd

Rainer Orth ro@TechFak.Uni-Bielefeld.DE
Tue May 14 13:12:00 GMT 2002


As has been discussed several times before, hardcoded uses of pwd tend to
break in hard to analyze ways in the presence of automounters:

	http://gcc.gnu.org/ml/gcc-patches/2002-05/msg00199.html

Instead of fixing those problems one by one as they occur, I've finally
decided to replace all such hardcoded uses in GCC source files.  The
remaining ones stem from e.g. autoconf or automake and will have to be
addressed in those upstream packages (which will take some time until GCC
will work with recent releases of those packages).

The following patch implements this using the ${PWDCMD-pwd} idiom already
used in a couple of places.

Bootstrapped successfully on alpha-dec-osf5.1 (with PWDCMD set to
/vol/local/bin/amd) and i386-pc-solaris2.8 (with PWDCMD set to amq -w).
Bootstrap on sparc-sun-solaris2.8 still in progress.

Ok for mainline?

	Rainer


Fri May 10 17:25:22 2002  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* Makefile.in: Allow for PWDCMD to override hardcoded pwd.
	* config-ml.in: Likewise.
	* configure: Likewise.
	* configure.in: Likewise.

	boehm-gc:
	* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	
	config:
	* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
	
	contrib:
	* test_installed: Allow for PWDCMD to override hardcoded pwd.
	* test_summary: Likewise.

	gcc:
	* Makefile.in: Allow for PWDCMD to override hardcoded pwd.
	* configure.in: Likewise.
	* fixinc/check.tpl: Likewise.
	* fixinc/fixinc.dgux: Likewise.
	* fixinc/fixinc.svr4: Likewise.
	* fixinc/fixinc.winnt: Likewise.
	* fixinc/fixincl.sh: Likewise.
	* fixproto: Likewise.
	* configure: Regenerate.

	gcc/ada:
	* Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
	* Makefile.in: Likewise.
	
	gcc/f:
	* Make-lang.in: Allow for PWDCMD to override hardcoded pwd.

	gcc/java:
	* Make-lang.in: Allow for PWDCMD to override hardcoded pwd.

	gcc/po:
	* exgettext:

	gcc/treelang:
	* Make-lang.in: Allow for PWDCMD to override hardcoded pwd.

	libf2c:
	* Makefile.in: Allow for PWDCMD to override hardcoded pwd.
	* aclocal.m4: Likewise.
	* configure: Regenerate.
	
	libjava:
	* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
	* configure.in: Likewise.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	
	libobjc:
	* aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
	* configure: Regenerate.

	libstdc++-v3:
	* Makefile.am: Allow for PWDCMD to override hardcoded pwd.
	* acinclude.m4: Likewise.
	* docs/html/Makefile: Likewise.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

	zlib:
	* configure.in: Allow for PWDCMD to override hardcoded pwd.
	* configure: Regenerate.
	
Index: Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/Makefile.in,v
retrieving revision 1.99
diff -u -p -r1.99 Makefile.in
--- Makefile.in	9 May 2002 19:57:00 -0000	1.99
+++ Makefile.in	14 May 2002 19:01:34 -0000
@@ -1,7 +1,7 @@
 #
 # Makefile for directory with subdirs to build.
 #   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-#   1999, 2000, 2001 Free Software Foundation
+#   1999, 2000, 2001, 2002 Free Software Foundation
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -984,8 +984,8 @@ DO_X = \
 .PHONY: $(DO_X)
 $(DO_X):
 	@target=`echo $@ | sed -e 's/^do-//'`; \
-	r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd`; export s; \
+	r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	$(SET_LIB_PATH) \
 	for i in $(SUBDIRS) -dummy-; do \
 	  if [ -f ./$$i/Makefile ]; then \
@@ -1011,8 +1011,8 @@ $(DO_X):
 	  else true; fi; \
 	done
 	@target=`echo $@ | sed -e 's/^do-//'`; \
-	r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd`; export s; \
+	r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	$(SET_LIB_PATH) \
 	for i in $(TARGET_CONFIGDIRS) -dummy-; do \
 	  if [ -f $(TARGET_SUBDIR)/$$i/Makefile ]; then \
@@ -1042,7 +1042,7 @@ dvi: do-dvi
 do-info: all-texinfo
 
 install-info: do-install-info dir.info
-	s=`cd $(srcdir); pwd`; export s; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	if [ -f dir.info ] ; then \
 	  $(INSTALL_DATA) dir.info $(infodir)/dir.info ; \
 	else true ; fi
@@ -1077,8 +1077,8 @@ realclean: maintainer-clean
 $(CLEAN_MODULES) $(CLEAN_X11_MODULES) clean-gcc:
 	@dir=`echo $@ | sed -e 's/clean-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) clean); \
 	else \
@@ -1090,8 +1090,8 @@ $(CLEAN_TARGET_MODULES):
 	@dir=`echo $@ | sed -e 's/clean-target-//'`; \
 	rm -f $(TARGET_SUBDIR)/$${dir}/multilib.out $(TARGET_SUBDIR)/$${dir}/tmpmulti.out; \
 	if [ -f $(TARGET_SUBDIR)/$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $(TARGET_SUBDIR)/$${dir}; $(MAKE) $(TARGET_FLAGS_TO_PASS) clean); \
 	else \
@@ -1164,7 +1164,7 @@ vault-install:
 .PHONY: install.all
 install.all: install-no-fixedincludes
 	@if [ -f ./gcc/Makefile ] ; then \
-		r=`pwd` ; export r ; \
+		r=`$${PWDCMD-pwd}` ; export r ; \
 		$(SET_LIB_PATH) \
 		(cd ./gcc; \
 		$(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
@@ -1199,8 +1199,8 @@ gcc-no-fixedincludes:
 	  cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
 	  touch gcc/stmp-fixinc gcc/include/fixed; \
 	  rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd` ; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}` ; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd ./gcc; \
 	   $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
@@ -1214,8 +1214,8 @@ gcc-no-fixedincludes:
 $(ALL_BUILD_MODULES):
 	dir=`echo $@ | sed -e 's/all-build-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  (cd $(BUILD_SUBDIR)/$${dir} && $(MAKE) all); \
 	else \
 	  true; \
@@ -1233,8 +1233,8 @@ $(CONFIGURE_BUILD_MODULES):
 	elif echo " $(BUILD_CONFIGDIRS) " | grep " $${dir} " >/dev/null 2>&1; then \
 	  if [ -d $(srcdir)/$${dir} ]; then \
 	    [ -d $(BUILD_SUBDIR)/$${dir} ] || mkdir $(BUILD_SUBDIR)/$${dir};\
-	    r=`pwd`; export r; \
-	    s=`cd $(srcdir); pwd`; export s; \
+	    r=`$${PWDCMD-pwd}`; export r; \
+	    s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	    AR="$(AR_FOR_BUILD)"; export AR; \
 	    AS="$(AS_FOR_BUILD)"; export AS; \
 	    CC="$(CC_FOR_BUILD)"; export CC; \
@@ -1318,8 +1318,8 @@ $(CONFIGURE_BUILD_MODULES):
 $(ALL_MODULES) all-gui all-libproc:
 	@dir=`echo $@ | sed -e 's/all-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) all); \
 	else \
@@ -1335,8 +1335,8 @@ $(NATIVE_CHECK_MODULES):
 	@if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
 	  dir=`echo $@ | sed -e 's/check-//'`; \
 	  if [ -f ./$${dir}/Makefile ] ; then \
-	    r=`pwd`; export r; \
-	    s=`cd $(srcdir); pwd`; export s; \
+	    r=`$${PWDCMD-pwd}`; export r; \
+	    s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	    $(SET_LIB_PATH) \
 	    (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) check); \
 	  else \
@@ -1347,8 +1347,8 @@ $(NATIVE_CHECK_MODULES):
 $(CROSS_CHECK_MODULES):
 	@dir=`echo $@ | sed -e 's/check-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) check); \
 	else \
@@ -1361,8 +1361,8 @@ $(CROSS_CHECK_MODULES):
 $(INSTALL_MODULES): installdirs
 	@dir=`echo $@ | sed -e 's/install-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) install); \
 	else \
@@ -1375,7 +1375,7 @@ $(INSTALL_MODULES): installdirs
 $(CONFIGURE_TARGET_MODULES):
 	@dir=`echo $@ | sed -e 's/configure-target-//'`; \
 	if [ -d $(TARGET_SUBDIR)/$${dir} ]; then \
-	  r=`pwd`; export r; \
+	  r=`$${PWDCMD-pwd}`; export r; \
 	  $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/$${dir}/tmpmulti.out 2> /dev/null; \
 	  if [ -s $(TARGET_SUBDIR)/$${dir}/tmpmulti.out ]; then \
 	    if [ -f $(TARGET_SUBDIR)/$${dir}/multilib.out ]; then \
@@ -1399,8 +1399,8 @@ $(CONFIGURE_TARGET_MODULES):
 	elif echo " $(TARGET_CONFIGDIRS) " | grep " $${dir} " >/dev/null 2>&1; then \
 	  if [ -d $(srcdir)/$${dir} ]; then \
 	    [ -d $(TARGET_SUBDIR)/$${dir} ] || mkdir $(TARGET_SUBDIR)/$${dir};\
-	    r=`pwd`; export r; \
-	    s=`cd $(srcdir); pwd`; export s; \
+	    r=`$${PWDCMD-pwd}`; export r; \
+	    s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	    $(SET_LIB_PATH) \
 	    AR="$(AR_FOR_TARGET)"; export AR; \
 	    AS="$(AS_FOR_TARGET)"; export AS; \
@@ -1481,8 +1481,8 @@ $(CONFIGURE_TARGET_MODULES):
 $(ALL_TARGET_MODULES):
 	@dir=`echo $@ | sed -e 's/all-target-//'`; \
 	if [ -f $(TARGET_SUBDIR)/$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $(TARGET_SUBDIR)/$${dir}; \
 	    $(MAKE) $(TARGET_FLAGS_TO_PASS) all); \
@@ -1496,8 +1496,8 @@ $(ALL_TARGET_MODULES):
 $(CHECK_TARGET_MODULES):
 	@dir=`echo $@ | sed -e 's/check-target-//'`; \
 	if [ -f $(TARGET_SUBDIR)/$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $(TARGET_SUBDIR)/$${dir}; \
 	    $(MAKE) $(TARGET_FLAGS_TO_PASS) check);\
@@ -1512,8 +1512,8 @@ $(CHECK_TARGET_MODULES):
 $(INSTALL_TARGET_MODULES): installdirs
 	@dir=`echo $@ | sed -e 's/install-target-//'`; \
 	if [ -f $(TARGET_SUBDIR)/$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $(TARGET_SUBDIR)/$${dir}; \
 	    $(MAKE) $(TARGET_FLAGS_TO_PASS) install); \
@@ -1527,8 +1527,8 @@ $(INSTALL_TARGET_MODULES): installdirs
 $(ALL_X11_MODULES):
 	@dir=`echo $@ | sed -e 's/all-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; \
 	   $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all); \
@@ -1542,8 +1542,8 @@ $(ALL_X11_MODULES):
 $(CHECK_X11_MODULES):
 	@dir=`echo $@ | sed -e 's/check-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; \
 	   $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check); \
@@ -1557,8 +1557,8 @@ $(CHECK_X11_MODULES):
 $(INSTALL_X11_MODULES): installdirs
 	@dir=`echo $@ | sed -e 's/install-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; \
 	   $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install); \
@@ -1570,8 +1570,8 @@ $(INSTALL_X11_MODULES): installdirs
 .PHONY: all-gcc
 all-gcc:
 	@if [ -f ./gcc/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) all); \
 	else \
@@ -1590,13 +1590,13 @@ all-gcc:
 #
 .PHONY: bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean
 bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean: all-bootstrap
-	@r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd`; export s; \
+	@r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	$(SET_LIB_PATH) \
 	echo "Bootstrapping the compiler"; \
 	cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
-	@r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd`; export s; \
+	@r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	case "$@" in \
 	  *bootstrap4-lean ) \
 			msg="Comparing stage3 and stage4 of the compiler"; \
@@ -1611,21 +1611,21 @@ bootstrap bootstrap-lean bootstrap2 boot
 	$(SET_LIB_PATH) \
 	echo "$$msg"; \
 	cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
-	@r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd` ; export s; \
+	@r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}` ; export s; \
 	$(SET_LIB_PATH) \
 	echo "Building runtime libraries"; \
 	$(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
 
 .PHONY: cross
 cross: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
-	@r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd`; export s; \
+	@r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	$(SET_LIB_PATH) \
 	echo "Building the C and C++ compiler"; \
 	cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
-	@r=`pwd`; export r; \
-	s=`cd $(srcdir); pwd` ; export s; \
+	@r=`$${PWDCMD-pwd}`; export r; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}` ; export s; \
 	$(SET_LIB_PATH) \
 	echo "Building runtime libraries"; \
 	$(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) \
@@ -1634,8 +1634,8 @@ cross: all-texinfo all-bison all-byacc a
 .PHONY: check-gcc
 check-gcc:
 	@if [ -f ./gcc/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) check); \
 	else \
@@ -1645,8 +1645,8 @@ check-gcc:
 .PHONY: check-c++
 check-c++:
 	@if [ -f ./gcc/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
 	  $(MAKE) check-target-libstdc++-v3; \
@@ -1657,8 +1657,8 @@ check-c++:
 .PHONY: install-gcc
 install-gcc:
 	@if [ -f ./gcc/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
 	else \
@@ -1668,8 +1668,8 @@ install-gcc:
 .PHONY: install-gcc-cross
 install-gcc-cross:
 	@if [ -f ./gcc/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++" install); \
 	else \
@@ -1682,8 +1682,8 @@ install-gcc-cross:
 install-dosrel: installdirs info
 	@dir=`echo $@ | sed -e 's/install-//'`; \
 	if [ -f ./$${dir}/Makefile ] ; then \
-	  r=`pwd`; export r; \
-	  s=`cd $(srcdir); pwd`; export s; \
+	  r=`$${PWDCMD-pwd}`; export r; \
+	  s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	  $(SET_LIB_PATH) \
 	  (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) install); \
 	else \
Index: config-ml.in
===================================================================
RCS file: /cvs/gcc/gcc/config-ml.in,v
retrieving revision 1.20
diff -u -p -r1.20 config-ml.in
--- config-ml.in	8 May 2002 18:26:56 -0000	1.20
+++ config-ml.in	14 May 2002 19:01:34 -0000
@@ -533,8 +533,8 @@ multi-do:
 	if [ -z "$(MULTIDIRS)" ]; then \
 	  true; \
 	else \
-	  rootpre=`pwd`/; export rootpre; \
-	  srcrootpre=`cd $(srcdir); pwd`/; export srcrootpre; \
+	  rootpre=`$${PWDCMD-pwd}`/; export rootpre; \
+	  srcrootpre=`cd $(srcdir); $${PWDCMD-pwd}`/; export srcrootpre; \
 	  lib=`echo $${rootpre} | sed -e 's,^.*/\([^/][^/]*\)/$$,\1,'`; \
 	  compiler="$(CC)"; \
 	  for i in `$${compiler} --print-multi-lib 2>/dev/null`; do \
@@ -570,7 +570,7 @@ multi-clean:
 	if [ -z "$(MULTIDIRS)" ]; then \
 	  true; \
 	else \
-	  lib=`pwd | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
+	  lib=`$${PWDCMD-pwd} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
 	  for dir in Makefile $(MULTIDIRS); do \
 	    if [ -f ../$${dir}/$${lib}/Makefile ]; then \
 	      if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) $(DO)); \
@@ -677,10 +677,10 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
 
   if [ "${ml_verbose}" = --verbose ]; then
     echo "Running configure in multilib subdirs ${multidirs}"
-    echo "pwd: `pwd`"
+    echo "pwd: `${PWDCMD-pwd}`"
   fi
 
-  ml_origdir=`pwd`
+  ml_origdir=`${PWDCMD-pwd}`
   ml_libdir=`echo $ml_origdir | sed -e 's,^.*/,,'`
   # cd to top-level-build-dir/${with_target_subdir}
   cd ..
@@ -689,7 +689,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
 
     if [ "${ml_verbose}" = --verbose ]; then
       echo "Running configure in multilib subdir ${ml_dir}"
-      echo "pwd: `pwd`"
+      echo "pwd: `${PWDCMD-pwd}`"
     fi
 
     if [ -d ${ml_dir} ]; then true; else
@@ -717,7 +717,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_n
 
     case ${srcdir} in
     ".")
-      echo Building symlink tree in `pwd`/${ml_dir}/${ml_libdir}
+      echo Building symlink tree in `${PWDCMD-pwd}`/${ml_dir}/${ml_libdir}
       if [ "${with_target_subdir}" != "." ]; then
 	ml_unsubdir="../"
       else
Index: configure
===================================================================
RCS file: /cvs/gcc/gcc/configure,v
retrieving revision 1.40
diff -u -p -r1.40 configure
--- configure	5 Dec 2001 12:40:39 -0000	1.40
+++ configure	14 May 2002 19:01:35 -0000
@@ -3,8 +3,8 @@
 ### WARNING: this file contains embedded tabs.  Do not run untabify on this file.
 
 # Configuration script
-# Copyright (C) 1988, 90, 91, 92, 93, 94, 95, 96, 97, 98, 1999, 2000, 2001
-# Free Software Foundation, Inc.
+# Copyright (C) 1988, 90, 91, 92, 93, 94, 95, 96, 97, 98, 1999, 2000, 2001,
+# 2002 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -152,13 +152,13 @@ NO_EDIT="This file was generated automat
 
 progname=$0
 # if PWD already has a value, it is probably wrong.
-if [ -n "$PWD" ]; then PWD=`pwd`; fi
+if [ -n "$PWD" ]; then PWD=`${PWDCMD-pwd}`; fi
 
 case "${progname}" in
 /* | [A-Za-z]:[\\/]* ) ;;
 */*) ;;
 *)
-        PATH=$PATH:${PWD=`pwd`} ; export PATH
+        PATH=$PATH:${PWD=`${PWDCMD-pwd}`} ; export PATH
         ;;
 esac
 
@@ -526,7 +526,7 @@ fi
 configsub=`echo ${progname} | sed 's/configure$/config.sub/'`
 moveifchange=`echo ${progname} | sed 's/configure$/move-if-change/'`
 ## the sed command below emulates the dirname command
-topsrcdir=`cd \`echo ${progname} | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'\`; pwd`
+topsrcdir=`cd \`echo ${progname} | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'\`; ${PWDCMD-pwd}`
 
 
 # this is a hack.  sun4 must always be a valid host alias or this will fail.
@@ -566,8 +566,8 @@ case "${srcdir}" in
 		echo "Invalid source directory ${srcdir}" >&2
 		exit 1
 	fi
-	pwd=`pwd`
-	srcpwd=`cd ${srcdir} ; pwd`
+	pwd=`${PWDCMD-pwd}`
+	srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
 	if [ "${pwd}" = "${srcpwd}" ] ; then
 		srcdir=.
 	fi
@@ -579,7 +579,7 @@ case "${srcdir}" in
 ".") ;;
 *)
         if [ -f ${srcdir}/config.status ] ; then
-                echo '***' Cannot configure here in \"${PWD=`pwd`}\" when \"${srcdir}\" is currently configured. 1>&2
+                echo '***' Cannot configure here in \"${PWD=`${PWDCMD-pwd}`}\" when \"${srcdir}\" is currently configured. 1>&2
                 exit 1
         fi
 esac
@@ -708,7 +708,7 @@ fi
 # some sanity checks on configure.in
 case "${srctrigger}" in
 "")
-        echo '***' srctrigger not set in ${PWD=`pwd`}/configure.in.  1>&2
+        echo '***' srctrigger not set in ${PWD=`${PWDCMD-pwd}`}/configure.in.  1>&2
         exit 1
         ;;
 *) ;;
@@ -778,8 +778,8 @@ esac
 
 if [ ! -r ${srcdir}/${srctrigger} ] ; then
         case "${srcdirdefaulted}" in
-        "") echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`pwd`}/${srcdir}" 1>&2 ;;
-        *)  echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`pwd`}/. or ${PWD=`pwd`}/.." 1>&2 ;;
+        "") echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`${PWDCMD-pwd}`}/${srcdir}" 1>&2 ;;
+        *)  echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`${PWDCMD-pwd}`}/. or ${PWD=`${PWDCMD-pwd}`}/.." 1>&2 ;;
         esac
 
         echo '***' \(At least ${srctrigger} is missing.\) 1>&2
@@ -1124,7 +1124,7 @@ for subdir in . ${subdirs} ; do
         if mkdir ${subdir} ; then
                 true
         else
-                echo '***' "${progname}: could not make ${PWD=`pwd`}/${subdir}" 1>&2
+                echo '***' "${progname}: could not make ${PWD=`${PWDCMD-pwd}`}/${subdir}" 1>&2
                 exit 1
         fi
     fi
@@ -1223,7 +1223,7 @@ EOF
                               sed -e "/^####/  r ${package_makefile_rules_frag}" ${srcdir}/${subdir}/${Makefile_in} > ${Makefile}.tem
                       else
                               echo '***' Expected package makefile rules fragment \"${package_makefile_rules_frag}\" 1>&2
-                              echo '***' is missing in ${PWD=`pwd`}. 1>&2
+                              echo '***' is missing in ${PWD=`${PWDCMD-pwd}`}. 1>&2
                               cp ${srcdir}/${subdir}/${Makefile_in} ${subdir}/Makefile.tem
                       fi
             esac
@@ -1259,7 +1259,7 @@ EOF
                               sed -e "/^####/  r ${host_makefile_frag}" ${Makefile} > ${subdir}/Makefile.tem
                       else
                               echo '***' Expected host makefile fragment \"${host_makefile_frag}\" 1>&2
-                              echo '***' is missing in ${PWD=`pwd`}. 1>&2
+                              echo '***' is missing in ${PWD=`${PWDCMD-pwd}`}. 1>&2
                               mv ${Makefile} ${subdir}/Makefile.tem
                       fi
             esac
@@ -1295,7 +1295,7 @@ EOF
                               sed -e "/^####/  r ${package_makefile_frag}" ${Makefile} > ${subdir}/Makefile.tem
                       else
                               echo '***' Expected package makefile fragment \"${package_makefile_rules_frag}\" 1>&2
-                              echo '***' is missing in ${PWD=`pwd`}. 1>&2
+                              echo '***' is missing in ${PWD=`${PWDCMD-pwd}`}. 1>&2
                               mv ${Makefile} ${subdir}/Makefile.tem
                       fi
             esac
@@ -1481,7 +1481,7 @@ EOF
 
         newusing=`echo "${using}" | sed 's/and/using/'`
         using=${newusing}
-        echo "Created \"${Makefile}\" in" ${PWD=`pwd`} ${using}
+        echo "Created \"${Makefile}\" in" ${PWD=`${PWDCMD-pwd}`} ${using}
 
         . ${tmpfile}.pos
 
@@ -1547,14 +1547,14 @@ if [ -z "${norecursion}" ] && [ -n "${co
                                         if mkdir ./${bld_dir} ; then
                                                 true
                                         else
-                                                echo '***' "${progname}: could not make ${PWD=`pwd`}/${bld_dir}" 1>&2
+                                                echo '***' "${progname}: could not make ${PWD=`${PWDCMD-pwd}`}/${bld_dir}" 1>&2
                                                 exit 1
                                         fi
                                 fi
                                 ;;
                         esac
 
-                        POPDIR=${PWD=`pwd`}
+                        POPDIR=${PWD=`${PWDCMD-pwd}`}
                         cd ${bld_dir} 
 
 ### figure out what to do with srcdir
@@ -1602,7 +1602,7 @@ if [ -z "${norecursion}" ] && [ -n "${co
                 	                ${srcdiroption} ${diroptions} ${program_prefixoption} ${program_suffixoption} ${program_transform_nameoption} ${site_option} ${withoptions} ${withoutoptions} ${enableoptions} ${disableoptions} ${floating_pointoption} ${cache_file_option} ${removing} ${other_options} ${redirect} ; then
 	                                true
         	                else
-					echo Configure in `pwd` failed, exiting. 1>&2
+					echo Configure in `${PWDCMD-pwd}` failed, exiting. 1>&2
                 	                exit 1
                         	fi
 			fi
Index: configure.in
===================================================================
RCS file: /cvs/gcc/gcc/configure.in,v
retrieving revision 1.144
diff -u -p -r1.144 configure.in
--- configure.in	5 May 2002 18:57:50 -0000	1.144
+++ configure.in	14 May 2002 19:01:35 -0000
@@ -446,7 +446,7 @@ target_subdir=${target_alias}
 if test ! -d ${target_subdir} ; then
   if mkdir ${target_subdir} ; then true
   else
-    echo "'*** could not make ${PWD=`pwd`}/${target_subdir}" 1>&2
+    echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${target_subdir}" 1>&2
     exit 1
   fi
 fi
@@ -457,7 +457,7 @@ if test x"${build_alias}" != x"${host}" 
   if test ! -d ${build_subdir} ; then
     if mkdir ${build_subdir} ; then true
     else
-      echo "'*** could not make ${PWD=`pwd`}/${build_subdir}" 1>&2
+      echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${build_subdir}" 1>&2
       exit 1
     fi
   fi
Index: boehm-gc/acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/boehm-gc/acinclude.m4,v
retrieving revision 1.17
diff -u -p -r1.17 acinclude.m4
--- boehm-gc/acinclude.m4	16 Oct 2001 09:01:35 -0000	1.17
+++ boehm-gc/acinclude.m4	14 May 2002 19:01:35 -0000
@@ -1,4 +1,4 @@
-# Copyright (c) 1999-2001 by Red Hat, Inc. All rights reserved.
+# Copyright (c) 1999-2001, 2002 by Red Hat, Inc. All rights reserved.
 # 
 # THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
 # OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.
@@ -52,7 +52,7 @@ fi
 AC_CANONICAL_SYSTEM
 
 # This works around an automake problem.
-mkinstalldirs="`cd $ac_aux_dir && pwd`/mkinstalldirs"
+mkinstalldirs="`cd $ac_aux_dir && ${PWDCMD-pwd}`/mkinstalldirs"
 AC_SUBST(mkinstalldirs)
 
 AM_INIT_AUTOMAKE(gc, 6.1a1, no-define)
Index: config/acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/config/acinclude.m4,v
retrieving revision 1.3
diff -u -p -r1.3 acinclude.m4
--- config/acinclude.m4	15 Apr 2002 21:59:09 -0000	1.3
+++ config/acinclude.m4	14 May 2002 19:01:37 -0000
@@ -206,7 +206,7 @@ dnl Look for the header file
 AC_CACHE_VAL(ac_cv_c_bfdh,[
 for i in $dirlist; do
     if test -f "$i/bfd/bfd.h" ; then
-	ac_cv_c_bfdh=`(cd $i/bfd; pwd)`
+	ac_cv_c_bfdh=`(cd $i/bfd; ${PWDCMD-pwd})`
 	break
     fi
 done
@@ -224,7 +224,7 @@ AC_MSG_CHECKING(for the bfd library in t
 AC_CACHE_VAL(ac_cv_c_bfdlib,[
 for i in $dirlist; do
     if test -f "$i/bfd/Makefile" ; then
-	ac_cv_c_bfdlib=`(cd $i/bfd; pwd)`
+	ac_cv_c_bfdlib=`(cd $i/bfd; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -247,7 +247,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_liberty,[
 for i in $dirlist; do
     if test -f "$i/libiberty/Makefile" ; then
-	ac_cv_c_liberty=`(cd $i/libiberty; pwd)`
+	ac_cv_c_liberty=`(cd $i/libiberty; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -268,7 +268,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_opc,[
 for i in $dirlist; do
     if test -f "$i/opcodes/Makefile" ; then
-	ac_cv_c_opc=`(cd $i/opcodes; pwd)`
+	ac_cv_c_opc=`(cd $i/opcodes; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -290,7 +290,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_dejagnu,[
 for i in $dirlist; do
     if test -f "$srcdir/$i/ecc/ecc/infra/testlib/current/include/dejagnu.h" ; then
-	ac_cv_c_dejagnu=`(cd $srcdir/$i/ecc/ecc/infra/testlib/current/include; pwd)`
+	ac_cv_c_dejagnu=`(cd $srcdir/$i/ecc/ecc/infra/testlib/current/include; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -303,7 +303,7 @@ fi
 AC_CACHE_VAL(ac_cv_c_dejagnulib,[
 for i in $dirlist; do
     if test -f "$srcdir/$i/infra/testlib/current/lib/hostutil.exp" ; then
-	ac_cv_c_dejagnulib=`(cd $srcdir/$i/infra/testlib/current/lib; pwd)`
+	ac_cv_c_dejagnulib=`(cd $srcdir/$i/infra/testlib/current/lib; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -316,7 +316,7 @@ AC_MSG_CHECKING(for runtest in the sourc
 AC_CACHE_VAL(ac_cv_c_runtest,[
 for i in $dirlist; do
     if test -f "$srcdir/$i/dejagnu/runtest" ; then
-	ac_cv_c_runtest=`(cd $srcdir/$i/dejagnu; pwd)`
+	ac_cv_c_runtest=`(cd $srcdir/$i/dejagnu; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -342,7 +342,7 @@ dnl Look for the header file
 AC_CACHE_VAL(ac_cv_c_intlh,[
 for i in $dirlist; do
     if test -f "$i/intl/libintl.h" ; then
-	ac_cv_c_intlh=`(cd $i/intl; pwd)`
+	ac_cv_c_intlh=`(cd $i/intl; ${PWDCMD-pwd})`
 	break
     fi
 done
@@ -360,7 +360,7 @@ AC_MSG_CHECKING(for the libintl library 
 AC_CACHE_VAL(ac_cv_c_intllib,[
 for i in $dirlist; do
     if test -f "$i/intl/Makefile" ; then
-	ac_cv_c_intllib=`(cd $i/intl; pwd)`
+	ac_cv_c_intllib=`(cd $i/intl; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -388,7 +388,7 @@ AC_MSG_CHECKING(for the simulator header
 AC_CACHE_VAL(ac_cv_c_simh,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/include/remote-sim.h" ; then
-	ac_cv_c_simh=`(cd ${srcdir}/$i/include; pwd)`
+	ac_cv_c_simh=`(cd ${srcdir}/$i/include; ${PWDCMD-pwd})`
 	break
     fi
 done
@@ -420,7 +420,7 @@ AC_MSG_CHECKING(for the simulator librar
 AC_CACHE_VAL(ac_cv_c_simlib,[
 for i in $dirlist; do
     if test -f "$i/sim/$target_dir/Makefile" ; then
-	ac_cv_c_simlib=`(cd $i/sim/$target_dir; pwd)`
+	ac_cv_c_simlib=`(cd $i/sim/$target_dir; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -463,7 +463,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_libib,[
 for i in $dirlist; do
     if test -f "$i/libiberty/Makefile" ; then
-	ac_cv_c_libib=`(cd $i/libiberty/; pwd)`
+	ac_cv_c_libib=`(cd $i/libiberty/; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -483,7 +483,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_devoh,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/include/remote-sim.h" ; then
-	ac_cv_c_devoh=`(cd ${srcdir}/$i/include; pwd)`
+	ac_cv_c_devoh=`(cd ${srcdir}/$i/include; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -506,7 +506,7 @@ IDELIB=
 AC_CACHE_VAL(ac_cv_c_ideh,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/libide/src/event.h" ; then
-	ac_cv_c_ideh=`(cd ${srcdir}/$i/libide/src; pwd)`;
+	ac_cv_c_ideh=`(cd ${srcdir}/$i/libide/src; ${PWDCMD-pwd})`;
     fi
 done
 ])
@@ -521,7 +521,7 @@ AC_MSG_CHECKING(for LIBIDE TCL headers i
 AC_CACHE_VAL(ac_cv_c_idetclh,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/libidetcl/src/idetcl.h" ; then
-	ac_cv_c_idetclh=`(cd ${srcdir}/$i/libidetcl/src; pwd)`;
+	ac_cv_c_idetclh=`(cd ${srcdir}/$i/libidetcl/src; ${PWDCMD-pwd})`;
     fi
 done
 ])
@@ -536,7 +536,7 @@ AC_MSG_CHECKING(for IDE headers in the b
 AC_CACHE_VAL(ac_cv_c_ideh2,[
 for i in $dirlist; do
     if test -f "$i/libide/src/Makefile" ; then
-	ac_cv_c_ideh2=`(cd $i/libide/src; pwd)`;
+	ac_cv_c_ideh2=`(cd $i/libide/src; ${PWDCMD-pwd})`;
     fi
 done
 ])
@@ -553,7 +553,7 @@ AC_CACHE_VAL(ac_cv_c_idelib,[
 if test x"${ac_cv_c_idelib}" = x ; then
     for i in $dirlist; do
       if test -f "$i/libide/src/Makefile" ; then
-        ac_cv_c_idelib=`(cd $i/libide/src; pwd)`
+        ac_cv_c_idelib=`(cd $i/libide/src; ${PWDCMD-pwd})`
         break
       fi
     done
@@ -571,7 +571,7 @@ AC_CACHE_VAL(ac_cv_c_idetcllib,[
 if test x"${ac_cv_c_idetcllib}" = x ; then
     for i in $dirlist; do
       if test -f "$i/libidetcl/src/Makefile" ; then
-        ac_cv_c_idetcllib=`(cd $i/libidetcl/src; pwd)`
+        ac_cv_c_idetcllib=`(cd $i/libidetcl/src; ${PWDCMD-pwd})`
         break
       fi
     done
@@ -597,7 +597,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_iluh,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/ilu/runtime/kernel/method.h" ; then
-	ac_cv_c_iluh=`(cd ${srcdir}/$i/ilu/runtime/kernel; pwd)`
+	ac_cv_c_iluh=`(cd ${srcdir}/$i/ilu/runtime/kernel; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -613,7 +613,7 @@ dirlist=".. ../../ ../../../ ../../../..
 AC_CACHE_VAL(ac_cv_c_iluh5,[
 for i in $dirlist; do
     if test -f "$i/ilu/runtime/kernel/iluconf.h" ; then
-	ac_cv_c_iluh5=`(cd $i/ilu/runtime/kernel; pwd)`
+	ac_cv_c_iluh5=`(cd $i/ilu/runtime/kernel; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -628,7 +628,7 @@ AC_MSG_CHECKING(for ILU C++ headers in t
 AC_CACHE_VAL(ac_cv_c_iluh2,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/ilu/stubbers/cpp/resource.h" ; then
-	ac_cv_c_iluh2=`(cd ${srcdir}/$i/ilu/stubbers/cpp; pwd)`
+	ac_cv_c_iluh2=`(cd ${srcdir}/$i/ilu/stubbers/cpp; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -643,7 +643,7 @@ AC_MSG_CHECKING(for ILU C headers)
 AC_CACHE_VAL(ac_cv_c_iluh3,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/ilu/stubbers/c/resource.h" ; then
-	ac_cv_c_iluh3=`(cd ${srcdir}/$i/ilu/stubbers/c  ; pwd)`
+	ac_cv_c_iluh3=`(cd ${srcdir}/$i/ilu/stubbers/c  ; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -658,7 +658,7 @@ AC_MSG_CHECKING(for ILU C runtime header
 AC_CACHE_VAL(ac_cv_c_iluh4,[
 for i in $dirlist; do
     if test -f "${srcdir}/$i/ilu/runtime/c/ilucstub.h" ; then
-	ac_cv_c_iluh4=`(cd ${srcdir}/$i/ilu/runtime/c  ; pwd)`
+	ac_cv_c_iluh4=`(cd ${srcdir}/$i/ilu/runtime/c  ; ${PWDCMD-pwd})`
     fi
 done
 ])
@@ -672,7 +672,7 @@ fi
 AC_CACHE_VAL(ac_cv_c_ilupath,[
 for i in $dirlist; do
     if test -f "$i/ilu/Makefile" ; then
-	ac_cv_c_ilupath=`(cd $i/ilu; pwd)`
+	ac_cv_c_ilupath=`(cd $i/ilu; ${PWDCMD-pwd})`
 	break
     fi
 done
@@ -682,7 +682,7 @@ ILUTOP=${ac_cv_c_ilupath}
 AC_MSG_CHECKING(for the ILU library in the build tree)
 AC_CACHE_VAL(ac_cv_c_ilulib,[
 if test -f "$ac_cv_c_ilupath/runtime/kernel/Makefile" ; then
-    ac_cv_c_ilulib=`(cd $ac_cv_c_ilupath/runtime/kernel; pwd)`
+    ac_cv_c_ilulib=`(cd $ac_cv_c_ilupath/runtime/kernel; ${PWDCMD-pwd})`
     AC_MSG_RESULT(found ${ac_cv_c_ilulib}/libilu.a)
 else
     AC_MSG_RESULT(no)
@@ -691,7 +691,7 @@ fi])
 AC_MSG_CHECKING(for the ILU C++ bindings library in the build tree)
 AC_CACHE_VAL(ac_cv_c_ilulib2,[
 if test -f "$ac_cv_c_ilupath/runtime/cpp/Makefile" ; then
-    ac_cv_c_ilulib2=`(cd $ac_cv_c_ilupath/runtime/cpp; pwd)`
+    ac_cv_c_ilulib2=`(cd $ac_cv_c_ilupath/runtime/cpp; ${PWDCMD-pwd})`
     AC_MSG_RESULT(found ${ac_cv_c_ilulib2}/libilu-c++.a)
 else
     AC_MSG_RESULT(no)
@@ -700,7 +700,7 @@ fi])
 AC_MSG_CHECKING(for the ILU C bindings library in the build tree)
 AC_CACHE_VAL(ac_cv_c_ilulib3,[
 if test -f "$ac_cv_c_ilupath/runtime/c/Makefile" ; then
-    ac_cv_c_ilulib3=`(cd $ac_cv_c_ilupath/runtime/c; pwd)`
+    ac_cv_c_ilulib3=`(cd $ac_cv_c_ilupath/runtime/c; ${PWDCMD-pwd})`
     AC_MSG_RESULT(found ${ac_cv_c_ilulib3}/libilu-c.a)
 else
     AC_MSG_RESULT(no)
@@ -709,7 +709,7 @@ fi])
 AC_MSG_CHECKING(for the ILU Tk bindings library in the build tree)
 AC_CACHE_VAL(ac_cv_c_ilulib4,[
 if test -f "$ac_cv_c_ilupath/runtime/mainloop/Makefile" ; then
-    ac_cv_c_ilulib4=`(cd $ac_cv_c_ilupath/runtime/mainloop; pwd)`
+    ac_cv_c_ilulib4=`(cd $ac_cv_c_ilupath/runtime/mainloop; ${PWDCMD-pwd})`
     AC_MSG_RESULT(found ${ac_cv_c_ilulib4}/libilu-tk.a)
 else
     AC_MSG_RESULT(no)
@@ -858,9 +858,9 @@ AC_CACHE_VAL(ac_cv_c_tclh,[
 dnl first check to see if --with-tclinclude was specified
 if test x"${with_tclinclude}" != x ; then
   if test -f ${with_tclinclude}/tcl.h ; then
-    ac_cv_c_tclh=`(cd ${with_tclinclude}; pwd)`
+    ac_cv_c_tclh=`(cd ${with_tclinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_tclinclude}/generic/tcl.h ; then
-    ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; pwd)`
+    ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_tclinclude} directory doesn't contain headers])
   fi
@@ -870,7 +870,7 @@ dnl next check if it came with Tcl confi
 if test x"${ac_cv_c_tclconfig}" != x ; then
   for i in $dirlist; do
     if test -f $ac_cv_c_tclconfig/$i/generic/tcl.h ; then
-      ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/$i/generic; pwd)`
+      ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/$i/generic; ${PWDCMD-pwd})`
       break
     fi
   done
@@ -891,7 +891,7 @@ if test x"${ac_cv_c_tclh}" = x ; then
     dnl might be multiple version of Tcl, and we want the most recent one.
     for i in `ls -dr $tclpath/tcl* 2>/dev/null ` ; do
         if test -f $i/generic/tcl.h ; then
-          ac_cv_c_tclh=`(cd $i/generic; pwd)`
+          ac_cv_c_tclh=`(cd $i/generic; ${PWDCMD-pwd})`
           break
         fi
     done
@@ -950,7 +950,7 @@ if test x"${no_tcl}" = x ; then
     dnl First check to see if --with-tclconfig was specified.
     if test x"${with_tclconfig}" != x ; then
         if test -f "${with_tclconfig}/tclConfig.sh" ; then
-            ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)`
+            ac_cv_c_tclconfig=`(cd ${with_tclconfig}; ${PWDCMD-pwd})`
         else
             AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh])
         fi
@@ -963,11 +963,11 @@ if test x"${no_tcl}" = x ; then
             dnl cygwin's tkConfig.sh could be in either directory depending
             dnl on the cygwin port of tcl.
             if test -f $srcdir/$i/unix/tclConfig.sh ; then
-                ac_cv_c_tclconfig=`(cd $srcdir/$i/unix; pwd)`
+                ac_cv_c_tclconfig=`(cd $srcdir/$i/unix; ${PWDCMD-pwd})`
 	        break
             fi
             if test -f $srcdir/$i/win/tclConfig.sh ; then
-                ac_cv_c_tclconfig=`(cd $srcdir/$i/win; pwd)`
+                ac_cv_c_tclconfig=`(cd $srcdir/$i/win; ${PWDCMD-pwd})`
 	        break
             fi
         done
@@ -989,11 +989,11 @@ if test x"${no_tcl}" = x ; then
             dnl cygwin's tclConfig.sh could be in either directory depending
             dnl on the cygwin port of tcl.
             if test -f $i/unix/tclConfig.sh ; then
-                ac_cv_c_tclconfig=`(cd $i/unix; pwd)`
+                ac_cv_c_tclconfig=`(cd $i/unix; ${PWDCMD-pwd})`
                 break
             fi
             if test -f $i/win/tclConfig.sh ; then
-                ac_cv_c_tclconfig=`(cd $i/win; pwd)`
+                ac_cv_c_tclconfig=`(cd $i/win; ${PWDCMD-pwd})`
                 break
             fi
         done
@@ -1097,9 +1097,9 @@ AC_CACHE_VAL(ac_cv_c_tkh,[
 dnl first check to see if --with-tkinclude was specified
 if test x"${with_tkinclude}" != x ; then
   if test -f ${with_tkinclude}/tk.h ; then
-    ac_cv_c_tkh=`(cd ${with_tkinclude}; pwd)`
+    ac_cv_c_tkh=`(cd ${with_tkinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_tkinclude}/generic/tk.h ; then
-    ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; pwd)`
+    ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_tkinclude} directory doesn't contain headers])
   fi
@@ -1109,7 +1109,7 @@ dnl next check if it came with Tk config
 if test x"${ac_cv_c_tkconfig}" != x ; then
   for i in $dirlist; do
     if test -f $ac_cv_c_tkconfig/$i/generic/tk.h ; then
-      ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/$i/generic; pwd)`
+      ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/$i/generic; ${PWDCMD-pwd})`
       break
     fi
   done
@@ -1130,7 +1130,7 @@ if test x"${ac_cv_c_tkh}" = x ; then
     dnl might be multiple version of Tk, and we want the most recent one.
     for i in `ls -dr $tkpath/tk* 2>/dev/null ` ; do
         if test -f $i/generic/tk.h ; then
-          ac_cv_c_tkh=`(cd $i/generic; pwd)`
+          ac_cv_c_tkh=`(cd $i/generic; ${PWDCMD-pwd})`
           break
         fi
     done
@@ -1183,7 +1183,7 @@ if test x"${no_tk}" = x ; then
     dnl First check to see if --with-tkconfig was specified.
     if test x"${with_tkconfig}" != x ; then
         if test -f "${with_tkconfig}/tkConfig.sh" ; then
-            ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)`
+            ac_cv_c_tkconfig=`(cd ${with_tkconfig}; ${PWDCMD-pwd})`
         else
             AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh])
         fi
@@ -1196,11 +1196,11 @@ if test x"${no_tk}" = x ; then
             dnl cygwin's tkConfig.sh could be in either directory depending
             dnl on the cygwin port of tk.
             if test -f $srcdir/$i/unix/tkConfig.sh ; then
-                ac_cv_c_tkconfig=`(cd $srcdir/$i/unix; pwd)`
+                ac_cv_c_tkconfig=`(cd $srcdir/$i/unix; ${PWDCMD-pwd})`
 	        break
             fi
             if test -f $srcdir/$i/win/tkConfig.sh ; then
-                ac_cv_c_tkconfig=`(cd $srcdir/$i/unix; pwd)`
+                ac_cv_c_tkconfig=`(cd $srcdir/$i/unix; ${PWDCMD-pwd})`
 	        break
             fi
         done
@@ -1222,11 +1222,11 @@ if test x"${no_tk}" = x ; then
             dnl cygwin's tkConfig.sh could be in either directory depending
             dnl on the cygwin port of tk.
             if test -f $i/unix/tkConfig.sh ; then
-                ac_cv_c_tkconfig=`(cd $i/unix; pwd)`
+                ac_cv_c_tkconfig=`(cd $i/unix; ${PWDCMD-pwd})`
                 break
             fi
             if test -f $i/win/tkConfig.sh ; then
-                ac_cv_c_tkconfig=`(cd $i/win; pwd)`
+                ac_cv_c_tkconfig=`(cd $i/win; ${PWDCMD-pwd})`
                 break
             fi
         done
@@ -1302,9 +1302,9 @@ AC_CACHE_VAL(ac_cv_c_itclh,[
 dnl first check to see if --with-itclinclude was specified
 if test x"${with_itclinclude}" != x ; then
   if test -f ${with_itclinclude}/itcl.h ; then
-    ac_cv_c_itclh=`(cd ${with_itclinclude}; pwd)`
+    ac_cv_c_itclh=`(cd ${with_itclinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_itclinclude}/src/itcl.h ; then
-    ac_cv_c_itclh=`(cd ${with_itclinclude}/src; pwd)`
+    ac_cv_c_itclh=`(cd ${with_itclinclude}/src; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_itclinclude} directory doesn't contain headers])
   fi
@@ -1314,7 +1314,7 @@ dnl next check if it came with Itcl conf
 if test x"${ac_cv_c_itclconfig}" != x ; then
   for i in $dirlist; do
     if test -f $ac_cv_c_itclconfig/$i/src/itcl.h ; then
-      ac_cv_c_itclh=`(cd $ac_cv_c_itclconfig/$i/src; pwd)`
+      ac_cv_c_itclh=`(cd $ac_cv_c_itclconfig/$i/src; ${PWDCMD-pwd})`
       break
     fi
   done
@@ -1335,7 +1335,7 @@ if test x"${ac_cv_c_itclh}" = x ; then
     dnl might be multiple version of Itcl, and we want the most recent one.
     for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do
         if test -f $i/src/itcl.h ; then
-          ac_cv_c_itclh=`(cd $i/src; pwd)`
+          ac_cv_c_itclh=`(cd $i/src; ${PWDCMD-pwd})`
           break
         fi
     done
@@ -1380,10 +1380,10 @@ if test x"${no_itcl}" = x ; then
     dnl First check to see if --with-itcllib was specified.
     if test x"${with_itcllib}" != x ; then
         if test -f "${with_itcllib}/libitcl$TCL_SHARED_LIB_SUFFIX" ; then
-            ac_cv_c_itcllib=`(cd ${with_itcllib}; pwd)`/libitcl$TCL_SHARED_LIB_SUFFIX
+            ac_cv_c_itcllib=`(cd ${with_itcllib}; ${PWDCMD-pwd})`/libitcl$TCL_SHARED_LIB_SUFFIX
 	else
 	    if test -f "${with_itcllib}/libitcl$TCL_UNSHARED_LIB_SUFFIX"; then
-	 	ac_cv_c_itcllib=`(cd ${with_itcllib}; pwd)`/libitcl$TCL_UNSHARED_LIB_SUFFIX
+	 	ac_cv_c_itcllib=`(cd ${with_itcllib}; ${PWDCMD-pwd})`/libitcl$TCL_UNSHARED_LIB_SUFFIX
 	    fi
 	fi
     fi
@@ -1399,9 +1399,9 @@ if test x"${no_itcl}" = x ; then
         done
         dnl Itcl 7.5 and greater puts library in subdir.  Look there first.
         if test -f "$itclpath/src/libitcl.$TCL_SHLIB_SUFFIX" ; then
-	     ac_cv_c_itcllib=`(cd $itclpath/src; pwd)`
+	     ac_cv_c_itcllib=`(cd $itclpath/src; ${PWDCMD-pwd})`
         elif test -f "$itclpath/src/libitcl.a"; then
-	     ac_cv_c_itcllib=`(cd $itclpath/src; pwd)`
+	     ac_cv_c_itcllib=`(cd $itclpath/src; ${PWDCMD-pwd})`
 	fi
     fi
     dnl check in a few other private locations
@@ -1415,10 +1415,10 @@ if test x"${no_itcl}" = x ; then
         for i in `ls -dr ${itclpath}/itcl* 2>/dev/null` ; do
             dnl Itcl 7.5 and greater puts library in subdir.  Look there first.
             if test -f "$i/src/libitcl$TCL_SHLIB_SUFFIX" ; then
-	        ac_cv_c_itcllib=`(cd $i/src; pwd)`
+	        ac_cv_c_itcllib=`(cd $i/src; ${PWDCMD-pwd})`
 	        break
             elif test -f "$i/src/libitcl.a"; then
-	        ac_cv_c_itcllib=`(cd $i/src; pwd)`
+	        ac_cv_c_itcllib=`(cd $i/src; ${PWDCMD-pwd})`
 	        break
 	    fi	
         done
@@ -1430,9 +1430,9 @@ if test x"${no_itcl}" = x ; then
 	ccpath=`which ${CC}  | sed -e 's:/bin/.*::'`/lib
         dnl Itcl 7.5 and greater puts library in subdir.  Look there first.
         if test -f "${ccpath}/libitcl$TCL_SHLIB_SUFFIX" ; then
-	    ac_cv_c_itcllib=`(cd ${ccpath}; pwd)`
+	    ac_cv_c_itcllib=`(cd ${ccpath}; ${PWDCMD-pwd})`
         elif test -f "${ccpath}/libitcl.a"; then
-	    ac_cv_c_itcllib=`(cd ${ccpath}; pwd)`
+	    ac_cv_c_itcllib=`(cd ${ccpath}; ${PWDCMD-pwd})`
         fi
     fi
     ])
@@ -1463,9 +1463,9 @@ AC_CACHE_VAL(ac_cv_c_itclsh,[
 dnl first check to see if --with-itclinclude was specified
 if test x"${with_itclinclude}" != x ; then
   if test -f ${with_itclinclude}/itcl_sh ; then
-    ac_cv_c_itclsh=`(cd ${with_itclinclude}; pwd)`
+    ac_cv_c_itclsh=`(cd ${with_itclinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_itclinclude}/src/itcl_sh ; then
-    ac_cv_c_itclsh=`(cd ${with_itclinclude}/src; pwd)`
+    ac_cv_c_itclsh=`(cd ${with_itclinclude}/src; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_itclinclude} directory doesn't contain itcl_sh])
   fi
@@ -1486,7 +1486,7 @@ if test x"${ac_cv_c_itclsh}" = x ; then
     dnl might be multiple version of Itcl, and we want the most recent one.
     for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do
         if test -f $i/src/itcl_sh ; then
-          ac_cv_c_itclsh=`(cd $i/src; pwd)`/itcl_sh
+          ac_cv_c_itclsh=`(cd $i/src; ${PWDCMD-pwd})`/itcl_sh
           break
         fi
     done
@@ -1525,9 +1525,9 @@ AC_CACHE_VAL(ac_cv_c_itclmkidx,[
 dnl first check to see if --with-itclinclude was specified
 if test x"${with_itclinclude}" != x ; then
   if test -f ${with_itclinclude}/itcl_sh ; then
-    ac_cv_c_itclmkidx=`(cd ${with_itclinclude}; pwd)`
+    ac_cv_c_itclmkidx=`(cd ${with_itclinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_itclinclude}/src/itcl_sh ; then
-    ac_cv_c_itclmkidx=`(cd ${with_itclinclude}/src; pwd)`
+    ac_cv_c_itclmkidx=`(cd ${with_itclinclude}/src; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_itclinclude} directory doesn't contain itcl_sh])
   fi
@@ -1548,7 +1548,7 @@ if test x"${ac_cv_c_itclmkidx}" = x ; th
     dnl might be multiple version of Itcl, and we want the most recent one.
     for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do
         if test -f $i/library/itcl_mkindex.tcl ; then
-          ac_cv_c_itclmkidx=`(cd $i/library; pwd)`/itcl_mkindex.tcl
+          ac_cv_c_itclmkidx=`(cd $i/library; ${PWDCMD-pwd})`/itcl_mkindex.tcl
           break
         fi
     done
@@ -1559,7 +1559,7 @@ if test x"${ac_cv_c_itclmkidx}" = x ; th
     dnl Itcl 7.5 and greater puts library in subdir.  Look there first.
     for i in `ls -dr $ccpath/itcl* 2>/dev/null ` ; do
         if test -f $i/itcl_mkindex.tcl ; then
-            ac_cv_c_itclmkidx=`(cd $i; pwd)`/itcl_mkindex.tcl
+            ac_cv_c_itclmkidx=`(cd $i; ${PWDCMD-pwd})`/itcl_mkindex.tcl
             break
         fi
     done
@@ -1595,9 +1595,9 @@ AC_CACHE_VAL(ac_cv_c_tixh,[
 dnl first check to see if --with-tixinclude was specified
 if test x"${with_tixinclude}" != x ; then
   if test -f ${with_tixinclude}/tix.h ; then
-    ac_cv_c_tixh=`(cd ${with_tixinclude}; pwd)`
+    ac_cv_c_tixh=`(cd ${with_tixinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_tixinclude}/generic/tix.h ; then
-    ac_cv_c_tixh=`(cd ${with_tixinclude}/generic; pwd)`
+    ac_cv_c_tixh=`(cd ${with_tixinclude}/generic; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_tixinclude} directory doesn't contain headers])
   fi
@@ -1607,7 +1607,7 @@ dnl next check if it came with Tix confi
 if test x"${ac_cv_c_tixconfig}" != x ; then
   for i in $dirlist; do
     if test -f $ac_cv_c_tixconfig/$i/generic/tix.h ; then
-      ac_cv_c_tixh=`(cd $ac_cv_c_tixconfig/$i/generic; pwd)`
+      ac_cv_c_tixh=`(cd $ac_cv_c_tixconfig/$i/generic; ${PWDCMD-pwd})`
       break
     fi
   done
@@ -1628,7 +1628,7 @@ if test x"${ac_cv_c_tixh}" = x ; then
     dnl might be multiple version of Tix, and we want the most recent one.
     for i in `ls -dr $tixpath/tix* 2>/dev/null ` ; do
         if test -f $i/generic/tix.h ; then
-          ac_cv_c_tixh=`(cd $i/generic; pwd)`
+          ac_cv_c_tixh=`(cd $i/generic; ${PWDCMD-pwd})`
           break
         fi
     done
@@ -1681,7 +1681,7 @@ if test x"${no_tix}" = x ; then
   # First check to see if --with-tixconfig was specified.
   if test x"${with_tixconfig}" != x ; then
     if test -f "${with_tixconfig}/tixConfig.sh" ; then
-      ac_cv_c_tixconfig=`(cd ${with_tixconfig}; pwd)`
+      ac_cv_c_tixconfig=`(cd ${with_tixconfig}; ${PWDCMD-pwd})`
     else
       AC_MSG_ERROR([${with_tixconfig} directory doesn't contain tixConfig.sh])
     fi
@@ -1697,7 +1697,7 @@ if test x"${no_tix}" = x ; then
 		../../../tix \
 		`ls -dr ../../../tix[[4]]* 2>/dev/null` ; do
       if test -f "$i/tixConfig.sh" ; then
-        ac_cv_c_tixconfig=`(cd $i; pwd)`
+        ac_cv_c_tixconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1706,7 +1706,7 @@ if test x"${no_tix}" = x ; then
   if test x"${ac_cv_c_tixconfig}" = x ; then
     for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
       if test -f "$i/tixConfig.sh" ; then
-        ac_cv_c_tkconfig=`(cd $i; pwd)`
+        ac_cv_c_tkconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1717,7 +1717,7 @@ if test x"${no_tix}" = x ; then
 		${srcdir}/../tix \
 		`ls -dr ${srcdir}/../tix[[4-9]]* 2>/dev/null` ; do
       if test -f "$i/tixConfig.sh" ; then
-        ac_cv_c_tixconfig=`(cd $i; pwd)`
+        ac_cv_c_tixconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1764,7 +1764,7 @@ if test x"${no_itcl}" = x ; then
   # First check to see if --with-itclconfig was specified.
   if test x"${with_itclconfig}" != x ; then
     if test -f "${with_itclconfig}/itclConfig.sh" ; then
-      ac_cv_c_itclconfig=`(cd ${with_itclconfig}; pwd)`
+      ac_cv_c_itclconfig=`(cd ${with_itclconfig}; ${PWDCMD-pwd})`
     else
       AC_MSG_ERROR([${with_itclconfig} directory doesn't contain itclConfig.sh])
     fi
@@ -1780,7 +1780,7 @@ if test x"${no_itcl}" = x ; then
 		../../../itcl/itcl \
 		`ls -dr ../../../itcl/itcl[[3]]* 2>/dev/null` ; do
       if test -f "$i/itclConfig.sh" ; then
-        ac_cv_c_itclconfig=`(cd $i; pwd)`
+        ac_cv_c_itclconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1789,7 +1789,7 @@ if test x"${no_itcl}" = x ; then
   if test x"${ac_cv_c_itclconfig}" = x ; then
     for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
       if test -f "$i/itclConfig.sh" ; then
-        ac_cv_c_itclconfig=`(cd $i; pwd)`
+        ac_cv_c_itclconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1800,7 +1800,7 @@ if test x"${no_itcl}" = x ; then
 		${srcdir}/../itcl/itcl \
 		`ls -dr ${srcdir}/../itcl/itcl[[3]]* 2>/dev/null` ; do
       if test -f "$i/itcl/itclConfig.sh" ; then
-        ac_cv_c_itclconfig=`(cd $i; pwd)`
+        ac_cv_c_itclconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1851,7 +1851,7 @@ if test x"${no_itk}" = x ; then
   # First check to see if --with-itkconfig was specified.
   if test x"${with_itkconfig}" != x ; then
     if test -f "${with_itkconfig}/itkConfig.sh" ; then
-      ac_cv_c_itkconfig=`(cd ${with_itkconfig}; pwd)`
+      ac_cv_c_itkconfig=`(cd ${with_itkconfig}; ${PWDCMD-pwd})`
     else
       AC_MSG_ERROR([${with_itkconfig} directory doesn't contain itkConfig.sh])
     fi
@@ -1867,7 +1867,7 @@ if test x"${no_itk}" = x ; then
 		../../../itcl/itk \
 		`ls -dr ../../../itcl/itk[[3]]* 2>/dev/null` ; do
       if test -f "$i/itkConfig.sh" ; then
-        ac_cv_c_itkconfig=`(cd $i; pwd)`
+        ac_cv_c_itkconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1876,7 +1876,7 @@ if test x"${no_itk}" = x ; then
   if test x"${ac_cv_c_itkconfig}" = x ; then
     for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
       if test -f "$i/itcl/itkConfig.sh" ; then
-        ac_cv_c_itkconfig=`(cd $i; pwd)`
+        ac_cv_c_itkconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1887,7 +1887,7 @@ if test x"${no_itk}" = x ; then
 		${srcdir}/../itcl/itk \
 		`ls -dr ${srcdir}/../itcl/itk[[3]]* 2>/dev/null` ; do
       if test -f "$i/itkConfig.sh" ; then
-        ac_cv_c_itkconfig=`(cd $i; pwd)`
+        ac_cv_c_itkconfig=`(cd $i; ${PWDCMD-pwd})`
 	break
       fi
     done
@@ -1934,9 +1934,9 @@ AC_CACHE_VAL(ac_cv_c_libguih,[
 dnl first check to see if --with-libguiinclude was specified
 if test x"${with_libguiinclude}" != x ; then
   if test -f ${with_libguiinclude}/guitcl.h ; then
-    ac_cv_c_libguih=`(cd ${with_libguiinclude}; pwd)`
+    ac_cv_c_libguih=`(cd ${with_libguiinclude}; ${PWDCMD-pwd})`
   elif test -f ${with_libguiinclude}/src/guitcl.h ; then
-    ac_cv_c_libguih=`(cd ${with_libguiinclude}/src; pwd)`
+    ac_cv_c_libguih=`(cd ${with_libguiinclude}/src; ${PWDCMD-pwd})`
   else
     AC_MSG_ERROR([${with_libguiinclude} directory doesn't contain headers])
   fi
@@ -1946,7 +1946,7 @@ dnl next check if it came with Libgui co
 if test x"${ac_cv_c_libguiconfig}" != x ; then
   for i in $dirlist; do
     if test -f $ac_cv_c_libguiconfig/$i/src/guitcl.h ; then
-      ac_cv_c_libguih=`(cd $ac_cv_c_libguiconfig/$i/src; pwd)`
+      ac_cv_c_libguih=`(cd $ac_cv_c_libguiconfig/$i/src; ${PWDCMD-pwd})`
       break
     fi
   done
@@ -1967,7 +1967,7 @@ if test x"${ac_cv_c_libguih}" = x ; then
     dnl might be multiple version of Libgui, and we want the most recent one.
     for i in `ls -dr $libguipath/libgui* 2>/dev/null ` ; do
         if test -f $i/src/guitcl.h ; then
-          ac_cv_c_libguih=`(cd $i/src; pwd)`
+          ac_cv_c_libguih=`(cd $i/src; ${PWDCMD-pwd})`
           break
         fi
     done
@@ -2004,7 +2004,7 @@ AC_CACHE_VAL(ac_cv_c_libguilib,[
 if test x"${ac_cv_c_libguilib}" = x ; then
     for i in $dirlist; do
       if test -f "$i/libgui/src/Makefile" ; then
-        ac_cv_c_libguilib=`(cd $i/libgui/src; pwd)`
+        ac_cv_c_libguilib=`(cd $i/libgui/src; ${PWDCMD-pwd})`
         break
       fi
     done
Index: contrib/test_installed
===================================================================
RCS file: /cvs/gcc/gcc/contrib/test_installed,v
retrieving revision 1.3
diff -u -p -r1.3 test_installed
--- contrib/test_installed	8 Oct 2000 18:39:27 -0000	1.3
+++ contrib/test_installed	14 May 2002 19:01:37 -0000
@@ -1,6 +1,6 @@
 #! /bin/sh
 
-# (C) 1998, 2000 Free Software Foundation
+# (C) 1998, 2000, 2002 Free Software Foundation
 # Originally by Alexandre Oliva <oliva@dcc.unicamp.br>
 
 # This script is Free Software, and it can be copied, distributed and
@@ -96,11 +96,11 @@ if test x"${testsuite+set}" != x"set" &&
   while [ -h $file ]; do
     file=`ls -l $file | sed s/'.* -> '//`
   done
-  srcdir=`CDPATH=. && cd \`echo "$file" | sed 's,/*[^/]*$,,;s,^$,.,'\`/.. >/dev/null && pwd`
+  srcdir=`CDPATH=. && cd \`echo "$file" | sed 's,/*[^/]*$,,;s,^$,.,'\`/.. >/dev/null && ${PWDCMD-pwd}`
 fi
 
 cat >site.exp <<EOF
-set tmpdir "${tmpdir-`pwd`}"
+set tmpdir "${tmpdir-`${PWDCMD-pwd}`}"
 set srcdir "${testsuite-${srcdir}/gcc/testsuite}"
 set GCC_UNDER_TEST "${GCC_UNDER_TEST-${prefix}${prefix+/bin/}gcc}"
 set GXX_UNDER_TEST "${GXX_UNDER_TEST-${prefix}${prefix+/bin/}g++}"
Index: contrib/test_summary
===================================================================
RCS file: /cvs/gcc/gcc/contrib/test_summary,v
retrieving revision 1.20
diff -u -p -r1.20 test_summary
--- contrib/test_summary	24 Feb 2002 20:45:15 -0000	1.20
+++ contrib/test_summary	14 May 2002 19:01:37 -0000
@@ -1,6 +1,6 @@
 #! /bin/sh
 
-# (C) 1998, 1999, 2000 Free Software Foundation
+# (C) 1998, 1999, 2000, 2002 Free Software Foundation
 # Originally by Alexandre Oliva <oliva@dcc.unicamp.br>
 
 # This script is Free Software, and it can be copied, distributed and
@@ -135,7 +135,7 @@ END { if (lang != "") {
 ' | sed "s/\([\`\$\\\\]\)/\\\\\\1/g" &&
 if $move; then
     for file in $files `ls -1 $files | sed s/sum$/log/`; do
-      [ -f $file ] && echo "mv `pwd`/$file `pwd`/$file.sent &&"
+      [ -f $file ] && echo "mv `${PWDCMD-pwd}`/$file `${PWDCMD-pwd}`/$file.sent &&"
     done
 fi &&
 echo true
Index: gcc/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Makefile.in,v
retrieving revision 1.872
diff -u -p -r1.872 Makefile.in
--- gcc/Makefile.in	13 May 2002 05:57:19 -0000	1.872
+++ gcc/Makefile.in	14 May 2002 19:01:37 -0000
@@ -2162,7 +2164,7 @@ fixinc.sh: $(FIXINCSRCDIR)/mkfixinc.sh $
 	$(FIXINCSRCDIR)/procopen.c $(FIXINCSRCDIR)/gnu-regex.c \
 	$(FIXINCSRCDIR)/server.c $(FIXINCSRCDIR)/gnu-regex.h \
 	$(FIXINCSRCDIR)/server.h $(FIXINCSRCDIR)/inclhack.def specs.ready
-	(MAKE="$(MAKE)"; srcdir=`cd $(srcdir)/fixinc && pwd` ; \
+	(MAKE="$(MAKE)"; srcdir=`cd $(srcdir)/fixinc && $${PWDCMD-pwd}` ; \
 	CC="$(HOST_CC)"; CFLAGS="$(HOST_CFLAGS)"; LDFLAGS="$(HOST_LDFLAGS)"; \
 	WARN_CFLAGS="$(WARN_CFLAGS)"; \
 	export MAKE srcdir CC CFLAGS LDFLAGS WARN_CFLAGS; cd ./fixinc && \
@@ -2172,10 +2174,10 @@ fixinc.sh: $(FIXINCSRCDIR)/mkfixinc.sh $
 stmp-fixinc: fixinc.sh gsyslimits.h
 	rm -rf include; mkdir include
 	-chmod a+rx include
-	(TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); pwd`; \
+	(TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); $${PWDCMD-pwd}`; \
 	SHELL='$(SHELL)' ;\
 	export TARGET_MACHINE srcdir SHELL ; \
-	$(SHELL) ./fixinc.sh `pwd`/include $(SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS); \
+	$(SHELL) ./fixinc.sh `$${PWDCMD-pwd}`/include $(SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS); \
 	rm -f include/syslimits.h; \
 	if [ -f include/limits.h ]; then \
 	  mv include/limits.h include/syslimits.h; \
@@ -2786,7 +2796,7 @@ install-headers: $(INSTALL_HEADERS_DIR)
 # Don't need to use LN_S here since we really do need ln -s and no substitutes.
 	-files=`cd $(libsubdir)/include; find . -type l -print 2>/dev/null`; \
 	if [ $$? -eq 0 ]; then \
-	  dir=`cd include; pwd`; \
+	  dir=`cd include; $${PWDCMD-pwd}`; \
 	  for i in $$files; do \
 	    dest=`ls -ld $(libsubdir)/include/$$i | sed -n 's/.*-> //p'`; \
 	    if expr "$$dest" : "$$dir.*" > /dev/null; then \
@@ -2808,7 +2818,7 @@ install-headers-tar: stmp-int-hdrs $(STM
 # Unless a full pathname is provided, some shells would print the new CWD,
 # found in CDPATH, corrupting the output.  We could just redirect the
 # output of `cd', but some shells lose on redirection within `()'s
-	(cd `pwd`/include ; \
+	(cd `$${PWDCMD-pwd}`/include ; \
 	 tar -cf - .; exit 0) | (cd $(libsubdir)/include; tar xpf - )
 # /bin/sh on some systems returns the status of the first tar,
 # and that can lose with GNU tar which always writes a full block.
@@ -2817,7 +2827,7 @@ install-headers-tar: stmp-int-hdrs $(STM
 # Install the include directory using cpio.
 install-headers-cpio: stmp-int-hdrs $(STMP_FIXPROTO) install-include-dir
 # See discussion about the use of `pwd` above
-	cd `pwd`/include ; \
+	cd `$${PWDCMD-pwd}`/include ; \
 	find . -print | cpio -pdum $(libsubdir)/include
 
 # Install the include directory using cp.
@@ -2862,8 +2872,8 @@ site.exp: ./config.status Makefile
 	@echo "## these variables are automatically generated by make ##" > ./tmp0
 	@echo "# Do not edit here. If you wish to override these values" >> ./tmp0
 	@echo "# add them to the last section" >> ./tmp0
-	@echo "set rootme \"`pwd`\"" >> ./tmp0
-	@echo "set srcdir \"`cd ${srcdir}; pwd`\"" >> ./tmp0
+	@echo "set rootme \"`$${PWDCMD-pwd}`\"" >> ./tmp0
+	@echo "set srcdir \"`cd ${srcdir}; $${PWDCMD-pwd}`\"" >> ./tmp0
 	@echo "set host_triplet $(host_canonical)" >> ./tmp0
 	@echo "set build_triplet $(build_canonical)" >> ./tmp0
 	@echo "set target_triplet $(target)" >> ./tmp0
@@ -2931,52 +2941,52 @@ $(TESTSUITEDIR)/site.exp: site.exp
 	sed '/set tmpdir/ s|testsuite|$(TESTSUITEDIR)|' < site.exp > $@
 
 check-g++: $(TESTSUITEDIR)/site.exp
-	-(rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-(rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd $(TESTSUITEDIR); \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	    export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool g++ $(RUNTESTFLAGS))
 
 check-gcc: $(TESTSUITEDIR)/site.exp
-	-(rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-(rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd $(TESTSUITEDIR); \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	   export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool gcc $(RUNTESTFLAGS))
 
 check-g77: $(TESTSUITEDIR)/site.exp
-	-(rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-(rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd $(TESTSUITEDIR); \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	   export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool g77 $(RUNTESTFLAGS))
 
 check-objc: $(TESTSUITEDIR)/site.exp
-	-(rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-(rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd $(TESTSUITEDIR); \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	    export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool objc $(RUNTESTFLAGS))
 
 check-consistency: testsuite/site.exp
-	-rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd testsuite; \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	   export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool consistency $(RUNTESTFLAGS)
 
Index: gcc/configure.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/configure.in,v
retrieving revision 1.587
diff -u -p -r1.587 configure.in
--- gcc/configure.in	7 May 2002 22:52:18 -0000	1.587
+++ gcc/configure.in	14 May 2002 19:01:39 -0000
@@ -1008,9 +1010,9 @@ fi
 esac
 
 # Get an absolute path to the GCC top-level source directory
-holddir=`pwd`
+holddir=`${PWDCMD-pwd}`
 cd $srcdir
-topdir=`pwd`
+topdir=`${PWDCMD-pwd}`
 cd $holddir
 
 # Conditionalize the makefile for this host machine.
@@ -2383,7 +2385,7 @@ fi)
 AC_SUBST(slibdir)
 
 # Nothing to do for FLOAT_H, float_format already handled.
-objdir=`pwd`
+objdir=`${PWDCMD-pwd}`
 AC_SUBST(objdir)
 
 # Process the language and host/target makefile fragments.
@@ -2504,7 +2506,7 @@ esac
 if test "$symbolic_link" = "ln -s"; then
  for d in .. ${subdirs} fixinc ; do
    if test $d != ..; then
-	STARTDIR=`pwd`
+	STARTDIR=`${PWDCMD-pwd}`
 	cd $d
 	for t in stage1 stage2 stage3 stage4 include
 	do
Index: gcc/fixproto
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixproto,v
retrieving revision 1.12
diff -u -p -r1.12 fixproto
--- gcc/fixproto	22 Aug 2001 14:35:04 -0000	1.12
+++ gcc/fixproto	14 May 2002 19:01:39 -0000
@@ -4,7 +4,7 @@
 #	fixproto TARGET-DIR SOURCE-DIR-ALL SOURCE-DIR-STD
 #
 # COPYRIGHT
-#	Copyright (C) 1993, 1994, 1997, 1998 Free Software Foundation, Inc.
+#	Copyright (C) 1993, 1994, 1997, 1998, 2002 Free Software Foundation, Inc.
 #	This file is part of GCC.
 #
 #	GCC is free software; you can redistribute it and/or modify
@@ -56,7 +56,7 @@
 
 dirname=`echo "$0" | sed 's,^[^/]*$,.,;s,//*[^/]*$,,'`
 progname=`echo "$0" | sed 's,.*/,,'`
-original_dir=`pwd`
+original_dir=`${PWDCMD-pwd}`
 FIX_HEADER=${FIX_HEADER-$original_dir/fix-header}
 DEFINES="-D__STDC__=0 -D__cplusplus ${FIXPROTO_DEFINES}"
 
Index: gcc/ada/Makefile.adalib
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/Makefile.adalib,v
retrieving revision 1.2
diff -u -p -r1.2 Makefile.adalib
--- gcc/ada/Makefile.adalib	4 Dec 2001 23:13:07 -0000	1.2
+++ gcc/ada/Makefile.adalib	14 May 2002 19:01:39 -0000
@@ -45,7 +45,7 @@ SHELL=sh
 
 CC = gcc
 AR = ar
-GNAT_ROOT = $(shell cd $(ROOT);pwd)/
+GNAT_ROOT = $(shell cd $(ROOT);$${PWDCMD-pwd})/
 target = $(shell $(CC) -dumpmachine)
 version = $(shell $(CC) -dumpversion)
 ADA_INCLUDE_PATH = $(GNAT_ROOT)lib/gcc-lib/$(target)/$(version)/adainclude/
Index: gcc/ada/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/Makefile.in,v
retrieving revision 1.30
diff -u -p -r1.30 Makefile.in
--- gcc/ada/Makefile.in	14 May 2002 15:25:30 -0000	1.30
+++ gcc/ada/Makefile.in	14 May 2002 19:01:48 -0000
@@ -192,10 +192,10 @@ TREE_H = $(srcdir)/../tree.h $(srcdir)/.
 	$(MACHMODE_H) $(srcdir)/../tree-check.h $(srdir)/../version.h \
 	$(srcdir)/../builtins.def
 
-fsrcdir := $(shell cd $(srcdir);pwd)
-fsrcpfx := $(shell cd $(srcdir);pwd)/
-fcurdir := $(shell pwd)
-fcurpfx := $(shell pwd)/
+fsrcdir := $(shell cd $(srcdir);$${PWDCMD-pwd})
+fsrcpfx := $(shell cd $(srcdir);$${PWDCMD-pwd})/
+fcurdir := $(shell $${PWDCMD-pwd})
+fcurpfx := $(shell $${PWDCMD-pwd})/
 
 # Top build directory, relative to here.
 top_builddir = ..
Index: gcc/f/Make-lang.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/f/Make-lang.in,v
retrieving revision 1.106
diff -u -p -r1.106 Make-lang.in
--- gcc/f/Make-lang.in	8 Apr 2002 22:20:39 -0000	1.106
+++ gcc/f/Make-lang.in	14 May 2002 19:01:49 -0000
@@ -167,7 +167,7 @@ f/g77.dvi: $(srcdir)/f/g77.texi $(srcdir
 		$(srcdir)/f/root.texi $(srcdir)/doc/include/fdl.texi \
 		$(srcdir)/doc/include/gpl.texi \
 		$(srcdir)/doc/include/funding.texi
-	s=`cd $(srcdir); pwd`; export s; \
+	s=`cd $(srcdir); ${PWDCMD-pwd}`; export s; \
 	cd f && $(TEXI2DVI) -I $$s/doc/include $$s/f/g77.texi
 
 $(srcdir)/f/g77.1: $(srcdir)/f/invoke.texi
Index: gcc/fixinc/check.tpl
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixinc/check.tpl,v
retrieving revision 1.15
diff -u -p -r1.15 check.tpl
--- gcc/fixinc/check.tpl	2 May 2002 05:18:07 -0000	1.15
+++ gcc/fixinc/check.tpl	14 May 2002 19:01:49 -0000
@@ -7,18 +7,18 @@
 
 set -e
 TESTDIR=tests
-TESTBASE=`cd $1;pwd`
+TESTBASE=`cd $1;${PWDCMD-pwd}`
 
 [ -d ${TESTDIR} ] || mkdir ${TESTDIR}
 cd ${TESTDIR}
-TESTDIR=`pwd`
+TESTDIR=`${PWDCMD-pwd}`
 
 TARGET_MACHINE='*'
-DESTDIR=`pwd`/res
-SRCDIR=`pwd`/inc
+DESTDIR=`${PWDCMD-pwd}`/res
+SRCDIR=`${PWDCMD-pwd}`/inc
 FIND_BASE='.'
 VERBOSE=1
-INPUT=`pwd`
+INPUT=`${PWDCMD-pwd}`
 ORIGDIR=${INPUT}
 
 export TARGET_MACHINE DESTDIR SRCDIR FIND_BASE VERBOSE INPUT ORIGDIR
Index: gcc/fixinc/fixinc.dgux
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixinc/fixinc.dgux,v
retrieving revision 1.7
diff -u -p -r1.7 fixinc.dgux
--- gcc/fixinc/fixinc.dgux	11 May 2001 17:03:02 -0000	1.7
+++ gcc/fixinc/fixinc.dgux	14 May 2002 19:01:49 -0000
@@ -95,7 +95,7 @@ if $LINKS; then
   for file in $files; do
     dest=`ls -ld $file | sed -n 's/.*-> //p'`
     if [ "$dest" ]; then    
-      cwd=`pwd`
+      cwd=`${PWDCMD-pwd}`
       # In case $dest is relative, get to $file's dir first.
       cd ${INPUT}
       cd `echo ./$file | sed -n 's&[^/]*$&&p'`
@@ -105,7 +105,7 @@ if $LINKS; then
       if [ $? = 0 ]; then
 	cd $dest
 	# X gets the dir that the link actually leads to.
-	x=`pwd`
+	x=`${PWDCMD-pwd}`
 	# If link leads back into ${INPUT},
 	# make a similar link here.
 	if expr $x : "${INPUT}/.*" > /dev/null; then
Index: gcc/fixinc/fixinc.svr4
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixinc/fixinc.svr4,v
retrieving revision 1.10
diff -u -p -r1.10 fixinc.svr4
--- gcc/fixinc/fixinc.svr4	11 May 2001 17:03:02 -0000	1.10
+++ gcc/fixinc/fixinc.svr4	14 May 2002 19:01:59 -0000
@@ -1,7 +1,7 @@
 #! /bin/sh
 # Install modified versions of certain ANSI-incompatible
 # native System V Release 4 system include files.
-# Copyright (C) 1994, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
+# Copyright (C) 1994, 1996, 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
 # Contributed by Ron Guilmette (rfg@monkeys.com).
 #
 # This file is part of GNU CC.
@@ -103,18 +103,18 @@ if $LINKS; then
   for file in $files; do
     dest=`ls -ld $file | sed -n 's/.*-> //p'`
     if [ "$dest" ]; then    
-      cwd=`pwd`
+      cwd=`${PWDCMD-pwd}`
       # In case $dest is relative, get to $file's dir first.
       cd ${INPUT}
       cd `echo ./$file | sed -n 's&[^/]*$&&p'`
-      rwd=`pwd`
+      rwd=`${PWDCMD-pwd}`
       # Check that the target directory exists.
       # Redirections changed to avoid bug in sh on Ultrix.
       (cd $dest) > /dev/null 2>&1
       if [ $? = 0 ]; then
 	cd $dest
 	# X gets the dir that the link actually leads to.
-	x=`pwd`
+	x=`${PWDCMD-pwd}`
 	# If link leads back into ${INPUT},
 	# make a similar link here.
         if expr "$dest" : '[^/][^/]*' >/dev/null && [ ! -h $dest ]; then
Index: gcc/fixinc/fixinc.winnt
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixinc/fixinc.winnt,v
retrieving revision 1.7
diff -u -p -r1.7 fixinc.winnt
--- gcc/fixinc/fixinc.winnt	11 May 2001 17:03:02 -0000	1.7
+++ gcc/fixinc/fixinc.winnt	14 May 2002 19:01:59 -0000
@@ -35,7 +35,7 @@
 #
 #	See README-fixinc for more information.
 
-ORIG_DIR=`pwd`
+ORIG_DIR=`${PWDCMD-pwd}`
 
 # Directory containing the original header files.
 cd $2; SEDFILE=`${PWDCMD-pwd}`/fixinc-nt.sed
@@ -65,7 +65,7 @@ if [ ! -d $LIB ]; then
   mkdir $LIB || exit 1
 fi
 
-ORIG_DIR=`pwd`
+ORIG_DIR=`${PWDCMD-pwd}`
 
 # Make LIB absolute if it is relative.
 # Don't do this if not necessary, since may screw up automounters.
Index: gcc/fixinc/fixincl.sh
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fixinc/fixincl.sh,v
retrieving revision 1.36
diff -u -p -r1.36 fixincl.sh
--- gcc/fixinc/fixincl.sh	18 May 2001 02:02:37 -0000	1.36
+++ gcc/fixinc/fixincl.sh	14 May 2002 19:01:59 -0000
@@ -8,7 +8,7 @@
 #
 # See README-fixinc for more information.
 #
-#  fixincludes copyright (c) 1998, 1999, 2000
+#  fixincludes copyright (c) 1998, 1999, 2000, 2002
 #  The Free Software Foundation, Inc.
 #
 # fixincludes is free software.
@@ -84,7 +84,7 @@ export target_canonical
 #
 # Define PWDCMD as a command to use to get the working dir
 # in the form that we want.
-PWDCMD=pwd
+PWDCMD=${PWDCMD-pwd}
 
 case "`$PWDCMD`" in
 //*)
Index: gcc/java/Make-lang.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/Make-lang.in,v
retrieving revision 1.84
diff -u -p -r1.84 Make-lang.in
--- gcc/java/Make-lang.in	12 Apr 2002 14:28:48 -0000	1.84
+++ gcc/java/Make-lang.in	14 May 2002 19:02:00 -0000
@@ -329,7 +329,7 @@ $(srcdir)/java/gcj.info: $(srcdir)/java/
 
 java/gcj.dvi: $(srcdir)/java/gcj.texi $(srcdir)/doc/include/fdl.texi \
 	 $(srcdir)/doc/include/gpl.texi
-	s=`cd $(srcdir); pwd`; export s; \
+	s=`cd $(srcdir); $${PWDCMD-pwd}`; export s; \
 	cd java && $(TEXI2DVI) -I $$s/doc/include $$s/java/gcj.texi
 
 $(srcdir)/java/gcj.1: $(srcdir)/java/gcj.texi
Index: gcc/po/exgettext
===================================================================
RCS file: /cvs/gcc/gcc/gcc/po/exgettext,v
retrieving revision 1.3
diff -u -p -r1.3 exgettext
--- gcc/po/exgettext	23 Jan 2002 02:55:20 -0000	1.3
+++ gcc/po/exgettext	14 May 2002 19:02:00 -0000
@@ -51,7 +51,7 @@ T=exg$$.d
 mkdir $T
 trap "rm -r $T" 0
 
-pwd=`pwd`
+pwd=`${PWDCMD-pwd}`
 kopt=$pwd/$T/keyword-options
 emsg=$pwd/$T/emsgids.c
 posr=$pwd/$T/po-sources
Index: gcc/treelang/Make-lang.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/treelang/Make-lang.in,v
retrieving revision 1.1
diff -u -p -r1.1 Make-lang.in
--- gcc/treelang/Make-lang.in	5 May 2002 04:24:18 -0000	1.1
+++ gcc/treelang/Make-lang.in	14 May 2002 19:02:12 -0000
@@ -255,23 +255,23 @@ treelang.check: $(TESTSUITEDIR)/site.exp
 # patch files for new empty files as required for cvs.
 # STAMP does not cut it here as I need an empty file.
 	touch $(srcdir)/testsuite/treelang/{a01gcco01runpgmerr,a01gcc.out01,a01gcc.out01err}
-	-rootme=`pwd`; export rootme; \
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	-rootme=`$${PWDCMD-pwd}`; export rootme; \
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; \
 	cd testsuite; \
 	EXPECT=${EXPECT} ; export EXPECT ; \
 	TRANSFORM=$(program_transform_name); export TRANSFORM; \
 	if [ -f $${rootme}/../expect/expect ] ; then  \
-	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; pwd` ; \
+	   TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; $${PWDCMD-pwd}` ; \
 	   export TCL_LIBRARY ; fi ; \
-	PATH=`cd ..;pwd`:$$PATH; export PATH; \
-	gcc_extras="-B`cd ..;pwd` -B`cd ..;pwd`/treelang"; export gcc_extras; \
+	PATH=`cd ..;$${PWDCMD-pwd}`:$$PATH; export PATH; \
+	gcc_extras="-B`cd ..;$${PWDCMD-pwd}` -B`cd ..;$${PWDCMD-pwd}`/treelang"; export gcc_extras; \
 	$(RUNTEST) --tool treelang $(RUNTESTFLAGS)
 	rm $(srcdir)/testsuite/treelang/{a01gcco01runpgmerr,a01gcc.out01,a01gcc.out01err}
 #	GCC_EXTRAS="$(GCC_EXTRAS)"; export GCC_EXTRAS; \
 
 # copy the output files from the current test to source ie say the new results are OK
 treelang.check.fix: force
-	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; 
+	srcdir=`cd ${srcdir}; $${PWDCMD-pwd}` ; export srcdir ; 
 	-cp testsuite/treelang/*.out* t
 	-cp testsuite/treelang/*runpgm* t
 	-rm -f t/*nofilename
Index: libf2c/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/libf2c/Makefile.in,v
retrieving revision 1.49
diff -u -p -r1.49 Makefile.in
--- libf2c/Makefile.in	3 May 2002 20:14:18 -0000	1.49
+++ libf2c/Makefile.in	14 May 2002 19:02:12 -0000
@@ -255,8 +255,8 @@ rebuilt: configure
         installcheck installdirs all-unilib
 
 subdir_do:
-	@rootpre=`pwd`/; export rootpre; \
-	srcrootpre=`cd $(srcdir); pwd`/; export srcrootpre; \
+	@rootpre=`$${PWDCMD-pwd}`/; export rootpre; \
+	srcrootpre=`cd $(srcdir); $${PWDCMD-pwd}`/; export srcrootpre; \
 	for i in .. $(DODIRS); do \
 	  if [ x$$i != x.. ]; then \
 	    if [ -f ./$$i/Makefile ]; then \
Index: libf2c/aclocal.m4
===================================================================
RCS file: /cvs/gcc/gcc/libf2c/aclocal.m4,v
retrieving revision 1.3
diff -u -p -r1.3 aclocal.m4
--- libf2c/aclocal.m4	15 Apr 2002 20:42:28 -0000	1.3
+++ libf2c/aclocal.m4	14 May 2002 19:02:12 -0000
@@ -1,4 +1,4 @@
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+dnl Copyright (C) 1994, 1995-8, 1999, 2001, 2002 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -48,7 +48,7 @@ AC_SUBST(toplevel_srcdir)
 # These need to be absolute paths, yet at the same time need to
 # canonicalize only relative paths, because then amd will not unmount
 # drives. Thus the use of PWDCMD: set it to 'pawd' or 'amq -w' if using amd.
-glibcpp_builddir=`pwd`
+glibcpp_builddir=`${PWDCMD-pwd}`
 case $srcdir in
 [\\/$]* | ?:[\\/]*) glibcpp_srcdir=${srcdir} ;;
 *) glibcpp_srcdir=`cd "$srcdir" && ${PWDCMD-pwd} || echo "$srcdir"` ;;
Index: libjava/acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/libjava/acinclude.m4,v
retrieving revision 1.20
diff -u -p -r1.20 acinclude.m4
--- libjava/acinclude.m4	3 May 2002 20:17:41 -0000	1.20
+++ libjava/acinclude.m4	14 May 2002 19:02:16 -0000
@@ -68,7 +68,7 @@ if :; then :; else
 fi
 
 # This works around an automake problem.
-mkinstalldirs="`cd $ac_aux_dir && pwd`/mkinstalldirs"
+mkinstalldirs="`cd $ac_aux_dir && ${PWDCMD-pwd}`/mkinstalldirs"
 AC_SUBST(mkinstalldirs)
 
 AC_CANONICAL_SYSTEM
Index: libjava/configure.in
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.in,v
retrieving revision 1.131
diff -u -p -r1.131 configure.in
--- libjava/configure.in	8 May 2002 04:37:11 -0000	1.131
+++ libjava/configure.in	14 May 2002 19:02:24 -0000
@@ -29,7 +29,7 @@ if test -z "${with_cross_host}"; then
    # Sigh.  Libtool's macro doesn't do the right thing.
    INCLTDL="-I\$(top_srcdir)/libltdl $INCLTDL"
    # FIXME: this is a hack.
-   sub_auxdir="`cd $ac_aux_dir && pwd`"
+   sub_auxdir="`cd $ac_aux_dir && ${PWDCMD-pwd}`"
    ac_configure_args="$ac_configure_args --with-auxdir=$sub_auxdir"
 fi
 AC_SUBST(INCLTDL)
@@ -273,7 +273,7 @@ case "${host}" in
 esac
 AC_SUBST(SYSTEMSPEC)
 
-LIBGCJTESTSPEC="-L`pwd`/.libs -rpath `pwd`/.libs"
+LIBGCJTESTSPEC="-L`${PWDCMD-pwd}`/.libs -rpath `${PWDCMD-pwd}`/.libs"
 AC_SUBST(LIBGCJTESTSPEC)
 
 AC_ARG_WITH(system-zlib,
@@ -307,7 +307,7 @@ case "$GC" in
     GCLIBS=../boehm-gc/libgcjgc_convenience.la
     GCINCS='-I$(top_srcdir)/../boehm-gc/include'
     JC1GCSPEC='-fuse-boehm-gc'
-    GCTESTSPEC="-L`pwd`/../boehm-gc/.libs -rpath `pwd`/../boehm-gc/.libs"
+    GCTESTSPEC="-L`${PWDCMD-pwd}`/../boehm-gc/.libs -rpath `${PWDCMD-pwd}`/../boehm-gc/.libs"
 
     dnl We also want to pick up some cpp flags required when including
     dnl boehm-config.h.  Yuck.
@@ -710,12 +710,12 @@ changequote(<<,>>)
 changequote([,])
    fi
    if test -x "${builddotdot}/../../gcc/gcj"; then
-      dir="`cd ${builddotdot}/../../gcc && pwd`"
-      GCJ="$dir/gcj -B`pwd`/ -B$dir/"
+      dir="`cd ${builddotdot}/../../gcc && ${PWDCMD-pwd}`"
+      GCJ="$dir/gcj -B`${PWDCMD-pwd}`/ -B$dir/"
    else
       CANADIAN=yes
       NULL_TARGET=yes
-      GCJ="gcj -B`pwd`/"
+      GCJ="gcj -B`${PWDCMD-pwd}`/"
    fi
 fi
 
@@ -725,7 +725,7 @@ test -f libgcj.spec || touch libgcj.spec
 # We must search the source tree for java.lang, since we still don't
 # have libgcj.jar nor java/lang/*.class
 GCJ_SAVE_CPPFLAGS=$CPPFLAGS
-CPPFLAGS="$CPPFLAGS -I`pwd` -I`cd $srcdir && pwd`"
+CPPFLAGS="$CPPFLAGS -I`${PWDCMD-pwd}` -I`cd $srcdir && ${PWDCMD-pwd}`"
 
 # Since some classes depend on this one, we need its source available
 # before we can do any GCJ compilation test :-(
@@ -960,7 +960,7 @@ AM_CONDITIONAL(XLIB_AWT, test "$use_xlib
 AM_CONDITIONAL(GTK_AWT, test "$use_gtk_awt" = yes)
 
 
-here=`pwd`
+here=`${PWDCMD-pwd}`
 AC_SUBST(here)
 
 # We get this from the environment.
@@ -977,7 +977,7 @@ esac
 
 # Make subdirectories and `.d' files.  Look in both srcdir and
 # builddir for the .java files.
-h=`pwd`
+h=`${PWDCMD-pwd}`
 : > deps.mk
 ( (cd $srcdir && find . \( -name '*.java' -o -name '*.cc' \) -print) ;
   find . \( -name '*.java' -o -name '*.cc' \) -print) | \
Index: libobjc/aclocal.m4
===================================================================
RCS file: /cvs/gcc/gcc/libobjc/aclocal.m4,v
retrieving revision 1.3
diff -u -p -r1.3 aclocal.m4
--- libobjc/aclocal.m4	11 Feb 2002 18:10:05 -0000	1.3
+++ libobjc/aclocal.m4	14 May 2002 19:02:27 -0000
@@ -48,7 +48,7 @@ AC_SUBST(toplevel_srcdir)
 # These need to be absolute paths, yet at the same time need to
 # canonicalize only relative paths, because then amd will not unmount
 # drives. Thus the use of PWDCMD: set it to 'pawd' or 'amq -w' if using amd.
-glibcpp_builddir=`pwd`
+glibcpp_builddir=`${PWDCMD-pwd}`
 case $srcdir in
 [\\/$]* | ?:[\\/]*) glibcpp_srcdir=${srcdir} ;;
 *) glibcpp_srcdir=`cd "$srcdir" && ${PWDCMD-pwd} || echo "$srcdir"` ;;
Index: libstdc++-v3/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/Makefile.am,v
retrieving revision 1.29
diff -u -p -r1.29 Makefile.am
--- libstdc++-v3/Makefile.am	28 Jan 2002 22:13:02 -0000	1.29
+++ libstdc++-v3/Makefile.am	14 May 2002 19:02:27 -0000
@@ -46,20 +46,20 @@ check-script-install: $(top_builddir)/mk
 
 # These rules are messy, but are hella worth it.
 doxygen:
-	-(srcdir=`cd ${top_srcdir}; pwd`; \
-	  builddir=`pwd`; \
+	-(srcdir=`cd ${top_srcdir}; $${PWDCMD-pwd}`; \
+	  builddir=`$${PWDCMD-pwd}`; \
 	  /bin/sh ${srcdir}/docs/doxygen/run_doxygen \
 	            --mode=user $${srcdir} $${builddir})
 
 doxygen-maint:
-	-(srcdir=`cd ${top_srcdir}; pwd`; \
-	  builddir=`pwd`; \
+	-(srcdir=`cd ${top_srcdir}; $${PWDCMD-pwd}`; \
+	  builddir=`$${PWDCMD-pwd}`; \
 	  /bin/sh ${srcdir}/docs/doxygen/run_doxygen \
 	            --mode=maint $${srcdir} $${builddir})
 
 doxygen-man:
-	-(srcdir=`cd ${top_srcdir}; pwd`; \
-	  builddir=`pwd`; \
+	-(srcdir=`cd ${top_srcdir}; $${PWDCMD-pwd}`; \
+	  builddir=`$${PWDCMD-pwd}`; \
 	  /bin/sh ${srcdir}/docs/doxygen/run_doxygen \
 	            --mode=man $${srcdir} $${builddir})
 
Index: libstdc++-v3/acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/acinclude.m4,v
retrieving revision 1.205
diff -u -p -r1.205 acinclude.m4
--- libstdc++-v3/acinclude.m4	10 May 2002 12:53:12 -0000	1.205
+++ libstdc++-v3/acinclude.m4	14 May 2002 19:02:28 -0000
@@ -38,7 +38,7 @@ AC_DEFUN(GLIBCPP_CONFIGURE, [
   # These need to be absolute paths, yet at the same time need to
   # canonicalize only relative paths, because then amd will not unmount
   # drives. Thus the use of PWDCMD: set it to 'pawd' or 'amq -w' if using amd.
-  glibcpp_builddir=`pwd`
+  glibcpp_builddir=`${PWDCMD-pwd}`
   case $srcdir in
   [\\/$]* | ?:[\\/]*) glibcpp_srcdir=${srcdir} ;;
   *) glibcpp_srcdir=`cd "$srcdir" && ${PWDCMD-pwd} || echo "$srcdir"` ;;
Index: libstdc++-v3/docs/html/Makefile
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/Makefile,v
retrieving revision 1.3
diff -u -p -r1.3 Makefile
--- libstdc++-v3/docs/html/Makefile	6 Mar 2002 21:22:44 -0000	1.3
+++ libstdc++-v3/docs/html/Makefile	14 May 2002 19:02:44 -0000
@@ -6,7 +6,7 @@ all: faq/index.txt 17_intro/porting.html
 
 
 faq/index.txt: faq/index.html
-	lynx -dump $< | sed "s%file://localhost`pwd`%..%" > $@
+	lynx -dump $< | sed "s%file://localhost`$${PWDCMD-pwd}`%..%" > $@
 
 17_intro/porting.html: 17_intro/porting.texi
 	${MAKEINFO} -I ${INC} --html --no-split $< -o $@
Index: zlib/configure.in
===================================================================
RCS file: /cvs/gcc/gcc/zlib/configure.in,v
retrieving revision 1.14
diff -u -p -r1.14 configure.in
--- zlib/configure.in	8 May 2002 04:38:00 -0000	1.14
+++ zlib/configure.in	14 May 2002 19:02:45 -0000
@@ -32,7 +32,7 @@ fi
 AC_CANONICAL_SYSTEM
 
 # This works around an automake problem.
-mkinstalldirs="`cd $ac_aux_dir && pwd`/mkinstalldirs"
+mkinstalldirs="`cd $ac_aux_dir && ${PWDCMD-pwd}`/mkinstalldirs"
 AC_SUBST(mkinstalldirs)
 
 AM_INIT_AUTOMAKE(zlib, 1.1.3)



More information about the Gcc-patches mailing list