diff --git a/auxdir/x_ac_cray.m4 b/auxdir/x_ac_cray.m4 index 583a1875d4d09f98f5d33a2356664e6110e230ce..6121f2c9a38b9a64bb115014c492ebe3e44c51f0 100644 --- a/auxdir/x_ac_cray.m4 +++ b/auxdir/x_ac_cray.m4 @@ -15,49 +15,50 @@ AC_DEFUN([X_AC_CRAY], [ - x_ac_cray="no" - ac_have_native_cray="no" + ac_have_cray="no" + ac_have_cray_emulation="no" - AC_ARG_ENABLE(cray-emulation, AS_HELP_STRING(--enable-cray-emulation, Run SLURM in Cray mode on a non-cray system), - [ case "$enableval" in - yes) ac_have_cray=yes ;; - no) ac_have_cray=no ;; - *) AC_MSG_ERROR([bad value "$enableval" for --enable-cray-emulation]) ;; - esac ]) + AC_ARG_ENABLE( + [cray-emulation], + AS_HELP_STRING(--enable-cray-emulation,Run SLURM in an emulated Cray mode), + [ case "$enableval" in + yes) ac_have_cray_emulation="yes" ;; + no) ac_have_cray_emulation="no" ;; + *) AC_MSG_ERROR([bad value "$enableval" for --enable-cray-emulation]) ;; + esac ] + ) - if test "x$ac_have_cray" = "xyes"; then - # FIXME: This doesn't do much just yet. - AC_MSG_NOTICE([Running in Cray emulation mode]) - else - AC_MSG_CHECKING([whether this is a native Cray XT or XE system]) - # Check for a Cray-specific file: - # * older XT systems use an /etc/xtrelease file - # * newer XT/XE systems use an /etc/opt/cray/release/xtrelease file - # * both have an /etc/xthostname - if test -f /etc/xtrelease || test -d /etc/opt/cray/release ; then - ac_have_native_cray="yes" - # FIXME: This should be used to distinguish we are on - # a real system, It appears what HAVE_NATIVE_CRAY - # does now should probably be renamed to HAVE_CRAY - AC_DEFINE(HAVE_CRAY_FILES, 1, [Define to 1 for native Cray XT/XE system]) - fi - AC_MSG_RESULT([$ac_have_cray]) - fi + if test "$ac_have_cray_emulation" = "yes"; then + ac_have_cray="yes" + AC_MSG_NOTICE([Running in Cray emulation mode]) + else + # Check for a Cray-specific file: + # * older XT systems use an /etc/xtrelease file + # * newer XT/XE systems use an /etc/opt/cray/release/xtrelease file + # * both have an /etc/xthostname + AC_MSG_CHECKING([whether this is a native Cray XT or XE system]) + if test -f /etc/xtrelease || test -d /etc/opt/cray/release; then + ac_have_cray="yes" + AC_DEFINE(HAVE_CRAY_FILES, 1, [Define to 1 for native Cray XT/XE system]) + fi + AC_MSG_RESULT([$ac_have_cray]) + fi - if test "$ac_have_cray" = "yes"; then - if test -z "$MYSQL_CFLAGS" || test -z "$MYSQL_LIBS"; then - AC_MSG_ERROR([BASIL requires the cray-MySQL-devel-enterprise rpm]) - fi + if test "$ac_have_cray" = "yes"; then + # libexpat is always required for the XML-RPC interface + AC_CHECK_HEADER(expat.h, [], + AC_MSG_ERROR([Cray BASIL requires expat headers/rpm])) + AC_CHECK_LIB(expat, XML_ParserCreate, [], + AC_MSG_ERROR([Cray BASIL requires libexpat.so (i.e. libexpat1-dev)])) + if test -z "$MYSQL_CFLAGS" || test -z "$MYSQL_LIBS"; then + AC_MSG_ERROR([Cray BASIL requires the cray-MySQL-devel-enterprise rpm]) + fi - AC_CHECK_HEADER(expat.h, [], - AC_MSG_ERROR([BASIL requires expat headers/rpm])) - AC_CHECK_LIB(expat, XML_ParserCreate, [], - AC_MSG_ERROR([BASIL requires libexpat.so (i.e. libexpat1-dev)])) - - AC_DEFINE(HAVE_3D, 1, [Define to 1 if 3-dimensional architecture]) - AC_DEFINE(SYSTEM_DIMENSIONS, 3, [3-dimensional architecture]) - AC_DEFINE(HAVE_FRONT_END, 1, [Define to 1 if running slurmd on front-end only]) - AC_DEFINE(HAVE_NATIVE_CRAY, 1, [Define to 1 for native Cray XT/XE system]) - fi - AM_CONDITIONAL(HAVE_NATIVE_CRAY, test "$ac_have_cray" = "yes") + AC_DEFINE(HAVE_3D, 1, [Define to 1 if 3-dimensional architecture]) + AC_DEFINE(SYSTEM_DIMENSIONS, 3, [3-dimensional architecture]) + AC_DEFINE(HAVE_FRONT_END, 1, [Define to 1 if running slurmd on front-end only]) + AC_DEFINE(HAVE_CRAY, 1, [Define to 1 for Cray XT/XE systems]) + fi + AM_CONDITIONAL(HAVE_CRAY, test "$ac_have_cray" = "yes") + AM_CONDITIONAL(HAVE_CRAY_EMULATION, test "$ac_have_cray_emulation" = "yes") ]) diff --git a/config.h.in b/config.h.in index cfdecec684dd5c833230837dc2f8749b821bd1b3..df2f3b57ac9da5e71cc387642443d80fec1d1e27 100644 --- a/config.h.in +++ b/config.h.in @@ -63,6 +63,9 @@ /* Define to 1 if you have the `cfmakeraw' function. */ #undef HAVE_CFMAKERAW +/* Define to 1 for Cray XT/XE systems */ +#undef HAVE_CRAY + /* Define to 1 for native Cray XT/XE system */ #undef HAVE_CRAY_FILES @@ -164,9 +167,6 @@ /* Define to 1 if using MySQL libaries */ #undef HAVE_MYSQL -/* Define to 1 for native Cray XT/XE system */ -#undef HAVE_NATIVE_CRAY - /* Define to 1 if you have the <ncurses.h> header file. */ #undef HAVE_NCURSES_H diff --git a/configure b/configure index 384208bf66a6895aef9702aae97c9af898f535f4..68a3e24d036a2c9bf11166ca5e3a36b28b211b20 100755 --- a/configure +++ b/configure @@ -787,8 +787,10 @@ SLURMD_PORT SLURMCTLD_PORT DEBUG_MODULES_FALSE DEBUG_MODULES_TRUE -HAVE_NATIVE_CRAY_FALSE -HAVE_NATIVE_CRAY_TRUE +HAVE_CRAY_EMULATION_FALSE +HAVE_CRAY_EMULATION_TRUE +HAVE_CRAY_FALSE +HAVE_CRAY_TRUE WITH_PGSQL_FALSE WITH_PGSQL_TRUE PGSQL_CFLAGS @@ -1691,7 +1693,7 @@ Optional Features: environment without .login --enable-sun-const enable Sun Constellation system support --disable-gtktest do not try to compile and run a test GTK+ program - --enable-cray-emulation Run SLURM in Cray mode on a non-cray system + --enable-cray-emulation Run SLURM in an emulated Cray mode --enable-debug enable debugging code for development --enable-memory-leak-debug enable memory leak debugging code for development @@ -7625,13 +7627,13 @@ if test "${lt_cv_nm_interface+set}" = set; then : else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:7628: $ac_compile\"" >&5) + (eval echo "\"\$as_me:7630: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:7631: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:7633: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:7634: output\"" >&5) + (eval echo "\"\$as_me:7636: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -8836,7 +8838,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 8839 "configure"' > conftest.$ac_ext + echo '#line 8841 "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -10624,11 +10626,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10627: $lt_compile\"" >&5) + (eval echo "\"\$as_me:10629: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10631: \$? = $ac_status" >&5 + echo "$as_me:10633: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -10963,11 +10965,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10966: $lt_compile\"" >&5) + (eval echo "\"\$as_me:10968: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10970: \$? = $ac_status" >&5 + echo "$as_me:10972: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -11068,11 +11070,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11071: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11073: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11075: \$? = $ac_status" >&5 + echo "$as_me:11077: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11123,11 +11125,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11126: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11128: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11130: \$? = $ac_status" >&5 + echo "$as_me:11132: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -13507,7 +13509,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 13510 "configure" +#line 13512 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -13603,7 +13605,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 13606 "configure" +#line 13608 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -15559,11 +15561,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15562: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15564: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15566: \$? = $ac_status" >&5 + echo "$as_me:15568: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15658,11 +15660,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15661: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15663: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15665: \$? = $ac_status" >&5 + echo "$as_me:15667: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -15710,11 +15712,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15713: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15715: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15717: \$? = $ac_status" >&5 + echo "$as_me:15719: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -19635,57 +19637,52 @@ fi - x_ac_cray="no" - ac_have_native_cray="no" + ac_have_cray="no" + ac_have_cray_emulation="no" - # Check whether --enable-cray-emulation was given. + # Check whether --enable-cray-emulation was given. if test "${enable_cray_emulation+set}" = set; then : enableval=$enable_cray_emulation; case "$enableval" in - yes) ac_have_cray=yes ;; - no) ac_have_cray=no ;; - *) as_fn_error $? "bad value \"$enableval\" for --enable-cray-emulation" "$LINENO" 5 ;; - esac + yes) ac_have_cray_emulation="yes" ;; + no) ac_have_cray_emulation="no" ;; + *) as_fn_error $? "bad value \"$enableval\" for --enable-cray-emulation" "$LINENO" 5 ;; + esac + fi - if test "x$ac_have_cray" = "xyes"; then - # FIXME: This doesn't do much just yet. - { $as_echo "$as_me:${as_lineno-$LINENO}: Running in Cray emulation mode" >&5 + if test "$ac_have_cray_emulation" = "yes"; then + ac_have_cray="yes" + { $as_echo "$as_me:${as_lineno-$LINENO}: Running in Cray emulation mode" >&5 $as_echo "$as_me: Running in Cray emulation mode" >&6;} - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether this is a native Cray XT or XE system" >&5 + else + # Check for a Cray-specific file: + # * older XT systems use an /etc/xtrelease file + # * newer XT/XE systems use an /etc/opt/cray/release/xtrelease file + # * both have an /etc/xthostname + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether this is a native Cray XT or XE system" >&5 $as_echo_n "checking whether this is a native Cray XT or XE system... " >&6; } - # Check for a Cray-specific file: - # * older XT systems use an /etc/xtrelease file - # * newer XT/XE systems use an /etc/opt/cray/release/xtrelease file - # * both have an /etc/xthostname - if test -f /etc/xtrelease || test -d /etc/opt/cray/release ; then - ac_have_native_cray="yes" - # FIXME: This should be used to distinguish we are on - # a real system, It appears what HAVE_NATIVE_CRAY - # does now should probably be renamed to HAVE_CRAY + if test -f /etc/xtrelease || test -d /etc/opt/cray/release; then + ac_have_cray="yes" $as_echo "#define HAVE_CRAY_FILES 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_have_cray" >&5 + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_have_cray" >&5 $as_echo "$ac_have_cray" >&6; } - fi - - if test "$ac_have_cray" = "yes"; then - if test -z "$MYSQL_CFLAGS" || test -z "$MYSQL_LIBS"; then - as_fn_error $? "BASIL requires the cray-MySQL-devel-enterprise rpm" "$LINENO" 5 - fi + fi - ac_fn_c_check_header_mongrel "$LINENO" "expat.h" "ac_cv_header_expat_h" "$ac_includes_default" + if test "$ac_have_cray" = "yes"; then + # libexpat is always required for the XML-RPC interface + ac_fn_c_check_header_mongrel "$LINENO" "expat.h" "ac_cv_header_expat_h" "$ac_includes_default" if test "x$ac_cv_header_expat_h" = x""yes; then : else - as_fn_error $? "BASIL requires expat headers/rpm" "$LINENO" 5 + as_fn_error $? "Cray BASIL requires expat headers/rpm" "$LINENO" 5 fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML_ParserCreate in -lexpat" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML_ParserCreate in -lexpat" >&5 $as_echo_n "checking for XML_ParserCreate in -lexpat... " >&6; } if test "${ac_cv_lib_expat_XML_ParserCreate+set}" = set; then : $as_echo_n "(cached) " >&6 @@ -19729,9 +19726,12 @@ _ACEOF LIBS="-lexpat $LIBS" else - as_fn_error $? "BASIL requires libexpat.so (i.e. libexpat1-dev)" "$LINENO" 5 + as_fn_error $? "Cray BASIL requires libexpat.so (i.e. libexpat1-dev)" "$LINENO" 5 fi + if test -z "$MYSQL_CFLAGS" || test -z "$MYSQL_LIBS"; then + as_fn_error $? "Cray BASIL requires the cray-MySQL-devel-enterprise rpm" "$LINENO" 5 + fi $as_echo "#define HAVE_3D 1" >>confdefs.h @@ -19743,15 +19743,23 @@ $as_echo "#define SYSTEM_DIMENSIONS 3" >>confdefs.h $as_echo "#define HAVE_FRONT_END 1" >>confdefs.h -$as_echo "#define HAVE_NATIVE_CRAY 1" >>confdefs.h +$as_echo "#define HAVE_CRAY 1" >>confdefs.h - fi - if test "$ac_have_cray" = "yes"; then - HAVE_NATIVE_CRAY_TRUE= - HAVE_NATIVE_CRAY_FALSE='#' + fi + if test "$ac_have_cray" = "yes"; then + HAVE_CRAY_TRUE= + HAVE_CRAY_FALSE='#' else - HAVE_NATIVE_CRAY_TRUE='#' - HAVE_NATIVE_CRAY_FALSE= + HAVE_CRAY_TRUE='#' + HAVE_CRAY_FALSE= +fi + + if test "$ac_have_cray_emulation" = "yes"; then + HAVE_CRAY_EMULATION_TRUE= + HAVE_CRAY_EMULATION_FALSE='#' +else + HAVE_CRAY_EMULATION_TRUE='#' + HAVE_CRAY_EMULATION_FALSE= fi @@ -21273,8 +21281,12 @@ if test -z "${WITH_PGSQL_TRUE}" && test -z "${WITH_PGSQL_FALSE}"; then as_fn_error $? "conditional \"WITH_PGSQL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${HAVE_NATIVE_CRAY_TRUE}" && test -z "${HAVE_NATIVE_CRAY_FALSE}"; then - as_fn_error $? "conditional \"HAVE_NATIVE_CRAY\" was never defined. +if test -z "${HAVE_CRAY_TRUE}" && test -z "${HAVE_CRAY_FALSE}"; then + as_fn_error $? "conditional \"HAVE_CRAY\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_CRAY_EMULATION_TRUE}" && test -z "${HAVE_CRAY_EMULATION_FALSE}"; then + as_fn_error $? "conditional \"HAVE_CRAY_EMULATION\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DEBUG_MODULES_TRUE}" && test -z "${DEBUG_MODULES_FALSE}"; then diff --git a/src/common/node_conf.h b/src/common/node_conf.h index 4ca696d9312009601c218a09fdb1938d8c245ca1..7b50ba470a7783a3ae2fe904a383e6051e901520 100644 --- a/src/common/node_conf.h +++ b/src/common/node_conf.h @@ -146,10 +146,10 @@ struct node_record { * or other sequence number used to * order nodes by location, * no need to save/restore */ -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY uint32_t basil_node_id; /* Cray-XT BASIL node ID, * no need to save/restore */ -#endif /* HAVE_NATIVE_CRAY */ +#endif /* HAVE_CRAY */ dynamic_plugin_data_t *select_nodeinfo; /* opaque data structure, * use select_g_get_nodeinfo() * to access contents */ diff --git a/src/common/node_select.c b/src/common/node_select.c index 737ce9d9ed9b2948c3cce49554f3fbb5431e647b..eb0c2d149c7d5272a7a27b87a690a85b8b79f79c 100644 --- a/src/common/node_select.c +++ b/src/common/node_select.c @@ -314,11 +314,18 @@ extern int slurm_select_init(bool only_default) } #endif -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY if (strcasecmp(select_type, "select/cray")) { error("%s is incompatible with Cray", select_type); fatal("Use SelectType=select/cray"); } +#else + if (!strcasecmp(select_type, "select/cray")) { + fatal("Requested SelectType=select/cray " + "in slurm.conf, but not running on a Cray " + "system. If looking to emulate a Cray " + "system use --enable-cray-emulation."); + } #endif } diff --git a/src/common/read_config.c b/src/common/read_config.c index 29ff7920be76571159b9024e36e3bf072f81172a..129b241d29066f618b4f77796a3069cb0d5f5c0e 100644 --- a/src/common/read_config.c +++ b/src/common/read_config.c @@ -2718,7 +2718,7 @@ _validate_and_set_defaults(slurm_ctl_conf_t *conf, s_p_hashtbl_t *hashtbl) if (!s_p_get_uint16(&conf->ret2service, "ReturnToService", hashtbl)) conf->ret2service = DEFAULT_RETURN_TO_SERVICE; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY if (conf->ret2service > 1) fatal("ReturnToService > 1 is not supported on Cray"); #endif @@ -2775,11 +2775,6 @@ _validate_and_set_defaults(slurm_ctl_conf_t *conf, s_p_hashtbl_t *hashtbl) if (!s_p_get_string(&conf->select_type, "SelectType", hashtbl)) conf->select_type = xstrdup(DEFAULT_SELECT_TYPE); -#ifndef HAVE_NATIVE_CRAY - if (strcmp(conf->select_type, "select/cray") == 0) - fatal("Use of SelectType=select/cray in slurm.conf " - "without built-in support of Cray systems."); -#endif if (s_p_get_string(&temp_str, "SelectTypeParameters", hashtbl)) { diff --git a/src/common/read_config.h b/src/common/read_config.h index f1d3c7d129bb556f89ed3931b24181b296bfefbe..3be580bb008ec7558ce7edb77af26e0349614e70 100644 --- a/src/common/read_config.h +++ b/src/common/read_config.h @@ -120,7 +120,7 @@ extern char *default_plugstack; # define DEFAULT_SELECT_TYPE "select/bluegene" # endif #else -# ifdef HAVE_NATIVE_CRAY +# ifdef HAVE_CRAY # define DEFAULT_SELECT_TYPE "select/cray" # else # define DEFAULT_SELECT_TYPE "select/linear" diff --git a/src/common/working_cluster.c b/src/common/working_cluster.c index 0b7724444e8a341e8146770df93b61ab7c35d8a5..6f6209966ae77e679a9f9bf817b096d3c3d985c9 100644 --- a/src/common/working_cluster.c +++ b/src/common/working_cluster.c @@ -73,7 +73,7 @@ extern bool is_cray_system(void) { if (working_cluster_rec) return working_cluster_rec->flags & CLUSTER_FLAG_CRAYXT; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY return true; #endif return false; @@ -122,7 +122,7 @@ extern uint32_t slurmdb_setup_cluster_flags(void) #ifdef MULTIPLE_SLURMD cluster_flags |= CLUSTER_FLAG_MULTSD; #endif -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY cluster_flags |= CLUSTER_FLAG_CRAYXT; #endif #ifdef HAVE_FRONT_END diff --git a/src/plugins/sched/backfill/backfill.c b/src/plugins/sched/backfill/backfill.c index 1b17b9c6f0eecc4615c052a94fe747e1b807ad43..deb2bfab2e1fa5244102e155efa30886f6e8cbb9 100644 --- a/src/plugins/sched/backfill/backfill.c +++ b/src/plugins/sched/backfill/backfill.c @@ -480,7 +480,7 @@ static int _attempt_backfill(void) } this_sched_timeout = sched_timeout; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY /* * Run a Basil Inventory immediately before setting up the schedule * plan, to avoid race conditions caused by ALPS node state change. diff --git a/src/plugins/sched/wiki/get_nodes.c b/src/plugins/sched/wiki/get_nodes.c index b24f2b5968f27d687178876a18e83aa3a9c4138a..dd86672681b6066d115b42b87910b3402baff494 100644 --- a/src/plugins/sched/wiki/get_nodes.c +++ b/src/plugins/sched/wiki/get_nodes.c @@ -74,7 +74,7 @@ extern int get_nodes(char *cmd_ptr, int *err_code, char **err_msg) NO_LOCK, NO_LOCK, READ_LOCK, READ_LOCK }; int node_rec_cnt = 0, buf_size = 0; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY /* Locks: write node */ slurmctld_lock_t node_write_lock = { NO_LOCK, NO_LOCK, WRITE_LOCK, NO_LOCK }; diff --git a/src/plugins/sched/wiki2/get_nodes.c b/src/plugins/sched/wiki2/get_nodes.c index 364dc4b92323ffe01c57d36dccf1ef0c547f0554..72417580fb81a532965b40ada6d0082cdfd5cc42 100644 --- a/src/plugins/sched/wiki2/get_nodes.c +++ b/src/plugins/sched/wiki2/get_nodes.c @@ -86,7 +86,7 @@ extern int get_nodes(char *cmd_ptr, int *err_code, char **err_msg) NO_LOCK, NO_LOCK, READ_LOCK, READ_LOCK }; int node_rec_cnt = 0, buf_size = 0; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY /* Locks: write node */ slurmctld_lock_t node_write_lock = { NO_LOCK, NO_LOCK, WRITE_LOCK, NO_LOCK }; diff --git a/src/plugins/select/cray/Makefile.am b/src/plugins/select/cray/Makefile.am index 29292dae143a6b1419c8874f85be6d1d7e961531..8c0101cbb0936956afedb22960a56d26a911dec5 100644 --- a/src/plugins/select/cray/Makefile.am +++ b/src/plugins/select/cray/Makefile.am @@ -13,23 +13,17 @@ select_cray_la_SOURCES = select_cray.c basil_interface.h \ other_select.c other_select.h select_cray_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS) -if HAVE_NATIVE_CRAY -SUBDIRS = libalps - +if HAVE_CRAY select_cray_la_SOURCES += basil_interface.c select_cray_la_CFLAGS = $(MYSQL_CFLAGS) -select_cray_la_LIBADD = libalps/libalps.la - -force: -$(select_cray_la_LIBADD) : force - @cd `dirname $@` && $(MAKE) `basename $@` -else +if HAVE_CRAY_EMULATION SUBDIRS = libemulate - -select_cray_la_SOURCES += basil_interface.c -select_cray_la_CFLAGS = $(MYSQL_CFLAGS) select_cray_la_LIBADD = libemulate/libalps.la +else +SUBDIRS = libalps +select_cray_la_LIBADD = libalps/libalps.la +endif force: $(select_cray_la_LIBADD) : force diff --git a/src/plugins/select/cray/Makefile.in b/src/plugins/select/cray/Makefile.in index fd2e32254a1f5a4799bfed2d6dfd471abbcff60c..cfb4b878814dbe2dface034afdc2798553800304 100644 --- a/src/plugins/select/cray/Makefile.in +++ b/src/plugins/select/cray/Makefile.in @@ -37,8 +37,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -@HAVE_NATIVE_CRAY_TRUE@am__append_1 = basil_interface.c -@HAVE_NATIVE_CRAY_FALSE@am__append_2 = basil_interface.c +@HAVE_CRAY_TRUE@am__append_1 = basil_interface.c subdir = src/plugins/select/cray DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -106,19 +105,14 @@ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(pkglibdir)" LTLIBRARIES = $(pkglib_LTLIBRARIES) -@HAVE_NATIVE_CRAY_FALSE@select_cray_la_DEPENDENCIES = \ -@HAVE_NATIVE_CRAY_FALSE@ libemulate/libalps.la -@HAVE_NATIVE_CRAY_TRUE@select_cray_la_DEPENDENCIES = \ -@HAVE_NATIVE_CRAY_TRUE@ libalps/libalps.la +@HAVE_CRAY_EMULATION_FALSE@@HAVE_CRAY_TRUE@select_cray_la_DEPENDENCIES = \ +@HAVE_CRAY_EMULATION_FALSE@@HAVE_CRAY_TRUE@ libalps/libalps.la +@HAVE_CRAY_EMULATION_TRUE@@HAVE_CRAY_TRUE@select_cray_la_DEPENDENCIES = libemulate/libalps.la am__select_cray_la_SOURCES_DIST = select_cray.c basil_interface.h \ other_select.c other_select.h basil_interface.c -@HAVE_NATIVE_CRAY_TRUE@am__objects_1 = \ -@HAVE_NATIVE_CRAY_TRUE@ select_cray_la-basil_interface.lo -@HAVE_NATIVE_CRAY_FALSE@am__objects_2 = \ -@HAVE_NATIVE_CRAY_FALSE@ select_cray_la-basil_interface.lo +@HAVE_CRAY_TRUE@am__objects_1 = select_cray_la-basil_interface.lo am_select_cray_la_OBJECTS = select_cray_la-select_cray.lo \ - select_cray_la-other_select.lo $(am__objects_1) \ - $(am__objects_2) + select_cray_la-other_select.lo $(am__objects_1) select_cray_la_OBJECTS = $(am_select_cray_la_OBJECTS) select_cray_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(select_cray_la_CFLAGS) \ @@ -152,7 +146,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ distdir ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = libemulate libalps +DIST_SUBDIRS = libalps libemulate DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -379,14 +373,13 @@ pkglib_LTLIBRARIES = select_cray.la # Cray node selection plugin. select_cray_la_SOURCES = select_cray.c basil_interface.h \ - other_select.c other_select.h $(am__append_1) $(am__append_2) + other_select.c other_select.h $(am__append_1) select_cray_la_LDFLAGS = $(SO_LDFLAGS) $(PLUGIN_FLAGS) -@HAVE_NATIVE_CRAY_TRUE@SUBDIRS = libemulate -@HAVE_NATIVE_CRAY_FALSE@SUBDIRS = libalps -@HAVE_NATIVE_CRAY_TRUE@select_cray_la_CFLAGS = $(MYSQL_CFLAGS) -@HAVE_NATIVE_CRAY_FALSE@select_cray_la_CFLAGS = $(MYSQL_CFLAGS) -@HAVE_NATIVE_CRAY_TRUE@select_cray_la_LIBADD = libemulate/libalps.la -@HAVE_NATIVE_CRAY_FALSE@select_cray_la_LIBADD = libalps/libalps.la +@HAVE_CRAY_TRUE@select_cray_la_CFLAGS = $(MYSQL_CFLAGS) +@HAVE_CRAY_EMULATION_FALSE@@HAVE_CRAY_TRUE@SUBDIRS = libalps +@HAVE_CRAY_EMULATION_TRUE@@HAVE_CRAY_TRUE@SUBDIRS = libemulate +@HAVE_CRAY_EMULATION_FALSE@@HAVE_CRAY_TRUE@select_cray_la_LIBADD = libalps/libalps.la +@HAVE_CRAY_EMULATION_TRUE@@HAVE_CRAY_TRUE@select_cray_la_LIBADD = libemulate/libalps.la all: all-recursive .SUFFIXES: @@ -830,13 +823,9 @@ uninstall-am: uninstall-pkglibLTLIBRARIES uninstall-pkglibLTLIBRARIES -@HAVE_NATIVE_CRAY_FALSE@force: -@HAVE_NATIVE_CRAY_FALSE@$(select_cray_la_LIBADD) : force -@HAVE_NATIVE_CRAY_FALSE@ @cd `dirname $@` && $(MAKE) `basename $@` - -@HAVE_NATIVE_CRAY_TRUE@force: -@HAVE_NATIVE_CRAY_TRUE@$(select_cray_la_LIBADD) : force -@HAVE_NATIVE_CRAY_TRUE@ @cd `dirname $@` && $(MAKE) `basename $@` +@HAVE_CRAY_TRUE@force: +@HAVE_CRAY_TRUE@$(select_cray_la_LIBADD) : force +@HAVE_CRAY_TRUE@ @cd `dirname $@` && $(MAKE) `basename $@` # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/src/plugins/select/cray/basil_interface.h b/src/plugins/select/cray/basil_interface.h index a5c1ce9b2b01cc4e605ab5a0990ff1fc781270ed..83fd5f801f42282b5d76de4fae36e21439a32f04 100644 --- a/src/plugins/select/cray/basil_interface.h +++ b/src/plugins/select/cray/basil_interface.h @@ -33,14 +33,14 @@ struct select_nodeinfo { }; #define NODEINFO_MAGIC 0x82a3 -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY extern int basil_node_ranking(struct node_record *node_array, int node_cnt); extern int basil_inventory(void); extern int basil_geometry(struct node_record *node_ptr_array, int node_cnt); extern int do_basil_reserve(struct job_record *job_ptr); extern int do_basil_confirm(struct job_record *job_ptr); extern int do_basil_release(struct job_record *job_ptr); -#else /* !HAVE_NATIVE_CRAY */ +#else /* !HAVE_CRAY */ static inline int basil_node_ranking(struct node_record *ig, int nore) { return SLURM_SUCCESS; @@ -69,5 +69,5 @@ static inline int do_basil_release(struct job_record *job_ptr) { return SLURM_SUCCESS; } -#endif /* HAVE_NATIVE_CRAY */ +#endif /* HAVE_CRAY */ #endif /* __CRAY_BASIL_INTERFACE_H */ diff --git a/src/plugins/select/cray/libalps/basil_request.c b/src/plugins/select/cray/libalps/basil_request.c index 500e8d05061595373f8f0d3f4f46c04dd6a76a0d..54709f8ab272fce510652fdef7ce80463a0c0467 100644 --- a/src/plugins/select/cray/libalps/basil_request.c +++ b/src/plugins/select/cray/libalps/basil_request.c @@ -12,7 +12,10 @@ * Has not changed between XT3 ... XT5 ... XE */ #ifdef HAVE_CRAY_FILES -static char alps_client[] = "/usr/bin/apbasil"; +static char *alps_client = "/usr/bin/apbasil"; +#else +static char *alps_client = NULL; +#endif static void _rsvn_write_reserve_xml(FILE *fp, struct basil_reservation *r) { @@ -86,7 +89,6 @@ static void _rsvn_write_reserve_xml(FILE *fp, struct basil_reservation *r) fprintf(fp, " </ReserveParamArray>\n" "</BasilRequest>\n"); } -#endif /* * basil_request - issue BASIL request and parse response @@ -96,12 +98,15 @@ static void _rsvn_write_reserve_xml(FILE *fp, struct basil_reservation *r) */ int basil_request(struct basil_parse_data *bp) { -#ifdef HAVE_CRAY_FILES int to_child, from_child; int ec, rc = -BE_UNKNOWN; FILE *apbasil; pid_t pid; + if (!alps_client) { + error("No alps client defined"); + return 0; + } assert(bp->version < BV_MAX); assert(bp->method > BM_none && bp->method < BM_MAX); @@ -155,7 +160,4 @@ int basil_request(struct basil_parse_data *bp) error("%s child process for BASIL %s method exited with %d", alps_client, bm_names[bp->method], ec); return rc; -#else - return 0; -#endif } diff --git a/src/plugins/select/cray/libemulate/alps_emulate.c b/src/plugins/select/cray/libemulate/alps_emulate.c index 8a7cdc846d5173d8e02f387aae3fdc3671ef8339..2a38b06dbb3a22a65f8a89578018ef24d52170e4 100644 --- a/src/plugins/select/cray/libemulate/alps_emulate.c +++ b/src/plugins/select/cray/libemulate/alps_emulate.c @@ -1,7 +1,7 @@ /*****************************************************************************\ * alps_emulate.c - simple ALPS emulator used for testing purposes ***************************************************************************** - * Copyright (C) 2010 SchedMD <http://www.schedmd.com>. + * Copyright (C) 2011 SchedMD <http://www.schedmd.com>. * Written by Morris Jette <jette@schedmd.com> * * This file is part of SLURM, a resource management program. @@ -49,7 +49,7 @@ #include "src/common/node_conf.h" #include "src/common/xmalloc.h" #include "../basil_alps.h" -#include "../parser_common.h" +//#include "../parser_common.h" /* If _ADD_DELAYS is set, then include sleep calls to emulate delays * expected for ALPS/BASIL interactions */ diff --git a/src/plugins/select/cray/select_cray.c b/src/plugins/select/cray/select_cray.c index c44f6281d737d6b41a29cd6c9f3df50654754748..d4fbc469335ac6d330e63aded581fc847c6de5bd 100644 --- a/src/plugins/select/cray/select_cray.c +++ b/src/plugins/select/cray/select_cray.c @@ -133,7 +133,7 @@ extern int init ( void ) * if (slurmctld_conf.select_type_param & CR_CONS_RES) * plugin_id = 105; */ -#ifndef HAVE_NATIVE_CRAY +#ifndef HAVE_CRAY if (bg_recover != NOT_FROM_CONTROLLER) fatal("select/cray is incompatible with a non Cray system"); #endif diff --git a/src/salloc/opt.c b/src/salloc/opt.c index a269d2c9e19a76f1f79ea5edd45073d6017e60ba..aa55c0e3bcaa8643e6a1b1ca1b4190f5172343ba 100644 --- a/src/salloc/opt.c +++ b/src/salloc/opt.c @@ -1266,7 +1266,7 @@ static bool _opt_verify(void) verified = false; } -#if defined(HAVE_NATIVE_CRAY) +#if defined(HAVE_CRAY) if (getenv("BASIL_RESERVATION_ID") != NULL) { error("BASIL_RESERVATION_ID already set - running salloc " "within salloc?"); diff --git a/src/salloc/salloc.c b/src/salloc/salloc.c index bd1e97f29f1e7e0bdd644ea7025549f5c2f0ff1d..b782f82b22a6c004e4c1416d6c4f7c5988120964 100644 --- a/src/salloc/salloc.c +++ b/src/salloc/salloc.c @@ -776,7 +776,7 @@ static void _job_complete_handler(srun_job_complete_msg_t *comp) if (tpgid != command_pid && tpgid != getpgrp()) killpg(tpgid, SIGHUP); } -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY signal = SIGTERM; #else if (opt.kill_command_signal_set) diff --git a/src/slurmctld/job_scheduler.c b/src/slurmctld/job_scheduler.c index 77e19e9c1d6d4ee04467aa3173b758ce8a09a069..ce5f8a210263b3575711ea084c9a8334ca401b0e 100644 --- a/src/slurmctld/job_scheduler.c +++ b/src/slurmctld/job_scheduler.c @@ -386,7 +386,7 @@ extern int schedule(uint32_t job_limit) return SLURM_SUCCESS; } -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY /* * Run a Basil Inventory immediately before scheduling, to avoid * race conditions caused by ALPS node state change (caused e.g. @@ -1289,7 +1289,7 @@ static char **_build_env(struct job_record *job_ptr) SELECT_JOBDATA_BLOCK_ID, &name); setenvf(&my_env, "MPIRUN_PARTITION", "%s", name); xfree(name); -#elif defined(HAVE_NATIVE_CRAY) +#elif defined(HAVE_CRAY) name = select_g_select_jobinfo_xstrdup(job_ptr->select_jobinfo, SELECT_PRINT_RESV_ID); setenvf(&my_env, "BASIL_RESERVATION_ID", "%s", name); diff --git a/src/slurmctld/proc_req.c b/src/slurmctld/proc_req.c index 6c2f3cde43e0b2a7efd5594bb98f46bdd8fc4584..263ba71d91039ab6ee446dd55951c417e8d9c7c2 100644 --- a/src/slurmctld/proc_req.c +++ b/src/slurmctld/proc_req.c @@ -1480,7 +1480,7 @@ static void _slurm_rpc_complete_batch_script(slurm_msg_t * msg) msg_title, nodes, slurm_strerror(comp_msg->slurm_rc)); comp_msg->slurm_rc = SLURM_SUCCESS; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY } else if (comp_msg->slurm_rc == ESLURM_RESERVATION_NOT_USABLE) { /* * Confirmation of ALPS reservation failed. diff --git a/src/slurmd/slurmd/req.c b/src/slurmd/slurmd/req.c index 65b7fedbd5606ef8d74e88ea8cac658968a6e13a..e7d35aca720ff64c1696ba5103620a8120c3b9ca 100644 --- a/src/slurmd/slurmd/req.c +++ b/src/slurmd/slurmd/req.c @@ -1249,7 +1249,7 @@ _rpc_batch_job(slurm_msg_t *msg) #if defined(HAVE_BG) select_g_select_jobinfo_get(req->select_jobinfo, SELECT_JOBDATA_BLOCK_ID, &resv_id); -#elif defined(HAVE_NATIVE_CRAY) +#elif defined(HAVE_CRAY) resv_id = select_g_select_jobinfo_xstrdup(req->select_jobinfo, SELECT_PRINT_RESV_ID); #endif @@ -3244,7 +3244,7 @@ _rpc_abort_job(slurm_msg_t *msg) select_g_select_jobinfo_get(req->select_jobinfo, SELECT_JOBDATA_BLOCK_ID, &resv_id); -#elif defined(HAVE_NATIVE_CRAY) +#elif defined(HAVE_CRAY) resv_id = select_g_select_jobinfo_xstrdup(req->select_jobinfo, SELECT_PRINT_RESV_ID); #endif @@ -3432,7 +3432,7 @@ _rpc_terminate_job(slurm_msg_t *msg) select_g_select_jobinfo_get(req->select_jobinfo, SELECT_JOBDATA_BLOCK_ID, &resv_id); -#elif defined(HAVE_NATIVE_CRAY) +#elif defined(HAVE_CRAY) resv_id = select_g_select_jobinfo_xstrdup(req->select_jobinfo, SELECT_PRINT_RESV_ID); #endif @@ -3673,7 +3673,7 @@ _build_env(uint32_t jobid, uid_t uid, char *resv_id, if (resv_id) { #if defined(HAVE_BG) setenvf(&env, "MPIRUN_PARTITION", "%s", resv_id); -#elif defined(HAVE_NATIVE_CRAY) +#elif defined(HAVE_CRAY) setenvf(&env, "BASIL_RESERVATION_ID", "%s", resv_id); #endif } diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c index 586318139e248eb1749db7303e29ab4e01343363..11ecd35fe80393a95453f0d3f67b2b782dd50a6a 100644 --- a/src/slurmd/slurmstepd/mgr.c +++ b/src/slurmd/slurmstepd/mgr.c @@ -257,7 +257,7 @@ static uint32_t _get_exit_code(slurmd_job_t *job) return step_rc; } -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY /* * Kludge to better inter-operate with ALPS layer: * - CONFIRM method requires the SID of the shell executing the job script, @@ -303,7 +303,7 @@ batch_finish(slurmd_job_t *job, int rc) error("rmdir(%s): %m", job->batchdir); xfree(job->batchdir); -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY (void)_call_select_plugin_from_stepd(job, select_g_job_fini); #endif @@ -883,7 +883,7 @@ job_manager(slurmd_job_t *job) goto fail1; } -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY if(_call_select_plugin_from_stepd(job, select_g_job_ready)) { error("could not confirm ALPS resId %u", job->resv_id); /* diff --git a/src/slurmd/slurmstepd/slurmstepd_job.c b/src/slurmd/slurmstepd/slurmstepd_job.c index 4a1ccf7e2503fc34c329cb0d5b9e7c01c8229264..3c97ae7788e4563c2827e8ea529052717ff420fb 100644 --- a/src/slurmd/slurmstepd/slurmstepd_job.c +++ b/src/slurmd/slurmstepd/slurmstepd_job.c @@ -441,7 +441,7 @@ job_batch_job_create(batch_job_launch_msg_t *msg) job->task[0]->argc = job->argc; job->task[0]->argv = job->argv; -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY select_g_select_jobinfo_get(msg->select_jobinfo, SELECT_JOBDATA_RESV_ID, &job->resv_id); #endif diff --git a/src/sview/job_info.c b/src/sview/job_info.c index da1993c38018202763c3a186cd62a04ee574be6c..3af36631e243c0094a369e23a78d7be1361d8017 100644 --- a/src/sview/job_info.c +++ b/src/sview/job_info.c @@ -246,7 +246,7 @@ static display_data_t display_data_job[] = { {G_TYPE_STRING, SORTID_IMAGE_MLOADER, NULL, FALSE, EDIT_TEXTBOX, refresh_job, create_model_job, admin_edit_job}, #endif -#ifdef HAVE_NATIVE_CRAY +#ifdef HAVE_CRAY {G_TYPE_STRING, SORTID_ALPS_RESV_ID, "ALPS Resv ID", FALSE, EDIT_NONE, refresh_job, create_model_job, admin_edit_job}, #else