diff options
-rw-r--r-- | dev-db/pgagent/files/pgagent-4.0.0-pthreads-linking.patch | 33 | ||||
-rw-r--r-- | dev-db/pgagent/pgagent-4.0.0-r1.ebuild | 55 |
2 files changed, 88 insertions, 0 deletions
diff --git a/dev-db/pgagent/files/pgagent-4.0.0-pthreads-linking.patch b/dev-db/pgagent/files/pgagent-4.0.0-pthreads-linking.patch new file mode 100644 index 000000000000..95f8e998f58f --- /dev/null +++ b/dev-db/pgagent/files/pgagent-4.0.0-pthreads-linking.patch @@ -0,0 +1,33 @@ +From 5b79460bdda286ca988b39e93e446176e8a781d1 Mon Sep 17 00:00:00 2001 +From: Neel Patel <neel.patel@enterprisedb.com> +Date: Fri, 20 Jul 2018 13:35:35 +0100 +Subject: [PATCH] Link with pthreads on non-Windows and non-macOS platforms. + +Patch based on feedback and initial work by Christoph Berg. +--- + CMakeLists.txt | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1be24da..6f1eaa0 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -134,9 +134,15 @@ IF(WIN32) + ENDIF(WIN32) + + ADD_EXECUTABLE(pgagent ${_srcs}) ++IF(UNIX AND NOT APPLE) ++TARGET_LINK_LIBRARIES( ++ pgagent ${PG_LIBRARIES} ${Boost_LIBRARIES} -pthread ++) ++ELSE() + TARGET_LINK_LIBRARIES( + pgagent ${PG_LIBRARIES} ${Boost_LIBRARIES} + ) ++ENDIF() + + # Installation + IF (WIN32) +-- +2.24.1 + diff --git a/dev-db/pgagent/pgagent-4.0.0-r1.ebuild b/dev-db/pgagent/pgagent-4.0.0-r1.ebuild new file mode 100644 index 000000000000..fe9014a136f6 --- /dev/null +++ b/dev-db/pgagent/pgagent-4.0.0-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils user + +MY_PN=${PN/a/A} + +KEYWORDS="~amd64 ~x86" + +DESCRIPTION="${MY_PN} is a job scheduler for PostgreSQL" +HOMEPAGE="https://www.pgadmin.org/download/pgagent-source-code/" +SRC_URI="https://ftp.postgresql.org/pub/pgadmin/${PN}/${MY_PN}-${PV}-Source.tar.gz" + +LICENSE="POSTGRESQL GPL-2" +SLOT="0" + +RDEPEND="dev-db/postgresql:* + dev-libs/boost +" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_PN}-${PV}-Source" + +PATCHES=( "${FILESDIR}"/pgagent-4.0.0-pthreads-linking.patch ) + +src_prepare() { + cmake-utils_src_prepare + + sed -e "s:share):share/${P}):" \ + -i CMakeLists.txt || die "failed to patch CMakeLists.txt" +} + +src_configure() { + mycmakeargs=( "-DSTATIC_BUILD:BOOLEAN=FALSE" + ) + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + newinitd "${FILESDIR}/pgagent.initd-r1" "${PN}" + newconfd "${FILESDIR}/pgagent.confd" "${PN}" + + rm "${ED}"/usr/{LICENSE,README} || die "failed to remove useless docs" +} + +pkg_preinst() { + # This user needs a real shell, and the daemon will use the + # ~/.pgpass file from its home directory. + enewuser pgagent -1 /bin/bash /home/pgagent +} |