Index: head/sysutils/slurm-wlm/Makefile =================================================================== --- head/sysutils/slurm-wlm/Makefile (revision 562628) +++ head/sysutils/slurm-wlm/Makefile (revision 562629) @@ -1,136 +1,137 @@ # $FreeBSD$ PORTNAME= slurm DISTVERSION= 20.02.1 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= sysutils python MASTER_SITES= https://download.schedmd.com/slurm/ PKGNAMESUFFIX= -wlm MAINTAINER= jwb@FreeBSD.org COMMENT= Simple Linux Utility for Resource Management LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING NOT_FOR_ARCHS= armv6 armv7 i386 mips powerpc powerpcspe NOT_FOR_ARCHS_REASON= 32-bit support is deprecated LIB_DEPENDS= libjson-c.so:devel/json-c \ libsysinfo.so:devel/libsysinfo \ libmunge.so:security/munge \ liblz4.so:archivers/liblz4 -USES= compiler:c11 gmake gnome libtool lua pkgconfig python:build \ - readline:port shebangfix ssl tar:bz2 +USES= compiler:c11 gmake gnome libtool localbase lua pkgconfig \ + python:build readline:port shebangfix ssl tar:bz2 USE_LDCONFIG= yes USE_PERL5= configure USE_RC_SUBR= slurmctld slurmd USERS= slurm GROUPS= ${USERS} GNU_CONFIGURE= yes INSTALL_TARGET= install-strip PLIST_SUB= PORTVERSION="${PORTVERSION}" SHEBANG_FILES= doc/html/shtml2html.py doc/man/man2html.py OPTIONS_DEFINE= CURL DOCS GUI HDF5 HWLOC IPMI MYSQL RRD OPTIONS_DEFAULT= HDF5 HWLOC OPTIONS_SUB= yes CURL_DESC= Require cURL for elasticsearch plugins GUI_DESC= Build sview GUI config tool HDF5_DESC= Job profiling using HDF5 HWLOC_DESC= Portable hardware locality IPMI_DESC= IPMI energy consumption accounting RRD_DESC= RRD external sensor data collection DOCS_BUILD_DEPENDS= man2html:textproc/man2html CURL_LIB_DEPENDS= libcurl.so:ftp/curl CURL_CONFIGURE_WITH= libcurl GUI_USE= GNOME=cairo,gdkpixbuf2,glib20,gtk20 GUI_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 GUI_USES= gettext GUI_CONFIGURE_ENABLE= glibtest gtktest x11 # Neither of these work. See post-patch below. #GTK2_CONFIGURE_ENV_OFF= ac_gtk_test=no #GTK2_CONFIGURE_OFF= --disable-gtktest HDF5_LIB_DEPENDS= libhdf5.so:science/hdf5 \ libsz.so:science/szip HDF5_CONFIGURE_WITH= hdf5 +HDF5_CONFIGURE_ENV= H5CC=${LOCALBASE}/bin/h5cc HWLOC_LIB_DEPENDS= libhwloc.so.15:devel/hwloc2 HWLOC_CONFIGURE_WITH= hwloc IPMI_LIB_DEPENDS= libfreeipmi.so:sysutils/freeipmi IPMI_CONFIGURE_WITH= freeipmi MYSQL_USES= mysql MYSQL_CONFIGURE_OFF= --with-mysql_config=/nonexistent RRD_LIB_DEPENDS= librrd.so:databases/rrdtool RRD_CONFIGURE_WITH= rrdtool # --docdir is non-functional # CONFIGURE_ARGS= --docdir=${DOCSDIR} # FreeBSD Infiniband support is still experimental CONFIGURE_ARGS= --without-ofed DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}-${DISTVERSION} CFLAGS+= -I${WRKSRC}/slurm -I${LOCALBASE}/include -fcommon LDFLAGS+= -L${LOCALBASE}/lib -lsysinfo -lprocstat -fcommon # Hack around nonfunctional --disable-gtktest flag pre-configure-GUI-off: @${REINPLACE_CMD} -e 's|min_gtk_version=.*|min_gtk_version=2000.0.0|' \ ${WRKSRC}/configure # SLURM's configure enables interactive jobs if pty.h exists. Replacing # #include with appropriate headers will therefore not work, so instead # add a pty.h for the build. pre-configure: @${CP} ${FILESDIR}/pty.h ${WRKSRC}/slurm @${REINPLACE_CMD} -e 's|sched_setaffinity|cpuset_setaffinity|g' \ - ${WRKSRC}/configure + -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|"/proc|"/compat/linux/proc|g' \ -e 's|(/proc)|(/compat/linux/proc)|g' \ ${WRKSRC}/src/slurmd/slurmstepd/req.c \ ${WRKSRC}/src/slurmd/slurmstepd/pdebug.c \ ${WRKSRC}/src/slurmd/common/xcpuinfo.c \ ${WRKSRC}/src/slurmd/common/xcgroup.c \ ${WRKSRC}/src/slurmd/common/set_oomadj.c \ ${WRKSRC}/src/slurmd/common/proctrack.c \ ${WRKSRC}/src/common/callerid.c \ ${WRKSRC}/src/plugins/task/affinity/affinity.c \ ${WRKSRC}/src/plugins/acct_gather_energy/rapl/acct_gather_energy_rapl.c \ ${WRKSRC}/src/plugins/jobacct_gather/cgroup/jobacct_gather_cgroup.c \ ${WRKSRC}/src/plugins/jobacct_gather/common/common_jag.c \ ${WRKSRC}/src/plugins/jobacct_gather/linux/jobacct_gather_linux.c \ ${WRKSRC}/src/plugins/switch/cray_aries/scaling.c \ ${WRKSRC}/src/plugins/proctrack/cray_aries/proctrack_cray_aries.c \ ${WRKSRC}/src/plugins/proctrack/cgroup/proctrack_cgroup.c \ ${WRKSRC}/src/plugins/proctrack/pgid/proctrack_pgid.c \ ${WRKSRC}/src/plugins/proctrack/linuxproc/kill_tree.c \ ${WRKSRC}/src/plugins/acct_gather_filesystem/lustre/acct_gather_filesystem_lustre.c \ ${WRKSRC}/src/plugins/node_features/knl_generic/node_features_knl_generic.c \ ${WRKSRC}/contribs/cray/pam_job.c @if ${WHICH} sbatch > /dev/null; then \ ${ECHO_CMD} "********************************************"; \ ${ECHO_CMD} "Build may fail while slurm-wlm is installed."; \ ${ECHO_CMD} "Deinstall slurm-wlm and run make again."; \ ${ECHO_CMD} "********************************************"; \ false; \ fi post-install: ${INSTALL_DATA} ${WRKSRC}/etc/slurm.conf.example \ ${STAGEDIR}${PREFIX}/etc/slurm.conf.sample .include Index: head/sysutils/slurm-wlm/files/patch-configure =================================================================== --- head/sysutils/slurm-wlm/files/patch-configure (revision 562628) +++ head/sysutils/slurm-wlm/files/patch-configure (revision 562629) @@ -1,38 +1,92 @@ ---- configure.orig 2020-11-30 15:56:36 UTC +--- configure.orig 2020-03-26 21:44:05 UTC +++ configure -@@ -24075,8 +24075,24 @@ fi +@@ -20744,25 +20744,19 @@ HDF5 support is being disabled (equivalent to --with-h + with_hdf5="no" + with_hdf5_fortran="no" + else +- HDF5_SHOW=$(eval $H5CC -show) ++ HDF5_SHOW=`$PKG_CONFIG --cflags hdf5 --libs hdf5` +- HDF5_CC=$(eval $H5CC -show | $AWK '{print $1}') +- if test "$HDF5_CC" = "ccache"; then +- HDF5_CC=$(eval $H5CC -show | $AWK '{print $2}') +- fi ++ HDF5_CC=$CC ++ HDF5_VERSION=`$GREP 'HDF5 Version:' %%LOCALBASE%%/lib/libhdf5.settings \ ++ | $AWK '{print $3}'` + +- HDF5_VERSION=$(eval $H5CC -showconfig | $GREP 'HDF5 Version:' \ +- | $AWK '{print $3}') ++ HDF5_tmp_flags=`$GREP 'FLAGS\|Extra libraries:' %%LOCALBASE%%/lib/libhdf5.settings \ ++ | $AWK -F: '{printf("%s "), $2}' ` + +- HDF5_tmp_flags=$(eval $H5CC -showconfig \ +- | $GREP 'FLAGS\|Extra libraries:' \ +- | $AWK -F: '{printf("%s "), $2}' ) ++ HDF5_tmp_inst=`$GREP 'Installation point:' %%LOCALBASE%%/lib/libhdf5.settings \ ++ | $AWK '{print $NF}' ` + +- HDF5_tmp_inst=$(eval $H5CC -showconfig \ +- | $GREP 'Installation point:' \ +- | $AWK '{print $NF}' ) +- + HDF5_CPPFLAGS="-I${HDF5_tmp_inst}/include" + + for arg in $HDF5_SHOW $HDF5_tmp_flags ; do +@@ -20907,7 +20901,7 @@ $as_echo "$H5FC" >&6; } + with_hdf5_fortran="yes" + + +- for arg in `$H5FC -show` ++ for arg in `$PKG_CONFIG --cflags hdf5_fortran --libs hdf5_fortran` + do + case "$arg" in #( + -I*) echo $HDF5_FFLAGS | $GREP -e "$arg" >/dev/null \ +@@ -20967,9 +20961,8 @@ fi + # because slurm uses the 1.8 API. By defining this CPP macro we get + # the 1.8 API. + +-$as_echo "#define H5_NO_DEPRECATED_SYMBOLS 1" >>confdefs.h ++# Remove on FreeBSD ports because we use 1.12 with 1.10 API + +- + # + # Handle user hints + # +@@ -24075,8 +24068,24 @@ fi + + x_ac_lua_pkg_name="lua" - #check for 5.3 then 5.2 then 5.1 - if test -n "$PKG_CONFIG" && \ + #check for 5.4 then 5.3 then 5.2 then 5.1 +if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lua5.4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "lua5.4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + x_ac_lua_pkg_name=lua5.4 +else + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lua-5.4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "lua-5.4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + x_ac_lua_pkg_name=lua-5.4 +else + if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lua5.3\""; } >&5 ($PKG_CONFIG --exists --print-errors "lua5.3") 2>&5 ac_status=$? -@@ -24125,6 +24141,8 @@ else +@@ -24125,6 +24134,8 @@ else x_ac_lua_pkg_name=lua-5.1 else x_ac_lua_pkg_name="lua >= 5.1" +fi +fi fi fi fi