diff --git a/auxdir/Makefile.am b/auxdir/Makefile.am index 917a22d47db4cc76ff4c1926c2c489a599b5fb7f..a9077009bab3a68c7c3533d6a7af7496bd957abf 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 0000000000000000000000000000000000000000..5e949526be09b0f91e370992942ec14cbd397042 --- /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 4b0717004802aeb74f52b5a39edcfa88c3ebfde8..4714179fb796940611b8f9d03b729d644350a735 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 64666e9f779ae3cbd62dbc1d47d14feee1bb83cf..dcd08647adc4f9409ad1a3df8a2ea3f3994027a5 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 21bed96d2b885afa4ff203b26b44f1a78815c8b4..6df75445091fc7344557769c16831a7d81458615 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 828622fa05d3786124ad6622cc3796f868b7ff52..bcb8472d2a8bbe2e0c896d175429e43eec4074d3 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 0c77ad3b81503b3eeb866cefa923122b802bbb3d..c31ed065845719eec5ea325b545b84bea3be73e6 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 d3ceca39dfebd09409b9f35cfb4aa7960066f343..961291c2eb3940ccb9631ce20b6f7f85b51b44d7 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 0e69be056595239baaa296ea6348d6455d5c4bb3..e925b02190c6479f6d1850ddb07c9299eb7661e3 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 6c554a05ab237d4091d2661f5420d0f9bdd06cd6..2f20271e0ce8670038486b45d677cb837e58f041 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 94e2f1b99c382f65c93694aeacdad86c04239718..47843a1a53a1375802a14ae70afe54bc4f778e2a 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 a92bfe5e9749ff9d309a3c6b096a6341f75c8f8f..be8bfbf0a5b068da31b9d9ac62e9af27268601dc 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 805b7ff6f7dbc1375bea3331a6c727134d385117..a0e91de93c8a7dfe064a3222f3e1a02abdbc6cac 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 99bffee90526f7a65c41ce839b215563c7e78257..6b505d6dad5c7f538c3793ea68d81f6b5ee4a683 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