hpux-shared rules to cover even for GNU ld.
diff --git a/Makefile.shared b/Makefile.shared
index bf57aaa..57e4ad3 100644
--- a/Makefile.shared
+++ b/Makefile.shared
@@ -594,7 +594,8 @@
 #          by temporarily specifying "+s"!
 #
 link_o.hpux:
-	@ $(CALC_VERSIONS); \
+	@if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \
+	$(CALC_VERSIONS); \
 	SHLIB=lib$(LIBNAME).sl; \
 	SHLIB_SUFFIX=; \
 	LIBDEPS="$(LIBDEPS)"; \
@@ -603,9 +604,11 @@
 	expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload'; \
 	SHAREDFLAGS="-Wl,+vnocompatwarnings,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+b,$(LIBRPATH)"; \
 	SHAREDCMD=$(CC); \
+	fi; \
 	$(LINK_SO_O) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
 link_a.hpux:
-	@ $(CALC_VERSIONS); \
+	@if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \
+	$(CALC_VERSIONS); \
 	SHLIB=lib$(LIBNAME).sl; \
 	SHLIB_SUFFIX=; \
 	LIBDEPS="$(LIBDEPS)"; \
@@ -614,12 +617,15 @@
 	expr $(PLATFORM) : 'hpux64' > /dev/null && ALLSYMSFLAGS='-Wl,+forceload'; \
 	SHAREDFLAGS="-Wl,+vnocompatwarnings,-z,+s,+h,$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX,+b,$(LIBRPATH)"; \
 	SHAREDCMD='$(CC)'; \
+	fi; \
 	$(LINK_SO_A) && chmod a=rx $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX
 link_app.hpux:
+	@if ${DETECT_GNU_LD}; then $(DO_GNU_APP); else \
 	LDCMD=$(CC);\
 	LDFLAGS="-Wl,+b,$(LIBRPATH)"; \
 	LIBDEPS="$(LIBDEPS)"; \
 	APPNAME="$(APPNAME)"; \
+	fi; \
 	$(LINK_APP)
 
 link_o.aix: