summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron W. Swenson <titanofold@gentoo.org>2020-02-18 14:03:37 -0500
committerAaron W. Swenson <titanofold@gentoo.org>2020-02-18 14:03:44 -0500
commitcf58dfea3eb65e157aa56bc11cc795b49c629c1c (patch)
tree1c6968036ce49f38579309595799070696a03d6b
parentdev-db/pspg: Bump to 2.6.6 (diff)
downloadgentoo-cf58dfea3eb65e157aa56bc11cc795b49c629c1c.tar.gz
gentoo-cf58dfea3eb65e157aa56bc11cc795b49c629c1c.tar.bz2
gentoo-cf58dfea3eb65e157aa56bc11cc795b49c629c1c.zip
dev-db/pgagent: Fix pthread linking
Bug: https://bugs.gentoo.org/688472 Package-Manager: Portage-2.3.84, Repoman-2.3.16 Signed-off-by: Aaron W. Swenson <titanofold@gentoo.org>
-rw-r--r--dev-db/pgagent/files/pgagent-4.0.0-pthreads-linking.patch33
-rw-r--r--dev-db/pgagent/pgagent-4.0.0-r1.ebuild55
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
+}