commit:     cf58dfea3eb65e157aa56bc11cc795b49c629c1c
Author:     Aaron W. Swenson <titanofold <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 18 19:03:37 2020 +0000
Commit:     Aaron W. Swenson <titanofold <AT> gentoo <DOT> org>
CommitDate: Tue Feb 18 19:03:44 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf58dfea

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 <AT> gentoo.org>

 .../files/pgagent-4.0.0-pthreads-linking.patch     | 33 +++++++++++++
 dev-db/pgagent/pgagent-4.0.0-r1.ebuild             | 55 ++++++++++++++++++++++
 2 files changed, 88 insertions(+)

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 00000000000..95f8e998f58
--- /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.pa...@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 00000000000..fe9014a136f
--- /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
+}

Reply via email to