--- a/Makefile.in
+++ b/Makefile.in
@@ -28,6 +28,11 @@
 
 prefix =		@prefix@
 exec_prefix =		@exec_prefix@
+bindir = 		@bindir@
+libdir = 		@libdir@
+datadir = 		@datadir@
+mandir = 		@mandir@
+includedir = 		@includedir@
 
 # The following definition can be set to non-null for special systems
 # like AFS with replication.  It allows the pathnames used for installation
@@ -37,19 +42,19 @@
 INSTALL_ROOT =
 
 # Directory in which to install the .a or .so binary for the XPA library:
-LIB_INSTALL_DIR =	$(INSTALL_ROOT)$(exec_prefix)/lib
+LIB_INSTALL_DIR =	$(INSTALL_ROOT)$(libdir)
 
 # Directory in which to install the program wish:
-BIN_INSTALL_DIR =	$(INSTALL_ROOT)$(exec_prefix)/bin
+BIN_INSTALL_DIR =	$(INSTALL_ROOT)$(bindir)
 
 # Directory in which to install the include file xpa.h:
-INCLUDE_INSTALL_DIR =	$(INSTALL_ROOT)$(prefix)/include
+INCLUDE_INSTALL_DIR =	$(INSTALL_ROOT)$(includedir)
 
 # Top-level directory for manual entries:
-MAN_INSTALL_DIR =	$(INSTALL_ROOT)$(prefix)/man
+MAN_INSTALL_DIR =	$(INSTALL_ROOT)$(mandir)
 
 # Top-level directory for share entries:
-MAN_SHARE_DIR =		$(INSTALL_ROOT)$(prefix)/share/xpa
+MAN_SHARE_DIR =		$(INSTALL_ROOT)$(datadir)/xpa
 
 # Platform-specific X compiler flags (include file specifications)
 X_CFLAGS = 		@X_CFLAGS@
@@ -173,12 +178,12 @@
 
 $(LIB):		$(LIBOBJS)
 		$(RM) $(LIB)
-		ar crv $(LIB) $(LIBOBJS)
+		$(AR) crv $(LIB) $(LIBOBJS)
 		$(RANLIB) $(LIB)
 
 shlib:		$(LIB)
-		@(rm -rf lib$(PACKAGE).tmp; mkdir lib$(PACKAGE).tmp; \
-		(cd lib$(PACKAGE).tmp && ar x ../lib$(PACKAGE).a); \
+		@(rm -rf lib$(PACKAGE).tmp; mkdir -p lib$(PACKAGE).tmp; \
+		(cd lib$(PACKAGE).tmp && $(AR) x ../lib$(PACKAGE).a); \
 		rm -f lib$(PACKAGE).tmp/xt*.o; \
 		rm -f lib$(PACKAGE).tmp/tcl*.o; \
 		CC='$(CC)' CXX=$(CXX) \
@@ -193,8 +198,8 @@
 		-lwsock32
 
 tclxpa:		$(LIB)
-		@(rm -rf libtclxpa.tmp; mkdir libtclxpa.tmp; \
-		(cd libtclxpa.tmp && ar x ../lib$(PACKAGE).a); \
+		@(rm -rf libtclxpa.tmp; mkdir -p libtclxpa.tmp; \
+		(cd libtclxpa.tmp && $(AR) x ../lib$(PACKAGE).a); \
 		rm -f libtclxpa.tmp/xt*.o; \
 		CC='$(CC)' CXX=$(CXX) \
 		./mklib -o tclxpa libtclxpa.tmp/*.o $(TCL_LIBS); \
@@ -275,7 +280,7 @@
 	    do \
 	    if [ ! -d $$i ] ; then \
 		echo "Making directory $$i"; \
-		mkdir $$i; \
+		mkdir -p $$i; \
 		chmod 755 $$i; \
 		else true; \
 		fi; \
@@ -297,7 +302,7 @@
 install-man:
 	@if [ ! -d $(MAN_INSTALL_DIR) ] ; then \
 	    echo "Making directory $(MAN_INSTALL_DIR)"; \
-	    mkdir $(MAN_INSTALL_DIR); \
+	    mkdir -p $(MAN_INSTALL_DIR); \
 	    chmod 755 $(MAN_INSTALL_DIR); \
 	    else true; \
 	fi;
@@ -308,7 +313,7 @@
 		M="$(MAN_INSTALL_DIR)/man$$E"; \
 		if [ ! -d $$M ] ; then \
 		    echo "Making directory $$M"; \
-		    mkdir $$M; \
+		    mkdir -p $$M; \
 		    chmod 755 $$M; \
 		    else true; \
 		fi; \
@@ -462,7 +467,7 @@
 
 dist:   	configure
 		($(RM) -r $(DISTDIR); \
-		mkdir $(DISTDIR); \
+		mkdir -p $(DISTDIR); \
 		cp -p *.[ch] *.tcl $(DISTDIR)/.; \
 		cp -p pkgIndex.tcl $(DISTDIR)/.; \
 		cp -p Makefile.in $(DISTDIR)/.; \
@@ -484,13 +489,13 @@
 		cp -p install-sh $(DISTDIR)/install-sh; \
 		chmod 755 $(DISTDIR)/install-sh; \
 		cp -p README INSTALL COPYING $(DISTDIR)/.; \
-		mkdir $(DISTDIR)/doc; \
+		mkdir -p $(DISTDIR)/doc; \
 		cp -p ./doc/*.html $(DISTDIR)/doc/.; \
 		cp -p ./doc/*.ps ./doc/*.pdf $(DISTDIR)/doc/.; \
 		cp -p ./doc/Makefile $(DISTDIR)/doc/.; \
-		mkdir $(DISTDIR)/doc/sman; \
+		mkdir -p $(DISTDIR)/doc/sman; \
 		cp -p ./doc/sman/* $(DISTDIR)/doc/sman/.; \
-		mkdir $(DISTDIR)/man; \
+		mkdir -p $(DISTDIR)/man; \
 		cp -p -R ./man/* $(DISTDIR)/man/.)
 
 release:	dist
--- a/mklib
+++ b/mklib
@@ -211,9 +211,9 @@
 	if [ "x$LINK" = "x" ] ; then
 	    # -linker was not specified so set default link command now
             if [ $CPLUSPLUS = 1 ] ; then
-                LINK=g++
+                LINK=${CXX}
             else
-                LINK=gcc
+                LINK=${CC}
             fi
 	fi
 
@@ -248,7 +248,7 @@
         elif [ $STATIC = 1 ] ; then
             LIBNAME="lib${LIBNAME}.a"     # prefix with "lib", suffix with ".a"
             echo "mklib: Making" $ARCH "static library: " ${LIBNAME}
-            LINK="ar"
+            LINK="${AR}"
             OPTS="-ru"
             if [ "${ALTOPTS}" ] ; then
                 OPTS=${ALTOPTS}
