parent
3ba24c7376
commit
469f5e7f39
@ -1,34 +1,30 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
AUX CVE-2014-4343.patch 344 SHA256 d5c18765dbb0d770b78b4214ef20bf9018bf93344d3f29ab8268408d76dd874d SHA512 8024b2685d4ac54df8b3ab162afd2cec58432f090a663703045dd58f80dea1f3314b63b61dbf1d43788579cf0a35a6bc711e8ba7a8bf26f50b38a28ea640af87 WHIRLPOOL 8da60a3753bc973728e9bfefa0cf45b53957939b0d928a0573de2cb12839a8fc4d6bbc5d383ded0099df518c4cfae6d9eae273666c22c2918faa4f008a4995c1
|
||||
AUX CVE-2014-4344.patch 325 SHA256 f9d0b9d4d13a294338e1ac683f6d065cb00a37df354c6f8824814aeea4504d23 SHA512 e5e9cdd3f246584461cc1c96813bb7ead404d09a6c949ad0a82e82ed3f99f5067e4cfa2d088b3ae6379754e06dd0a787b94e4d3edd7aa278b60662af6b6a0d7a WHIRLPOOL 931539c8e68516b5ff8182bb44fe503c74127ed16451592eadb8d712527cef58b5f1eb41860a92a485787b37549f7a4367a0e799229e8fa8c484caa0ad54e9e8
|
||||
AUX kpropd.xinetd 194 SHA256 eaa3838a6ca8db901db359cac3435d4f703a9a10534f02eeb37f494dd21a1736 SHA512 c9bbd13f2fadfd2a925bfae834ba61f227cd4386b4c4466b5227d93c792f4549778ef4d6e08353372df99804459277c71f61b41ec71f3afcc600d73c5705f72f WHIRLPOOL d77ae7b0094c4f42a7ea9cee5d36d0dba844a9ed5d59c621e47c7fa4b75c84fec3414e079c570513711b378d1b0fef61156f675a0df79ee61540d9492416fe42
|
||||
AUX mit-krb5-1.12_warn_cflags.patch 448 SHA256 67d3c91061933bd5393b9a6ee8fe2e3f5cd287c4eee7b92798cc2e201712c681 SHA512 42364d9cd8c0a6fd28ae661eeac4d0dd3f2001fe290bf9731ee99c2c786a6488805fc93057d59e201e2cef1e5280af4c170187aa5603f4cf542906abc0fccc2b WHIRLPOOL 9fa704dde00b0201d765199893bf787c5c104070596b05bc12e7f41ae21c4c60c8d25b21fe8573ecd3e63ab769238a78c5cf70f4d086a23f71423b1cad283eaa
|
||||
AUX mit-krb5-config_LDFLAGS.patch 466 SHA256 fbb4d9be71ef536a344d415b9c56ea42c5c2a2ef02ec3a866d9da47b3acd93d3 SHA512 9a1ca9b33e7708346eda78d199fdc51f0d7bd08d3d65ea15a19955a6155ab71b8ee0c8989859d6dff293a141f197ea19394a91b3b641181140a289b743e0f0e7 WHIRLPOOL f6c58e652c4c365c4f28894d404413a075cc6c5323f83b18d711dc831bb574623db371ccbc1a5aae0ddf030a1b85e1ad50c06f5904ae5554bb4026e464a2c75f
|
||||
AUX mit-krb5kadmind.initd-r1 592 SHA256 3e55c79f19aaa6ef6b64a621c03dbb2eac3ad923916dc803f4c1bfe48ce89fbb SHA512 f0595e9bbcd85badb403af7febce1fa28278bd7fc8118498948171ea12a27ce8b3c479a34b36639d7370193bc69a0b093ae7e3b66473078dabc38864fec931e9 WHIRLPOOL 16147fc873ad16c16410e82df817fdb7ff068ef5cc1c50d9bb5558f134db36d516ab80628714e836a20883d0d1dfd17bfca5a41225be4ecca270580f2db28e70
|
||||
AUX mit-krb5kdc.initd-r1 556 SHA256 709309dea043aa306c2fcf0960e0993a6db540c220de64cf92d6b85f1cca23c5 SHA512 d6d0076886ce284fc395fafc2dc253b4b3ee97b2986dea51388d96a1e1294680fb171f475efc7844559e2c6aac44b26678a9255921db9a58dcf2e7164f0aeec5 WHIRLPOOL 87e54c3df6b8b45058fe0c90c25946e37228aba32077ebcb595a82a0a6fc7268a516dcb1cfd0ce3fd82afedf19b5df2399ac05931f207d0f3d2e26afd590abef
|
||||
AUX mit-krb5kpropd.initd-r1 595 SHA256 c374ea05d7e9f15e10c8f9dbd0cad6548e0f92aef7de33e5dbc27222e9407e7b SHA512 a18c523aebbb6b8512cd261eac2149c7422214ef6a233e1ceb1b4da9187eeca317ddd75a153b13382571778931bbed00b1803ed015ff01875c8d565b3f3a593f WHIRLPOOL 869f8aec4764a12b5b5506a2fab8ea2641b58cb347a1db60110cccbb011dc51ab9115824828184abc55efccf540d6b014a57e0891b1d6d4ce28ff35405197aeb
|
||||
DIST krb5-1.12.1-signed.tar 11950080 SHA256 72f1b6c166cb42c0b03814ab7ea10f91926d8a665a5ba1cee430a3f31e62c580 SHA512 bdb1541f6906e86fb00336a8d7c58f32c1203d1b23fe72bf6e943197a0d85a48a0b847cc2cf18388d3eec0b22aecc206ce804fd1009bb73423bac76900052a9e WHIRLPOOL 19021c52df7ceb64703c25e2cb9e643d2c62f180b65bf99aab04caeb2e0014b3c0e486609f4c36e618a00621c57d1291075299ea34b8550b255fe1000484291e
|
||||
DIST krb5-1.12.2-signed.tar 11991040 SHA256 09bd180107b5c2b3b7378c57c023fb02a103d4cac39d6f2dd600275d7a4f3744 SHA512 27ea2e4810e3770695865aa2bbc9d39793fe3eba82ff1ca85ccbcfa0272a3fe13de21bfff15dc5eef6b7c9d91f7f8d1c42fa4b85fa71958d2b38f867d55c5dff WHIRLPOOL 5f403c262fbb18cb50e80bb599344b9dc3bddca9fe5361db5352b49c88cbd312fb086cd112ca4a38d84b2c6a18954371772471b6379c4e055da762e89997c90d
|
||||
EBUILD mit-krb5-1.12.1-r2.ebuild 4045 SHA256 eca95a2100b6cf2e2dc6ac0939affa231077ca6e15ff36b42cf2b3777373bf2e SHA512 60754fb232c9fa10578e3a3fc287daefdc54d4f2a0a8f14b5da9e156fb76faf529f43130d57a00d2d4d8fdec2599bcfce0e171333c9eb6158564f09997af2cb8 WHIRLPOOL d46fa5c52a75d93b093b09ed2569838edf36231600215424cbe75a93d90571436bf79f7274c32f3c22d91d91b1bbf80ef5ebef6f40267a382791aea32735351a
|
||||
EBUILD mit-krb5-1.12.2.ebuild 3830 SHA256 a35e55116349609db3b61460158711a2947405b4953264ad5cbf6aa10a80671d SHA512 423f4f9cd2dced0d47db394592e4625137a80beb26ef31d466d6e2c7c62e4e0b6754b01c089a776ceabcbf2d78526c06957801a4dce44c41e65882631cc59a17 WHIRLPOOL 1b09d749dd903fb6cd188cd2f2a69552c5cb6b74dc5c8080f16b66601d6e3b892bbae058e9946617ab52c4bc088ef647bd5b39f01d627eb14dcdec1391c91587
|
||||
MISC ChangeLog 65280 SHA256 23549c95ad546bea5a1a9dee91c349cec9cc744b6c93954cca6be7f4b3f27b47 SHA512 573fc57bb25def45caac55e8b81405c637322ae33335cf06367afa027de6f13193291ea76fdea33f7b2663b3370594215f8520547d89bb94c3dd1e7f2a89a671 WHIRLPOOL 86170d65327ee335a7a70672e366be4d8554c2aee39759f5b26108bc54f9738bc177baa81ec92833a7cae7b87e2afe9cdd9d7466eceb824cde140343f6326412
|
||||
EBUILD mit-krb5-1.12.2.ebuild 3830 SHA256 cd5402367a808545e5bae5ff612dfae897bf003d852b4c3a273c8a188ad77730 SHA512 50aaa6cef65d76f6fb0e01089c600ffb617df51838ff4ffb894762c1a5e9c34abf573428997dd317d2e229acebb0adbd56a26b89611d160532a2e465bda1526c WHIRLPOOL c750d0d20d7b022cdb041753317280ce298f088020758a14a8ec77d484c472cd581539e7570b40835e1a9e8e51e908332279c992839cfea179800284de7c5078
|
||||
MISC ChangeLog 65550 SHA256 1039a4e58745c2839837671050b54258b14e6f2702268a52292b927c7879eee4 SHA512 4ecfee97840858ad78705367e972e63bd65ba53ad197e510a0e7bc162b4977ccb980d8afe7f89ad8efcddc8b9c0b22ae64ac795c78a673b3ba20028e88ec1fff WHIRLPOOL fdaeaac3fd2d2e51d7ce86253f54e4934f98ec958962f376abcd40b36ea675a33f9c0810be10f98db5f8d3d276568c0a594d6c63a8a0333c78a5e709b2de45d1
|
||||
MISC metadata.xml 668 SHA256 da5862dde92f34b882870961cb9f1e4aa8209fc549e32a43d99770a9de8b232d SHA512 0038aeb7cda74161d2e2fe97c5124ee6cc86a24b9503714c128cd8b9af8b8050a89cf5dd3aadd66b1714c1d1aeb8564d50479547a586200793ea485e9f9c6c8b WHIRLPOOL 52394a4f4d5acb11f3bf2e76e036707c7f7741990d70bafb5c87a6da5d191b6aee3cb8383f6e66694cbda7458eb1a869c7ec8758750741835e2f1af4e028378c
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2
|
||||
|
||||
iQIcBAEBCAAGBQJT+aqcAAoJELp701BxlEWfy64P/0AJyQ+qBAwZx46jFNBJTVyk
|
||||
zgdyufnApZrDkewTKsRo1L63M+xdq2B+XGgn3fwDUCHH6+01sfIJ5iO7+/2ZHpov
|
||||
QGZb760Rf8B6T5IdlAhcdgQEGkZlqakKS1nGaVUvUW5nfu0/wAFZMYu5H6R243QT
|
||||
+A4xbGpoEnS0k2+YZHRXBbTcYTgZ6gBJfukshAksmJaco0U3qS+pLaIy0zu70FgE
|
||||
XBOjNVLo+4PtrEyfn8+qk6/hO08FN1obAe/pZu5pxoshQEgTF/8Rp6YzRVZHakVw
|
||||
BqQbz1wEa/7XwXc4zy5/4keeTdvRF483D+BpVSdExFPIlrw9XRhTAoCjgZBniTK6
|
||||
b5Bzk3Qx9cOxxputPvub+r+7P+6Li2CM8YrgAiV2D7Of9yluU56GJNCvBA52eaDr
|
||||
R7obJmw6C4e7Hr4/mc1hz/A0plCu7wBoscSiN837+LZBeZcS1krBKiO81sdwWHJv
|
||||
G7mF7TuF4c8GRilvjfnuZZFcVcTFFTNYk5MgfQQNLNWLhPFT8mhQfrkNlKtyz1CI
|
||||
4sYKYLaI+CElJ8NLOAJUnIHKn66k3abmxiC+AJTj5146ZIDcAyxs/yPY4IMumeyO
|
||||
ylDNUTRXo78aOCLH4Fgx65v8LPrU8a4Bw7byZYnVkdaXM6ozkW3lgOAg3/PWZtpu
|
||||
US90qU+gwiVHbYASrzRx
|
||||
=4z8K
|
||||
iQIcBAEBCAAGBQJUHBwlAAoJEHfx8XVYajsfp20P/Aq6lgqwjQMPqeQulMnL5onZ
|
||||
Pv6FSkOEC+uvZR5juWvqhbLLxkMrNxd2/+uJJAx5nr4NFY5mm46cQvE8wYJTTNWR
|
||||
DxArr/yuUcTXFhRwZ4UqXddviiUpPKDwoO+7ivsulql9DE7vmmbez4BaJQOcmVVE
|
||||
wwMFTvfqxTqJ61WO1tKG65SF1294flWMJ9HE2yxoHTH6LVaORt1Ih0IYYHujGKSP
|
||||
1iEl7HacGvEfx20iFulkOcQTjXqJDXsyyULiC+aqddK0MUqQdjU7N/SXs8/jTd4n
|
||||
sj0tNW1WHzxmvyEsWxj2JN+pMfUWj0AlK5nE88C5j9vP79SwJ3gRskOI6IRuh6uG
|
||||
hRQZhOso+NnZ0FU7PznzJyJ+JoMkdm1T7rSL0NywxDYwthjWMa69Yx+IO0FIgu9t
|
||||
RlHWFKYS2QoatbAGHo6/WhG+Gnq6ONNAhiOCWSj7In0fafze+1XBcCooTm+b4PEX
|
||||
DerNFv9t6EGm18iXP9CNPWKwvpPwAJDNylxCenRSaQIXQpO2fVUCYCynY2tW0TRw
|
||||
IoMVpYIjCSg/x0SZ4jB6XwQ2IwrIl7IWKktziIucVoI6vuaQ3HTOoXo7NYiAtEuC
|
||||
3Cv7/DFq1YxGpT5wwSQ4ofdCM40SdmFZa5f3HHVro7r3DuwDANof7E8a+MbekoVF
|
||||
eFO14DQgmHvl8BGI31n4
|
||||
=34c+
|
||||
-----END PGP SIGNATURE-----
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- a/src/lib/gssapi/spnego/spnego_mech.c
|
||||
+++ b/src/lib/gssapi/spnego/spnego_mech.c
|
||||
@@ -818,7 +818,6 @@ init_ctx_reselect(OM_uint32 *minor_status, spnego_gss_ctx_id_t sc,
|
||||
OM_uint32 tmpmin;
|
||||
size_t i;
|
||||
|
||||
- generic_gss_release_oid(&tmpmin, &sc->internal_mech);
|
||||
gss_delete_sec_context(&tmpmin, &sc->ctx_handle,
|
||||
GSS_C_NO_BUFFER);
|
||||
|
||||
|
@ -1,12 +0,0 @@
|
||||
--- a/src/lib/gssapi/spnego/spnego_mech.c
|
||||
+++ b/src/lib/gssapi/spnego/spnego_mech.c
|
||||
@@ -1468,7 +1468,7 @@ acc_ctx_cont(OM_uint32 *minstat,
|
||||
|
||||
ptr = bufstart = buf->value;
|
||||
#define REMAIN (buf->length - (ptr - bufstart))
|
||||
- if (REMAIN > INT_MAX)
|
||||
+ if (REMAIN == 0 || REMAIN > INT_MAX)
|
||||
return GSS_S_DEFECTIVE_TOKEN;
|
||||
|
||||
/*
|
||||
|
@ -1,150 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-crypt/mit-krb5/mit-krb5-1.12.1-r2.ebuild,v 1.10 2014/08/10 17:25:27 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python{2_6,2_7} )
|
||||
inherit autotools eutils flag-o-matic multilib-minimal python-any-r1 versionator
|
||||
|
||||
MY_P="${P/mit-}"
|
||||
P_DIR=$(get_version_component_range 1-2)
|
||||
DESCRIPTION="MIT Kerberos V"
|
||||
HOMEPAGE="http://web.mit.edu/kerberos/www/"
|
||||
SRC_URI="http://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}-signed.tar"
|
||||
|
||||
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86"
|
||||
IUSE="doc +keyutils openldap +pkinit selinux +threads test xinetd"
|
||||
|
||||
RDEPEND="!!app-crypt/heimdal
|
||||
>=sys-libs/e2fsprogs-libs-1.42.9[${MULTILIB_USEDEP}]
|
||||
|| ( >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
|
||||
>=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
|
||||
>=dev-libs/libverto-0.2.5[tevent,${MULTILIB_USEDEP}] )
|
||||
keyutils? ( >=sys-apps/keyutils-1.5.8[${MULTILIB_USEDEP}] )
|
||||
openldap? ( >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}] )
|
||||
pkinit? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
|
||||
selinux? ( sec-policy/selinux-kerberos )
|
||||
xinetd? ( sys-apps/xinetd )
|
||||
abi_x86_32? (
|
||||
!<=app-emulation/emul-linux-x86-baselibs-20140508-r1
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
virtual/yacc
|
||||
doc? ( virtual/latex-base )
|
||||
test? ( ${PYTHON_DEPS}
|
||||
dev-lang/tcl
|
||||
dev-util/dejagnu )"
|
||||
|
||||
S=${WORKDIR}/${MY_P}/src
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/krb5-config
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
unpack ./"${MY_P}".tar.gz
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${PN}-1.12_warn_cflags.patch"
|
||||
epatch "${FILESDIR}/${PN}-config_LDFLAGS.patch"
|
||||
epatch "${FILESDIR}/CVE-2014-4343.patch"
|
||||
epatch "${FILESDIR}/CVE-2014-4344.patch"
|
||||
|
||||
# tcl-8.6 compatibility
|
||||
sed -i -e 's/interp->result/Tcl_GetStringResult(interp)/' \
|
||||
kadmin/testing/util/tcl_kadm5.c || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
append-cppflags "-I${EPREFIX}/usr/include/et"
|
||||
# QA
|
||||
append-flags -fno-strict-aliasing
|
||||
append-flags -fno-strict-overflow
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
use keyutils || export ac_cv_header_keyutils_h=no
|
||||
ECONF_SOURCE=${S} \
|
||||
WARN_CFLAGS="set" \
|
||||
econf \
|
||||
$(use_with openldap ldap) \
|
||||
"$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
|
||||
$(use_enable pkinit) \
|
||||
$(use_enable threads thread-support) \
|
||||
--without-hesiod \
|
||||
--enable-shared \
|
||||
--with-system-et \
|
||||
--with-system-ss \
|
||||
--enable-dns-for-realm \
|
||||
--enable-kdc-lookaside-cache \
|
||||
--with-system-verto \
|
||||
--disable-rpath
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake -j1
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
multilib_is_native_abi && emake -j1 check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
|
||||
install
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
# default database dir
|
||||
keepdir /var/lib/krb5kdc
|
||||
|
||||
cd ..
|
||||
dodoc README
|
||||
|
||||
if use doc; then
|
||||
dohtml -r doc/html/*
|
||||
docinto pdf
|
||||
dodoc doc/pdf/*.pdf
|
||||
fi
|
||||
|
||||
newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r1 mit-krb5kadmind
|
||||
newinitd "${FILESDIR}"/mit-krb5kdc.initd-r1 mit-krb5kdc
|
||||
newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r1 mit-krb5kpropd
|
||||
|
||||
insinto /etc
|
||||
newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
|
||||
insinto /var/lib/krb5kdc
|
||||
newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
|
||||
|
||||
if use openldap ; then
|
||||
insinto /etc/openldap/schema
|
||||
doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
|
||||
fi
|
||||
|
||||
if use xinetd ; then
|
||||
insinto /etc/xinetd.d
|
||||
newins "${FILESDIR}/kpropd.xinetd" kpropd
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if has_version "<${CATEGORY}/${PN}-1.8.0" ; then
|
||||
elog "MIT split the Kerberos applications from the base Kerberos"
|
||||
elog "distribution. Kerberized versions of telnet, rlogin, rsh, rcp,"
|
||||
elog "ftp clients and telnet, ftp deamons now live in"
|
||||
elog "\"app-crypt/mit-krb5-appl\" package."
|
||||
fi
|
||||
}
|
@ -1,168 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.0.16.ebuild,v 1.10 2014/03/12 10:24:35 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.0-r4.tbz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.0.7
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" "${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
local PO="${EPREFIX%/}"
|
||||
econf --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_controldata,pg_ctl,pg_resetxlog,postgres,postmaster}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{README.*,TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" \
|
||||
> "${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
einfo
|
||||
einfo "If this is your first install of PostgreSQL, you 'll want to:"
|
||||
einfo " source /etc/profile"
|
||||
einfo "In your open terminal sessions."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,168 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.0.17.ebuild,v 1.1 2014/03/20 22:06:23 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.0-r4.tbz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.0.7
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" "${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
local PO="${EPREFIX%/}"
|
||||
econf --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_controldata,pg_ctl,pg_resetxlog,postgres,postmaster}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{README.*,TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" \
|
||||
> "${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
einfo
|
||||
einfo "If this is your first install of PostgreSQL, you 'll want to:"
|
||||
einfo " source /etc/profile"
|
||||
einfo "In your open terminal sessions."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,171 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.1.12.ebuild,v 1.10 2014/03/12 10:24:35 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.1-r2.tbz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
einfo
|
||||
einfo "If this is your first install of PostgreSQL, you 'll want to:"
|
||||
einfo " source /etc/profile"
|
||||
einfo "In your open terminal sessions."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,171 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.1.13.ebuild,v 1.1 2014/03/20 22:06:23 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.1-r2.tbz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
einfo
|
||||
einfo "If this is your first install of PostgreSQL, you 'll want to:"
|
||||
einfo " source /etc/profile"
|
||||
einfo "In your open terminal sessions."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,167 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.2.7.ebuild,v 1.10 2014/03/12 10:24:35 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL"
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,167 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.2.8.ebuild,v 1.1 2014/03/20 22:06:23 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL"
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,168 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.3.3.ebuild,v 1.10 2014/03/12 10:24:35 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}-r1.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL"
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/run-dir.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,168 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-9.3.4.ebuild,v 1.2 2014/04/27 21:02:30 floppym Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{6,7},3_{2,3,4}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib prefix python-single-r1 versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}-r1.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL"
|
||||
DESCRIPTION="PostgreSQL libraries and clients"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
# No tests to be done for clients and libraries
|
||||
RESTRICT="test"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos ldap nls pam pg_legacytimestamp python readline ssl threads zlib"
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/eselect-postgresql-1.2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/base.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/run-dir.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
# to avoid collision - it only should be installed by server
|
||||
rm "${S}/src/backend/nls.mk"
|
||||
|
||||
# because psql/help.c includes the file
|
||||
ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" || die
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/postgresql-${SLOT}" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--without-tcl \
|
||||
--without-perl \
|
||||
$(use_with readline) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with kerberos gssapi) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")" \
|
||||
$(use_with pam) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_with python) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with zlib) \
|
||||
$(use_with ldap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
insinto /usr/include/postgresql-${SLOT}/postmaster
|
||||
doins "${S}"/src/include/postmaster/*.h
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/
|
||||
cp -r "${S}"/doc/src/sgml/man{1,7} "${ED}"/usr/share/postgresql-${SLOT}/man/ || die
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}.1
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,7}
|
||||
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
insinto /usr/share/doc/postgresql-${SLOT}
|
||||
doins README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
cd "${S}/contrib"
|
||||
emake DESTDIR="${D}" install
|
||||
cd "${S}"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/base"
|
||||
|
||||
keepdir /etc/postgresql-${SLOT}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.0.16.ebuild,v 1.10 2014/03/12 10:24:30 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
S=${WORKDIR}/postgresql-${PV}
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.0.17.ebuild,v 1.1 2014/03/20 22:03:48 titanofold Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
S=${WORKDIR}/postgresql-${PV}
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.1.12.ebuild,v 1.10 2014/03/12 10:24:30 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.1.13.ebuild,v 1.1 2014/03/20 22:03:48 titanofold Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.2.7.ebuild,v 1.10 2014/03/12 10:24:30 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# Comment the following four lines when not a beta or rc.
|
||||
#MY_PV="${PV//_}"
|
||||
#MY_FILE_PV="${SLOT}$(get_version_component_range 4)"
|
||||
#S="${WORKDIR}/postgresql-${MY_FILE_PV}"
|
||||
#SRC_URI="mirror://postgresql/source/v${MY_FILE_PV}/postgresql-${MY_FILE_PV}.tar.bz2"
|
||||
|
||||
# Comment the following two lines when a beta or rc.
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.2.8.ebuild,v 1.1 2014/03/20 22:03:48 titanofold Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# Comment the following four lines when not a beta or rc.
|
||||
#MY_PV="${PV//_}"
|
||||
#MY_FILE_PV="${SLOT}$(get_version_component_range 4)"
|
||||
#S="${WORKDIR}/postgresql-${MY_FILE_PV}"
|
||||
#SRC_URI="mirror://postgresql/source/v${MY_FILE_PV}/postgresql-${MY_FILE_PV}.tar.bz2"
|
||||
|
||||
# Comment the following two lines when a beta or rc.
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.3.3.ebuild,v 1.10 2014/03/12 10:24:30 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# Comment the following four lines when not a beta or rc.
|
||||
#MY_PV="${PV//_}"
|
||||
#MY_FILE_PV="${SLOT}$(get_version_component_range 4)"
|
||||
#S="${WORKDIR}/postgresql-${MY_FILE_PV}"
|
||||
#SRC_URI="mirror://postgresql/source/v${MY_FILE_PV}/postgresql-${MY_FILE_PV}.tar.bz2"
|
||||
|
||||
# Comment the following two lines when a beta or rc.
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-docs/postgresql-docs-9.3.4.ebuild,v 1.1 2014/03/20 22:03:48 titanofold Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DESCRIPTION="PostgreSQL documentation"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
LICENSE="POSTGRESQL"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# Comment the following four lines when not a beta or rc.
|
||||
#MY_PV="${PV//_}"
|
||||
#MY_FILE_PV="${SLOT}$(get_version_component_range 4)"
|
||||
#S="${WORKDIR}/postgresql-${MY_FILE_PV}"
|
||||
#SRC_URI="mirror://postgresql/source/v${MY_FILE_PV}/postgresql-${MY_FILE_PV}.tar.bz2"
|
||||
|
||||
# Comment the following two lines when a beta or rc.
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
|
||||
src_unpack() {
|
||||
tar xjf "${DISTDIR}/${A}" -C "${WORKDIR}" "${A%.tar.bz2}/doc"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Don't use ${PF} here as three packages
|
||||
# (dev-db/postgresql-{docs,base,server}) have the same set of docs.
|
||||
local mypath=/usr/share/doc/postgresql-${SLOT}
|
||||
|
||||
cd "${S}/doc"
|
||||
|
||||
insinto ${mypath}/html
|
||||
doins src/sgml/html/*
|
||||
|
||||
insinto ${mypath}/sgml
|
||||
doins src/sgml/*.{sgml,dsl}
|
||||
|
||||
insinto ${mypath}/sgml/ref
|
||||
doins src/sgml/ref/*.sgml
|
||||
|
||||
fowners root:0 -R ${mypath}
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/docs"
|
||||
}
|
@ -1,358 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.0.16.ebuild,v 1.10 2014/03/12 10:24:40 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.0-r4.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-pre92-2.6.tbz2"
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/pg_ctl-exit-status.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${EPREFIX%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
--with-includes="${EPREFIX%/}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${EPREFIX%/}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
--with-system-tzdata="${EPREFIX%/}/usr/share/zoneinfo" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd -j1 || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use perl ; then
|
||||
mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig"
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
"${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile"
|
||||
fi
|
||||
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd -j1 DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/man1/
|
||||
cp "${S}"/doc/src/sgml/man1/{initdb,pg_controldata,pg_ctl,pg_resetxlog,post{gres,master}}.1 \
|
||||
"${ED}"/usr/share/postgresql-${SLOT}/man/man1/ || die
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" \
|
||||
> "${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0770 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "If you have users and/or services that you would like to utilize the"
|
||||
elog "socket, you must add them to the 'postgres' system group:"
|
||||
elog " usermod -a -G postgres <user>"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds. Control-C to cancel"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f ${EROOT%/}/etc/conf.d/postgresql-${SLOT} ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z ${PGDATA} ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z ${DATA_DIR} ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [[ -f ${EROOT%/}/etc/env.d/02locale ]] ; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[[ -n ${LANG} ]] && export LANG
|
||||
[[ -n ${LC_CTYPE} ]] && export LC_CTYPE
|
||||
[[ -n ${LC_NUMERIC} ]] && export LC_NUMERIC
|
||||
[[ -n ${LC_TIME} ]] && export LC_TIME
|
||||
[[ -n ${LC_COLLATE} ]] && export LC_COLLATE
|
||||
[[ -n ${LC_MONETARY} ]] && export LC_MONETARY
|
||||
[[ -n ${LC_MESSAGES} ]] && export LC_MESSAGES
|
||||
[[ -n ${LC_ALL} ]] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [[ $correct != "true" ]] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ]] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[[ -z ${PG_MAX_CONNECTIONS} ]] && PG_MAX_CONNECTIONS=128
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [[ -z ${SKIP_SYSTEM_TESTS} ]] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [[ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ]] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
einfo "Creating the data directory ..."
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres \
|
||||
-c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D '${DATA_DIR}' -L '${EROOT%/}/usr/share/postgresql-${SLOT}/' ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb \
|
||||
-U postgres -D "${DATA_DIR}" \
|
||||
-L "${EROOT%/}/usr/share/postgresql-${SLOT}/" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo " mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [[ ${UID} != 0 ]] ; then
|
||||
emake check || die "Make check failed. See above for details."
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,358 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.0.17.ebuild,v 1.1 2014/03/20 22:08:37 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.0-r4.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-pre92-2.6.tbz2"
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/pg_ctl-exit-status.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${EPREFIX%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
--with-includes="${EPREFIX%/}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${EPREFIX%/}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
--with-system-tzdata="${EPREFIX%/}/usr/share/zoneinfo" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd -j1 || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use perl ; then
|
||||
mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig"
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
"${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile"
|
||||
fi
|
||||
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd -j1 DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /usr/share/postgresql-${SLOT}/man/man1/
|
||||
cp "${S}"/doc/src/sgml/man1/{initdb,pg_controldata,pg_ctl,pg_resetxlog,post{gres,master}}.1 \
|
||||
"${ED}"/usr/share/postgresql-${SLOT}/man/man1/ || die
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" \
|
||||
> "${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0770 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "If you have users and/or services that you would like to utilize the"
|
||||
elog "socket, you must add them to the 'postgres' system group:"
|
||||
elog " usermod -a -G postgres <user>"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds. Control-C to cancel"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f ${EROOT%/}/etc/conf.d/postgresql-${SLOT} ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z ${PGDATA} ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z ${DATA_DIR} ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [[ -f ${EROOT%/}/etc/env.d/02locale ]] ; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[[ -n ${LANG} ]] && export LANG
|
||||
[[ -n ${LC_CTYPE} ]] && export LC_CTYPE
|
||||
[[ -n ${LC_NUMERIC} ]] && export LC_NUMERIC
|
||||
[[ -n ${LC_TIME} ]] && export LC_TIME
|
||||
[[ -n ${LC_COLLATE} ]] && export LC_COLLATE
|
||||
[[ -n ${LC_MONETARY} ]] && export LC_MONETARY
|
||||
[[ -n ${LC_MESSAGES} ]] && export LC_MESSAGES
|
||||
[[ -n ${LC_ALL} ]] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [[ $correct != "true" ]] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ]] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[[ -z ${PG_MAX_CONNECTIONS} ]] && PG_MAX_CONNECTIONS=128
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [[ -z ${SKIP_SYSTEM_TESTS} ]] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [[ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ]] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
einfo "Creating the data directory ..."
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres \
|
||||
-c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D '${DATA_DIR}' -L '${EROOT%/}/usr/share/postgresql-${SLOT}/' ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb \
|
||||
-U postgres -D "${DATA_DIR}" \
|
||||
-L "${EROOT%/}/usr/share/postgresql-${SLOT}/" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo " mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [[ ${UID} != 0 ]] ; then
|
||||
emake check || die "Make check failed. See above for details."
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,356 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.1.12.ebuild,v 1.10 2014/03/12 10:24:40 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.1-r2.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-pre92-2.6.tbz2"
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/pg_ctl-exit-status.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use perl ; then
|
||||
mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig"
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
"${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile"
|
||||
fi
|
||||
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0770 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "If you have users and/or services that you would like to utilize the"
|
||||
elog "socket, you must add them to the 'postgres' system group:"
|
||||
elog " usermod -a -G postgres <user>"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds. Control-C to cancel"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake -j1 check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,356 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.1.13.ebuild,v 1.1 2014/03/20 22:08:37 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-9.1-r2.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-pre92-2.6.tbz2"
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/pg_ctl-exit-status.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use perl ; then
|
||||
mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig"
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
"${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile"
|
||||
fi
|
||||
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0770 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "If you have users and/or services that you would like to utilize the"
|
||||
elog "socket, you must add them to the 'postgres' system group:"
|
||||
elog " usermod -a -G postgres <user>"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds. Control-C to cancel"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake -j1 check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,351 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.2.7.ebuild,v 1.10 2014/03/12 10:24:40 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-2.6.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use perl ; then
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
-i "${S}/src/pl/plperl/GNUmakefile" || die 'sed plperl failed'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c \
|
||||
|| die 'Failed regress sed'
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0775 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,351 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.2.8.ebuild,v 1.1 2014/03/20 22:08:37 titanofold Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{5,6,7},3_{1,2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-2.6.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/server.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use perl ; then
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
-i "${S}/src/pl/plperl/GNUmakefile" || die 'sed plperl failed'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c \
|
||||
|| die 'Failed regress sed'
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
for x in .init .confd .service -check-db-dir
|
||||
do
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -i "${WORKDIR}"/postgresql${x}
|
||||
[[ $? -ne 0 ]] && eerror "Failed sed on $x" && die 'Failed slot sed'
|
||||
done
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0775 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,349 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.3.3.ebuild,v 1.10 2014/03/12 10:24:40 ago Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{6,7},3_{2,3}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}-r1.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-2.5.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/server.patch" \
|
||||
"${WORKDIR}/run-dir.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use perl ; then
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
-i "${S}/src/pl/plperl/GNUmakefile" || die 'sed plperl failed'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" \
|
||||
-i "${WORKDIR}"/postgresql.{init,confd,service} || \
|
||||
die "SLOT sed failed"
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
# Avoid file collision with -base.
|
||||
rm "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)/libpgcommon.a"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0775 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,353 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.3.4-r1.ebuild,v 1.1 2014/04/28 00:18:39 floppym Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{6,7},3_{2,3,4}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}-r1.tbz2
|
||||
http://dev.gentoo.org/~floppym/dist/postgresql-initscript-2.7.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/server.patch" \
|
||||
"${WORKDIR}/run-dir.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use perl ; then
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
-i "${S}/src/pl/plperl/GNUmakefile" || die 'sed plperl failed'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c \
|
||||
|| die 'Failed regress sed'
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
-i "${WORKDIR}"/postgresql{.{init,confd,service},-check-db-dir} ||
|
||||
die "SLOT/LIBDIR sed failed"
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
# Avoid file collision with -base.
|
||||
rm "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)/libpgcommon.a"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
insinto /usr/bin/
|
||||
newbin "${WORKDIR}"/postgresql-check-db-dir postgresql-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0775 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,349 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-9.3.4.ebuild,v 1.2 2014/04/27 21:03:33 floppym Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python{2_{6,7},3_{2,3,4}} )
|
||||
WANT_AUTOMAKE="none"
|
||||
|
||||
inherit autotools eutils flag-o-matic multilib pam prefix python-single-r1 systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
S="${WORKDIR}/postgresql-${PV}"
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-patches-${SLOT}-r1.tbz2
|
||||
http://dev.gentoo.org/~titanofold/postgresql-initscript-2.5.tbz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL server"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
LINGUAS="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN zh_TW"
|
||||
IUSE="doc kerberos kernel_linux nls pam perl -pg_legacytimestamp python selinux tcl test uuid xml"
|
||||
|
||||
for lingua in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${lingua}"
|
||||
done
|
||||
|
||||
wanted_languages() {
|
||||
local enable_langs
|
||||
|
||||
for lingua in ${LINGUAS} ; do
|
||||
use linguas_${lingua} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
RDEPEND="
|
||||
~dev-db/postgresql-base-${PV}[kerberos?,pam?,pg_legacytimestamp=,python=,nls=]
|
||||
perl? ( >=dev-lang/perl-5.8 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
tcl? ( >=dev-lang/tcl-8 )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/flex
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}/autoconf.patch" \
|
||||
"${WORKDIR}/bool.patch" \
|
||||
"${WORKDIR}/server.patch" \
|
||||
"${WORKDIR}/run-dir.patch"
|
||||
|
||||
eprefixify src/include/pg_config_manual.h
|
||||
|
||||
if use pam ; then
|
||||
sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c \
|
||||
|| die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
if use perl ; then
|
||||
sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \
|
||||
-i "${S}/src/pl/plperl/GNUmakefile" || die 'sed plperl failed'
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
epatch "${WORKDIR}/regress.patch"
|
||||
sed -e "s|@SOCKETDIR@|${T}|g" -i src/test/regress/pg_regress{,_main}.c
|
||||
else
|
||||
echo "all install:" > "${S}/src/test/regress/GNUmakefile"
|
||||
fi
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" \
|
||||
-i "${WORKDIR}"/postgresql.{init,confd,service} || \
|
||||
die "SLOT sed failed"
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
# eval is needed to get along with pg_config quotation of space-rich entities.
|
||||
eval econf "$(${PO}/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \
|
||||
$(use_with perl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
--with-includes="${PO}/usr/include/postgresql-${SLOT}/" \
|
||||
--with-libraries="${PO}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)" \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2); do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake -C $bd || die "emake in $bd failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local bd
|
||||
for bd in . contrib $(use xml && echo contrib/xml2) ; do
|
||||
PATH="${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \
|
||||
emake install -C $bd DESTDIR="${D}" || die "emake install in $bd failed"
|
||||
done
|
||||
|
||||
# Avoid file collision with -base.
|
||||
rm "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir)/libpgcommon.a"
|
||||
|
||||
dodir /etc/eselect/postgresql/slots/${SLOT}
|
||||
echo "postgres_ebuilds=\"\${postgres_ebuilds} ${PF}\"" > \
|
||||
"${ED}/etc/eselect/postgresql/slots/${SLOT}/server"
|
||||
|
||||
newconfd "${WORKDIR}/postgresql.confd" postgresql-${SLOT}
|
||||
newinitd "${WORKDIR}/postgresql.init" postgresql-${SLOT}
|
||||
|
||||
systemd_newunit "${WORKDIR}"/postgresql.service postgresql-${SLOT}.service
|
||||
systemd_newtmpfilesd "${WORKDIR}"/postgresql.tmpfilesd postgresql-${SLOT}.conf
|
||||
|
||||
use pam && pamd_mimic system-auth postgresql-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 0775 /run/postgresql
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
postgresql-config update
|
||||
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "http://www.gentoo.org/doc/en/postgres-howto.xml"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "http://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT%/}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttp://www.gentoo.org/doc/en/postgres-howto.xml#doc_chap5"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
[[ -f "${EROOT%/}/etc/conf.d/postgresql-${SLOT}" ]] && source "${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] && DATA_DIR="${EROOT%/}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT%/}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT%/}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT%/}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
while [ "$correct" != "true" ] ; do
|
||||
einfo "Are you ready to continue? (y/n)"
|
||||
read answer
|
||||
if [[ $answer =~ ^[Yy]([Ee][Ss])?$ ]] ; then
|
||||
correct="true"
|
||||
elif [[ $answer =~ ^[Nn]([Oo])?$ ]] ; then
|
||||
die "Aborting initialization."
|
||||
else
|
||||
echo "Answer not recognized"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
[ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128"
|
||||
einfo "Checking system parameters..."
|
||||
|
||||
if ! use kernel_linux ; then
|
||||
einfo "Skipped."
|
||||
einfo " Tests not supported on this OS (yet)"
|
||||
else
|
||||
if [ -z ${SKIP_SYSTEM_TESTS} ] ; then
|
||||
einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..."
|
||||
|
||||
local SEMMSL=$(sysctl -n kernel.sem | cut -f1)
|
||||
local SEMMNS=$(sysctl -n kernel.sem | cut -f2)
|
||||
local SEMMNI=$(sysctl -n kernel.sem | cut -f4)
|
||||
local SHMMAX=$(sysctl -n kernel.shmmax)
|
||||
|
||||
local SEMMSL_MIN=17
|
||||
local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 ))
|
||||
local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 ))
|
||||
local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) ))
|
||||
|
||||
for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do
|
||||
if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then
|
||||
eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)"
|
||||
eerror "You have now several options:"
|
||||
eerror " - Change the mentioned system parameter"
|
||||
eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a"
|
||||
eerror " value lower than ${PG_MAX_CONNECTIONS}"
|
||||
eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely"
|
||||
eerror "More information can be found here:"
|
||||
eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html"
|
||||
die "System test failed."
|
||||
fi
|
||||
done
|
||||
einfo "Passed."
|
||||
else
|
||||
ewarn "SKIP_SYSTEM_TESTS set, so skipping."
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "${DATA_DIR}"
|
||||
chown -Rf postgres:postgres "${DATA_DIR}"
|
||||
chmod 0700 "${DATA_DIR}"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
mv "${DATA_DIR%/}"/*.conf "${PGDATA}"
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo ">>> Test phase [check]: ${CATEGORY}/${PF}"
|
||||
|
||||
if [ ${UID} -ne 0 ] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
ewarn "Tests cannot be run as root. Skipping."
|
||||
ewarn "HINT: FEATURES=\"userpriv\""
|
||||
fi
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
DIST fsharp-3.1.1.14.tar.gz 30738035 SHA256 ca481c1f14f42cbd018a812542e57a32a2aeb3342aa4e79d273cf95e897c2564 SHA512 a15b1f49cfe4d2c5a5bfeed4b9f7cdf802738722e37b5991ba6c9447e3e8fbd69d102481afd9711025886126667c69ed788eca7554c9a4969b591e73f7cb1ea2 WHIRLPOOL f945531519805c5c054c1ad50e22fe4e2e29ad283680d01ed4282a1956a9c3f8a8519ca017e5205d6b776c215ddfae94e0ee0be686325c7c3b1af09f727b83fc
|
||||
EBUILD fsharp-3.1.1.14.ebuild 650 SHA256 c9ab62352b64462cce0bef71170445477247da5d1522171bca82a66b6d9d65fe SHA512 b6442277dc01d520291320b57030fdfa68b1397ad66ae0a53f447e2a935e390d261d0ae4568660097b778ba7c0de842738509922cb875f4f2dbad19523713ac6 WHIRLPOOL e308e81f8719901a61c1655c2ad2be6358a1870a3dd933346a35acddee8136187d1cab2bc8e442dcf778e73038d0d0c7c8db47911b9dccfbb6a527aa952e36f4
|
||||
MISC ChangeLog 1570 SHA256 656bb764d8604a0d078e9b549dabc6c29dedea0f9606c55f32f82bef45ed459e SHA512 37c672d2781514a55a6e33afc2a75c8b1ab7b6d1a21277cc9218dbdac222c2be3f1ca620c6c1138d3a89b93aba7cf7a7bcd57e9faff19c1d8c05fb65b1b34870 WHIRLPOOL 374fabbd4e2d5a6db4515bda48fba25bfd540332403625fca19a59b4f3c959bf68f8800bb0eff9100b40cea848208fcd62eea523f0cae57aef597a8f4b9088db
|
||||
DIST fsharp-3.1.1.26.tar.gz 30733174 SHA256 627d012860829d4b838da8a3af06162f730d40601e0335ba613e1bed1166e3fb SHA512 420730ebdf867fac169b69a3972a95bc54a203a8a3bc1db5d53b6d0e1bc4cd2ad4e32e6c31eebfbe29b214e2d2a47ed106ae653b2e98865e66efb01ce2657e89 WHIRLPOOL 7928d529d1402f702316c319b06588ef12c99c4afef08f21f41c126481531694064a1f8e40d5bee0addedd51c5cc8c30594b316679c0f2555e5c348746596183
|
||||
EBUILD fsharp-3.1.1.26.ebuild 650 SHA256 739543c586f61850990ab78b22ff999b806a86e75c322be5eba9f18973575fc2 SHA512 c8fb196ec75a00c4132621e7436294835c249e6708ada5e1b1eff8fa1e2bade8eac4ea850f16be9d750f7a47a699f66949d362efec9891684c5a9447c66c1b62 WHIRLPOOL 53fe44d674957fed5754a53c3e2554cd97962a509f3c6d761cdc8f27ae7a06f8d008ae0301e20d42609d406fa912d5e9f3f46b4cf6bba14db817a44fddfb6385
|
||||
MISC ChangeLog 1715 SHA256 54937538b071b03226069c44ccb6668f8c3a7f7e2180bca34957fbd6fa030b22 SHA512 300d06f0aa7850f4389a26ea889388e93f6047ef273cb7be02930ad15fdac7b68870d917fd1736cbdfdd5c750a6bf5c1c726f4a71249678820f6fcc8af66dabd WHIRLPOOL 2bf73632335e3123994b58794dceac8c41b691a43fea3ddec48dbaecc4e106b7cee6e4087886dc7bd111055e3e62351d2f6864c8431e8340f86db32442892b3f
|
||||
MISC metadata.xml 406 SHA256 0d604890ae200ce5f6e0a82dccf404a158f568035f0a7ad59d87088ad6bd05f7 SHA512 c2679f728a7260b5d74a1fa1abe99a16d074fe0316e57c061dda4f718bc6157387c3e10054bbd8c334d62b5e1c497fd20a55664f0e39f868e03deb7eeb920604 WHIRLPOOL 5f910211f1d4514f29895f0848a67522566691c9be40254c9f792b69209c3bb7c406e8cbb1174b6693de35710f612f8a6047c1a86837c4e240ff23298badcde3
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/fsharp/fsharp-3.1.1.14.ebuild,v 1.1 2014/05/17 09:07:09 cynede Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/fsharp/fsharp-3.1.1.26.ebuild,v 1.1 2014/09/19 11:36:21 cynede Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
@ -0,0 +1,802 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/php-5.4.33.ebuild,v 1.1 2014/09/19 12:14:27 olemarkus Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use libtool systemd
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
function php_get_uri ()
|
||||
{
|
||||
case "${1}" in
|
||||
"php-pre")
|
||||
echo "http://downloads.php.net/stas/${2}"
|
||||
;;
|
||||
"php")
|
||||
echo "http://www.php.net/distributions/${2}"
|
||||
;;
|
||||
"olemarkus")
|
||||
echo "http://dev.gentoo.org/~olemarkus/php/${2}"
|
||||
;;
|
||||
"gentoo")
|
||||
echo "mirror://gentoo/${2}"
|
||||
;;
|
||||
*)
|
||||
die "unhandled case in php_get_uri"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
PHP_MV="$(get_major_version)"
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# alias, so we can handle different types of releases (finals, rcs, alphas,
|
||||
# betas, ...) w/o changing the whole ebuild
|
||||
PHP_PV="${PV/_rc/RC}"
|
||||
PHP_PV="${PHP_PV/_alpha/alpha}"
|
||||
PHP_PV="${PHP_PV/_beta/beta}"
|
||||
PHP_RELEASE="php"
|
||||
[[ ${PV} == ${PV/_alpha/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_beta/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
|
||||
PHP_P="${PN}-${PHP_PV}"
|
||||
|
||||
PHP_PATCHSET_LOC="olemarkus"
|
||||
|
||||
PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
|
||||
|
||||
PHP_PATCHSET="2"
|
||||
PHP_PATCHSET_URI="
|
||||
$(php_get_uri "${PHP_PATCHSET_LOC}" "php-patchset-${SLOT}-r${PHP_PATCHSET}.tar.bz2")"
|
||||
|
||||
PHP_FPM_INIT_VER="4"
|
||||
PHP_FPM_CONF_VER="1"
|
||||
|
||||
SRC_URI="
|
||||
${PHP_SRC_URI}
|
||||
${PHP_PATCHSET_URI}"
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2 and embed SAPIs"
|
||||
HOMEPAGE="http://php.net/"
|
||||
LICENSE="PHP-3"
|
||||
|
||||
S="${WORKDIR}/${PHP_P}"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} bcmath berkdb bzip2 calendar cdb cjk
|
||||
crypt +ctype curl curlwrappers debug
|
||||
enchant exif +fileinfo +filter firebird
|
||||
flatfile ftp gd gdbm gmp +hash +iconv imap inifile
|
||||
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit mhash
|
||||
mssql mysql mysqlnd mysqli nls
|
||||
oci8-instant-client odbc pcntl pdo +phar +posix postgres qdbm
|
||||
readline recode selinux +session sharedmem
|
||||
+simplexml snmp soap sockets spell sqlite ssl
|
||||
sybase-ct sysvipc systemd tidy +tokenizer truetype unicode wddx
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
|
||||
|
||||
DEPEND="
|
||||
>=app-admin/eselect-php-0.7.1-r3[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )
|
||||
berkdb? ( =sys-libs/db-4* )
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
cjk? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib
|
||||
) )
|
||||
crypt? ( >=dev-libs/libmcrypt-2.4 )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant )
|
||||
exif? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib
|
||||
) )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0 )
|
||||
gmp? ( >=dev-libs/gmp-4.1.2 )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( virtual/imap-c-client[ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
|
||||
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
!mysqlnd? (
|
||||
mysql? ( virtual/mysql )
|
||||
mysqli? ( >=virtual/mysql-4.1 )
|
||||
)
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
|
||||
odbc? ( >=dev-db/unixODBC-1.8.13 )
|
||||
postgres? ( dev-db/postgresql-base )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline )
|
||||
recode? ( app-text/recode )
|
||||
sharedmem? ( dev-libs/mm )
|
||||
simplexml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
soap? ( >=dev-libs/libxml2-2.6.8 )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? ( >=dev-libs/openssl-0.9.7 )
|
||||
sybase-ct? ( dev-db/freetds )
|
||||
tidy? ( app-text/htmltidy )
|
||||
truetype? (
|
||||
=media-libs/freetype-2*
|
||||
>=media-libs/t1lib-5.0.0
|
||||
!gd? (
|
||||
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
)
|
||||
unicode? ( dev-libs/oniguruma )
|
||||
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
|
||||
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xpm? (
|
||||
x11-libs/libXpm
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0= sys-libs/zlib
|
||||
)
|
||||
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||
zip? ( sys-libs/zlib )
|
||||
zlib? ( sys-libs/zlib )
|
||||
virtual/mta
|
||||
"
|
||||
|
||||
php="=${CATEGORY}/${PF}"
|
||||
|
||||
REQUIRED_USE="
|
||||
truetype? ( gd )
|
||||
cjk? ( gd )
|
||||
exif? ( gd )
|
||||
|
||||
xpm? ( gd )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
wddx? ( xml )
|
||||
xmlrpc? ( || ( xml iconv ) )
|
||||
xmlreader? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
mhash? ( hash )
|
||||
phar? ( hash )
|
||||
mysqlnd? ( || (
|
||||
mysql
|
||||
mysqli
|
||||
pdo
|
||||
) )
|
||||
|
||||
qdbm? ( !gdbm )
|
||||
readline? ( !libedit )
|
||||
recode? ( !imap !mysql !mysqli )
|
||||
sharedmem? ( !threads )
|
||||
|
||||
!cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
sys-devel/flex
|
||||
>=sys-devel/m4-1.4.3
|
||||
>=sys-devel/libtool-1.5.18"
|
||||
|
||||
# Allow users to install production version if they want to
|
||||
|
||||
case "${PHP_INI_VERSION}" in
|
||||
production|development)
|
||||
;;
|
||||
*)
|
||||
PHP_INI_VERSION="development"
|
||||
;;
|
||||
esac
|
||||
|
||||
PHP_INI_UPSTREAM="php.ini-${PHP_INI_VERSION}"
|
||||
PHP_INI_FILE="php.ini"
|
||||
|
||||
want_apache
|
||||
|
||||
pkg_setup() {
|
||||
depend.apache_pkg_setup
|
||||
}
|
||||
|
||||
php_install_ini() {
|
||||
local phpsapi="${1}"
|
||||
|
||||
# work out where we are installing the ini file
|
||||
php_set_ini_dir "${phpsapi}"
|
||||
|
||||
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
|
||||
cp "${PHP_INI_UPSTREAM}" "${phpinisrc}"
|
||||
|
||||
# default to /tmp for save_path, bug #282768
|
||||
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}"
|
||||
|
||||
# Set the extension dir
|
||||
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}"
|
||||
|
||||
# Set the include path to point to where we want to find PEAR packages
|
||||
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}"
|
||||
|
||||
if use_if_iuse opcache; then
|
||||
elog "Adding opcache to ${phpinisrc}"
|
||||
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> ${phpinisrc}
|
||||
fi
|
||||
|
||||
dodir "${PHP_INI_DIR#${EPREFIX}}"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${phpinisrc}" "${PHP_INI_FILE}"
|
||||
|
||||
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
|
||||
elog
|
||||
|
||||
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
|
||||
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
|
||||
|
||||
# SAPI-specific handling
|
||||
|
||||
if [[ "${sapi}" == "fpm" ]] ; then
|
||||
[[ -z ${PHP_FPM_CONF_VER} ]] && PHP_FPM_CONF_VER=0
|
||||
einfo "Installing FPM CGI config file php-fpm.conf"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${FILESDIR}/php-fpm-r${PHP_FPM_CONF_VER}.conf" php-fpm.conf
|
||||
|
||||
# Remove bogus /etc/php-fpm.conf.default (bug 359906)
|
||||
[[ -f "${ED}/etc/php-fpm.conf.default" ]] && rm "${ED}/etc/php-fpm.conf.default"
|
||||
fi
|
||||
|
||||
# Install PHP ini files into /usr/share/php
|
||||
|
||||
dodoc php.ini-development
|
||||
dodoc php.ini-production
|
||||
|
||||
}
|
||||
|
||||
php_set_ini_dir() {
|
||||
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
|
||||
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
|
||||
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path
|
||||
# ([empty session.save_path]/session_mm_[sapi][gid].sem)
|
||||
# there is no easy way to circumvent that, all php calls during
|
||||
# install use -n, so no php.ini file will be used.
|
||||
# As such, this is the easiest way to get around
|
||||
addpredict /session_mm_cli250.sem
|
||||
addpredict /session_mm_cli0.sem
|
||||
|
||||
# Change PHP branding
|
||||
# Get the alpha/beta/rc version
|
||||
sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \
|
||||
-i configure.in || die "Unable to change PHP branding"
|
||||
|
||||
# Patch PHP to show Gentoo as the server platform
|
||||
sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \
|
||||
-i configure.in || die "Failed to fix server platform name"
|
||||
|
||||
# Prevent PHP from activating the Apache config,
|
||||
# as we will do that ourselves
|
||||
sed -i \
|
||||
-e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
-e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4
|
||||
|
||||
# Patch PHP to support heimdal instead of mit-krb5
|
||||
if has_version "app-crypt/heimdal" ; then
|
||||
sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal libname"
|
||||
sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal crypt library reference"
|
||||
fi
|
||||
|
||||
#Add user patches #357637
|
||||
epatch_user
|
||||
|
||||
#force rebuilding aclocal.m4
|
||||
rm aclocal.m4
|
||||
eautoreconf
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# http://bugs.php.net/bug.php?id=48795, bug #343481
|
||||
sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
addpredict /var/lib/net-snmp/mib_indexes
|
||||
|
||||
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
|
||||
|
||||
# This is a global variable and should be in caps. It isn't because the
|
||||
# phpconfutils eclass relies on exactly this name...
|
||||
# for --with-libdir see bug #327025
|
||||
my_conf="
|
||||
--prefix="${PHP_DESTDIR}"
|
||||
--mandir="${PHP_DESTDIR}"/man
|
||||
--infodir="${PHP_DESTDIR}"/info
|
||||
--libdir="${PHP_DESTDIR}"/lib
|
||||
--with-libdir=$(get_libdir)
|
||||
--without-pear
|
||||
$(use_enable threads maintainer-zts)"
|
||||
|
||||
# extension USE flag shared
|
||||
my_conf+="
|
||||
$(use_enable bcmath bcmath )
|
||||
$(use_with bzip2 bz2 "${EPREFIX}"/usr)
|
||||
$(use_enable calendar calendar )
|
||||
$(use_enable ctype ctype )
|
||||
$(use_with curl curl "${EPREFIX}"/usr)
|
||||
$(use_with curlwrappers curlwrappers "${EPREFIX}"/usr)
|
||||
$(use_enable xml dom )
|
||||
$(use_with enchant enchant "${EPREFIX}"/usr)
|
||||
$(use_enable exif exif )
|
||||
$(use_enable fileinfo fileinfo )
|
||||
$(use_enable filter filter )
|
||||
$(use_enable ftp ftp )
|
||||
$(use_with nls gettext "${EPREFIX}"/usr)
|
||||
$(use_with gmp gmp "${EPREFIX}"/usr)
|
||||
$(use_enable hash hash )
|
||||
$(use_with mhash mhash "${EPREFIX}"/usr)
|
||||
$(use_with iconv iconv $(use elibc_glibc || echo "${EPREFIX}"/usr))
|
||||
$(use_enable intl intl )
|
||||
$(use_enable ipv6 ipv6 )
|
||||
$(use_enable json json )
|
||||
$(use_with kerberos kerberos "${EPREFIX}"/usr)
|
||||
$(use_enable xml libxml )
|
||||
$(use_with xml libxml-dir "${EPREFIX}"/usr)
|
||||
$(use_enable unicode mbstring )
|
||||
$(use_with crypt mcrypt "${EPREFIX}"/usr)
|
||||
$(use_with mssql mssql "${EPREFIX}"/usr)
|
||||
$(use_with unicode onig "${EPREFIX}"/usr)
|
||||
$(use_with ssl openssl "${EPREFIX}"/usr)
|
||||
$(use_with ssl openssl-dir "${EPREFIX}"/usr)
|
||||
$(use_enable pcntl pcntl )
|
||||
$(use_enable phar phar )
|
||||
$(use_enable pdo pdo )
|
||||
$(use_with postgres pgsql "${EPREFIX}"/usr)
|
||||
$(use_enable posix posix )
|
||||
$(use_with spell pspell "${EPREFIX}"/usr)
|
||||
$(use_with recode recode "${EPREFIX}"/usr)
|
||||
$(use_enable simplexml simplexml )
|
||||
$(use_enable sharedmem shmop )
|
||||
$(use_with snmp snmp "${EPREFIX}"/usr)
|
||||
$(use_enable soap soap )
|
||||
$(use_enable sockets sockets )
|
||||
$(use_with sqlite sqlite3 "${EPREFIX}"/usr)
|
||||
$(use_with sybase-ct sybase-ct "${EPREFIX}"/usr)
|
||||
$(use_enable sysvipc sysvmsg )
|
||||
$(use_enable sysvipc sysvsem )
|
||||
$(use_enable sysvipc sysvshm )
|
||||
$(use_with systemd fpm-systemd)
|
||||
$(use_with tidy tidy "${EPREFIX}"/usr)
|
||||
$(use_enable tokenizer tokenizer )
|
||||
$(use_enable wddx wddx )
|
||||
$(use_enable xml xml )
|
||||
$(use_enable xmlreader xmlreader )
|
||||
$(use_enable xmlwriter xmlwriter )
|
||||
$(use_with xmlrpc xmlrpc)
|
||||
$(use_with xslt xsl "${EPREFIX}"/usr)
|
||||
$(use_enable zip zip )
|
||||
$(use_with zlib zlib "${EPREFIX}"/usr)
|
||||
$(use_enable debug debug )"
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm ; then
|
||||
my_conf="${my_conf} --enable-dba${shared}"
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
my_conf+="
|
||||
$(use_with cdb cdb)
|
||||
$(use_with berkdb db4 ${EPREFIX}/usr)
|
||||
$(use_enable flatfile flatfile )
|
||||
$(use_with gdbm gdbm ${EPREFIX}/usr)
|
||||
$(use_enable inifile inifile )
|
||||
$(use_with qdbm qdbm ${EPREFIX}/usr)"
|
||||
|
||||
# Support for the GD graphics library
|
||||
my_conf+="
|
||||
$(use_with truetype freetype-dir ${EPREFIX}/usr)
|
||||
$(use_with truetype t1lib ${EPREFIX}/usr)
|
||||
$(use_enable cjk gd-jis-conv )
|
||||
$(use_with gd jpeg-dir ${EPREFIX}/usr)
|
||||
$(use_with gd png-dir ${EPREFIX}/usr)
|
||||
$(use_with xpm xpm-dir ${EPREFIX}/usr)"
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
my_conf+="
|
||||
$(use_with gd gd)"
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
my_conf+="
|
||||
$(use_with imap imap ${EPREFIX}/usr)
|
||||
$(use_with ssl imap-ssl ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# Interbase/firebird support
|
||||
|
||||
if use firebird ; then
|
||||
my_conf+="
|
||||
$(use_with firebird interbase ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
my_conf+="
|
||||
$(use_with ldap ldap ${EPREFIX}/usr)
|
||||
$(use_with ldap-sasl ldap-sasl ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# MySQL support
|
||||
if use mysql ; then
|
||||
if use mysqlnd ; then
|
||||
my_conf+="
|
||||
$(use_with mysql mysql mysqlnd)"
|
||||
else
|
||||
my_conf+="
|
||||
$(use_with mysql mysql ${EPREFIX}/usr)"
|
||||
fi
|
||||
my_conf+="
|
||||
$(use_with mysql mysql-sock ${EPREFIX}/var/run/mysqld/mysqld.sock)"
|
||||
fi
|
||||
|
||||
# MySQLi support
|
||||
if use mysqlnd ; then
|
||||
my_conf+="
|
||||
$(use_with mysqli mysqli mysqlnd)"
|
||||
else
|
||||
my_conf+="
|
||||
$(use_with mysqli mysqli ${EPREFIX}/usr/bin/mysql_config)"
|
||||
fi
|
||||
|
||||
# ODBC support
|
||||
if use odbc ; then
|
||||
my_conf+="
|
||||
$(use_with odbc unixODBC ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
if use iodbc ; then
|
||||
my_conf+="
|
||||
$(use_with iodbc iodbc ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# Oracle support
|
||||
if use oci8-instant-client ; then
|
||||
my_conf+="
|
||||
$(use_with oci8-instant-client oci8)"
|
||||
fi
|
||||
|
||||
# PDO support
|
||||
if use pdo ; then
|
||||
my_conf+="
|
||||
$(use_with mssql pdo-dblib )"
|
||||
if use mysqlnd ; then
|
||||
my_conf+="
|
||||
$(use_with mysqlnd pdo-mysql mysqlnd)"
|
||||
else
|
||||
my_conf+="
|
||||
$(use_with mysql pdo-mysql ${EPREFIX}/usr)"
|
||||
fi
|
||||
my_conf+="
|
||||
$(use_with postgres pdo-pgsql )
|
||||
$(use_with sqlite pdo-sqlite ${EPREFIX}/usr)
|
||||
$(use_with odbc pdo-odbc unixODBC,${EPREFIX}/usr)"
|
||||
if use oci8-instant-client ; then
|
||||
my_conf+="
|
||||
$(use_with oci8-instant-client pdo-oci)"
|
||||
fi
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
my_conf+="
|
||||
$(use_with readline readline ${EPREFIX}/usr)
|
||||
$(use_with libedit libedit ${EPREFIX}/usr)"
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
my_conf+="
|
||||
$(use_with sharedmem mm ${EPREFIX}/usr)"
|
||||
else
|
||||
my_conf+="
|
||||
$(use_enable session session )"
|
||||
fi
|
||||
|
||||
# Use pic for shared modules such as apache2's mod_php
|
||||
my_conf="${my_conf} --with-pic"
|
||||
|
||||
# we use the system copy of pcre
|
||||
# --with-pcre-regex affects ext/pcre
|
||||
# --with-pcre-dir affects ext/filter and ext/zip
|
||||
my_conf="${my_conf} --with-pcre-regex=${EPREFIX}/usr --with-pcre-dir=${EPREFIX}/usr"
|
||||
|
||||
# Catch CFLAGS problems
|
||||
# Fixes bug #14067.
|
||||
# Changed order to run it in reverse for bug #32022 and #12021.
|
||||
replace-cpu-flags "k6*" "i586"
|
||||
|
||||
# Support user-passed configuration parameters
|
||||
my_conf="${my_conf} ${EXTRA_ECONF:-}"
|
||||
|
||||
# Support the Apache2 extras, they must be set globally for all
|
||||
# SAPIs to work correctly, especially for external PHP extensions
|
||||
|
||||
mkdir -p "${WORKDIR}/sapis-build"
|
||||
for one_sapi in $SAPIS ; do
|
||||
use "${one_sapi}" || continue
|
||||
php_set_ini_dir "${one_sapi}"
|
||||
|
||||
cp -r "${S}" "${WORKDIR}/sapis-build/${one_sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${one_sapi}"
|
||||
|
||||
sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR}
|
||||
--with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}"
|
||||
|
||||
for sapi in $SAPIS ; do
|
||||
case "$sapi" in
|
||||
cli|cgi|embed|fpm)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf="${sapi_conf} --enable-${sapi}"
|
||||
else
|
||||
sapi_conf="${sapi_conf} --disable-${sapi}"
|
||||
fi
|
||||
;;
|
||||
|
||||
apache2)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf="${sapi_conf} --with-apxs2=${EPREFIX}/usr/sbin/apxs"
|
||||
else
|
||||
sapi_conf="${sapi_conf} --without-apxs2"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
econf ${sapi_conf}
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# snmp seems to run during src_compile, too (bug #324739)
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
addpredict /var/lib/net-snmp/mib_indexes
|
||||
|
||||
for sapi in ${SAPIS} ; do
|
||||
if use "${sapi}"; then
|
||||
cd "${WORKDIR}/sapis-build/$sapi" || "Failed to change dir to ${WORKDIR}/sapis-build/$1"
|
||||
emake || die "emake failed"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# see bug #324739 for what happens when we don't have that
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
|
||||
# grab the first SAPI that got built and install common files from there
|
||||
local first_sapi=""
|
||||
for sapi in $SAPIS ; do
|
||||
if use $sapi ; then
|
||||
first_sapi=$sapi
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Makefile forgets to create this before trying to write to it...
|
||||
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
|
||||
|
||||
# Install php environment (without any sapis)
|
||||
cd "${WORKDIR}/sapis-build/$first_sapi"
|
||||
emake INSTALL_ROOT="${D}" \
|
||||
install-build install-headers install-programs \
|
||||
|| die "emake install failed"
|
||||
|
||||
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
|
||||
|
||||
# Create the directory where we'll put version-specific php scripts
|
||||
keepdir /usr/share/php${PHP_MV}
|
||||
|
||||
local sapi="", file=""
|
||||
local sapi_list=""
|
||||
|
||||
for sapi in ${SAPIS}; do
|
||||
if use "${sapi}" ; then
|
||||
einfo "Installing SAPI: ${sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${sapi}"
|
||||
|
||||
if [[ "${sapi}" == "apache2" ]] ; then
|
||||
# We're specifically not using emake install-sapi as libtool
|
||||
# may cause unnecessary relink failures (see bug #351266)
|
||||
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
|
||||
newins ".libs/libphp5$(get_libname)" "libphp${PHP_MV}$(get_libname)"
|
||||
keepdir "/usr/$(get_libdir)/apache2/modules"
|
||||
else
|
||||
# needed each time, php_install_ini would reset it
|
||||
local dest="${PHP_DESTDIR#${EPREFIX}}"
|
||||
into "${dest}"
|
||||
case "$sapi" in
|
||||
cli)
|
||||
source="sapi/cli/php"
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(get_libname)"
|
||||
;;
|
||||
*)
|
||||
die "unhandled sapi in src_install"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${source}" == *"$(get_libname)" ]]; then
|
||||
dolib.so "${source}" || die "Unable to install ${sapi} sapi"
|
||||
else
|
||||
dobin "${source}" || die "Unable to install ${sapi} sapi"
|
||||
local name="$(basename ${source})"
|
||||
dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
|
||||
fi
|
||||
fi
|
||||
|
||||
php_install_ini "${sapi}"
|
||||
|
||||
# construct correct SAPI string for php-config
|
||||
# thanks to ferringb for the bash voodoo
|
||||
if [[ "${sapi}" == "apache2" ]]; then
|
||||
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
|
||||
else
|
||||
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Installing opcache module
|
||||
if use_if_iuse opcache ; then
|
||||
dolib.so "modules/opcache$(get_libname)" || die "Unable to install opcache module"
|
||||
fi
|
||||
|
||||
# Install env.d files
|
||||
newenvd "${FILESDIR}/20php5-envd" \
|
||||
"20php${SLOT}"
|
||||
sed -e "s|/lib/|/$(get_libdir)/|g" -i \
|
||||
"${ED}/etc/env.d/20php${SLOT}"
|
||||
sed -e "s|php5|php${SLOT}|g" -i \
|
||||
"${ED}/etc/env.d/20php${SLOT}"
|
||||
|
||||
# set php-config variable correctly (bug #278439)
|
||||
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
|
||||
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config"
|
||||
|
||||
if use fpm ; then
|
||||
if use systemd; then
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at.service" "php-fpm@${SLOT}.service"
|
||||
else
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" "php-fpm@${SLOT}.service"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
|
||||
if [[ ! -x "${PHP_BIN}" ]] ; then
|
||||
ewarn "Test phase requires USE=cli, skipping"
|
||||
return
|
||||
else
|
||||
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then
|
||||
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi"
|
||||
fi
|
||||
|
||||
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d "session.save_path=${T}" \
|
||||
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d "session.save_path=${T}"
|
||||
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
mv "${name}.out" "${name}.out.orig" 2>/dev/null
|
||||
done
|
||||
|
||||
local failed="$(find -name '*.out')"
|
||||
if [[ ${failed} != "" ]] ; then
|
||||
ewarn "The following test cases failed unexpectedly:"
|
||||
for name in ${failed}; do
|
||||
ewarn " ${name/.out/}"
|
||||
done
|
||||
else
|
||||
einfo "No unexpected test failures, all fine"
|
||||
fi
|
||||
|
||||
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
|
||||
local passed=""
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
[[ -f "${name}.diff" ]] && continue
|
||||
passed="${passed} ${name}"
|
||||
done
|
||||
if [[ ${passed} != "" ]] ; then
|
||||
einfo "The following test cases passed unexpectedly:"
|
||||
for name in ${passed}; do
|
||||
ewarn " ${passed}"
|
||||
done
|
||||
else
|
||||
einfo "None of the known-to-fail tests passed, all fine"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Output some general info to the user
|
||||
if use apache2 ; then
|
||||
APACHE2_MOD_DEFINE="PHP5"
|
||||
APACHE2_MOD_CONF="70_mod_php5"
|
||||
apache-module_pkg_postinst
|
||||
fi
|
||||
|
||||
# Create the symlinks for php
|
||||
for m in ${SAPIS}; do
|
||||
[[ ${m} == 'embed' ]] && continue;
|
||||
if use $m ; then
|
||||
local ci=$(eselect php show $m)
|
||||
if [[ -z $ci ]]; then
|
||||
eselect php set $m php${SLOT}
|
||||
einfo "Switched ${m} to use php:${SLOT}"
|
||||
einfo
|
||||
elif [[ $ci != "php${SLOT}" ]] ; then
|
||||
elog "To switch $m to use php:${SLOT}, run"
|
||||
elog " eselect php set $m php${SLOT}"
|
||||
elog
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
elog "Make sure that PHP_TARGETS in ${EPREFIX}/etc/make.conf includes php${SLOT/./-} in order"
|
||||
elog "to compile extensions for the ${SLOT} ABI"
|
||||
elog
|
||||
if ! use readline && use cli ; then
|
||||
ewarn "Note that in order to use php interactivly, you need to enable"
|
||||
ewarn "the readline USE flag or php -a will hang"
|
||||
fi
|
||||
elog
|
||||
elog "This ebuild installed a version of php.ini based on php.ini-${PHP_INI_VERSION} version."
|
||||
elog "You can chose which version of php.ini to install by default by setting PHP_INI_VERSION to either"
|
||||
elog "'production' or 'development' in ${EPREFIX}/etc/make.conf"
|
||||
elog "Both versions of php.ini can be found in ${EPREFIX}/usr/share/doc/${PF}"
|
||||
|
||||
elog
|
||||
elog "For more details on how minor version slotting works (PHP_TARGETS) please read the upgrade guide:"
|
||||
elog "http://www.gentoo.org/proj/en/php/php-upgrading.xml"
|
||||
elog
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
eselect php cleanup
|
||||
}
|
@ -0,0 +1,784 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/php-5.5.17.ebuild,v 1.1 2014/09/19 12:14:27 olemarkus Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use libtool systemd
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
|
||||
function php_get_uri ()
|
||||
{
|
||||
case "${1}" in
|
||||
"php-pre")
|
||||
echo "http://downloads.php.net/dsp/${2}"
|
||||
;;
|
||||
"php")
|
||||
echo "http://www.php.net/distributions/${2}"
|
||||
;;
|
||||
"olemarkus")
|
||||
echo "http://dev.gentoo.org/~olemarkus/php/${2}"
|
||||
;;
|
||||
"gentoo")
|
||||
echo "mirror://gentoo/${2}"
|
||||
;;
|
||||
*)
|
||||
die "unhandled case in php_get_uri"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
PHP_MV="$(get_major_version)"
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
# alias, so we can handle different types of releases (finals, rcs, alphas,
|
||||
# betas, ...) w/o changing the whole ebuild
|
||||
PHP_PV="${PV/_rc/RC}"
|
||||
PHP_PV="${PHP_PV/_alpha/alpha}"
|
||||
PHP_PV="${PHP_PV/_beta/beta}"
|
||||
PHP_RELEASE="php"
|
||||
[[ ${PV} == ${PV/_alpha/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_beta/} ]] || PHP_RELEASE="php-pre"
|
||||
[[ ${PV} == ${PV/_rc/} ]] || PHP_RELEASE="php-pre"
|
||||
PHP_P="${PN}-${PHP_PV}"
|
||||
|
||||
PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
|
||||
|
||||
PHP_FPM_CONF_VER="1"
|
||||
|
||||
SRC_URI="${PHP_SRC_URI}"
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2 and embed SAPIs"
|
||||
HOMEPAGE="http://php.net/"
|
||||
LICENSE="PHP-3"
|
||||
|
||||
S="${WORKDIR}/${PHP_P}"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
threads"
|
||||
|
||||
IUSE="${IUSE} bcmath berkdb bzip2 calendar cdb cjk
|
||||
crypt +ctype curl debug
|
||||
enchant exif frontbase +fileinfo +filter firebird
|
||||
flatfile ftp gd gdbm gmp +hash +iconv imap inifile
|
||||
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit mhash
|
||||
mssql mysql libmysqlclient mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline recode selinux +session sharedmem
|
||||
+simplexml snmp soap sockets spell sqlite ssl
|
||||
sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
|
||||
|
||||
DEPEND="
|
||||
>=app-admin/eselect-php-0.7.1-r3[apache2?,fpm?]
|
||||
>=dev-libs/libpcre-8.32[unicode]
|
||||
apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=]
|
||||
<www-servers/apache-2.4[threads=] ) )
|
||||
berkdb? ( =sys-libs/db-4* )
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
cjk? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib
|
||||
) )
|
||||
crypt? ( >=dev-libs/libmcrypt-2.4 )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant )
|
||||
exif? ( !gd? (
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0=
|
||||
sys-libs/zlib
|
||||
) )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0 )
|
||||
gmp? ( >=dev-libs/gmp-4.1.2 )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( virtual/imap-c-client[ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11 )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
|
||||
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
libmysqlclient? (
|
||||
mysql? ( virtual/mysql )
|
||||
mysqli? ( >=virtual/mysql-4.1 )
|
||||
)
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
|
||||
odbc? ( >=dev-db/unixODBC-1.8.13 )
|
||||
postgres? ( dev-db/postgresql-base )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline )
|
||||
recode? ( app-text/recode )
|
||||
sharedmem? ( dev-libs/mm )
|
||||
simplexml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
soap? ( >=dev-libs/libxml2-2.6.8 )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? ( >=dev-libs/openssl-0.9.7 )
|
||||
sybase-ct? ( dev-db/freetds )
|
||||
tidy? ( app-text/htmltidy )
|
||||
truetype? (
|
||||
=media-libs/freetype-2*
|
||||
>=media-libs/t1lib-5.0.0
|
||||
!gd? (
|
||||
virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
|
||||
)
|
||||
unicode? ( dev-libs/oniguruma )
|
||||
vpx? ( media-libs/libvpx )
|
||||
wddx? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xml? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
|
||||
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
|
||||
xpm? (
|
||||
x11-libs/libXpm
|
||||
virtual/jpeg:0
|
||||
media-libs/libpng:0= sys-libs/zlib
|
||||
)
|
||||
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
|
||||
zip? ( sys-libs/zlib )
|
||||
zlib? ( sys-libs/zlib )
|
||||
virtual/mta
|
||||
"
|
||||
|
||||
php="=${CATEGORY}/${PF}"
|
||||
|
||||
REQUIRED_USE="
|
||||
truetype? ( gd )
|
||||
vpx? ( gd )
|
||||
cjk? ( gd )
|
||||
exif? ( gd )
|
||||
|
||||
xpm? ( gd )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
wddx? ( xml )
|
||||
xmlrpc? ( || ( xml iconv ) )
|
||||
xmlreader? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
mhash? ( hash )
|
||||
phar? ( hash )
|
||||
libmysqlclient? ( || (
|
||||
mysql
|
||||
mysqli
|
||||
pdo
|
||||
) )
|
||||
|
||||
qdbm? ( !gdbm )
|
||||
readline? ( !libedit )
|
||||
recode? ( !imap !mysql !mysqli )
|
||||
sharedmem? ( !threads )
|
||||
|
||||
!cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
sys-devel/flex
|
||||
>=sys-devel/m4-1.4.3
|
||||
>=sys-devel/libtool-1.5.18"
|
||||
|
||||
# Allow users to install production version if they want to
|
||||
|
||||
case "${PHP_INI_VERSION}" in
|
||||
production|development)
|
||||
;;
|
||||
*)
|
||||
PHP_INI_VERSION="development"
|
||||
;;
|
||||
esac
|
||||
|
||||
PHP_INI_UPSTREAM="php.ini-${PHP_INI_VERSION}"
|
||||
PHP_INI_FILE="php.ini"
|
||||
|
||||
want_apache
|
||||
|
||||
pkg_setup() {
|
||||
depend.apache_pkg_setup
|
||||
}
|
||||
|
||||
php_install_ini() {
|
||||
local phpsapi="${1}"
|
||||
|
||||
# work out where we are installing the ini file
|
||||
php_set_ini_dir "${phpsapi}"
|
||||
|
||||
local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}"
|
||||
cp "${PHP_INI_UPSTREAM}" "${phpinisrc}"
|
||||
|
||||
# default to /tmp for save_path, bug #282768
|
||||
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}"
|
||||
|
||||
# Set the extension dir
|
||||
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}"
|
||||
|
||||
# Set the include path to point to where we want to find PEAR packages
|
||||
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}"
|
||||
|
||||
dodir "${PHP_INI_DIR#${EPREFIX}}"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${phpinisrc}" "${PHP_INI_FILE}"
|
||||
|
||||
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
|
||||
elog
|
||||
|
||||
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
|
||||
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
|
||||
|
||||
if use_if_iuse opcache; then
|
||||
elog "Adding opcache to $PHP_EXT_INI_DIR"
|
||||
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
|
||||
dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
|
||||
fi
|
||||
|
||||
# SAPI-specific handling
|
||||
|
||||
if [[ "${sapi}" == "fpm" ]] ; then
|
||||
[[ -z ${PHP_FPM_CONF_VER} ]] && PHP_FPM_CONF_VER=0
|
||||
einfo "Installing FPM CGI config file php-fpm.conf"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${FILESDIR}/php-fpm-r${PHP_FPM_CONF_VER}.conf" php-fpm.conf
|
||||
|
||||
# Remove bogus /etc/php-fpm.conf.default (bug 359906)
|
||||
[[ -f "${ED}/etc/php-fpm.conf.default" ]] && rm "${ED}/etc/php-fpm.conf.default"
|
||||
fi
|
||||
|
||||
# Install PHP ini files into /usr/share/php
|
||||
|
||||
dodoc php.ini-development
|
||||
dodoc php.ini-production
|
||||
|
||||
}
|
||||
|
||||
php_set_ini_dir() {
|
||||
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
|
||||
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
|
||||
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path
|
||||
# ([empty session.save_path]/session_mm_[sapi][gid].sem)
|
||||
# there is no easy way to circumvent that, all php calls during
|
||||
# install use -n, so no php.ini file will be used.
|
||||
# As such, this is the easiest way to get around
|
||||
addpredict /session_mm_cli250.sem
|
||||
addpredict /session_mm_cli0.sem
|
||||
|
||||
# Change PHP branding
|
||||
# Get the alpha/beta/rc version
|
||||
sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \
|
||||
-i configure.in || die "Unable to change PHP branding"
|
||||
|
||||
# Patch PHP to show Gentoo as the server platform
|
||||
sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \
|
||||
-i configure.in || die "Failed to fix server platform name"
|
||||
|
||||
# Prevent PHP from activating the Apache config,
|
||||
# as we will do that ourselves
|
||||
sed -i \
|
||||
-e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
-e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \
|
||||
configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4
|
||||
|
||||
# Patch PHP to support heimdal instead of mit-krb5
|
||||
if has_version "app-crypt/heimdal" ; then
|
||||
sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal libname"
|
||||
sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \
|
||||
|| die "Failed to fix heimdal crypt library reference"
|
||||
fi
|
||||
|
||||
#Add user patches #357637
|
||||
epatch_user
|
||||
|
||||
#force rebuilding aclocal.m4
|
||||
rm aclocal.m4
|
||||
eautoreconf
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# http://bugs.php.net/bug.php?id=48795, bug #343481
|
||||
sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
addpredict /var/lib/net-snmp/mib_indexes
|
||||
|
||||
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
|
||||
|
||||
# This is a global variable and should be in caps. It isn't because the
|
||||
# phpconfutils eclass relies on exactly this name...
|
||||
# for --with-libdir see bug #327025
|
||||
my_conf="
|
||||
--prefix="${PHP_DESTDIR}"
|
||||
--mandir="${PHP_DESTDIR}"/man
|
||||
--infodir="${PHP_DESTDIR}"/info
|
||||
--libdir="${PHP_DESTDIR}"/lib
|
||||
--with-libdir=$(get_libdir)
|
||||
--without-pear
|
||||
$(use_enable threads maintainer-zts)"
|
||||
|
||||
# extension USE flag shared
|
||||
my_conf+="
|
||||
$(use_enable bcmath bcmath )
|
||||
$(use_with bzip2 bz2 "${EPREFIX}"/usr)
|
||||
$(use_enable calendar calendar )
|
||||
$(use_enable ctype ctype )
|
||||
$(use_with curl curl "${EPREFIX}"/usr)
|
||||
$(use_enable xml dom )
|
||||
$(use_with enchant enchant "${EPREFIX}"/usr)
|
||||
$(use_enable exif exif )
|
||||
$(use_enable fileinfo fileinfo )
|
||||
$(use_enable filter filter )
|
||||
$(use_enable ftp ftp )
|
||||
$(use_with nls gettext "${EPREFIX}"/usr)
|
||||
$(use_with gmp gmp "${EPREFIX}"/usr)
|
||||
$(use_enable hash hash )
|
||||
$(use_with mhash mhash "${EPREFIX}"/usr)
|
||||
$(use_with iconv iconv $(use elibc_glibc || echo "${EPREFIX}"/usr))
|
||||
$(use_enable intl intl )
|
||||
$(use_enable ipv6 ipv6 )
|
||||
$(use_enable json json )
|
||||
$(use_with kerberos kerberos "${EPREFIX}"/usr)
|
||||
$(use_enable xml libxml )
|
||||
$(use_with xml libxml-dir "${EPREFIX}"/usr)
|
||||
$(use_enable unicode mbstring )
|
||||
$(use_with crypt mcrypt "${EPREFIX}"/usr)
|
||||
$(use_with mssql mssql "${EPREFIX}"/usr)
|
||||
$(use_with unicode onig "${EPREFIX}"/usr)
|
||||
$(use_with ssl openssl "${EPREFIX}"/usr)
|
||||
$(use_with ssl openssl-dir "${EPREFIX}"/usr)
|
||||
$(use_enable pcntl pcntl )
|
||||
$(use_enable phar phar )
|
||||
$(use_enable pdo pdo )
|
||||
$(use_enable opcache opcache )
|
||||
$(use_with postgres pgsql "${EPREFIX}"/usr)
|
||||
$(use_enable posix posix )
|
||||
$(use_with spell pspell "${EPREFIX}"/usr)
|
||||
$(use_with recode recode "${EPREFIX}"/usr)
|
||||
$(use_enable simplexml simplexml )
|
||||
$(use_enable sharedmem shmop )
|
||||
$(use_with snmp snmp "${EPREFIX}"/usr)
|
||||
$(use_enable soap soap )
|
||||
$(use_enable sockets sockets )
|
||||
$(use_with sqlite sqlite3 "${EPREFIX}"/usr)
|
||||
$(use_with sybase-ct sybase-ct "${EPREFIX}"/usr)
|
||||
$(use_enable sysvipc sysvmsg )
|
||||
$(use_enable sysvipc sysvsem )
|
||||
$(use_enable sysvipc sysvshm )
|
||||
$(use_with systemd fpm-systemd)
|
||||
$(use_with tidy tidy "${EPREFIX}"/usr)
|
||||
$(use_enable tokenizer tokenizer )
|
||||
$(use_enable wddx wddx )
|
||||
$(use_enable xml xml )
|
||||
$(use_enable xmlreader xmlreader )
|
||||
$(use_enable xmlwriter xmlwriter )
|
||||
$(use_with xmlrpc xmlrpc)
|
||||
$(use_with xslt xsl "${EPREFIX}"/usr)
|
||||
$(use_enable zip zip )
|
||||
$(use_with zlib zlib "${EPREFIX}"/usr)
|
||||
$(use_enable debug debug )"
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm ; then
|
||||
my_conf="${my_conf} --enable-dba${shared}"
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
my_conf+="
|
||||
$(use_with cdb cdb)
|
||||
$(use_with berkdb db4 ${EPREFIX}/usr)
|
||||
$(use_enable flatfile flatfile )
|
||||
$(use_with gdbm gdbm ${EPREFIX}/usr)
|
||||
$(use_enable inifile inifile )
|
||||
$(use_with qdbm qdbm ${EPREFIX}/usr)"
|
||||
|
||||
# Support for the GD graphics library
|
||||
my_conf+="
|
||||
$(use_with truetype freetype-dir ${EPREFIX}/usr)
|
||||
$(use_with truetype t1lib ${EPREFIX}/usr)
|
||||
$(use_enable cjk gd-jis-conv )
|
||||
$(use_with gd jpeg-dir ${EPREFIX}/usr)
|
||||
$(use_with gd png-dir ${EPREFIX}/usr)
|
||||
$(use_with xpm xpm-dir ${EPREFIX}/usr)
|
||||
$(use_with vpx vpx-dir ${EPREFIX}/usr)"
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
my_conf+="
|
||||
$(use_with gd gd)"
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
my_conf+="
|
||||
$(use_with imap imap ${EPREFIX}/usr)
|
||||
$(use_with ssl imap-ssl ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# Interbase/firebird support
|
||||
|
||||
if use firebird ; then
|
||||
my_conf+="
|
||||
$(use_with firebird interbase ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
my_conf+="
|
||||
$(use_with ldap ldap ${EPREFIX}/usr)
|
||||
$(use_with ldap-sasl ldap-sasl ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# MySQL support
|
||||
local mysqllib="mysqlnd"
|
||||
local mysqlilib="mysqlnd"
|
||||
use libmysqlclient && mysqllib="${EPREFIX}/usr"
|
||||
use libmysqlclient && mysqlilib="${EPREFIX}/usr/bin/mysql_config"
|
||||
|
||||
my_conf+=" $(use_with mysql mysql $mysqllib)"
|
||||
my_conf+=" $(use_with mysqli mysqli $mysqlilib)"
|
||||
|
||||
local mysqlsock=" $(use_with mysql mysql-sock ${EPREFIX}/var/run/mysqld/mysqld.sock)"
|
||||
if use mysql ; then
|
||||
my_conf+="${mysqlsock}"
|
||||
elif use mysqli ; then
|
||||
my_conf+="${mysqlsock}"
|
||||
fi
|
||||
|
||||
# ODBC support
|
||||
if use odbc ; then
|
||||
my_conf+="
|
||||
$(use_with odbc unixODBC ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
if use iodbc ; then
|
||||
my_conf+="
|
||||
$(use_with iodbc iodbc ${EPREFIX}/usr)"
|
||||
fi
|
||||
|
||||
# Oracle support
|
||||
if use oci8-instant-client ; then
|
||||
my_conf+="
|
||||
$(use_with oci8-instant-client oci8)"
|
||||
fi
|
||||
|
||||
# PDO support
|
||||
if use pdo ; then
|
||||
my_conf+="
|
||||
$(use_with mssql pdo-dblib )
|
||||
$(use_with mysql pdo-mysql ${mysqllib})
|
||||
$(use_with postgres pdo-pgsql )
|
||||
$(use_with sqlite pdo-sqlite ${EPREFIX}/usr)
|
||||
$(use_with odbc pdo-odbc unixODBC,${EPREFIX}/usr)"
|
||||
if use oci8-instant-client ; then
|
||||
my_conf+="
|
||||
$(use_with oci8-instant-client pdo-oci)"
|
||||
fi
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
my_conf+="
|
||||
$(use_with readline readline ${EPREFIX}/usr)
|
||||
$(use_with libedit libedit ${EPREFIX}/usr)"
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
my_conf+="
|
||||
$(use_with sharedmem mm ${EPREFIX}/usr)"
|
||||
else
|
||||
my_conf+="
|
||||
$(use_enable session session )"
|
||||
fi
|
||||
|
||||
# Use pic for shared modules such as apache2's mod_php
|
||||
my_conf="${my_conf} --with-pic"
|
||||
|
||||
# we use the system copy of pcre
|
||||
# --with-pcre-regex affects ext/pcre
|
||||
# --with-pcre-dir affects ext/filter and ext/zip
|
||||
my_conf="${my_conf} --with-pcre-regex=${EPREFIX}/usr --with-pcre-dir=${EPREFIX}/usr"
|
||||
|
||||
# Catch CFLAGS problems
|
||||
# Fixes bug #14067.
|
||||
# Changed order to run it in reverse for bug #32022 and #12021.
|
||||
replace-cpu-flags "k6*" "i586"
|
||||
|
||||
# Support user-passed configuration parameters
|
||||
my_conf="${my_conf} ${EXTRA_ECONF:-}"
|
||||
|
||||
# Support the Apache2 extras, they must be set globally for all
|
||||
# SAPIs to work correctly, especially for external PHP extensions
|
||||
|
||||
mkdir -p "${WORKDIR}/sapis-build"
|
||||
for one_sapi in $SAPIS ; do
|
||||
use "${one_sapi}" || continue
|
||||
php_set_ini_dir "${one_sapi}"
|
||||
|
||||
cp -r "${S}" "${WORKDIR}/sapis-build/${one_sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${one_sapi}"
|
||||
|
||||
sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR}
|
||||
--with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}"
|
||||
|
||||
for sapi in $SAPIS ; do
|
||||
case "$sapi" in
|
||||
cli|cgi|embed|fpm)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf="${sapi_conf} --enable-${sapi}"
|
||||
else
|
||||
sapi_conf="${sapi_conf} --disable-${sapi}"
|
||||
fi
|
||||
;;
|
||||
|
||||
apache2)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf="${sapi_conf} --with-apxs2=${EPREFIX}/usr/sbin/apxs"
|
||||
else
|
||||
sapi_conf="${sapi_conf} --without-apxs2"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
econf ${sapi_conf}
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# snmp seems to run during src_compile, too (bug #324739)
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
addpredict /var/lib/net-snmp/mib_indexes
|
||||
|
||||
for sapi in ${SAPIS} ; do
|
||||
if use "${sapi}"; then
|
||||
cd "${WORKDIR}/sapis-build/$sapi" || "Failed to change dir to ${WORKDIR}/sapis-build/$1"
|
||||
emake || die "emake failed"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# see bug #324739 for what happens when we don't have that
|
||||
addpredict /usr/share/snmp/mibs/.index
|
||||
|
||||
# grab the first SAPI that got built and install common files from there
|
||||
local first_sapi=""
|
||||
for sapi in $SAPIS ; do
|
||||
if use $sapi ; then
|
||||
first_sapi=$sapi
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Makefile forgets to create this before trying to write to it...
|
||||
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
|
||||
|
||||
# Install php environment (without any sapis)
|
||||
cd "${WORKDIR}/sapis-build/$first_sapi"
|
||||
emake INSTALL_ROOT="${D}" \
|
||||
install-build install-headers install-programs \
|
||||
|| die "emake install failed"
|
||||
|
||||
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
|
||||
|
||||
# Create the directory where we'll put version-specific php scripts
|
||||
keepdir /usr/share/php${PHP_MV}
|
||||
|
||||
local sapi="", file=""
|
||||
local sapi_list=""
|
||||
|
||||
for sapi in ${SAPIS}; do
|
||||
if use "${sapi}" ; then
|
||||
einfo "Installing SAPI: ${sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${sapi}"
|
||||
|
||||
if [[ "${sapi}" == "apache2" ]] ; then
|
||||
# We're specifically not using emake install-sapi as libtool
|
||||
# may cause unnecessary relink failures (see bug #351266)
|
||||
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
|
||||
newins ".libs/libphp5$(get_libname)" "libphp${PHP_MV}$(get_libname)"
|
||||
keepdir "/usr/$(get_libdir)/apache2/modules"
|
||||
else
|
||||
# needed each time, php_install_ini would reset it
|
||||
local dest="${PHP_DESTDIR#${EPREFIX}}"
|
||||
into "${dest}"
|
||||
case "$sapi" in
|
||||
cli)
|
||||
source="sapi/cli/php"
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(get_libname)"
|
||||
;;
|
||||
*)
|
||||
die "unhandled sapi in src_install"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${source}" == *"$(get_libname)" ]]; then
|
||||
dolib.so "${source}" || die "Unable to install ${sapi} sapi"
|
||||
else
|
||||
dobin "${source}" || die "Unable to install ${sapi} sapi"
|
||||
local name="$(basename ${source})"
|
||||
dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
|
||||
fi
|
||||
fi
|
||||
|
||||
php_install_ini "${sapi}"
|
||||
|
||||
# construct correct SAPI string for php-config
|
||||
# thanks to ferringb for the bash voodoo
|
||||
if [[ "${sapi}" == "apache2" ]]; then
|
||||
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
|
||||
else
|
||||
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Installing opcache module
|
||||
if use_if_iuse opcache ; then
|
||||
dolib.so "modules/opcache$(get_libname)" || die "Unable to install opcache module"
|
||||
fi
|
||||
|
||||
# Install env.d files
|
||||
newenvd "${FILESDIR}/20php5-envd" \
|
||||
"20php${SLOT}"
|
||||
sed -e "s|/lib/|/$(get_libdir)/|g" -i \
|
||||
"${ED}/etc/env.d/20php${SLOT}"
|
||||
sed -e "s|php5|php${SLOT}|g" -i \
|
||||
"${ED}/etc/env.d/20php${SLOT}"
|
||||
|
||||
# set php-config variable correctly (bug #278439)
|
||||
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
|
||||
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config"
|
||||
|
||||
if use fpm ; then
|
||||
if use systemd; then
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at.service" "php-fpm@${SLOT}.service"
|
||||
else
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" "php-fpm@${SLOT}.service"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
|
||||
if [[ ! -x "${PHP_BIN}" ]] ; then
|
||||
ewarn "Test phase requires USE=cli, skipping"
|
||||
return
|
||||
else
|
||||
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then
|
||||
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi"
|
||||
fi
|
||||
|
||||
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d "session.save_path=${T}" \
|
||||
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d "session.save_path=${T}"
|
||||
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
mv "${name}.out" "${name}.out.orig" 2>/dev/null
|
||||
done
|
||||
|
||||
local failed="$(find -name '*.out')"
|
||||
if [[ ${failed} != "" ]] ; then
|
||||
ewarn "The following test cases failed unexpectedly:"
|
||||
for name in ${failed}; do
|
||||
ewarn " ${name/.out/}"
|
||||
done
|
||||
else
|
||||
einfo "No unexpected test failures, all fine"
|
||||
fi
|
||||
|
||||
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
|
||||
local passed=""
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
[[ -f "${name}.diff" ]] && continue
|
||||
passed="${passed} ${name}"
|
||||
done
|
||||
if [[ ${passed} != "" ]] ; then
|
||||
einfo "The following test cases passed unexpectedly:"
|
||||
for name in ${passed}; do
|
||||
ewarn " ${passed}"
|
||||
done
|
||||
else
|
||||
einfo "None of the known-to-fail tests passed, all fine"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Output some general info to the user
|
||||
if use apache2 ; then
|
||||
APACHE2_MOD_DEFINE="PHP5"
|
||||
APACHE2_MOD_CONF="70_mod_php5"
|
||||
apache-module_pkg_postinst
|
||||
fi
|
||||
|
||||
# Create the symlinks for php
|
||||
for m in ${SAPIS}; do
|
||||
[[ ${m} == 'embed' ]] && continue;
|
||||
if use $m ; then
|
||||
local ci=$(eselect php show $m)
|
||||
if [[ -z $ci ]]; then
|
||||
eselect php set $m php${SLOT}
|
||||
einfo "Switched ${m} to use php:${SLOT}"
|
||||
einfo
|
||||
elif [[ $ci != "php${SLOT}" ]] ; then
|
||||
elog "To switch $m to use php:${SLOT}, run"
|
||||
elog " eselect php set $m php${SLOT}"
|
||||
elog
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
elog "Make sure that PHP_TARGETS in ${EPREFIX}/etc/make.conf includes php${SLOT/./-} in order"
|
||||
elog "to compile extensions for the ${SLOT} ABI"
|
||||
elog
|
||||
if ! use readline && use cli ; then
|
||||
ewarn "Note that in order to use php interactivly, you need to enable"
|
||||
ewarn "the readline USE flag or php -a will hang"
|
||||
fi
|
||||
elog
|
||||
elog "This ebuild installed a version of php.ini based on php.ini-${PHP_INI_VERSION} version."
|
||||
elog "You can chose which version of php.ini to install by default by setting PHP_INI_VERSION to either"
|
||||
elog "'production' or 'development' in ${EPREFIX}/etc/make.conf"
|
||||
elog "Both versions of php.ini can be found in ${EPREFIX}/usr/share/doc/${PF}"
|
||||
|
||||
elog
|
||||
elog "For more details on how minor version slotting works (PHP_TARGETS) please read the upgrade guide:"
|
||||
elog "http://www.gentoo.org/proj/en/php/php-upgrading.xml"
|
||||
elog
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
eselect php cleanup
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libgpg-error/libgpg-error-1.15.ebuild,v 1.1 2014/09/19 13:22:41 k_f Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils libtool multilib-minimal
|
||||
|
||||
DESCRIPTION="Contains error handling functions used by GnuPG software"
|
||||
HOMEPAGE="http://www.gnupg.org/related_software/libgpg-error"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<=app-emulation/emul-linux-x86-baselibs-20131008-r12
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
nls? ( sys-devel/gettext )"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
)
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/gpg-error.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
epatch_user
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_enable nls)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable common-lisp languages)
|
||||
)
|
||||
|
||||
multilib_is_native_abi || myeconfargs+=(
|
||||
--disable-languages
|
||||
)
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
# library has no dependencies, so it does not need the .la file
|
||||
prune_libtool_files --all
|
||||
}
|
@ -1,6 +1,28 @@
|
||||
DIST xcache-3.0.1.tar.bz2 142206 SHA256 16a72c04e1c8737800a730bf7107a81d352c0e90bb5b2f632e929e272115c459 SHA512 e985709df495e89d859c2a46c73f4f091d15fc563a2cec2644d1c9d247e31475c1991dc159d30aa5f9f50cde441ed372819c984a37997d97c32631148443a045 WHIRLPOOL 64a49e5a5e07691f0575c1d93af30e5d383f2142652c69336fbda784655c88e697b412f7ff172624cdc21def7724ac7f15d09ea4bd5e516a79517a11a1eeaec4
|
||||
DIST xcache-3.0.3.tar.bz2 142503 SHA256 2ff6809e66d9c14b70570b9b602ba8ea1daa87bc4a67f59fa769b1d0a6981edc SHA512 60e48eb6c9c729cec90ae7fc31459c725a5f7c75720015e5659f53e592fa9a67d802bce4c52477f6798ed6cb27c4fde34b76569ec17893b2962b8e3d2aa0e33d WHIRLPOOL 25cf31203ad6989ae57409fa4d36090c68ba1c901a76f19f64856dfe27370a2107b1f6be208662598ca23812868280aae835d1f56cdce51bf61800154527dee9
|
||||
EBUILD xcache-3.0.1.ebuild 1389 SHA256 a2bdb64d6e067fe0fc7e62db16cd0f810441e02b7bbbc78dcde44e9261755449 SHA512 7da0532a0d527cd24f1fc4dd10ce558f447056fb33e4bc9d3cd1fe512153c60972237e7271dc7fe49b73a0d8f5de33f6bbb356ab44d80e6797057b37044ed490 WHIRLPOOL f811f1339b14cc761c83252f08e46ec6c306e84109f523331466827d722c6c4c207bca4b769dbc2fdbbcaf907a0164c02d87efc59f3b3a9ed01b4263581e0552
|
||||
EBUILD xcache-3.0.3-r1.ebuild 1450 SHA256 47e5ed8e11bee2c0b0d086c195315aac297c65e7a74acbd147a67aa0aeb748ff SHA512 a65aad5c5f63038e97bb787092dfe99762725fe2222574a8fc5e938f261da0a0e32a064c8cc33ca8819a0575f3992f63d9e31baec330c8577995c71e4cf3f5e8 WHIRLPOOL 55a9cdb4d3f44a61871ebdacaffaa44c94141ac5df40f788db8a923ac760c16ca981d26807e5ebf77dde706104d0a076012897e70112c8f369ca8ee75471a024
|
||||
MISC ChangeLog 5801 SHA256 574dc5a2a31fac63ac232fed3fa4d19b151de1dfdc129f0f392897331c6be760 SHA512 1794d014eedeb4932a4a53ccca8db51a45b78bb2798ff3013cec341ba113e361a22d1b1b0d26fd15d6e8532ccc3037bf2f558eb3533cb28ffe272749b238a0a8 WHIRLPOOL 2b228cae85add30cf2419a317d2c0b59101ad94bf9aea3fe065362b609ff0e58d80f1f25423cb99f1c19a67040fc66dd518d9e959070a75175e67b7afc0f612f
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
DIST xcache-3.0.4.tar.bz2 142844 SHA256 447baab727b6b0d2955e10ce117f55d9a63d306def78c34837b4ff3d6c586a4e SHA512 99c7756e100ff844e8e995a1909e0bb66330631f208ac28b5008f172c19a98cd3e126481c6a8f35cff70d3360902ddd799a5aa6fb0148a2d3b462a52ca7e1fa0 WHIRLPOOL 2a2153f8e3240b6bca6287939f6bec3a4e1a539b81383d0f298944da4014c5b7c5be15e6f354c798f30c3a74d0b5ba49ea72b8185f89a8e2a0349f2f8a84df1a
|
||||
DIST xcache-3.1.2.tar.bz2 146408 SHA256 84cf9b38710c51aabd28987632999cae99f7869d4cb056752ed901a262fef98f SHA512 1ed32b5e781d2bcf32e15481b6277657701b1a0cb1f8ef96852cbe1f0c8621c1ffaa550920cb06b93f9f51b31d18bcfc49c477defcf558fea167a8eab4266b2a WHIRLPOOL e697552aad67d9a270cb5dc2628c8f47e99311ac787226c76c4044191c21e15797ce79341f8b39ef3ba5680fb8dc26ccd74e42d1a3fb44926c74b566cd3cea6f
|
||||
DIST xcache-3.2.0.tar.bz2 148763 SHA256 9692425cbde345e078807fc04fb2f98f0ad0b94864362544378179722d8cd52a SHA512 234d2208cbbc6704360814508e411de58f36370ac0a1abd0179d34e06c919dfe83d0546749eacb8c64bb30b90d0c4d5b279173b8607ba6c079175f4a503703cf WHIRLPOOL 18b7cff1bf5821605992fbea5db8de42fe8847525369551ffb2641c389c97992ec132adf456bffb886ab0403e8752eb5fa3da8d4d71e3145e8c01faa4be6fe93
|
||||
EBUILD xcache-3.0.4.ebuild 1398 SHA256 2b3c74082fd4ac84c151d0e53d7fab614bffe9780916469ea13f3eafa566c8d4 SHA512 dec0e49b1de0f5b31c391849b6411fa3bd4beb00f3a3b873b241b52329297b0a75762d174283cf943ddd6e7edfbd8ac3a7673061e72643f9283f001124ecd037 WHIRLPOOL cb195019071c464cd4b1686d530597899ad74c500654bb542bffa3820f5706afb501813697bb0e2badb5297f4e6d0365356b3a59ab4512f1256981e6bc8f904c
|
||||
EBUILD xcache-3.1.2.ebuild 1457 SHA256 d7d720732a4aa3b54447f57b3af1940ad7dea2df6e3bc2bff0032fdb4a26b311 SHA512 ffbc7b4c2fbe1b0b1db13077c0e53a4ebef781ef112902f1b6c1a5f626b001d175a795de293e0c84068e1627c6c784d29d0768a34aa9d9ecf0463933fc7a42ba WHIRLPOOL 0e2065044e54abd482f3491917168b8ca3ffadcfc80fc8983604c98075874e1d226363734be5345bfa34c61370453748c148c8434f494828072459622ee9e42d
|
||||
EBUILD xcache-3.2.0.ebuild 1464 SHA256 45471c769f8ed3bec924e924e5d7fda6b22ccfe5ad20ce0878b0cc0db316046c SHA512 d9fe5dfd1cad469a5d6658840ff6b61509c158a0424b0ed43be873a270759f045fcfcc6cb83b3f35266af1483ed4cf81baa5816fccba0618817f3806698a3e25 WHIRLPOOL 4ec454ee57bfbdf890d10a870b3c943a4aaa24b49ba7d1a53d9903acf7ae8af0dbec9671f673495ea22ec35d7c5c6c32eea05014ad54affa2dd2fd5ef04051ab
|
||||
MISC ChangeLog 6252 SHA256 819f6dfb56414476cffae85273bed401e8a12a156af5b7ae4187cf85807499f7 SHA512 b2c6a6b8404102c544599e4f2642b804c1c8cf919d3b9b8375d1d1db6313ae51bbed19d00a90ddbe553c97ab43f87a33d7df525d5f73786591d3c51069d37279 WHIRLPOOL 1a3922b5a295d9723ff048dcc80d5d5b3f7a53cc07e1f6906030647b83e3e8486ece7470bd3a5387e923d1a37e171f562e53884724236fa3b03eb6201dd5838b
|
||||
MISC metadata.xml 157 SHA256 54f8878ca0228e380abbaa4b529806b5533a6b9b51b3b16c0909e906586a91a1 SHA512 94adacaefd7d989cc904cc3ee920b15d58fee61df13008ebcbefa66f9b5c58cab2a5fad0499d4b57cd41e5f1ae79c6cf44525d90e649d23ebacd7721466b8947 WHIRLPOOL 66f688809b11b84b1b9d782a3c03cfcefed87989862aaca20c17cb076349ec402da9eaf87f7be02f7b4de178ea42da31029baee1bcd8e563aeabe949d4ed41f9
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2
|
||||
|
||||
iQIcBAEBCAAGBQJUHDlhAAoJEC8ZTXQF1qEPwK4QAIF8VUpzKqqwuNVHTKgUjUqp
|
||||
dTLkasv4D1Zy5b4fIsqC9QLm1VazPwF41gUErE/BYnjVEcr04fPdfPz/1C3aPtTg
|
||||
RX0RuEppXNybE/9nN7AcJkDaAaiUJakEb2by7XEVxTJsLnOnYY4+fPX52kt90aHP
|
||||
EQtc8+ws/pcsKcwd2qlhq/22Yzud+uwVsTerSVKM8uSgbYPNodaFiBqVjjOEkUPx
|
||||
9jMojS+Gd79vP01wbtxvOppYPqfORg2AyPoqAF9Z4KGdwJByaH8JUEuyHbxoJhVx
|
||||
6lRhEWTeHMWsx3I0lry1vshNXRiqdYBFwuTLEhjAOFJxCvD8dhw2f+F3gWWIy2JM
|
||||
qrXt+LVQo4/Xrse0ZQ98sLQKcVTM4bJAf9UcCpqQrOjsxVXHkI/Bk13c93dXSKXN
|
||||
kSr7Ioz6c+OOKeO1skyW6p/wotk5Zkh9Gpaux9r/P5HT1qjlEdk1Z3MLzRXDVeeO
|
||||
yKKcrKGgUQzKHj0eNTwRecfT/qZDdclIF9h5WK1GOy08YK881DLnfSUv9imvMn6a
|
||||
rFWm34lBvFMz2nWfeSmEHX7wg3cox7OKt+XMewP6TRJf1tDTtqugKhG01q/dIcOd
|
||||
kSEDovOtc5GTY2Bj/DC9RfxHI0apbghjIABbkgW/qW7HkLwJuGMxSnTrLPC8n/lu
|
||||
vyLd3ArnskiK33qtbQcy
|
||||
=So3s
|
||||
-----END PGP SIGNATURE-----
|
||||
|
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-php/xcache/xcache-3.2.0.ebuild,v 1.1 2014/09/19 14:12:32 jmbsvicetto Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PHP_EXT_NAME="xcache"
|
||||
PHP_EXT_INI="yes"
|
||||
PHPSAPILIST="apache2 cgi fpm"
|
||||
USE_PHP="php5-4 php5-5 php5-6"
|
||||
|
||||
inherit php-ext-source-r2 confutils
|
||||
|
||||
DESCRIPTION="A fast and stable PHP opcode cacher"
|
||||
HOMEPAGE="http://xcache.lighttpd.net/"
|
||||
SRC_URI="http://xcache.lighttpd.net/pub/Releases/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
# make test would just run php's test and as such need the full php source
|
||||
RESTRICT="test"
|
||||
|
||||
DEPEND="
|
||||
!dev-php/eaccelerator
|
||||
!dev-php/pecl-apc
|
||||
virtual/httpd-php
|
||||
php_targets_php5-5? ( !dev-lang/php:5.5[opcache] )
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_configure() {
|
||||
|
||||
my_conf="--enable-xcache=shared \
|
||||
--enable-xcache-constant \
|
||||
--enable-xcache-optimizer \
|
||||
--enable-xcache-coverager \
|
||||
--enable-xcache-assembler \
|
||||
--enable-xcache-encoder \
|
||||
--enable-xcache-decoder"
|
||||
|
||||
php-ext-source-r2_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
php-ext-source-r2_src_install
|
||||
dodoc AUTHORS ChangeLog NEWS README THANKS
|
||||
|
||||
insinto "${PHP_EXT_SHARED_DIR}"
|
||||
doins lib/Decompiler.class.php
|
||||
insinto "${PHP_EXT_SHARED_DIR}"
|
||||
doins -r htdocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "lib/Decompiler.class.php, and the htdocs/ directory shipped with this"
|
||||
elog "release were installed into ${PHP_EXT_SHARED_DIR}."
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/python-evdev/python-evdev-0.4.5.ebuild,v 1.1 2014/09/19 15:58:42 vapier Exp $
|
||||
|
||||
EAPI="5"
|
||||
PYTHON_COMPAT=( python{2_7,3_3} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Python library for evdev bindings"
|
||||
HOMEPAGE="http://python-evdev.readthedocs.org/"
|
||||
SRC_URI="https://github.com/gvalkov/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
|
@ -1,28 +1,26 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
DIST qbs-1.2.2.src.tar.gz 661270 SHA256 26d46cf6bf580397810b50ee4eea94880148b8a64deab06ea3a4c868db18d162 SHA512 ee61c2ca68d20eee96fbbbc76b56ba72373c3b504e735defb551302c1e4ad9ed8fe95f541377a62433c1c566e0f30f01b93971ce689a41569fb06ad07ce9c844 WHIRLPOOL 27087f1b9d8238160e21cf4859f255538d4e10c72795f11ddc87045a651726c1f3d655b2a3a9e00cd86ad9322b64cb285ce35818eec5484b592926ab0f3c9f65
|
||||
DIST qbs-1.3.0.src.tar.gz 705152 SHA256 e027b4c4f0c9984af096eb89974693afbce9e69d7a2b01606f1f99aef4c39094 SHA512 b516e41cd6e3f26228a7faba724a66cdf556f423c2bea7bee16d5995374a6e1dc3e33b1c5d95ab052a8509c91228e687385c14f76f2a7e9bada283a37f88270c WHIRLPOOL a5a1e6b2da5cd934b1645750352f98b26220463ecc0a8d11eda1ffdec46de4c84e21b6aad2b34bb53858aff1a9d2f3c487b1e2ab134a419a4a9b63ce44d12c09
|
||||
EBUILD qbs-1.2.2.ebuild 1915 SHA256 d38edd34816c732dcd84bef624adfcb4b3d79213466a1cb5cf9c6230514d358a SHA512 d29855ab76c27445126c719054c6e592dcc9bb56f5c644a7ca0cef34e9139bd702415e65f463eaf88a904b0ef2717a1f5433583dd38ffd9427b94e2359edf08a WHIRLPOOL d6c25ea9fb679f5113f77f16348f7054275e3b58e9f484680282bb8b1bdc2ab51ffb3466c6db2ced58e252ceb30e329728b1fbdf2a901557b02f6d7df3d06947
|
||||
EBUILD qbs-1.3.0.ebuild 1915 SHA256 ae1fc91714d5014cdeb01db2892aab89cd054a96af11c4363146ae4370f81d3a SHA512 8a45487b357c8ea7a3eb68916fe56cc8b5830f033acca312ef0fe7b06c5f9ff1e3cd309f1a79483afcf12fdf3168a4485c6cadb7e093bd47d70a6104a83c0854 WHIRLPOOL 6522f86ea84f23a35cb388ba8ff54f557da3a06a563217893ccf738382255fb6b490d8adf2cd294f04fe6b8dee0396e77ee0558063c9e4ab65fc394f3274aab1
|
||||
MISC ChangeLog 792 SHA256 0d5005a4592bba513b7827f2b33907791b38494de967700a758379c533c8a4ad SHA512 219a8fe65cf79e116e9e7994fc2259d6a4cfca952a7d781fda57d3047784aec5509b42b1a7115e09c494e106e8083ffb2cf6ccd8ac987633959d68f59e450a24 WHIRLPOOL ba1d5721e8bdf970e7f51e675627d8b6bbb9f3395813bd2e7b1fbecaf6f1ab48aaf19ca2dbcdac71eef8b9f66326474fc879963a7d93da2c272d4a630a40bb41
|
||||
DIST qbs-1.3.1.src.tar.gz 707942 SHA256 7bf4e0af9c24eb5026babd6db4e15fa55bc5e9028e80385f43c40a9762c84bd0 SHA512 96c9f98ac46d4bed9f8b2049d56c6ddf940b31c30e5860c4939c9c4f8e0b1f6fa6e6c7de3af3e720fa9746dab97d31d53d1ce649d447a9df383be700bf86901b WHIRLPOOL 01eff664a56df3701c996ad9abff5a1008c8cd8c8fe874866c33d8d530bcd7cee1fed35025d74950c49373f9ea428e4712916d498e9499329ce5074fbab9f9cc
|
||||
EBUILD qbs-1.3.1.ebuild 1938 SHA256 909e8852a9c433c476c8cb3e2b395ada6f8cec0e2c0856341d94de8d31fee036 SHA512 d2ca119aa28bd1192821992cb1daeda1ea637d26223f46fc92d5a1fb004343d079e7c825e8b913ef67eac17d854630c6fd6dcaca1e4a8f38dcda55de0ccaa50a WHIRLPOOL 61c16d4c6adf487549ed1bd041e868e795e49333eb123b5e7984811acc93742eaee35d2b690b7aec467d8c46efae27ba55f793acc64d0128efc495f3387ff8b9
|
||||
MISC ChangeLog 1093 SHA256 d47c790fb8fa8715ed9997517cca633cb1342d67120fc0c4c8b09849f986dbc6 SHA512 b4a04070db751ca52aa97e9ca3085f9fa63ca428577fa2ab1a1a5757d98867ae2479665c40106de942028ca3d2d8eea2b5260a0a4094651c486669c81283acb0 WHIRLPOOL 3bc813be38fe1c0a5c54db429eec6cbca5bb3b72a02972814fe3e4611c97e3032c5f6ca03c0ba0af77442831e197f02c21c5ef1a0b7686483cffd56e096f84e2
|
||||
MISC metadata.xml 155 SHA256 94ed5876ef16dbc191744ff6b8939a0f428fcb8add316d898880e1c4c880b9e7 SHA512 f05c8982778167c3667c9246b9730ba49fec2967731ed2c615e31a7fddc220fcea8c0843caa70a14957c8c4910892c512b6f2e00a9724d65e6032e1289f4562a WHIRLPOOL 25ccd49f04da07c8525fe18b21229764bb4104938abefc6c953bf9caa533dd5c10ae7b3f80a1251182e6c1520c09383d9f1d0ac1dc74832a99299c9be27406c4
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2.0
|
||||
|
||||
iQJ8BAEBCABmBQJUAAvuXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
|
||||
iQJ8BAEBCABmBQJUHC32XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
|
||||
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ4N0Y5QkIzRDgwM0JERkYzMTc5RTI1MjhE
|
||||
QURFRDZCMjY3MUNCNTdEAAoJENre1rJnHLV9wO0QAIEpwz7Wf6XAynbltm6xF52l
|
||||
3jw4xZCEWjocbAnZavvCiFCSYFIoG64LerHbrtumVvrT2JWF9XH4/UrTfXm/xmeC
|
||||
Z3TVnGDNv6Vtg6bNAxGoGVKnqBEKCl0Be8IYZLQ4CgjT3BMhPfRBOccLkJ3zTNLi
|
||||
6SwXpk0fxGHeqkQ1l3vz5+91QkEE4NLdAjfwSu+GCMS0j6lBj4rkCU0Yawj/DojO
|
||||
X1s161cZGPo8W90WlwkhBN+xI3gWwnJM4/KWM7MSMI21wDXHC5EONjwJsjJh5iMa
|
||||
rO0yAQ11qaO0R5jWcr6n15ZE5ntZN0Wj/G59dDOVCDIj7SfgiI/tnh3gvBSuG4Fw
|
||||
J/ZZ9UX6P8nn43Ri1XJiLhLmuZjOhEAgRBX4gmXYIwvDiai2cVzxuKhDMznlzlN1
|
||||
BWE+zFf2CvBKKBsDX3hpCC1JrukKmP+a/lp8FvNz4GyRnHuzKI2C033VtQwYDKPV
|
||||
0LU5op9RO+jTQsSE57k5PO4m5DZ2EEDwqVBOsuscc0ONZ3SWg20EXNeuxnyuKldH
|
||||
2cQh4ab+4GuhAyhvMZ4noHSrPfZt6scetly/E1P/z6XLv93cDty1zWTHtw1TZVdO
|
||||
ETL3Jw+LBo+1VIKLe0GU1WKcsIDzxfIOi1JQ/B3ym2DV3d4vyDaKR9aLRpVTS6U7
|
||||
S5DhYwNDIbLky7eDKDnX
|
||||
=xrR2
|
||||
QURFRDZCMjY3MUNCNTdEAAoJENre1rJnHLV9PGAP/RuzPDO36xEU6COgIURLtlLJ
|
||||
okW9MKXEbhV1vCM+fp6esBUhl7cu2sVVij1eqh7JZ4vPZMaX+mcVjRZNqu06PzWN
|
||||
08ab3N43v0DAScFK8eo4TVceEyrYUwY+lkB7tN3mnyE3ZiMUPAJ8PRs1JOfD2hW2
|
||||
p4TPS9X3IpMJUxDbFaX2J9q0vS20nNGf98O0mfd9HI00gX3dyaOyd22H5t3gutVF
|
||||
b2RD5gEtP+Rj7P+RxQkvZB3E8hq/ybb3joiSCoRq9JgQh8eswK1z9cDK0Rcwng2i
|
||||
KnLr8ewqzbn5zWRjWfpoqr1T1D+I0gzJqMwZ8ZYYr+L4U9AFnONtsZk6OpWHVEjf
|
||||
LgHVY8ny1vBrBSr6bzkgNX06QfGb9k6b1Cn28HxCwY1GdbbamFSFmbsbSA84+6z/
|
||||
kM5EV+gJxFxk3te7GeXUJM1/sAomOcbLDNHIA7sdqiyBMiquP6RMbGlozeTnagGt
|
||||
1vD+ogEII6Gv/o6rhagA5jojMUozwJz5p5bM1MF3d4wPMLkmvygBhN38Dv0C3fQw
|
||||
BSFYwj5pW8wu09/0mqToAh6OVkTrjzRIFx7dvE3s+jd0Nf3IPJQ9DLzWp+lgwkLR
|
||||
7i6D7UPw4wub4uV8sm+cLSGB77pK41csfiDcpZK509J/OezfStWQmSgdVwtfhM+z
|
||||
SmxRLXAnGC1xw1jgx2ia
|
||||
=nlgC
|
||||
-----END PGP SIGNATURE-----
|
||||
|
@ -1,95 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-util/qbs/qbs-1.3.0.ebuild,v 1.1 2014/08/29 05:12:58 pesa Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit multilib qmake-utils
|
||||
|
||||
DESCRIPTION="Qt Build Suite"
|
||||
HOMEPAGE="http://qt-project.org/wiki/qbs"
|
||||
SRC_URI="http://download.qt-project.org/official_releases/${PN}/${PV}/${P}.src.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc +qt4 qt5 test"
|
||||
|
||||
RDEPEND="
|
||||
qt4? (
|
||||
>=dev-qt/qtcore-4.8:4
|
||||
>=dev-qt/qtgui-4.8:4
|
||||
>=dev-qt/qtscript-4.8:4
|
||||
)
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtscript:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtxml:5
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
doc? (
|
||||
qt4? ( >=dev-qt/qthelp-4.8:4 )
|
||||
qt5? ( dev-qt/qthelp:5 )
|
||||
)
|
||||
test? (
|
||||
qt4? ( >=dev-qt/qttest-4.8:4 )
|
||||
qt5? ( dev-qt/qttest:5 )
|
||||
)
|
||||
"
|
||||
|
||||
REQUIRED_USE="^^ ( qt4 qt5 )"
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e "/destdirPrefix/ s:/lib:/$(get_libdir):" \
|
||||
src/plugins/plugins.pri || die
|
||||
|
||||
if ! use test; then
|
||||
sed -i -e '/SUBDIRS = auto/d' \
|
||||
tests/tests.pro || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myqmakeargs=(
|
||||
-recursive
|
||||
CONFIG+=disable_rpath
|
||||
QBS_INSTALL_PREFIX="${EPREFIX}/usr"
|
||||
QBS_LIBRARY_DIRNAME="$(get_libdir)"
|
||||
)
|
||||
|
||||
if use qt4; then
|
||||
eqmake4 "${myqmakeargs[@]}"
|
||||
elif use qt5; then
|
||||
eqmake5 "${myqmakeargs[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
export HOME=${T}
|
||||
export LD_LIBRARY_PATH=${S}/$(get_libdir)
|
||||
|
||||
local qmakepath=${EROOT}usr/$(get_libdir)/$(usev qt4 || usev qt5)/bin/qmake
|
||||
[[ -x ${qmakepath} ]] || qmakepath=${EROOT}usr/bin/qmake
|
||||
|
||||
einfo "Setting up test environment in ${T}"
|
||||
|
||||
"${S}"/bin/qbs-setup-toolchains --detect || die
|
||||
"${S}"/bin/qbs-setup-qt "${qmakepath}" qbs_autotests || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake INSTALL_ROOT="${D}" install
|
||||
|
||||
# install documentation
|
||||
if use doc; then
|
||||
emake docs
|
||||
dodoc doc/qbs.qch
|
||||
docompress -x /usr/share/doc/${PF}/qbs.qch
|
||||
dohtml -r doc/html/*
|
||||
fi
|
||||
}
|
@ -0,0 +1,75 @@
|
||||
Author: hasufell <hasufell@gentoo.org>
|
||||
Date: Wed Jul 10 01:25:27 2013 +0200
|
||||
|
||||
respect CFLAGS/LDFLAGS
|
||||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -213,7 +213,7 @@
|
||||
endif
|
||||
endif
|
||||
|
||||
- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes -pipe
|
||||
+ BASE_CFLAGS = -Wall -Wimplicit -Wstrict-prototypes
|
||||
|
||||
ifeq ($(USE_OPENAL),1)
|
||||
BASE_CFLAGS += -DUSE_OPENAL=1
|
||||
@@ -239,19 +239,15 @@
|
||||
BASE_CFLAGS += -I/usr/X11R6/include
|
||||
endif
|
||||
|
||||
- OPTIMIZE = -O3 -ffast-math -funroll-loops -fomit-frame-pointer
|
||||
+ OPTIMIZE =
|
||||
|
||||
ifeq ($(ARCH),x86_64)
|
||||
- OPTIMIZE = -O3 -fomit-frame-pointer -ffast-math -funroll-loops \
|
||||
- -falign-loops=2 -falign-jumps=2 -falign-functions=2 \
|
||||
- -fstrength-reduce
|
||||
+ OPTIMIZE =
|
||||
# experimental x86_64 jit compiler! you need GNU as
|
||||
HAVE_VM_COMPILED = true
|
||||
else
|
||||
ifeq ($(ARCH),i386)
|
||||
- OPTIMIZE = -O3 -march=i586 -fomit-frame-pointer -ffast-math \
|
||||
- -funroll-loops -falign-loops=2 -falign-jumps=2 \
|
||||
- -falign-functions=2 -fstrength-reduce
|
||||
+ OPTIMIZE =
|
||||
HAVE_VM_COMPILED=true
|
||||
else
|
||||
ifeq ($(ARCH),ppc)
|
||||
@@ -265,7 +261,7 @@
|
||||
BASE_CFLAGS += -DNO_VM_COMPILED
|
||||
endif
|
||||
|
||||
- DEBUG_CFLAGS = $(BASE_CFLAGS) -g -O0
|
||||
+ DEBUG_CFLAGS = $(BASE_CFLAGS) $(OPTIMIZE)
|
||||
|
||||
RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG $(OPTIMIZE)
|
||||
|
||||
@@ -274,7 +270,7 @@
|
||||
SHLIBLDFLAGS=-shared $(LDFLAGS)
|
||||
|
||||
THREAD_LDFLAGS=-lpthread
|
||||
- LDFLAGS=-ldl -lm
|
||||
+ LDFLAGS+=-ldl -lm
|
||||
|
||||
ifeq ($(USE_SDL),1)
|
||||
CLIENT_LDFLAGS=$(shell sdl-config --libs)
|
||||
@@ -1158,13 +1154,13 @@
|
||||
|
||||
$(B)/Quake3-UrT.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
|
||||
$(echo_cmd) "LD $@"
|
||||
- $(Q)$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(CLIENT_LDFLAGS) \
|
||||
- $(LDFLAGS) $(LIBSDLMAIN)
|
||||
+ $(Q)$(CC) $(CFLAGS) -o $@ $(Q3OBJ) $(Q3POBJ) \
|
||||
+ $(LDFLAGS) $(CLIENT_LDFLAGS) $(LIBSDLMAIN)
|
||||
|
||||
$(B)/Quake3-UrT-smp.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
|
||||
$(echo_cmd) "LD $@"
|
||||
- $(Q)$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(CLIENT_LDFLAGS) \
|
||||
- $(THREAD_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
|
||||
+ $(Q)$(CC) $(CFLAGS) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) \
|
||||
+ $(LDFLAGS) $(THREAD_LDFLAGS) $(CLIENT_LDFLAGS) $(LIBSDLMAIN)
|
||||
|
||||
ifneq ($(strip $(LIBSDLMAIN)),)
|
||||
ifneq ($(strip $(LIBSDLMAINSRC)),)
|
@ -0,0 +1,153 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/games-fps/urbanterror/urbanterror-4.2.019.ebuild,v 1.1 2014/09/19 13:43:50 hasufell Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit check-reqs eutils gnome2-utils games
|
||||
|
||||
ENGINE_PV=${PV}
|
||||
FULL_P=UrbanTerror42_full017
|
||||
UPDATE_PV=${PV:0:3}.${FULL_P#*full}
|
||||
DESCRIPTION="Hollywood tactical shooter based on the ioquake3 engine"
|
||||
HOMEPAGE="http://www.urbanterror.info/home/"
|
||||
SRC_URI="http://cdn.urbanterror.info/urt/42/zips/${FULL_P}.zip
|
||||
https://github.com/Barbatos/ioq3-for-UrbanTerror-4/archive/release-${ENGINE_PV}.tar.gz -> ${PN}-${ENGINE_PV}.tar.gz
|
||||
http://upload.wikimedia.org/wikipedia/en/5/56/Urbanterror.svg -> ${PN}.svg"
|
||||
|
||||
# fetch updates
|
||||
if [[ ${FULL_P#*full} != ${PV##*.} ]] ; then
|
||||
UPDATE_I=${UPDATE_PV:6:1}
|
||||
while [[ ${UPDATE_I} -lt ${PV:6:1} ]] ; do
|
||||
SRC_URI="${SRC_URI} http://cdn.urbanterror.info/urt/42/zips/UrbanTerror-${PV:0:6}${UPDATE_I}-to-${PV:0:6}$(( ${UPDATE_I} + 1)).zip"
|
||||
UPDATE_I=$(( ${UPDATE_I} + 1))
|
||||
done
|
||||
fi
|
||||
unset UPDATE_I
|
||||
|
||||
LICENSE="GPL-2 Q3AEULA-20000111 urbanterror-4.2-maps"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+altgamma +curl debug dedicated openal +sdl server smp vorbis"
|
||||
RESTRICT="mirror"
|
||||
|
||||
RDEPEND="
|
||||
!dedicated? (
|
||||
virtual/opengl
|
||||
curl? ( net-misc/curl )
|
||||
openal? ( media-libs/openal )
|
||||
sdl? ( media-libs/libsdl[X,sound,joystick,opengl,video] )
|
||||
!sdl? ( x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXxf86dga
|
||||
x11-libs/libXxf86vm )
|
||||
vorbis? ( media-libs/libogg
|
||||
media-libs/libvorbis )
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
app-arch/unzip
|
||||
dedicated? ( curl? ( net-misc/curl ) )"
|
||||
|
||||
S=${WORKDIR}/ioq3-for-UrbanTerror-4-release-${ENGINE_PV}
|
||||
S_DATA=${WORKDIR}/UrbanTerror42
|
||||
|
||||
CHECKREQS_DISK_BUILD="3300M"
|
||||
CHECKREQS_DISK_USR="1550M"
|
||||
|
||||
pkg_pretend() {
|
||||
check-reqs_pkg_pretend
|
||||
|
||||
if ! use dedicated ; then
|
||||
if ! use sdl && ! use openal ; then
|
||||
ewarn
|
||||
ewarn "Sound support disabled. Enable 'sdl' or 'openal' useflag."
|
||||
ewarn
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local UPDATE_I
|
||||
default
|
||||
# apply updates
|
||||
if [[ ${FULL_P#*full} != ${PV##*.} ]] ; then
|
||||
UPDATE_I=${UPDATE_PV:6:1}
|
||||
while [[ ${UPDATE_I} -lt ${PV:6:1} ]] ; do
|
||||
cp -dRpf \
|
||||
"${WORKDIR}"/UrbanTerror-${PV:0:6}${UPDATE_I}-to-${PV:0:6}$((${UPDATE_I} + 1))/* \
|
||||
"${S_DATA}"/ || die
|
||||
UPDATE_I=$(( ${UPDATE_I} + 1))
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-${ENGINE_PV}-build.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
buildit() { use $1 && echo 1 || echo 0 ; }
|
||||
nobuildit() { use $1 && echo 0 || echo 1 ; }
|
||||
|
||||
emake \
|
||||
ARCH=$(usex amd64 "x86_64" "i386") \
|
||||
DEFAULT_BASEDIR="${GAMES_DATADIR}/${PN}" \
|
||||
BUILD_CLIENT=$(nobuildit dedicated) \
|
||||
BUILD_CLIENT_SMP=$(usex smp "$(nobuildit dedicated)" "0") \
|
||||
BUILD_SERVER=$(usex dedicated "1" "$(buildit server)") \
|
||||
USE_SDL=$(buildit sdl) \
|
||||
USE_OPENAL=$(buildit openal) \
|
||||
USE_OPENAL_DLOPEN=0 \
|
||||
USE_CURL=$(buildit curl) \
|
||||
USE_CURL_DLOPEN=0 \
|
||||
USE_CODEC_VORBIS=$(buildit vorbis) \
|
||||
USE_ALTGAMMA=$(buildit altgamma) \
|
||||
USE_LOCAL_HEADERS=0 \
|
||||
Q="" \
|
||||
$(usex debug "debug" "release")
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local my_arch=$(usex amd64 "x86_64" "i386")
|
||||
|
||||
dodoc ChangeLog README md4-readme.txt
|
||||
dodoc "${S_DATA}"/q3ut4/readme42.txt
|
||||
insinto "${GAMES_DATADIR}"/${PN}/q3ut4
|
||||
doins "${S_DATA}"/q3ut4/*.pk3
|
||||
|
||||
if use !dedicated ; then
|
||||
newgamesbin build/$(usex debug "debug" "release")-linux-${my_arch}/Quake3-UrT$(usex smp "-smp" "").${my_arch} ${PN}
|
||||
doicon -s scalable "${DISTDIR}"/${PN}.svg
|
||||
make_desktop_entry ${PN} "UrbanTerror"
|
||||
fi
|
||||
|
||||
if use dedicated || use server ; then
|
||||
newgamesbin build/$(usex debug "debug" "release")-linux-${my_arch}/Quake3-UrT-Ded.${my_arch} ${PN}-dedicated
|
||||
docinto examples
|
||||
dodoc "${S_DATA}"/q3ut4/{server_example.cfg,mapcycle_example.txt}
|
||||
fi
|
||||
|
||||
prepgamesdirs
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
games_pkg_preinst
|
||||
use dedicated || gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
games_pkg_postinst
|
||||
use dedicated || gnome2_icon_cache_update
|
||||
|
||||
if use openal && ! use dedicated ; then
|
||||
einfo
|
||||
elog "You might need to set:"
|
||||
elog " seta s_useopenal \"1\""
|
||||
elog "in your ~/.q3a/q3ut4/q3config.cfg for openal to work."
|
||||
einfo
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use dedicated || gnome2_icon_cache_update
|
||||
}
|
@ -1,34 +1,25 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
AUX openjpeg-1.5.1-build.patch 1025 SHA256 715fa4544131ca4cbf7039bd3a663d0dfb06d0cfbcadf595da3a3cd960e84c8f SHA512 e4acb37c60e3caedf8238e9796529dafcf30a62aabb003dc9bc7595f45c1810b6cfdd61fad693a70b3da61d257e4ea1729c41f2d50d8c8ae114110ebabfd01d0 WHIRLPOOL f7ad455ee9ee604c77dba3b7ccf2e1973ef776770054b50a04c489afecbb61de6ae42de9f8621cc6717c4ac8597f67c655e311c1ff3f5c6d4e6d6ab8f24eeb32
|
||||
AUX openjpeg-2.0.0-build.patch 473 SHA256 21f5d1f465c99c41e05d461c1d184aad4bf0c359b08262e8da7625f3e59d1161 SHA512 1ff2ada7fb502f25e8154e0e1dd82073db8a009fe309dcbe209dee98f2787bb2df03643754ae2627fbb78bb60d9cc0110e8f821a8bd70db1bc9790514150e32a WHIRLPOOL 7189cf91e412946e9ebe9a79f27c0eb4061697530b837bea937d8f25a1e50183e288176e2e9661adfff11f1d1e821969c5a109a7db5533114044c0f46a6f3788
|
||||
AUX openjpeg-2.0.0-pkgconfig-static.patch 365 SHA256 a0cabdbc353014bc4b2162cefe0949c576259e429046a7256861b6333d4a0e32 SHA512 b170668247ce37ace02d6303b747f817e5ef0a00cda08c903f65927050fa9370450c61ee56a8ae72843b864171072036a5f2998c5e6084ea4ad8e8ab39e5e481 WHIRLPOOL cf391f3ba071d784e0d11f6bd09735dd1683d8b9d5bac8d852b91dd2332e12b16d0f8670b0f7b510facd2da6b1e034e1d46fef4bfe706ab5ee040d14e8647f1a
|
||||
AUX openjpeg-2.0.0-pkgconfig.patch 1341 SHA256 8f1f8ce432bac29fe50c21b530bc2bcc2d409e990621d5cefbef3b3e7da41aa7 SHA512 426a3bfe0e34c5496047d42b6d7316b3e71eea99aef2fd25b525738c278ace70c35ea2c690f57b3d0b48e2aa2395950c69db4569342c68a05933387cb0908650 WHIRLPOOL 7f0065d6787badca188ef56fc406a84358b7d0012750176b6fee5eec5f07c16a2f3b50b0a4fb65d61d99c098aff5b09963d6ece697aee2a2a455c8a05b96f377
|
||||
DIST openjpeg-1.5.1.tar.gz 2112443 SHA256 6cfb3097a1c8e9550131b17663daf927f42707bc3f84196c1390642e87f3ab8d SHA512 7b6c6889eb478008bd659cf2f2dcc0551ebb0c15f6765d1df04bc75208acb300929e399d0ea9b5c69a6d43b39cd1e58ab94bc71c3b6efdfba35903f46b54dd2d WHIRLPOOL 9b28ac807ad6a2b118a0f1cf4322852002bba993feeb07d57f4bf0320a4b92a577ef1ca4fd17644f3f71f3b374cc0bb672eb3dadd2cd5aa9d044411ba049a6fb
|
||||
DIST openjpeg-1.5.2.tar.gz 1385702 SHA256 15df7b194a5d8dba0052cd21c17a4dc761149a770a907d73fffb972078c28a87 SHA512 b945cf4f8b5e3227a0c07120c94b0ed5bf30c901de73059ee1d47975f46744fb62bbe84cdb2917c6431128f400020874eb07160af870b5448ced897998b08862 WHIRLPOOL 4ca974b411baa1fad7821b3ea88ad5c6a39643098af32bd8e92f66ccaa534d36ef15f55711eba489e91254f667d5f917febdb09539ac9698709c00bf680d45fe
|
||||
DIST openjpeg-2.0.0.tar.gz 1770392 SHA256 334df538051555381ee3bbbe3a804c9c028a021401ba2960d6f35da66bf605d8 SHA512 4ef6b3b6933190c845cc376efbfe8bf655954668eb35c2b878c572107fb5d620fc2fc4df0e7de177c8798bee031f33350715c6da44ef07978df29762d89f29a6 WHIRLPOOL cfcc567a292c0a42d618c9f37b8665f98c580b768a74f63caa9f50b0747fed927c1fafe0b1bb86772ff56768c7a102e645792b960051a44da7a556ba4b41195d
|
||||
DIST openjpeg-2.1.0.tar.gz 1789675 SHA256 1232bb814fd88d8ed314c94f0bfebb03de8559583a33abbe8c64ef3fc0a8ff03 SHA512 3da84d7828a82c738f6ea5fe776c989283ba257cc6884aebfc090cee7e33c88471dee1a93f4a87a300b11f43b98f6624b838171f06227add24afcb1d57208df1 WHIRLPOOL 547dc65906a5dd6d34148675ec2be869ed18b0fef99f7f8632ebca0843e8764e575ca16ea1f7f839576f6de9464d29154171ca2187141e8141239f46468c8c2f
|
||||
EBUILD openjpeg-1.5.1.ebuild 1868 SHA256 10f466e93eb5e73369d9312adbd6e2dbfe41d0b01cf460063027494f843818b6 SHA512 377d02e0990a3c2c1c97529d1d7f539834f185e4c8f7f956cd611983c8a40ec848b19ddfb892d1d1ac008782a067e4646536a243a9c4ee2638ac8fa787527eb0 WHIRLPOOL 6f6cb4e803587ab4aa8e2687efc491d9a26e55aea1cccdfab3a251c9bd21599635a39bc3b148c611728de9237fdbb81841a91454c356792936285d41a33c62e3
|
||||
EBUILD openjpeg-1.5.2.ebuild 2132 SHA256 b453a938d32c55b35d2fb2672024ee50d7357accd22eede0a4318c2687fb3d5b SHA512 8114e7cf207b3f0be1e64f466a85bd6e8963ab07d1ce7fa5d19c83ad70f9f888ad1f252e39d087cbd76f4be8e65736b8df409326fa27a7954db4b6535a659f9e WHIRLPOOL 0e194a033ca0b93710dd5f03f47fefdf8940385434ee0b76cdc099c97f7cec8430c3ce2a2e8ad53d3796f8afbafda96acc0ad5fc16c378d4b8a3a1759e25d559
|
||||
EBUILD openjpeg-2.0.0.ebuild 1825 SHA256 bddbe215e0c22f58261710e357425ce4b3f0efcfb6b4df57c428137535de1580 SHA512 38f560e0998408f0b3720864efc2f4afe287932a20c683a48dd9c42c690f2707c309cd4f9505de46e1f7d049f9eb4e3ae805b15d1210f3b8c75bf7108f1d3bf5 WHIRLPOOL e39402e4d3a4613b4823790a25ed8d614a6a8147c91449a5400d57b8e6cd8846fbf58f18986faf313161710d87ec34114f4e76ec24a6358788b222018cbc94b8
|
||||
EBUILD openjpeg-2.1.0.ebuild 1916 SHA256 a7759ceef9a7fdc54b528d4cd812e315fcca219c7b2d95e3789bfaac626cb7fe SHA512 ad5f2ae8eccd5001a45cdec8fe76f971232eceeebf53aec8c27bbd228e5a3e247fcc16998b5cb50265be212d8b8bb17ccd96340ba84e3f30db8047cad6d13790 WHIRLPOOL e978020671580956b9bd5c89523812879f7eea6a63885b2706597414662206caba53079790e2018271c9c4eaefc5a3f2a6d42f6eb8e6c23b57d7d32db0175064
|
||||
MISC ChangeLog 14872 SHA256 ccf8221e2634d5b8b60b578835f012a639fa95f66a9fa68900e23a3c93286143 SHA512 80cc8f98895183609b507df6f557f65b5812628bc786ee3a91731657ed24ebd697f83ec2360e53258c2082bf8d7f44c742d385a85966e234e117762900fcb682 WHIRLPOOL e5da141fa022770beb78d2af0fbd4a44e859fdba871afe2ab9abf1be45c861d61b6dfdab44e3f992f4e3f044e3dd1728eeae716b129d1bea54268be47476525a
|
||||
MISC ChangeLog 15000 SHA256 b1e56242d6026ac05ba30628e980a78ed3a6e5641dc969a9f0da08019a9bf20c SHA512 391d6097937696faf5ccc0d2669d403bb6d53dd712cc0599c0428bc882b2c08988e9369b74e69f180c5346152e7ff53fda5cca3f39bb524546227a4907afcbc7 WHIRLPOOL 5053c6d2c25fcb9401f5deb7a924a7ded3ef70c489db5623dcff94a961cdd69bb438310edfa0bb9a798200d2f5437973c67a8175ebb68fcee7e2e0373c949153
|
||||
MISC metadata.xml 240 SHA256 798e4e23637a9ded9dae0967f92aa498b39ad088a555aa94b4f716ba040db68c SHA512 c12ab1993f8b10c50a87bf215eb22613dc54cf8f3c049877959228694afcb1e848d9e13247c376c249b39af35945775f736bcf956c7f50e3d49f456e621ef979 WHIRLPOOL b8b0ff194273de5396bfb4d13c2f169eb481dab034aee85f1ebca948babded8851a1cc6c6047e51b6a20bb40654be025677a9872da63526c78eaa64854436f8b
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2
|
||||
|
||||
iQIcBAEBCAAGBQJUHAXhAAoJELp701BxlEWfNvAP/jnY8IfD4imEjJnCTIAiFxgW
|
||||
BVsHiityV9EU/WCpCl6Zrws70hu6l/qNDDzfh9ORR/4ZQmb1kd89QJ1f/aDqY6LJ
|
||||
+Bm31faulHD4hR/2wL39JBiZjNBk/h0bKvQcC0/bSbMQH6CM+OM9aZwgZRXKEAQ6
|
||||
LrOgBy+uKEJSB1/2+zNDZ7tHoGBtq9Jtg+PXyDnvzJpKiMLXjDOlHRWEqlcWKMsy
|
||||
hGF6kwGwMHF3Gvk92YLR+OIlW5p12ZhEGhRPLxgS7xxqTO4/VI8THKEWRDTttTlo
|
||||
2aDzBdLWzGQPBYGlSbu65AREFlKqjzFr3rJdt4wyRLBgksPuZIAClmEWAQwEW3cI
|
||||
McIGs8lOlPqB3Xzwzdp7cNqWkKhK2QCtyD+HZWvfeOhN1i7UQc4sIJDBUfbMTyFU
|
||||
dxN6uMoJOGER8Et7rki2JID6QV6CXcTq89e29T53pASI2vTeIpzajfnzO+DoDT2D
|
||||
pSOzpGiyGI9N5f2I/CFbT5q9Fj4383mr3PFkXrBio3ydAC6CPCk7rw6HLscU+y8S
|
||||
Bk4ZLXDuJ7CowbCv6nLrV3gVc7R+1mbLrDf0r47uVong9TrP6RfHVpVuKAHboPhw
|
||||
s3DC60oWbnVnML1cLLeT+7h+nnN0rP5R1QxD1fHaQVW/77hvD33ct4WRWYVMve3Z
|
||||
GyrxA4zk82PA1UhnTQxl
|
||||
=cZ9O
|
||||
iQEcBAEBCAAGBQJUHAsXAAoJEEdUh39IaPFNDnwH/2tiFiTVmDNK8eGa1AnwO4DU
|
||||
l1PViZySzgJiDvjt5GuWxHdblmiz1W9pKXBjJpbjlsakDbGHvq9wGHlCsrpRWgPV
|
||||
U5lZ7fEFaLz+vC8ImJD46J7ODiLcGlssHCc22O5KH18F6Os1b5l+FShjlfD7XoOZ
|
||||
OXYASdGPXffRDb9UigWkI6A80ibcf3CIO8tZ2p+hGtncWd5XxFGtTbSAi7rILFG4
|
||||
4ns3m7Xbg9DtenSLxdY3hkvCTKxlBKDO+6TPg1zzrx54+yEtn9ui1LRCt4v0hkfb
|
||||
O4fguhw9gHopZYFxrHxRAdG7SmKPi1JHY1BGC0fDmwzVfqGd41eCGHGfyUTVCNc=
|
||||
=UvKw
|
||||
-----END PGP SIGNATURE-----
|
||||
|
@ -1,27 +0,0 @@
|
||||
Some bits have been loaned from http://pkgs.fedoraproject.org/gitweb/?p=openjpeg.git;a=tree
|
||||
|
||||
--- openjpeg-1.5.1/CMakeLists.txt
|
||||
+++ openjpeg-1.5.1/CMakeLists.txt
|
||||
@@ -287,11 +287,4 @@
|
||||
DESTINATION ${OPENJPEG_INSTALL_PACKAGE_DIR}
|
||||
)
|
||||
|
||||
-#-----------------------------------------------------------------------------
|
||||
-# install CHANGES and LICENSE
|
||||
-IF(EXISTS ${OPENJPEG_SOURCE_DIR}/CHANGES)
|
||||
- INSTALL(FILES CHANGES DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
|
||||
-ENDIF(EXISTS ${OPENJPEG_SOURCE_DIR}/CHANGES)
|
||||
-INSTALL(FILES LICENSE DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
|
||||
-
|
||||
INCLUDE (CMake/OpenJPEGCPack.cmake)
|
||||
--- openjpeg-1.5.1/libopenjpeg1.pc.cmake
|
||||
+++ openjpeg-1.5.1/libopenjpeg1.pc.cmake
|
||||
@@ -2,7 +2,7 @@
|
||||
bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
|
||||
datadir=${prefix}/@OPENJPEG_INSTALL_DATA_DIR@
|
||||
libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
|
||||
-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
|
||||
+includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@/@OPENJPEG_INSTALL_SUBDIR@
|
||||
|
||||
Name: openjpeg
|
||||
Description: JPEG2000 files library
|
@ -1,67 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-libs/openjpeg/openjpeg-1.5.1.ebuild,v 1.13 2013/08/06 13:12:13 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit cmake-utils multilib
|
||||
|
||||
DESCRIPTION="An open-source JPEG 2000 library"
|
||||
HOMEPAGE="http://code.google.com/p/openjpeg/"
|
||||
SRC_URI="http://${PN}.googlecode.com/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc static-libs test"
|
||||
|
||||
RDEPEND="media-libs/lcms:2=[static-libs?]
|
||||
media-libs/libpng:0=[static-libs?]
|
||||
media-libs/tiff:0=[static-libs?]
|
||||
sys-libs/zlib:=[static-libs?]"
|
||||
DEPEND="${RDEPEND}
|
||||
doc? ( app-doc/doxygen )"
|
||||
|
||||
DOCS=( AUTHORS CHANGES NEWS README THANKS )
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-build.patch )
|
||||
|
||||
RESTRICT="test" #409263
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DOPENJPEG_INSTALL_LIB_DIR="$(get_libdir)"
|
||||
$(cmake-utils_use_build doc)
|
||||
$(cmake-utils_use_build test TESTING)
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
|
||||
if use static-libs ; then
|
||||
mycmakeargs=(
|
||||
-DOPENJPEG_INSTALL_LIB_DIR="$(get_libdir)"
|
||||
$(cmake-utils_use_build test TESTING)
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
)
|
||||
BUILD_DIR=${BUILD_DIR}_static cmake-utils_src_configure
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake-utils_src_compile
|
||||
|
||||
if use static-libs ; then
|
||||
BUILD_DIR=${BUILD_DIR}_static cmake-utils_src_compile
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use static-libs ; then
|
||||
BUILD_DIR=${BUILD_DIR}_static cmake-utils_src_install
|
||||
#static bins overwritten by shared install
|
||||
fi
|
||||
|
||||
cmake-utils_src_install
|
||||
|
||||
dosym openjpeg-1.5/openjpeg.h /usr/include/openjpeg.h
|
||||
dosym libopenjpeg1.pc /usr/$(get_libdir)/pkgconfig/libopenjpeg.pc
|
||||
}
|
@ -1 +1 @@
|
||||
Fri, 19 Sep 2014 10:37:03 +0000
|
||||
Fri, 19 Sep 2014 17:07:02 +0000
|
||||
|
@ -1 +1 @@
|
||||
Fri, 19 Sep 2014 10:37:03 +0000
|
||||
Fri, 19 Sep 2014 17:07:02 +0000
|
||||
|
@ -1,13 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install preinst prepare setup test unpack
|
||||
DEPEND=!!app-crypt/heimdal >=sys-libs/e2fsprogs-libs-1.42.9[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] || ( >=dev-libs/libverto-0.2.5[libev,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/libverto-0.2.5[libevent,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/libverto-0.2.5[tevent,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) keyutils? ( >=sys-apps/keyutils-1.5.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openldap? ( >=net-nds/openldap-2.4.38-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pkinit? ( >=dev-libs/openssl-1.0.1h-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) selinux? ( sec-policy/selinux-kerberos ) xinetd? ( sys-apps/xinetd ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508-r1 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) || ( >=dev-lang/python-2.7.5-r2:2.7 ) virtual/yacc doc? ( virtual/latex-base ) test? ( || ( >=dev-lang/python-2.7.5-r2:2.7 ) dev-lang/tcl dev-util/dejagnu ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.13:1.13 >=sys-devel/automake-1.14:1.14 ) >=sys-devel/autoconf-2.69 sys-devel/libtool
|
||||
DESCRIPTION=MIT Kerberos V
|
||||
EAPI=5
|
||||
HOMEPAGE=http://web.mit.edu/kerberos/www/
|
||||
IUSE=doc +keyutils openldap +pkinit selinux +threads test xinetd abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
|
||||
KEYWORDS=alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86
|
||||
LICENSE=openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )
|
||||
RDEPEND=!!app-crypt/heimdal >=sys-libs/e2fsprogs-libs-1.42.9[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] || ( >=dev-libs/libverto-0.2.5[libev,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/libverto-0.2.5[libevent,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/libverto-0.2.5[tevent,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) keyutils? ( >=sys-apps/keyutils-1.5.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openldap? ( >=net-nds/openldap-2.4.38-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pkinit? ( >=dev-libs/openssl-1.0.1h-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) selinux? ( sec-policy/selinux-kerberos ) xinetd? ( sys-apps/xinetd ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508-r1 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )
|
||||
SLOT=0
|
||||
SRC_URI=http://web.mit.edu/kerberos/dist/krb5/1.12/krb5-1.12.1-signed.tar
|
||||
_eclasses_=autotools ebea507d219855923e3438c953cf4ab8 eutils 06133990e861be0fe60c2b428fd025d9 flag-o-matic 75e24bac8423c515dd9c5717f08feb83 libtool 52d0e17251d04645ffaa61bfdd858944 multibuild 46527a4656956da3d58acff72c9b59b1 multilib 3bf24e6abb9b76d9f6c20600f0b716bf multilib-build 9eb4b5fb858228316d8bb32ada51f6a5 multilib-minimal 5bbdc77877c1aa3c6bd89ca3f9196d11 multiprocessing d7f2985a2c76c365ee20269db5261414 python-any-r1 4560effd96d3d2a82e50af7cf87166da python-utils-r1 47dda904cf91c61f45b564d9f834fde1 toolchain-funcs 0f1760274637a138b99bb649202ea402 versionator cd0bcdb170807e4a1984115e9d53a26f
|
||||
_md5_=ad7b79b3e899ef345b5d632eff722fea
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue