From d46a2773b1a3e8772dc3ea4704baf2d0d0adfb15 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Mon, 7 Jun 2004 21:41:05 +0000
Subject: [PATCH] Restructure build parameters to avoid extra data in non-AIX
 build RPMs

---
 auxdir/Makefile.am                      |  1 +
 auxdir/x_ac_aix.m4                      | 34 +++++++++++++++++++++++++
 configure.ac                            | 13 +---------
 src/common/Makefile.am                  |  1 +
 src/plugins/auth/authd/Makefile.am      |  8 +++++-
 src/plugins/auth/munge/Makefile.am      |  8 ++++--
 src/plugins/auth/none/Makefile.am       |  5 ++++
 src/plugins/jobcomp/filetxt/Makefile.am |  3 +++
 src/plugins/jobcomp/none/Makefile.am    |  3 +++
 src/plugins/sched/backfill/Makefile.am  |  4 ++-
 src/plugins/sched/builtin/Makefile.am   |  6 ++++-
 src/plugins/sched/maui/wiki/Makefile.am |  6 +++++
 src/plugins/switch/elan/Makefile.am     |  5 ++++
 src/plugins/switch/none/Makefile.am     |  3 +++
 14 files changed, 83 insertions(+), 17 deletions(-)
 create mode 100644 auxdir/x_ac_aix.m4

diff --git a/auxdir/Makefile.am b/auxdir/Makefile.am
index 917a22d47db..a9077009bab 100644
--- a/auxdir/Makefile.am
+++ b/auxdir/Makefile.am
@@ -9,6 +9,7 @@ EXTRA_DIST = \
     slurm.m4 \
     type_socklen_t.m4 \
     x_ac__system_configuration.m4 \
+    x_ac_aix.m4 \
     x_ac_debug.m4 \
     x_ac_elan.m4 \
     x_ac_gpl_licensed.m4 \
diff --git a/auxdir/x_ac_aix.m4 b/auxdir/x_ac_aix.m4
new file mode 100644
index 00000000000..5e949526be0
--- /dev/null
+++ b/auxdir/x_ac_aix.m4
@@ -0,0 +1,34 @@
+##*****************************************************************************
+## $Id$
+##*****************************************************************************
+#  AUTHOR:
+#    Morris Jette <jette@llnl.gov>
+#
+#  SYNOPSIS:
+#    AC_AIX
+#
+#  DESCRIPTION:
+#    Check for AIX operating system and sets parameters accordingly
+##*****************************************************************************
+
+
+AC_DEFUN([X_AC_AIX],
+[
+   case "$host" in
+      *-*-aix*) LDFLAGS="$LDFLAGS -Wl,-brtl"      # permit run time linking
+            CMD_LDFLAGS="-Wl,-bgcbypass:1000" # keep all common functions
+            LIB_LDFLAGS="$LDFLAGS -Wl,-G -Wl,-bnoentry -Wl,-bexpfull"
+            SO_LDFLAGS=" $LDFLAGS -Wl,-G -Wl,-bnoentry -Wl,-bexpfull"
+            ac_have_aix="yes"
+            AC_DEFINE(USE_ALIAS, 0, 
+                      [Define slurm_ prefix function aliases for plusins]) ;;
+      *)    AC_DEFINE(USE_ALIAS, 1, 
+                      [Define slurm_ prefix function aliases for plugins]) ;;
+   esac
+
+   AC_SUBST(CMD_LDFLAGS)
+   AC_SUBST(LIB_LDFLAGS)
+   AC_SUBST(SO_LDFLAGS)
+   AM_CONDITIONAL(HAVE_AIX, test "x$ac_have_aix" = "xyes")
+   AC_SUBST(HAVE_AIX)
+])
diff --git a/configure.ac b/configure.ac
index 4b071700480..4714179fb79 100644
--- a/configure.ac
+++ b/configure.ac
@@ -100,18 +100,7 @@ LDFLAGS="$LDFLAGS "
 CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
 LIBS="$PTHREAD_LIBS $LIBS"
 
-case "$host" in
-  *-*-aix*) LDFLAGS="$LDFLAGS -Wl,-brtl"      # permit run time linking
-            CMD_LDFLAGS="-Wl,-bgcbypass:1000" # keep all common functions
-            LIB_LDFLAGS="$LDFLAGS -Wl,-G -Wl,-bnoentry -Wl,-bexpfull" 
-            SO_LDFLAGS=" $LDFLAGS -Wl,-G -Wl,-bnoentry -Wl,-bexpfull"
-            AC_DEFINE(USE_ALIAS, 0, [Define slurm_ prefix function aliases for plusins]) ;;
-  *)        AC_DEFINE(USE_ALIAS, 1, [Define slurm_ prefix function aliases for plugins]) ;;
-esac
-AC_SUBST(CMD_LDFLAGS)
-AC_SUBST(LIB_LDFLAGS)
-AC_SUBST(SO_LDFLAGS)
-
+X_AC_AIX
 X_AC_SLURM_SEMAPHORE
 
 dnl checks for system services.
diff --git a/src/common/Makefile.am b/src/common/Makefile.am
index 64666e9f779..dcd08647adc 100644
--- a/src/common/Makefile.am
+++ b/src/common/Makefile.am
@@ -77,4 +77,5 @@ libeio_la_SOURCES = 	   		\
 	io_hdr.c io_hdr.h
 
 libcommon_la_LIBADD   = $(SSL_LIBS) -ldl
+
 libcommon_la_LDFLAGS  = $(LIB_LDFLAGS) $(SSL_LDFLAGS)
diff --git a/src/plugins/auth/authd/Makefile.am b/src/plugins/auth/authd/Makefile.am
index 21bed96d2b8..6df75445091 100644
--- a/src/plugins/auth/authd/Makefile.am
+++ b/src/plugins/auth/authd/Makefile.am
@@ -16,7 +16,13 @@ pkglib_LTLIBRARIES = $(AUTHD)
 
 # Authd authentication plugin -- requires libauth
 auth_authd_la_SOURCES = auth_authd.c
-auth_authd_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS) 
+auth_authd_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 auth_authd_la_LIBADD = -lauth -le \
 			$(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+else
+auth_authd_la_LIBADD = -lauth -le
+endif
+
diff --git a/src/plugins/auth/munge/Makefile.am b/src/plugins/auth/munge/Makefile.am
index 828622fa05d..bcb8472d2a8 100644
--- a/src/plugins/auth/munge/Makefile.am
+++ b/src/plugins/auth/munge/Makefile.am
@@ -16,8 +16,12 @@ pkglib_LTLIBRARIES = $(MUNGE)
 
 # Munge authentication plugin
 auth_munge_la_SOURCES = auth_munge.c
-auth_munge_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS) 
+auth_munge_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 auth_munge_la_LIBADD =  -lmunge \
 			$(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la 
-
+else
+auth_munge_la_LIBADD =   -lmunge 
+endif
diff --git a/src/plugins/auth/none/Makefile.am b/src/plugins/auth/none/Makefile.am
index 0c77ad3b815..c31ed065845 100644
--- a/src/plugins/auth/none/Makefile.am
+++ b/src/plugins/auth/none/Makefile.am
@@ -12,5 +12,10 @@ pkglib_LTLIBRARIES = auth_none.la
 # Null authentication plugin.
 auth_none_la_SOURCES = auth_none.c
 auth_none_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 auth_none_la_LIBADD  =	$(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+else
+auth_none_la_LIBADD = $(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/jobcomp/filetxt/Makefile.am b/src/plugins/jobcomp/filetxt/Makefile.am
index d3ceca39dfe..961291c2eb3 100644
--- a/src/plugins/jobcomp/filetxt/Makefile.am
+++ b/src/plugins/jobcomp/filetxt/Makefile.am
@@ -12,5 +12,8 @@ pkglib_LTLIBRARIES = jobcomp_filetxt.la
 # Text file job completion logging plugin.
 jobcomp_filetxt_la_SOURCES = jobcomp_filetxt.c
 jobcomp_filetxt_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 jobcomp_filetxt_la_LIBADD  =	$(top_builddir)/src/common/libcommon.la   \
 				$(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/jobcomp/none/Makefile.am b/src/plugins/jobcomp/none/Makefile.am
index 0e69be05659..e925b02190c 100644
--- a/src/plugins/jobcomp/none/Makefile.am
+++ b/src/plugins/jobcomp/none/Makefile.am
@@ -12,5 +12,8 @@ pkglib_LTLIBRARIES = jobcomp_none.la
 # Null job completion logging plugin.
 jobcomp_none_la_SOURCES = jobcomp_none.c
 jobcomp_none_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 jobcomp_none_la_LIBADD  = $(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/sched/backfill/Makefile.am b/src/plugins/sched/backfill/Makefile.am
index 6c554a05ab2..2f20271e0ce 100644
--- a/src/plugins/sched/backfill/Makefile.am
+++ b/src/plugins/sched/backfill/Makefile.am
@@ -14,7 +14,9 @@ pkglib_LTLIBRARIES = sched_backfill.la
 sched_backfill_la_SOURCES = backfill_wrapper.c	\
 			backfill.c	\
 			backfill.h
-
 sched_backfill_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 sched_backfill_la_LIBADD = $(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/sched/builtin/Makefile.am b/src/plugins/sched/builtin/Makefile.am
index 94e2f1b99c3..47843a1a53a 100644
--- a/src/plugins/sched/builtin/Makefile.am
+++ b/src/plugins/sched/builtin/Makefile.am
@@ -12,7 +12,11 @@ INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src/common
 pkglib_LTLIBRARIES = sched_builtin.la
 
 sched_builtin_la_SOURCES = builtin_wrapper.c
-
 sched_builtin_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 sched_builtin_la_LIBADD = $(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+else
+sched_builtin_la_LIBADD = $(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/sched/maui/wiki/Makefile.am b/src/plugins/sched/maui/wiki/Makefile.am
index a92bfe5e974..be8bfbf0a5b 100644
--- a/src/plugins/sched/maui/wiki/Makefile.am
+++ b/src/plugins/sched/maui/wiki/Makefile.am
@@ -40,6 +40,12 @@ sched_wiki_la_SOURCES =	../agent.cpp		\
 			wiki_wrapper.cpp
 
 sched_wiki_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 sched_wiki_la_LIBADD = -lstdc++ \
 			$(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+else
+sched_wiki_la_LIBADD = -lstdc++ \
+			$(top_builddir)/src/api/libslurm.la
+endif
diff --git a/src/plugins/switch/elan/Makefile.am b/src/plugins/switch/elan/Makefile.am
index 805b7ff6f7d..a0e91de93c8 100644
--- a/src/plugins/switch/elan/Makefile.am
+++ b/src/plugins/switch/elan/Makefile.am
@@ -24,9 +24,14 @@ switch_elan_la_SOURCES =        \
 # Add libslurm to switch_elan to provide some symbols that are not
 #  available in slurmctld (slurm_setenvpf)
 
+if HAVE_AIX
 switch_elan_la_LIBADD  = $(ELAN_LIBS)  \
 			$(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+else
+switch_elan_la_LIBADD  = $(ELAN_LIBS)  $(top_builddir)/src/api/libslurm.la
+endif
+
 switch_elan_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
 
 else
diff --git a/src/plugins/switch/none/Makefile.am b/src/plugins/switch/none/Makefile.am
index 99bffee9052..6b505d6dad5 100644
--- a/src/plugins/switch/none/Makefile.am
+++ b/src/plugins/switch/none/Makefile.am
@@ -12,5 +12,8 @@ pkglib_LTLIBRARIES = switch_none.la
 # Null switch plugin.
 switch_none_la_SOURCES = switch_none.c
 switch_none_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS)
+
+if HAVE_AIX
 switch_none_la_LIBADD = $(top_builddir)/src/common/libcommon.la   \
 			$(top_builddir)/src/api/libslurm.la
+endif
-- 
GitLab