aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/condor
diff options
context:
space:
mode:
authormadpilot <madpilot@FreeBSD.org>2015-01-09 23:12:14 +0800
committermadpilot <madpilot@FreeBSD.org>2015-01-09 23:12:14 +0800
commitd614c907d3818552e990ece68ef969f9a141a6ce (patch)
tree1e8c9c8f4f8de77f79441f3d8e662b73ef750bef /sysutils/condor
parentf6ca81fa487983a635927effde5302b6d22ed7a6 (diff)
downloadfreebsd-ports-gnome-d614c907d3818552e990ece68ef969f9a141a6ce.tar.gz
freebsd-ports-gnome-d614c907d3818552e990ece68ef969f9a141a6ce.tar.zst
freebsd-ports-gnome-d614c907d3818552e990ece68ef969f9a141a6ce.zip
- Update to 8.2.6
- Mark MAKE_JOBS_UNSAFE due to reported failures on systems with many cores - Mark BROKEN on 8.x - Avoid running pkg-install and displaying pkg-message in post-install target - Remove dirrms from plist - Canonicalize patch file names PR: 196344 Submitted by: jwbacon at tds.net (maintainer)
Diffstat (limited to 'sysutils/condor')
-rw-r--r--sysutils/condor/Makefile51
-rw-r--r--sysutils/condor/distinfo4
-rw-r--r--sysutils/condor/files/condor-config.in22
-rw-r--r--sysutils/condor/files/condor.in3
-rw-r--r--sysutils/condor/files/condor_config.local.in150
-rw-r--r--sysutils/condor/files/patch-build_cmake_macros_SystemSpecificInformations.cmake (renamed from sysutils/condor/files/patch-build-cmake-macros-SystemSpecificInformations.cmake)13
-rw-r--r--sysutils/condor/files/patch-src-condor_includes-config.h.cmake11
-rw-r--r--sysutils/condor/files/patch-src_condor__includes_config.h.cmake34
-rw-r--r--sysutils/condor/files/patch-src_condor__power_power__state.cpp31
-rw-r--r--sysutils/condor/files/patch-src_condor__sysapi_idle__time.cpp (renamed from sysutils/condor/files/patch-src-condor_sysapi-idle_time.cpp)16
-rw-r--r--sysutils/condor/files/patch-src_python-bindings_dc__tool.cpp24
-rw-r--r--sysutils/condor/files/patch-src_python-bindings_secman.cpp24
-rw-r--r--sysutils/condor/files/pkg-message.in2
-rw-r--r--sysutils/condor/pkg-deinstall10
-rw-r--r--sysutils/condor/pkg-install13
-rw-r--r--sysutils/condor/pkg-plist34
16 files changed, 344 insertions, 98 deletions
diff --git a/sysutils/condor/Makefile b/sysutils/condor/Makefile
index b2294b773d65..48835e8f34b0 100644
--- a/sysutils/condor/Makefile
+++ b/sysutils/condor/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= condor
-PORTVERSION= 8.0.3
+PORTVERSION= 8.2.6
CATEGORIES= sysutils net
MASTER_SITES= http://www.acadix.biz/Ports/distfiles/
DISTNAME= condor_src-${PORTVERSION}-all-all
@@ -14,19 +14,33 @@ LICENSE= APACHE20
LIB_DEPENDS+= libkrb5support.so:${PORTSDIR}/security/krb5 \
libpcre.so:${PORTSDIR}/devel/pcre \
- libcurl.so:${PORTSDIR}/ftp/curl
+ libcurl.so:${PORTSDIR}/ftp/curl \
+ libboost_python.so:${PORTSDIR}/devel/boost-python-libs
WRKSRC= ${WRKDIR}/condor-${PORTVERSION}
USE_LDCONFIG= yes
-USES= cmake gmake perl5 pgsql
+# Does not build with Python 3
+USES= cmake gmake perl5 pgsql python:2 shebangfix
+# Does not build with gcc 4.2 or clang
+USE_GCC= yes
+SHEBANG_FILES= src/condor_scripts/condor_qsub \
+ src/condor_gridmanager/remote_gahp \
+ src/condor_examples/condor_limits_wrapper.sh \
+ src/condor_examples/condor_schedd.init \
+ src/condor_starter.V6.1/condor_ssh_to_job_shell_setup
+
WANT_PGSQL= server
-USE_GCC= any
-CXXFLAGS+= -I${LOCALBASE}/include
-LDFLAGS+= -rpath=${LOCALBASE}/lib:/usr/lib:/lib
+CXXFLAGS+= -I${LOCALBASE}/include -fPIC
+LDFLAGS+= -Wl,-rpath=${_GCC_RUNTIME}:${LOCALBASE}/lib:/usr/lib:/lib -fPIC
+# Does not build with Python 3
CMAKE_ARGS+= -DCMAKE_CXX_FLAGS:STRING=${CXXFLAGS} \
- -DCMAKE_EXE_LINKER_FLAGS:STRING=${LDFLAGS}
+ -DCMAKE_EXE_LINKER_FLAGS:STRING=${LDFLAGS} \
+ -DPYTHON_INCLUDE_DIR:PATH=${LOCALBASE}/include/${PYTHON_VERSION} \
+ -DPYTHON_LIBRARY:FILEPATH=${LOCALBASE}/lib/lib${PYTHON_VERSION}.so
+
+MAKE_JOBS_UNSAFE= yes
-SUB_FILES= condor_config condor_config.local pkg-message
+SUB_FILES= condor-config condor_config.local pkg-message
USERS= condor
GROUPS= ${USERS}
@@ -40,6 +54,10 @@ OPTIONS_DEFINE= DOCS EXAMPLES
.include <bsd.port.pre.mk>
+.if ${OSVERSION} < 900000
+BROKEN= Fails to build on FreeBSD 8.x
+.endif
+
pre-everything::
@( ${PRINTF} "\nWARNING: Condor needs approximately 3GB to build!"; \
${PRINTF} " Please make sure your build environment has that much before continuing.\n" )
@@ -49,12 +67,21 @@ post-patch:
-e 's,\(set( C_SHARE_EXAMPLES \)share/condor,\1${EXAMPLESDIR_REL},' \
${WRKSRC}/build/cmake/CondorPackageConfig.cmake
@${REINPLACE_CMD} \
- -e '/create_symlink/d' ${WRKSRC}/src/condor_scripts/CMakeLists.txt
+ -e '/create_symlink/d' \
+ ${WRKSRC}/src/condor_scripts/CMakeLists.txt
+ @${REINPLACE_CMD} \
+ -e 's|/usr/local/condor|${PREFIX}|g' \
+ -e 's|$$(LOCAL_DIR)/condor_config.local|$$(RELEASE_DIR)/etc/condor_config.local|g' \
+ -e 's|/bin/mail|/usr/bin/mail|g' \
+ -e 's|^CONDOR_HOST|## CONDOR_HOST|' \
+ -e 's|#CONDOR_IDS=x.x|CONDOR_IDS=466.466|' \
+ ${WRKSRC}/src/condor_examples/condor_config.annotated
post-install:
- ${INSTALL_DATA} ${WRKDIR}/condor_config ${STAGEDIR}${ETCDIR}
+ ${INSTALL_DATA} \
+ ${STAGEDIR}${ETCDIR}/examples/condor_config.annotated \
+ ${STAGEDIR}${ETCDIR}/condor_config
${INSTALL_DATA} ${WRKDIR}/condor_config.local ${STAGEDIR}${ETCDIR}
- ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
- @${CAT} ${PKGMESSAGE}
+ ${INSTALL_SCRIPT} ${WRKDIR}/condor-config ${STAGEDIR}${PREFIX}/sbin
.include <bsd.port.post.mk>
diff --git a/sysutils/condor/distinfo b/sysutils/condor/distinfo
index 1fe2a7b9700a..fc33f0459df6 100644
--- a/sysutils/condor/distinfo
+++ b/sysutils/condor/distinfo
@@ -1,2 +1,2 @@
-SHA256 (condor_src-8.0.3-all-all.tar.gz) = 8220ae05b50e189a7b9e8018c88a6ebe6316f0affb3f99d3301788f514bd9b1e
-SIZE (condor_src-8.0.3-all-all.tar.gz) = 18678759
+SHA256 (condor_src-8.2.6-all-all.tar.gz) = a63c3b7c0d44635089ded80dadd5ebde5acba87154ca72877c76b80cdc963837
+SIZE (condor_src-8.2.6-all-all.tar.gz) = 19137825
diff --git a/sysutils/condor/files/condor-config.in b/sysutils/condor/files/condor-config.in
new file mode 100644
index 000000000000..e90dd81b22ab
--- /dev/null
+++ b/sysutils/condor/files/condor-config.in
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+if [ -z $EDITOR ]; then
+ EDITOR=vi
+ export EDITOR
+fi
+
+$EDITOR %%PREFIX%%/etc/condor_config.local
+
+printf "Restart HTCondor? (y/[n]) "
+read restart
+
+if [ 0$restart = 0y ]; then
+ service condor stop
+ printf "\nCondor processes running after stop:\n\n"
+ ps ax | grep condor
+
+ service condor start
+ sleep 5
+ printf "\nCondor processes running after start:\n\n"
+ ps ax | grep condor
+fi
diff --git a/sysutils/condor/files/condor.in b/sysutils/condor/files/condor.in
index 7206cd1cbf8c..10b70c0b8e92 100644
--- a/sysutils/condor/files/condor.in
+++ b/sysutils/condor/files/condor.in
@@ -34,6 +34,9 @@ condor_start() {
condor_stop() {
checkyesno condor_enable && echo "Stopping condor_master." && \
%%PREFIX%%/sbin/condor_off -master
+ # Prevent restart command from issuing start before daemons are down
+ echo 'Waiting for daemons to shut down...'
+ sleep 5
}
run_rc_command "$1"
diff --git a/sysutils/condor/files/condor_config.local.in b/sysutils/condor/files/condor_config.local.in
index b0f5dd5d41e0..e52dad493305 100644
--- a/sysutils/condor/files/condor_config.local.in
+++ b/sysutils/condor/files/condor_config.local.in
@@ -1,41 +1,74 @@
############################################################################
-## condor_config.local
-## Settings here override the defaults in condor_config.
-## Make changes/additions here and leave condor_config unchanged so
-## that defaults are documented.
+# condor_config.local
+# Settings here override the defaults in condor_config.
+# Make changes/additions here and leave condor_config unchanged so
+# that defaults are documented.
############################################################################
############################################################################
-## What machine is your central manager?
-## Use $(FULL_HOSTNAME) if this is the central manager, or the central
-## manager's hostname otherwise.
+# What machine is your central manager?
+# Use $(FULL_HOSTNAME) if this is the central manager, or the central
+# manager's hostname otherwise.
-## CONDOR_HOST = $(FULL_HOSTNAME)
+CONDOR_HOST = $(FULL_HOSTNAME)
############################################################################
-## Pool's short description
+# Pool's short description
-## COLLECTOR_NAME = Condor pool at $(CONDOR_HOST)
+COLLECTOR_NAME = Condor pool at $(CONDOR_HOST)
############################################################################
-## When is this machine willing to start a job?
+# If node is behind a firewall or NAT and cannot be directly reached, use
+# CCB (Condor Connection Broker) or SHARED_PORTS. The collector host is
+# by default a connection broker, so it's usually the easiest way.
-START = TRUE
+# CCB_ADDRESS = $(COLLECTOR_HOST)
############################################################################
-## When to suspend a job?
+# Location of logs, job output, etc.
+# Put this on a local partition with plenty of space for job output.
+# Default is $(TILDE) = /home/condor.
+
+LOCAL_DIR = $(TILDE)
+
+# /home is often shared by cluster compute nodes, so log files would collide
+# when using $(TILDE). Put LOCAL_DIR on some other large, local partition.
+
+# LOCAL_DIR = /usr/condor
+
+############################################################################
+# When is this machine willing to start a job?
+
+# For compute hosts dedicated to HTCondor
+# START = TRUE
+
+# For compute hosts used primarily for other purposes
+START = (KeyboardIdle > 15 * 60) && ((LoadAvg - CondorLoadAvg) <= 0.3)
+
+# For VM host, assuming we only want to run jobs in the VM
+# START = False
+
+# For VM guest, run jobs only when the host is not being used by owner
+# START = ( HOST_KeyboardIdle > 150 ) && ( HOST_LoadAvg <= 0.3 ) )
+
+############################################################################
+# When to suspend a job?
SUSPEND = FALSE
############################################################################
-## When to nicely stop a job?
-## (as opposed to killing it instantaneously)
+# When to nicely stop a job?
+# (as opposed to killing it instantaneously)
+
+# PREEMPT = FALSE
-PREEMPT = FALSE
+# Compute host used mainly for non-Condor activities
+PREEMPT = (KeyboardIdle < 60) || (LoadAvg - CondorLoadAvg > 0.3)
############################################################################
-## When to instantaneously kill a preempting job
-## (e.g. if a job is in the pre-empting stage for too long)
+# When to instantaneously kill a preempting job
+# (e.g. if a job is in the pre-empting stage for too long)
+# Should normally be set to FALSE
KILL = FALSE
@@ -46,38 +79,79 @@ KILL = FALSE
# Central manager: COLLECTOR, NEGOTIATOR
# Submit hosts: SCHEDD
# Execute hosts: STARTD
+# Hosts behind NAT: SHARED_PORT
-## This macro determines what daemons the condor_master will start and
-## keep its watchful eyes on.
-## The list is a comma or space separated list of subsystem names
+# This macro determines what daemons the condor_master will start and
+# keep its watchful eyes on.
+# The list is a comma or space separated list of subsystem names
-## Central manager
-## DAEMON_LIST = MASTER, COLLECTOR, NEGOTIATOR, SCHEDD
+# Central manager
+# DAEMON_LIST = MASTER, COLLECTOR, NEGOTIATOR, SCHEDD
-## Submit/execute host
-DAEMON_LIST = MASTER, SCHEDD, STARTD
+# Submit/execute host
+# DAEMON_LIST = MASTER, SCHEDD, STARTD
+# DAEMON_LIST = MASTER, SCHEDD, STARTD, SHARED_PORT
-## Execute-only host
-## DAEMON_LIST = MASTER, STARTD
+# Execute-only host
+DAEMON_LIST = MASTER, STARTD
+# DAEMON_LIST = MASTER, STARTD, SHARED_PORT
###########################################################################
-## Permissions for this host
-##
-## *.your.domain, x.y.z.*, hostname, $(MACRO)
-##
-## ALLOW_ADMINISTRATOR is required by condor_off
-## If central manager is not this host, this entry allows both the central
-## manager and this host to manage the pool.
+# Permissions for this host
+#
+# *.your.domain, x.y.z.*, hostname, $(MACRO)
+#
+# ALLOW_ADMINISTRATOR is required by condor_off
+# If central manager is not this host, this entry allows both the central
+# manager and this host to manage the pool.
+#
+# For central manager, allow all other hosts, e.g. 192.168.0.*, to
+# read and write.
ALLOW_ADMINISTRATOR = $(CONDOR_HOST), $(FULL_HOSTNAME)
-##
-## Enables condor_status, condor_q, ...
+#
+# Enables condor_status, condor_q, ...
ALLOW_READ = $(CONDOR_HOST), $(FULL_HOSTNAME)
-##
-## Enables scheduling jobs here
+#
+# Enables scheduling jobs here
ALLOW_WRITE = $(CONDOR_HOST), $(FULL_HOSTNAME)
+###########################################################################
+# Use the settings below for compute hosts behind a NAT firewall relative
+# to the scheduler. This includes virtual machines not using bridged
+# networking. See also CCB.
+
+# USE_SHARED_PORT = True
+
+# Use a different shared port for each host behind the same NAT gateway
+# SHARED_PORT_ARGS = -p 9616
+
+# Public IP of NAT gateway
+# TCP_FORWARDING_HOST = 1.2.3.4
+
+# Arbitrary name for private network behind NAT using SHARED_PORT or CCB.
+# Nodes with same network name will talk to each other directly.
+# PRIVATE_NETWORK_NAME = mypool
+
+# Network device on private network, if multihomed
+# PRIVATE_NETWORK_INTERFACE = bge0
+
+###########################################################################
+# For virtual machines to get keyboard activity and load from the host
+# http://research.cs.wisc.edu/htcondor/manual/v8.2/3_12Setting_Up.html
+
+########
+# Host:
+
+# Indicate hostnames or IPs of virtual machines in host condor_config:
+# VMP_VM_LIST = 1.2.3.4
+
+######
+# VM:
+
+# Indicate hostname or IP of host in virtual machine condor_config:
+# VMP_HOST_MACHINE = 1.2.3.4
diff --git a/sysutils/condor/files/patch-build-cmake-macros-SystemSpecificInformations.cmake b/sysutils/condor/files/patch-build_cmake_macros_SystemSpecificInformations.cmake
index b1f13543e2f8..b84dbb626170 100644
--- a/sysutils/condor/files/patch-build-cmake-macros-SystemSpecificInformations.cmake
+++ b/sysutils/condor/files/patch-build_cmake_macros_SystemSpecificInformations.cmake
@@ -1,6 +1,6 @@
---- build/cmake/macros/SystemSpecificInformations.cmake.orig 2013-09-19 15:12:10.000000000 -0500
-+++ build/cmake/macros/SystemSpecificInformations.cmake 2013-10-20 12:04:52.000000000 -0500
-@@ -241,7 +241,8 @@
+--- build/cmake/macros/SystemSpecificInformations.cmake.orig 2014-11-26 11:22:10.000000000 -0600
++++ build/cmake/macros/SystemSpecificInformations.cmake 2014-12-27 16:30:27.000000000 -0600
+@@ -252,7 +252,8 @@
endif(EXISTS "/etc/issue")
elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
@@ -10,18 +10,19 @@
set( FREEBSD_RELEASE "${CMAKE_MATCH_1}" )
set( FREEBSD_MAJOR "${CMAKE_MATCH_2}" )
set( FREEBSD_MINOR "${CMAKE_MATCH_3}" )
-@@ -259,6 +260,14 @@
+@@ -270,6 +271,15 @@
set( CONDOR_FREEBSD7 ON )
elseif(FREEBSD_MAJOR MATCHES "8" )
set( CONDOR_FREEBSD8 ON )
+ elseif(FREEBSD_MAJOR MATCHES "9" )
+ set( CONDOR_FREEBSD9 ON )
++ set( CONDOR_UTMPX ON )
+ elseif(FREEBSD_MAJOR MATCHES "10" )
+ set( CONDOR_FREEBSD10 ON )
-+ set( CONDOR_FREEBSD9 ON )
++ set( CONDOR_UTMPX ON )
+ elseif(FREEBSD_MAJOR MATCHES "11" )
+ set( CONDOR_FREEBSD11 ON )
-+ set( CONDOR_FREEBSD9 ON )
++ set( CONDOR_UTMPX ON )
endif()
if( CMAKE_SYSTEM_PROCESSOR MATCHES "amd64" )
set( SYS_ARCH "x86_64")
diff --git a/sysutils/condor/files/patch-src-condor_includes-config.h.cmake b/sysutils/condor/files/patch-src-condor_includes-config.h.cmake
deleted file mode 100644
index a46f8e5a772d..000000000000
--- a/sysutils/condor/files/patch-src-condor_includes-config.h.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/condor_includes/config.h.cmake.orig 2013-09-19 15:12:10.000000000 -0500
-+++ src/condor_includes/config.h.cmake 2013-10-20 12:04:52.000000000 -0500
-@@ -47,6 +47,8 @@
- #cmakedefine CONDOR_FREEBSD7
- ///* Define if on FreeBSD 8 */
- #cmakedefine CONDOR_FREEBSD8
-+///* Define if on FreeBSD 9 */
-+#cmakedefine CONDOR_FREEBSD9
- ///* Define if on FreeBSD */
- #cmakedefine CONDOR_FREEBSD
- ///* Define release of FreeBSD (i.e. 7.4, 8.2) */
diff --git a/sysutils/condor/files/patch-src_condor__includes_config.h.cmake b/sysutils/condor/files/patch-src_condor__includes_config.h.cmake
new file mode 100644
index 000000000000..fff599bf0be4
--- /dev/null
+++ b/sysutils/condor/files/patch-src_condor__includes_config.h.cmake
@@ -0,0 +1,34 @@
+--- src/condor_includes/config.h.cmake.orig 2014-11-26 11:22:10.000000000 -0600
++++ src/condor_includes/config.h.cmake 2014-12-27 17:19:56.000000000 -0600
+@@ -16,7 +16,11 @@
+ *
+ *************************************************************/
+
+-/* config.h.cmake. Generated from configure.ac by autoheader. -> then updated for cmake */
++/*
++ * config.h.cmake. Generated from configure.ac by autoheader.
++ * config.h generated by cmake using system info gathered by
++ * build/cmake/macros/SystemSpecificInformations.cmake.
++ */
+
+ #ifndef __CONFIGURE_H_CMAKE__
+ #define __CONFIGURE_H_CMAKE__
+@@ -47,6 +51,10 @@
+ #cmakedefine CONDOR_FREEBSD7
+ ///* Define if on FreeBSD 8 */
+ #cmakedefine CONDOR_FREEBSD8
++///* Define if on FreeBSD 9 */
++#cmakedefine CONDOR_FREEBSD9
++///* Define if on FreeBSD 9 or later, which use utmpx insead of utmp */
++#cmakedefine CONDOR_UTMPX
+ ///* Define if on FreeBSD */
+ #cmakedefine CONDOR_FREEBSD
+ ///* Define release of FreeBSD (i.e. 7.4, 8.2) */
+@@ -55,6 +63,7 @@
+ #cmakedefine FREEBSD_MAJOR
+ ///* Define minor release of FreeBSD */
+ #cmakedefine FREEBSD_MINOR
++
+ //////////////////////////////////////////////////
+
+ //////////////////////////////////////////////////
diff --git a/sysutils/condor/files/patch-src_condor__power_power__state.cpp b/sysutils/condor/files/patch-src_condor__power_power__state.cpp
new file mode 100644
index 000000000000..c0e4abbca1c6
--- /dev/null
+++ b/sysutils/condor/files/patch-src_condor__power_power__state.cpp
@@ -0,0 +1,31 @@
+--- src/condor_power/power_state.cpp.orig 2014-12-26 11:28:32.000000000 -0600
++++ src/condor_power/power_state.cpp 2014-12-26 17:17:04.000000000 -0600
+@@ -57,7 +57,8 @@
+ E_ARGCNT = -6, /* too few/many arguments */
+ E_NOREST = -7, /* failed to switch the machine's power state */
+ E_CLASSAD = -8, /* error in class-ad (errno = %d) */
+- E_UNKNOWN = -9 /* unknown error */
++ E_UNSUPPORTED = -9, /* OS not supported */
++ E_UNKNOWN = -10 /* unknown error */
+ };
+
+ /** Error messages */
+@@ -72,7 +73,8 @@
+ /* E_ARGCNT -6 */ "wrong number of arguments.\n",
+ /* E_NOREST -7 */ "failed to switch the machine's power state.\n",
+ /* E_CLASSAD -8 */ "error in class-ad (errno = %d).\n",
+- /* E_UNKNOWN -9 */ "unknown error.\n"
++ /* E_UNSUPPORTED = -9 */ "condor_power() not implemented for this OS.\n",
++ /* E_UNKNOWN -10 */ "unknown error.\n"
+ };
+
+ /** Typedefs */
+@@ -257,6 +259,8 @@
+ /** Create the hibernation mechanism. */
+ # if ( HIBERNATOR_TYPE_DEFINED )
+ hibernator = new RealHibernator;
++# else
++ error( E_UNSUPPORTED );
+ # endif
+ if ( !hibernator ) {
+ error( E_NOMEM, "hibernator object." );
diff --git a/sysutils/condor/files/patch-src-condor_sysapi-idle_time.cpp b/sysutils/condor/files/patch-src_condor__sysapi_idle__time.cpp
index 3df97f597f73..bae117388d97 100644
--- a/sysutils/condor/files/patch-src-condor_sysapi-idle_time.cpp
+++ b/sysutils/condor/files/patch-src_condor__sysapi_idle__time.cpp
@@ -1,11 +1,10 @@
---- src/condor_sysapi/idle_time.cpp.bak 2012-10-24 23:10:41.000000000 -0500
-+++ src/condor_sysapi/idle_time.cpp 2012-12-01 14:46:20.000000000 -0600
-@@ -205,19 +205,30 @@
+--- src/condor_sysapi/idle_time.cpp.orig 2014-11-26 11:22:10.000000000 -0600
++++ src/condor_sysapi/idle_time.cpp 2014-12-27 16:42:00.000000000 -0600
+@@ -205,19 +205,28 @@
return;
}
-+// FreeBSD 9 made a clean break from utmp to utmpx
-+#if !defined(CONDOR_FREEBSD9)
++#if !defined(CONDOR_UTMPX)
#include <utmp.h>
#define UTMP_KIND utmp
+#endif
@@ -15,14 +14,13 @@
static const char *AltUtmpName = "/var/adm/utmp";
-#elif defined(CONDOR_FREEBSD)
+// FreeBSD 9 made a clean break from utmp to utmpx
-+#elif defined(CONDOR_FREEBSD) && !defined(CONDOR_FREEBSD9)
++#elif defined(CONDOR_FREEBSD) && !defined(CONDOR_UTMPX)
static char *UtmpName = "/var/run/utmp";
static char *AltUtmpName = "";
-#elif defined(Solaris28) || defined(Solaris29) || defined(Solaris10) || defined(Solaris11)
-+// FreeBSD 9 made a clean break from utmp to utmpx
-+#elif defined(Solaris28) || defined(Solaris29) || defined(Solaris10) || defined(Solaris11) || defined(CONDOR_FREEBSD9)
++#elif defined(Solaris28) || defined(Solaris29) || defined(Solaris10) || defined(Solaris11) || defined(CONDOR_UTMPX)
#include <utmpx.h>
-+#if defined(CONDOR_FREEBSD9)
++#if defined(CONDOR_UTMPX)
+#define ut_name ut_user
+static char *UtmpName = "/var/run/utx.active";
+static char *AltUtmpName = "";
diff --git a/sysutils/condor/files/patch-src_python-bindings_dc__tool.cpp b/sysutils/condor/files/patch-src_python-bindings_dc__tool.cpp
new file mode 100644
index 000000000000..bce01ded7336
--- /dev/null
+++ b/sysutils/condor/files/patch-src_python-bindings_dc__tool.cpp
@@ -0,0 +1,24 @@
+--- src/python-bindings/dc_tool.cpp.orig 2014-11-26 11:22:10.000000000 -0600
++++ src/python-bindings/dc_tool.cpp 2014-12-27 16:40:45.000000000 -0600
+@@ -7,6 +7,21 @@
+ # include <pyport.h>
+ # endif
+
++/*
++ * #include <Python.h> solves a ctype function overload issue, but causes
++ * a dprintf() conflict. Redefining dprintf and getline prevents a collision
++ * with the definitions in stdio.h, #included from Python.h, so the condor
++ * versions are used instead.
++ */
++
++#ifdef __FreeBSD__
++#define dprintf _hide_dprintf
++#define getline _hide_getline
++#include <Python.h>
++#undef getline
++#undef dprintf
++#endif
++
+ #include "condor_common.h"
+
+ #include <boost/python.hpp>
diff --git a/sysutils/condor/files/patch-src_python-bindings_secman.cpp b/sysutils/condor/files/patch-src_python-bindings_secman.cpp
new file mode 100644
index 000000000000..67bd81b5e0b8
--- /dev/null
+++ b/sysutils/condor/files/patch-src_python-bindings_secman.cpp
@@ -0,0 +1,24 @@
+--- src/python-bindings/secman.cpp.orig 2014-11-26 11:22:10.000000000 -0600
++++ src/python-bindings/secman.cpp 2014-12-27 16:27:22.000000000 -0600
+@@ -7,6 +7,21 @@
+ # include <pyport.h>
+ # endif
+
++/*
++ * #include <Python.h> solves a ctype function overload issue, but causes
++ * a dprintf() conflict. Redefining dprintf and getline disables them in
++ * in stdio.h, #included by Python.h, so they don't collide with the condor
++ * versions.
++ */
++
++#ifdef __FreeBSD__
++#define dprintf _hide_dprintf
++#define getline _hide_getline
++#include <Python.h>
++#undef getline
++#undef dprintf
++#endif
++
+ #include "condor_common.h"
+
+ #include <boost/python.hpp>
diff --git a/sysutils/condor/files/pkg-message.in b/sysutils/condor/files/pkg-message.in
index de09a68d0683..dbcf26fe3aad 100644
--- a/sysutils/condor/files/pkg-message.in
+++ b/sysutils/condor/files/pkg-message.in
@@ -16,5 +16,5 @@ To start the condor daemons, add 'condor_enable="YES"' to
and run
- /usr/local/etc/rc.d/condor start
+ service condor start
diff --git a/sysutils/condor/pkg-deinstall b/sysutils/condor/pkg-deinstall
index 7a8685ed3096..b738a4591e3e 100644
--- a/sysutils/condor/pkg-deinstall
+++ b/sysutils/condor/pkg-deinstall
@@ -18,13 +18,19 @@
case $2 in
DEINSTALL)
- # Old log, spool, etc. in /home/condor are left in place.
- # This could leave incompatible
+ # Old log, spool, etc. in /home/condor are deleted if empty, otherwise
+ # left in place, this could leave incompatible
# older files in place when Condor is upgraded. Not sure how backward
# compatible condor versions are with respect to logs, etc. For now,
# the syadmin is left to deal with this.
# Remove the link to /home/condor
/bin/rm -f /var/db/condor
+ # Remove /home/condor, if empty
+ /bin/rmdir /home/condor/config
+ /bin/rmdir /home/condor/execute
+ /bin/rmdir /home/condor/log
+ /bin/rmdir /home/condor/spool
+ /bin/rmdir /home/condor
;;
esac
diff --git a/sysutils/condor/pkg-install b/sysutils/condor/pkg-install
index 429a3e79b185..0c256dcfe898 100644
--- a/sysutils/condor/pkg-install
+++ b/sysutils/condor/pkg-install
@@ -22,18 +22,19 @@ g=condor
# Place condor on a large partition so it can accommodate output files from
# jobs. The default /var/db/condor could result in /var filling up with
# job output.
-homedir=/home/condor
+# Note that /home may be linked to a shared partition on a cluster built
+# with sysutils/cluster-admin, which could cause collisions between
+# condor daemons on compute nodes sharing this space. In this case,
+# override by setting LOCAL_DIR in your condor_config file.
+LOCAL_DIR=/home/condor
case $2 in
PRE-INSTALL)
;;
POST-INSTALL)
for dir in log spool config execute; do
- mkdir -p $homedir/$dir
+ mkdir -p $LOCAL_DIR/$dir
done
- chown -Rh $u:$g $homedir
- # Insurance in case pkg-deinstall was not executed
- /bin/rm -f /var/db/condor
- /bin/ln -s $homedir /var/db
+ chown -Rh $u:$g $LOCAL_DIR
;;
esac
diff --git a/sysutils/condor/pkg-plist b/sysutils/condor/pkg-plist
index 73eb1b08bb35..5761198e925e 100644
--- a/sysutils/condor/pkg-plist
+++ b/sysutils/condor/pkg-plist
@@ -1,4 +1,3 @@
-@comment Generated by sysutils/genplist
bin/classad_functional_tester
bin/classad_version
bin/condor_check_userlogs
@@ -11,13 +10,15 @@ bin/condor_findhost
bin/condor_gather_info
bin/condor_history
bin/condor_hold
+bin/condor_job_router_info
bin/condor_ping
+bin/condor_pool_job_report
bin/condor_power
bin/condor_prio
bin/condor_q
bin/condor_qedit
bin/condor_qsub
-bin/condor_release
+bin/condor_%%CMAKE_BUILD_TYPE%%
bin/condor_reschedule
bin/condor_rm
bin/condor_router_history
@@ -50,6 +51,7 @@ bin/condor_who
%%ETCDIR%%/examples/condor.init
%%ETCDIR%%/examples/condor.plist
%%ETCDIR%%/examples/condor.sysconfig
+%%ETCDIR%%/examples/condor_config.annotated
%%ETCDIR%%/examples/condor_config.generic
%%ETCDIR%%/examples/condor_config.generic.redhat
%%ETCDIR%%/examples/condor_config.local.central.manager
@@ -114,16 +116,25 @@ include/user_log.README
include/user_log.c++.h
include/write_user_log.h
lib/Chirp.jar
+lib/Condor.pm
lib/CondorJavaInfo.class
lib/CondorJavaWrapper.class
+lib/CondorPersonal.pm
+lib/CondorTest.pm
+lib/CondorUtils.pm
lib/condor_ssh_to_job_sshd_config_template
lib/libchirp_client.a
lib/libclassad.a
lib/libcondorapi.a
+lib/libpyclassad%%PYTHON_VER%%_8_2_6.a
+lib/python/classad.so
+lib/python/htcondor.so
lib/scimark2lib.jar
libexec/accountant_log_fixer
libexec/condor_chirp
+libexec/condor_dagman_metrics_reporter
libexec/condor_defrag
+libexec/condor_history_helper
libexec/condor_job_router
libexec/condor_kflops
libexec/condor_limits_wrapper.sh
@@ -136,6 +147,7 @@ libexec/condor_ssh
libexec/condor_ssh_to_job_shell_setup
libexec/condor_ssh_to_job_sshd_setup
libexec/condor_transferer
+libexec/condor_urlfetch
libexec/curl_plugin
libexec/data_plugin
libexec/interactive.sub
@@ -158,19 +170,20 @@ man/man1/condor_config_val.1.gz
man/man1/condor_configure.1.gz
man/man1/condor_continue.1.gz
man/man1/condor_dagman.1.gz
+man/man1/condor_dagman_metrics_reporter.1.gz
man/man1/condor_drain.1.gz
man/man1/condor_fetchlog.1.gz
man/man1/condor_findhost.1.gz
man/man1/condor_gather_info.1.gz
-man/man1/condor_glidein.1.gz
+man/man1/condor_gpu_discovery.1.gz
man/man1/condor_history.1.gz
man/man1/condor_hold.1.gz
man/man1/condor_install.1.gz
-man/man1/condor_load_history.1.gz
man/man1/condor_master.1.gz
man/man1/condor_off.1.gz
man/man1/condor_on.1.gz
man/man1/condor_ping.1.gz
+man/man1/condor_pool_job_report.1.gz
man/man1/condor_power.1.gz
man/man1/condor_preen.1.gz
man/man1/condor_prio.1.gz
@@ -179,7 +192,7 @@ man/man1/condor_q.1.gz
man/man1/condor_qedit.1.gz
man/man1/condor_qsub.1.gz
man/man1/condor_reconfig.1.gz
-man/man1/condor_release.1.gz
+man/man1/condor_%%CMAKE_BUILD_TYPE%%.1.gz
man/man1/condor_reschedule.1.gz
man/man1/condor_restart.1.gz
man/man1/condor_rm.1.gz
@@ -189,6 +202,7 @@ man/man1/condor_router_q.1.gz
man/man1/condor_router_rm.1.gz
man/man1/condor_run.1.gz
man/man1/condor_set_shutdown.1.gz
+man/man1/condor_sos.1.gz
man/man1/condor_ssh_to_job.1.gz
man/man1/condor_stats.1.gz
man/man1/condor_status.1.gz
@@ -199,6 +213,7 @@ man/man1/condor_suspend.1.gz
man/man1/condor_tail.1.gz
man/man1/condor_transfer_data.1.gz
man/man1/condor_updates_stats.1.gz
+man/man1/condor_urlfetch.1.gz
man/man1/condor_userlog.1.gz
man/man1/condor_userprio.1.gz
man/man1/condor_vacate.1.gz
@@ -209,6 +224,7 @@ man/man1/condor_who.1.gz
man/man1/gidd_alloc.1.gz
man/man1/procd_ctl.1.gz
sbin/bosco_install
+sbin/condor-config
sbin/condor_advertise
sbin/condor_c-gahp
sbin/condor_c-gahp_worker_thread
@@ -234,9 +250,11 @@ sbin/condor_root_switchboard
sbin/condor_schedd
sbin/condor_set_shutdown
sbin/condor_shadow
+sbin/condor_sos
sbin/condor_startd
sbin/condor_starter
sbin/condor_store_cred
+sbin/condor_testwritelog
sbin/condor_transferd
sbin/condor_updates_stats
sbin/condor_vm-gahp
@@ -244,9 +262,3 @@ sbin/remote_gahp
src/chirp/chirp_client.c
src/chirp/chirp_client.h
src/chirp/chirp_protocol.h
-@dirrmtry src/chirp
-@dirrmtry src
-@dirrm include/classad
-@dirrm %%ETCDIR%%/sysconfig
-@dirrm %%ETCDIR%%/examples
-@dirrm %%ETCDIR%%