# Created by: Andy Pavlo
# $FreeBSD: tags/RELEASE_10_2_0/sysutils/condor/Makefile 388591 2015-06-05 16:29:41Z amdmi3 $

PORTNAME=	condor
PORTVERSION=	8.2.6
CATEGORIES=	sysutils net
MASTER_SITES=	http://www.acadix.biz/Ports/distfiles/
DISTNAME=	condor_src-${PORTVERSION}-all-all

MAINTAINER=	jwbacon@tds.net
COMMENT=	High-throughput computing on distributively owned resources

LICENSE=	APACHE20

LIB_DEPENDS+=	libkrb5support.so:${PORTSDIR}/security/krb5 \
		libpcre.so:${PORTSDIR}/devel/pcre \
		libcurl.so:${PORTSDIR}/ftp/curl \
		libboost_python.so:${PORTSDIR}/devel/boost-python-libs

WRKSRC=		${WRKDIR}/condor-${PORTVERSION}
USE_LDCONFIG=	yes
# Does not build with Python 3
USES=		cmake cpe gmake perl5 pgsql python:2 shebangfix
CPE_VENDOR=	condor_project
# 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
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} \
		-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

USERS=		condor
GROUPS=		${USERS}

USE_RC_SUBR=	condor

PORTEXAMPLES=	*
PORTDOCS=	*

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" )

post-patch:
	@${REINPLACE_CMD} \
		-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
	@${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} \
		${STAGEDIR}${ETCDIR}/examples/condor_config.annotated \
		${STAGEDIR}${ETCDIR}/condor_config
	${INSTALL_DATA} ${WRKDIR}/condor_config.local ${STAGEDIR}${ETCDIR}
	${INSTALL_SCRIPT} ${WRKDIR}/condor-config ${STAGEDIR}${PREFIX}/sbin

.include <bsd.port.post.mk>
