summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/s/sol2-3.h6
-rw-r--r--src/s/sol2.h5
2 files changed, 9 insertions, 2 deletions
diff --git a/src/s/sol2-3.h b/src/s/sol2-3.h
index e5fdda8a693..d17ec1851bc 100644
--- a/src/s/sol2-3.h
+++ b/src/s/sol2-3.h
@@ -10,5 +10,9 @@
#ifndef __GNUC__
#define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX
#else /* GCC */
-#define LD_SWITCH_SYSTEM -L /usr/ccs/lib -Xlinker LD_SWITCH_X_SITE_AUX
+/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
+ has anything in it. It can be empty.
+ This works ok in src. Luckily lib-src does not use LD_SWITCH_SYSTEM. */
+#define LD_SWITCH_SYSTEM -L /usr/ccs/lib \
+ `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX`
#endif /* GCC */
diff --git a/src/s/sol2.h b/src/s/sol2.h
index 8a7dc0e4ab0..f92e0de30e5 100644
--- a/src/s/sol2.h
+++ b/src/s/sol2.h
@@ -15,7 +15,10 @@
#ifndef __GNUC__
#define LD_SWITCH_SYSTEM LD_SWITCH_X_SITE_AUX
#else /* GCC */
-#define LD_SWITCH_SYSTEM -Xlinker LD_SWITCH_X_SITE_AUX
+/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
+ has anything in it. It can be empty.
+ This works ok in src. Luckily lib-src does not use LD_SWITCH_SYSTEM. */
+#define LD_SWITCH_SYSTEM `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX`
#endif /* GCC */
/* Compile in non-ansi fashion to work around bugs in system header files. */