parent
f541ef9eec
commit
5ce10219f1
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 28769 BLAKE2B e669e9448bdda03c0592d83aa2404a8a6e8498feb1d0a62f9979eeb5084f32262075f19a10853b2698cb70f1f9e1f2e3f653e82c043564816732f1e868d8589c SHA512 e28fad878159d57e3b0f76090fd1263654a435fe22276b7c826f0b579b3b876a95166feef9a3ba3231d2b1cf2feadf4d8bd434b13032c7bb62d2caa458dadfc7
|
||||
TIMESTAMP 2018-08-09T07:08:40Z
|
||||
MANIFEST Manifest.files.gz 28768 BLAKE2B b25a061ce010457eed557ae5cf2df9cfad857ac28e385ea342a891fd890ffc84dccb051f1f13ad723a4a95cb98cc67bdc914e0477446cb13a578c19766394340 SHA512 8ad391bb7550fbeb9beaee0c406bb63361eb22ebb7a7b2c56e4fe19ab16b9364e200ab843c41c471f3e16b76f0c8d494fcf4ee2402c6780c259db263a47ac03d
|
||||
TIMESTAMP 2018-08-10T05:08:40Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAltr6HhfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAlttHdhfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klDPmxAAmhR0sGCbt5hjydH0yq1Tw3GLUCw8kdHy9zC7y9JhJnuqUJ18A1eomJba
|
||||
0tE/6pxK5aUhZPDA/jwohTmfmOaSiR3a7Sz3xlFscuI06c2LAK5eV6o0LxYuNOmE
|
||||
VKezuPyrt6D2YJy3hPLLUlAZVuLgXg4vLORufHsuLPuU560mKwY+1tPdGylYHR0P
|
||||
mkeL86HvheW7W8YzHO7revQfOOlY/If3AwrxcaTos9Prvh4ZtI+1/AZpmO0A2tt2
|
||||
sQybPRa17HCL3yBvDjF/JX6J8aWMEJrnkLzwzEIWKJtEz7N0ZIcwNw+o4RPm7wu0
|
||||
V52j2MrQuCzPIeyEfFOcZJZ6YTY6/RvKU1DeH4pqBn4AnY9TGJ5ZrVCCHZYDAfcw
|
||||
fP2LE9WE1wrbc3EH+Mo6yLitb+8ZqRgqX8DmrqX6hB6ltncXSRb4WIGa4eQk+VJp
|
||||
rkhyeYjyASojaNme6KTNt5oEG89iliXlnZaEQn3Pa0ULseS8SUYfA/tx+EOd7pqh
|
||||
WDzgffTZzO5GS1jE73KP7+yckeMNg6UPII5zhkYbJWyfp8Sm4U9CuX2M98cB6V8Y
|
||||
WRG5XepES72Oov2wAZUoNMLIZHRm6LvLxiAqE0v/6K2G6s76zlxA1/qOpxHGPLDk
|
||||
a3WGJO6uKgPP+DJ2TiuhZ2oDXbHxt5csTJ/x+2U3KnIvuDv5ZrE=
|
||||
=PGrl
|
||||
klCNzhAAqQT+ZKAhTKk7ziboyRd6SP+H0QnMa35oH+ghoWqI/d9xzxwZgFQJ40kW
|
||||
ks3uxCf31DwHiztgUN/IT6Fo1g0SGqifKSYxf6TPTyGFtJOw+0fEifvMWTe/1uB3
|
||||
8ilY/IuMkcAazr0O0WQ5u0p1u1+wzLvnqgcjWey1GV7ICAWBpj+5lLD8ENei9Wya
|
||||
V/Kd2lDlefJq8+T6xIJ2Hkz0H+pIys8+YkyObj4GF3WzauwjQXKes7assS76AKpl
|
||||
YFgdPfGxo49m/Qk91gV8ctKmXR9FRQGJEFU7q2gECkdZotxKotuU95UwDv0g8ZBd
|
||||
4EVSHyRdnraz///g14vIOOLxl9WHoQGyN1ZrB9HjutFC1l+jzjfv1iRxxVyJGCRm
|
||||
DLRC2zEdocce0xfCRJbTe7GVjYGBd2csI5WC2NxxIU/Q38Y5eSKZdtkFAFOYVJlU
|
||||
BGLKjBgIjlvrJ1BGpipPl1jXVz88imTzNvw291Mm69VfSduFky9S/zqOReYfD3Kx
|
||||
Ztj5TGE2PkujKDSQx6MxtsO8QTgPQzddg6vkkacHrBMfZj413g+A8Y0PuDyfAd9w
|
||||
B6R4qI2b2XTaR9Hj7X9WX3xqXQTViCna6QgG6pQyringXsBWAlca6p23tY0XFlHv
|
||||
4b3zR/GtwAVq4lsKyK+2yFT26NBUO7kYHsqdmKJaRwk9tqEFJNU=
|
||||
=5cAv
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,61 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
MY_PV=${PV/_rc/-rc}
|
||||
MY_P=${PN}-r${MY_PV}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="https://www.mongodb.com"
|
||||
SRC_URI="https://github.com/mongodb/mongo-tools/archive/r${MY_PV}.tar.gz -> mongo-tools-${MY_PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="sasl ssl"
|
||||
|
||||
RDEPEND="!<dev-db/mongodb-3.0.0"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-lang/go:=
|
||||
net-libs/libpcap
|
||||
sasl? ( dev-libs/cyrus-sasl )
|
||||
ssl? ( dev-libs/openssl:0= )"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# 1) ensure we use bash wrt #582906
|
||||
# 2) do not substitute version because it uses git
|
||||
sed -e 's@/bin/sh@/bin/bash@g' \
|
||||
-e '/^sed/,+3d' \
|
||||
-e '/^stty/d' \
|
||||
-e '/^mv/d' \
|
||||
-i build.sh || die
|
||||
|
||||
# build pie to avoid text relocations wrt #582854
|
||||
# skip on ppc64 wrt #610984
|
||||
if ! use ppc64; then
|
||||
sed -i 's/\(go build\)/\1 -buildmode=pie/g' build.sh || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myconf=()
|
||||
|
||||
if use sasl; then
|
||||
myconf+=(sasl)
|
||||
fi
|
||||
|
||||
if use ssl; then
|
||||
myconf+=(ssl)
|
||||
fi
|
||||
|
||||
./build.sh "${myconf[@]}" || die "build failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/*
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
DIST sudo-1.8.22.tar.gz 3029051 BLAKE2B c77e05b6e9cee738902d6289327fb5d34d19833d96597f983d8af01434d224dd698f9257b0965a0e480e8d19eb38eef0c8216942ca5217c3fe7516cdf397f7b7 SHA512 5ce10a9302d25bb726e347499d26a0b3697446cfcdf0fd9094ee35198db7b023d5250a53fdcb4184d1a09f5fd2a78fc645bc8e80f265666b05a91f62f49b0695
|
||||
DIST sudo-1.8.23.tar.gz 3150674 BLAKE2B 11b1c7bfa372005cda8baf651c4662f6fd15e94ca77f7705b23ca6573424796d5c1f8e47e2874c4b54017141d01a632885ac60c92346d932537048373cad0ede SHA512 a9d61850a4857bfd075547a13efb13b054e4736e3ebe3c8a98a90a090b1d9b9688354ec9725fc99d1d256999b6f9c6ae6215ce9770fcdebd7f24731107b48342
|
||||
DIST sudo-1.8.24b1.tar.gz 3167476 BLAKE2B 23fa302773733ac84f36af006076a367c8201ed238f43007b9fff504ead6b8845614c0180aa1cfd33b7fb7082437b9701ff6e4da8df44e97f34a0084a0920feb SHA512 92746df75b32031ef890c48fe0383001640c8470bae841f2277f42008eda4e86b0ed0494ceb0a9e1ac7a7510375c9a7c7d23ec3e84a42e94d457f6771170357c
|
||||
DIST sudo-1.8.24b4.tar.gz 3167803 BLAKE2B 03e4ca426ee000d9a4ae8eb020fa081e0580634f036923cf3107c44dc18be7c5fa82169430c82f2b4d2d6dbe5041a63ecd4f91d6e0cb28cce9a94b1ed48fbc4a SHA512 743adfcc7fd5bfe838dfcd362ffe8daca54964d74318732cfe068e0331aa07feb8b3b9e6a98f4616b49b19f076a43dd62c068b6bde2cb24fa4f2b8657ddc215d
|
||||
EBUILD sudo-1.8.22-r2.ebuild 5990 BLAKE2B 3e9d5827271f71362f4e3a9664e6f22437764a49fd2c20c79d2e8c211058627bf288b885b65a8a3ca4768460074871d0269c13cddd186605f063bbffa7d39f50 SHA512 a165bdbca3ce48e969bfa9fc2d8d1768343fd3570735ab874237c0a0378fd0b3ec64820586d9040fe4ad19ae91ddad0a62e04626e3c4b38c336a44bce47b7690
|
||||
EBUILD sudo-1.8.23-r1.ebuild 6154 BLAKE2B ca5c41cb76ca84b961cd1397bcf7914285347a32cc3a0bfe8385b0441e61e1995dc10c80b237cd55690f3f4e030f0c9ce0697b35bd79a37dc040a0de8f7e51d1 SHA512 08c9ca2d25a364a24325af96536996ce297c099e3632a4316467ec8abe5c27578e376607eee94a57c7a4c4ca444db4ca33879af9b745472ffb8766c48aeafa4e
|
||||
EBUILD sudo-1.8.23.ebuild 5962 BLAKE2B e65fc8e35531d64bd7ad8bc3954018164359513b54b2868f2215006a4dcc907d1355fec8c1b3327fae57f2642e72e99ed11709281a88579d68c53629bcf5841f SHA512 a83a23a13b892f661bfd467078e2b390d455d2e3228d60e1045a58091724c6939daa063549a66b669b8240d90cf69bb28812d5b9db91ffd34acf17bb005afa4c
|
||||
EBUILD sudo-1.8.24_beta1.ebuild 6154 BLAKE2B ca5c41cb76ca84b961cd1397bcf7914285347a32cc3a0bfe8385b0441e61e1995dc10c80b237cd55690f3f4e030f0c9ce0697b35bd79a37dc040a0de8f7e51d1 SHA512 08c9ca2d25a364a24325af96536996ce297c099e3632a4316467ec8abe5c27578e376607eee94a57c7a4c4ca444db4ca33879af9b745472ffb8766c48aeafa4e
|
||||
EBUILD sudo-1.8.24_beta4.ebuild 6154 BLAKE2B ca5c41cb76ca84b961cd1397bcf7914285347a32cc3a0bfe8385b0441e61e1995dc10c80b237cd55690f3f4e030f0c9ce0697b35bd79a37dc040a0de8f7e51d1 SHA512 08c9ca2d25a364a24325af96536996ce297c099e3632a4316467ec8abe5c27578e376607eee94a57c7a4c4ca444db4ca33879af9b745472ffb8766c48aeafa4e
|
||||
EBUILD sudo-9999.ebuild 6295 BLAKE2B e89dc623a7ada1424bedc74284b9acfa1f377ff4265a88dce4025c82f4cfe8b46a95b2c8c6d81e35b24f3b5f9386debfd1a1999a43c61a569bce7f30055f3138 SHA512 42fdb1275318ed17354ecf4765c5ce1cc4dbcdd2149f007bb48cccb01306f1b779f10ad62be60b4bd680b045d3e59bebe8f4a9cacdc99614f8f60be7a232b7b3
|
||||
MISC metadata.xml 989 BLAKE2B c7f7d49fda7750b172dd4b2e5c3fc5f1f3dd602b6347479834bf6444c9311738bcd10fbbba100cee45c97bb899e53f3c113abc61ee89b3353b50876c30966589 SHA512 bc9addd017e474acbc753d6d2cce5d77281a3c1f0857de538168eb1a7b80e0d0b313ad2b03cc710b483cc9588dcaf0208a5b8aaccea18e2ca51b567020bea9ec
|
||||
|
Binary file not shown.
@ -1,5 +1,8 @@
|
||||
AUX 50gnuserv-gentoo.el 237 BLAKE2B 53e2fb102e832b852ebd23d3a7cda10a1cde7e1733818dd357edaa0ba67e66d925ea589195dd5b797ba37e62f44e26706669594f875409fb6afb294bba05d549 SHA512 24edf596178da29d68add510382241bf257ccb6ed0f9bd1aa65a2bda268b2fa506be616f70c75628d82cc8fda06617f5a4b58e602a9dc082476ac4ad4f0e047d
|
||||
AUX gnuclient.desktop 608 BLAKE2B b50695688d76ec34dae2fb68b4865769ab531a2a5add76a48c71eac6542ea3736f6e2239f1b05775e88bee3bc2ccfc6e50bc0c49a6eacbb277d822bb2cfb3003 SHA512 35616b5fe182f4127635454f4af89b307c0c52653878ef163efee4741c4b5fe5ab88d78f89ebfe499cc02516d2a7093c49dc2232a2768e952acd61651ff16468
|
||||
AUX gnuserv-3.12.8-backquotes.patch 521 BLAKE2B dd2d150bc56e5f7cdc699fb0876bdcff014cb456f1362c7f050224c359567d4235c056a7dce63b00301abcf70f44723c20e511b76b011f84cf4e329861cd031f SHA512 ae68d03e5cd7be4e178a7eecb581487e39b1fb1ea06ea1990054eb14e1b30be4123d6e2cc309ca96a47f71ad4c9351aec7dd6e4f7e6ace801da3b02d96cf0bbe
|
||||
AUX gnuserv-3.12.8-process-query.patch 554 BLAKE2B 94f09a1e86ea787a05e51ed5e2742174067b7cca0fbe2fe83619b6f829048172a9e46f70f8e2c22f2787f43390730f07520553e7d659ccfd451869b1a074d707 SHA512 bc01b928003cf5050934972eeb7830b14957693c1484b061dbcf1809176388b75297b6884b7f5c963e59d8ec4a7cc4d9bf9ec265b414574a7de6bb5875f6b607
|
||||
DIST gnuserv-3.12.8.tar.gz 124070 BLAKE2B 7531d85f6cd1873f75499c37230907f96ac484e1d58a4a3459f44d3bfaa6a6124d44f99a7c27d1fa3deb16b1cc29d08313b911cdc1782a1c5b24bd702ef4c9ba SHA512 e8f387a554c22fb2eb166d388085b9d68a0d865ae56ab71f3ffe09ff46bef04a4ba5b05ca51a1110e1dff67ae2cd6acc8b18a0fb9df9299dbbf4a001f0924f31
|
||||
EBUILD gnuserv-3.12.8-r3.ebuild 1548 BLAKE2B 2e959c2585f0c3000fae5129cdef1f33c67f9cabbea1242ac71b8ce9d5087579232fd1afe24357adb407e0855318e47c735b6c36c15eff94370e8a4b02a2c219 SHA512 5f36aaa6cfc4e643b7a8ed019d3063bd58f0730a86120772af34e749f537680619014097336353a631902fc8ecffdda763b9ad3aa17f17c255b1663964c9be71
|
||||
EBUILD gnuserv-3.12.8-r4.ebuild 1641 BLAKE2B b835ed957c90b8734014039e2d8e2f68f00ed67d66fb7290f0be9f6c03d5b95e083c9a597ee945ea578bbe69ec61f740d3965006fe85e7caa4a0c1d817209baf SHA512 405540bb8612a87a923cfde83e0fceb1ef207a0d2948cceb5271ac515ea417ddc4541bc5adaa480813b2734dae862554a31970d6c3fef25d0d830b26454e9eca
|
||||
MISC metadata.xml 259 BLAKE2B 3e6f3a8d36eff69f3dc47c089b6b31bbd853db73e3ec9e6534f068caacea5f1651547da161de8ecd712c6937cde45f5a4a39ab5025633f09c791e5a4f498a429 SHA512 9a5c456aae7919a4cdbb10b67a27c232daf2ec6db4202e04ba6d5873242fc982a659410443dd6fb4498d42af00b495acc51a6a2cbe12aeab91b585dfac7233a3
|
||||
|
@ -0,0 +1,16 @@
|
||||
Use new-style backquotes, to make it compile with Emacs 27.
|
||||
|
||||
--- gnuserv-3.12.8-orig/gnuserv-compat.el
|
||||
+++ gnuserv-3.12.8/gnuserv-compat.el
|
||||
@@ -193,9 +193,9 @@
|
||||
(defmacro defgroup (&rest args)
|
||||
nil)
|
||||
(defmacro defcustom (var value doc &rest args)
|
||||
- (` (defvar (, var) (, value) (, doc))))
|
||||
+ `(defvar (, var) (, value) (, doc)))
|
||||
(defmacro defface (var value doc &rest args)
|
||||
- (` (make-face (, var))))
|
||||
+ `(make-face (, var)))
|
||||
(defmacro define-widget (&rest args)
|
||||
nil)))
|
||||
|
@ -0,0 +1,14 @@
|
||||
Function process-kill-without-query is obsolete since 22.1 and no
|
||||
longer exists in 27.
|
||||
|
||||
--- gnuserv-3.12.8-orig/gnuserv.el
|
||||
+++ gnuserv-3.12.8/gnuserv.el
|
||||
@@ -738,7 +738,7 @@
|
||||
(start-process "gnuserv" nil gnuserv-program)))
|
||||
(set-process-sentinel gnuserv-process 'gnuserv-sentinel)
|
||||
(set-process-filter gnuserv-process 'gnuserv-process-filter)
|
||||
- (process-kill-without-query gnuserv-process)
|
||||
+ (set-process-query-on-exit-flag gnuserv-process nil)
|
||||
(setq allow-deletion-of-last-visible-frame t)
|
||||
(run-hooks 'gnuserv-init-hook)))
|
||||
|
@ -0,0 +1,71 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit elisp multilib desktop xdg-utils
|
||||
|
||||
DESCRIPTION="Attach to an already running Emacs"
|
||||
HOMEPAGE="http://meltin.net/hacks/emacs/"
|
||||
SRC_URI="http://meltin.net/hacks/emacs/src/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86 ~x86-linux ~ppc-macos"
|
||||
IUSE="X"
|
||||
|
||||
RDEPEND=">=app-eselect/eselect-emacs-1.15
|
||||
X? ( x11-libs/libXau )"
|
||||
DEPEND="${RDEPEND}
|
||||
X? ( x11-base/xorg-proto )"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
eapply "${FILESDIR}"/${P}-backquotes.patch
|
||||
eapply "${FILESDIR}"/${P}-process-query.patch
|
||||
sed -i -e 's/exec gnuclient/&-emacs/' gnudoit || die
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf $(use_enable X xauth) \
|
||||
--x-includes="${EPREFIX}"/usr/include \
|
||||
--x-libraries="${EPREFIX}"/usr/$(get_libdir)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto /usr/libexec/emacs
|
||||
doexe gnuserv
|
||||
newbin gnuclient gnuclient-emacs
|
||||
newbin gnudoit gnudoit-emacs
|
||||
# Don't install gnuattach, it is not functional with FSF GNU Emacs
|
||||
|
||||
newman gnuserv.1 gnuserv-emacs.1
|
||||
echo ".so man1/gnuserv-emacs.1" | newman - gnuclient-emacs.1
|
||||
echo ".so man1/gnuserv-emacs.1" | newman - gnudoit-emacs.1
|
||||
|
||||
elisp-install ${PN} *.el *.elc
|
||||
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
|
||||
dodoc ChangeLog README README.orig
|
||||
|
||||
if use X; then
|
||||
domenu "${FILESDIR}"/gnuclient.desktop || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
use X && xdg_desktop_database_update
|
||||
eselect gnuclient update ifunset
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
use X && xdg_desktop_database_update
|
||||
eselect gnuclient update ifunset
|
||||
}
|
@ -1,4 +1,6 @@
|
||||
AUX 50mailcrypt-gentoo.el 38 BLAKE2B e96c6cf48d1522d89450e11d339c76210c672377208b56951791b83c6ef22b2c872d313084e199dd5d7b533a99106a87dbc7f15b5ee6126f71bf5f2e84165ffa SHA512 5c00bcabe2d7cc03013dc7a54b2c653940c08098ca5646d7c73624cb1ca04376ae9dcf88a7166b1925c69f0c5d192d90f6bd790fdef8ed8c3b0f9d163c987da5
|
||||
AUX mailcrypt-3.5.9-backquotes.patch 424 BLAKE2B 841096ec6593ba9296340356082ff2569bb8d3f08d565c9ac0d750994bf2bf27b3215b1d916298b6fca790c8ab0653a427cb4722011e88a459b8b2447e042c62 SHA512 e0fbecbeb6e10d183747e8c86dd2ca6c9c01340a0109c1eacec17dc1ed7139197074a8985938ebfb79d7ddecb6c2f9da405110ac5fe6f67be7ade3df75898a81
|
||||
DIST mailcrypt-3.5.9.tar.gz 172073 BLAKE2B 02a911c0676464a670754cf8ddfccefa1ab9c69c680911ce63faa0affe6d3f72ad7d409f716a1edf326225f3378878caedfd4194201894baf05110d26acba533 SHA512 df6524ecc42d4c7bdddb34439186690192bc4091a1965e405223106fc71047c33e4bbbd571b030c326efec46961ba0aefd018ff1205d230dc74c34daf93ba079
|
||||
EBUILD mailcrypt-3.5.9-r1.ebuild 1004 BLAKE2B 7f104dffd7b219f2add3b3cafb0af0f0800e30dc0c5427e7dbb74f7315abf99b800edb9424ad63f37c845cb55cb70dc56b94f007a4a29674ffce22daca0f44a3 SHA512 886d318ecf3c8c22c963604a786e5ae6cbce1a64e776504ca772bf96ed08713bec424498faf72db37cddbb1527be2c085781931e8d49c6eeda719af5f43bb134
|
||||
EBUILD mailcrypt-3.5.9.ebuild 900 BLAKE2B 45617c73ae1975ea32b119249b9f0fa46269849e97bf5479d77cc343bc152ac45070755ff9647338955267da4cbeb35678dcc7c535021eff5858f8a521f5c552 SHA512 ef84ff8a3cf59bfd733d4691583ad481738e73af83ca24a3b2632579607fcedf8aa0da5eff7407ed1459186ab5f6a7750e6e008793828ced6aeadb617138cb26
|
||||
MISC metadata.xml 359 BLAKE2B 115dd3e46859edda7ac4b23892ba3fd9f76e2a0aeb0f667a37c0a410959048a3a99ddbf052155fdc55bb18cc5fbd8a72af18f7c4b312ddd9f27a25c454662c9b SHA512 0a6b9ca1957a37fcdcf322663a6ae5dcfa9f00810ca7f68548acb9386edcc78f0b7d01f1cd6b2bcf2d9f05a6d34b7add17e9418329072d184c7840aed0f50eb1
|
||||
|
@ -0,0 +1,11 @@
|
||||
--- mailcrypt-3.5.9-orig/mc-gpg.el
|
||||
+++ mailcrypt-3.5.9/mc-gpg.el
|
||||
@@ -108,7 +108,7 @@
|
||||
(defmacro with-current-buffer (buffer &rest body)
|
||||
"Execute the forms in BODY with BUFFER as the current buffer.
|
||||
The value returned is the value of the last form in BODY."
|
||||
- (` (save-excursion (set-buffer (, buffer)) (,@ body)))))
|
||||
+ `(save-excursion (set-buffer (, buffer)) (,@ body))))
|
||||
)
|
||||
|
||||
(defun mc-gpg-debug-print (string)
|
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit readme.gentoo-r1 elisp autotools
|
||||
|
||||
DESCRIPTION="Provides a simple interface to public key cryptography with OpenPGP"
|
||||
HOMEPAGE="http://mailcrypt.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/mailcrypt/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="app-crypt/gnupg"
|
||||
|
||||
ELISP_PATCHES="${P}-backquotes.patch"
|
||||
ELISP_REMOVE="FSF-timer.el" # remove bundled timer.el
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
elisp_src_prepare
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export EMACS
|
||||
econf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake \
|
||||
lispdir="${D}${SITELISP}/${PN}" \
|
||||
infodir="${D}/usr/share/info" \
|
||||
install
|
||||
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
|
||||
dodoc ANNOUNCE ChangeLog* INSTALL LCD-entry NEWS ONEWS README*
|
||||
|
||||
DOC_CONTENTS="See the INSTALL file in /usr/share/doc/${PF} for how
|
||||
to customize mailcrypt."
|
||||
readme.gentoo_create_doc
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
DIST sunpinyin-2.0.4_pre20130108.tar.xz 964764 BLAKE2B 2c9d2e3fc02009ad10784c9408434c6806d1403026fb27629701650fe0e8a69c5580050846cf5c3b870215b8bfd68fe9c52d8bdaf83c41e523224463af9cf530 SHA512 7c1dd7db8b800e9d436746a560a16de2c6777576868f2e7e28f6dcb767b91ccd62b974f9d4ce6bd6ce80d30e1ee83887c3ee03c227e7e9fa59c01db4867465b2
|
||||
EBUILD ibus-sunpinyin-2.0.4_pre20130108-r2.ebuild 1080 BLAKE2B 4403780f922c47cdda854d49666869696e88b6641af9db951c62eef14fba97acf824761bee5485c1e1075ce43ae17bce1174a63d9d13d136bbc11d699a9d0b56 SHA512 e76aefc9199e00ced36d430bf40b82dcdd44de91786a6283f7712efd7fe0c505ba71b5744b427226b38555e989867ec57a918b0069112be83b2ecc7079922577
|
||||
MISC metadata.xml 313 BLAKE2B e3d71fcea434a51c92b8194791283c33981d3c4b44bda0df1e70b561517c228daebdc713327171192e1523b7ac2f91116a030bb729eb143606810e6ef5522ce4 SHA512 61d943d4f8b8ab912ced89b69be51ad2792ba67672e969f4e32fba373f7133181c1080ba9a2603e3f7623ebac42e32eb3e0e429d66846ab4c7e13afbc0b05974
|
||||
AUX ibus-sunpinyin-python3.patch 388 BLAKE2B 35131840c58bc47980dbbe046723217afb8926f61de601d664524b961c80f718753e41a82b7cdcd8b137d71c97ad84b91a3b71677610b2f369f9be2da2582185 SHA512 90c7d08588e996e7df966f9ee4b3b044a038392a0f3f074f4803b45a6579ad774119a3c700167924f073a3109f8172f8fea12129c2eb36e914b89eb68cc5a7dc
|
||||
DIST sunpinyin-3.0.0_rc1.tar.gz 547138 BLAKE2B 682e733241d690d1fef8ce452c497a894c5ab61bf5298c1f292ce3a25a681d594744db43ebd51b3e59274cce0e47a1bce15a793f2c20e2998915c3432f2a7c32 SHA512 c9d4936de5835a7f02e52c5b32bf1a42d76bf7588449aaa813f3df7ab2d72f3ca0f4e18f74a60be4860f0724b5e05cbe567c67e6f3150b0e71b23b3a9002fc5e
|
||||
EBUILD ibus-sunpinyin-3.0.0_rc1.ebuild 1287 BLAKE2B aa4e01e681c5bedcbb6e5502bfd5c1868293dd0223fd7f1ada3ad03eababd4311e651a88f6c0af854fef1517fc9a978da2554220d0361d35e18f1ab5f2990c30 SHA512 76a496271a1c0078fde67c988b418fd67316901266062d265af124182fb7ade521fee0eae33973fbb4353442f36cb384b4163577558fa515854d8289d13cb704
|
||||
MISC metadata.xml 318 BLAKE2B cd239258d08a95f0d27a760678be36731954a721daae521d147b882fd07eb5206a38ce9ac9938e94e3501611cd95aba5699fb2e5a5176f3652e8e5531e5e4cf8 SHA512 44d76425ce41ba6cb84f584c7dfe3b0552eb65aec93b4ed72f9c2e6c153e5e51a3965bf4248486046d3ca9e39f861c3bcde90424ba35e4a57f2102a24faf0df5
|
||||
|
@ -0,0 +1,16 @@
|
||||
--- a/wrapper/ibus/setup/main.py
|
||||
+++ b/wrapper/ibus/setup/main.py
|
||||
@@ -37,8 +37,11 @@
|
||||
import sys
|
||||
import os
|
||||
from os import path
|
||||
-import gtk
|
||||
-import ibus
|
||||
+from gi import require_version as gi_require_version
|
||||
+gi_require_version('Gtk', '3.0')
|
||||
+gi_require_version('IBus', '1.0')
|
||||
+from gi.repository import Gtk as gtk
|
||||
+from gi.repository import IBus as ibus
|
||||
import gettext
|
||||
import locale
|
||||
|
@ -1,49 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
inherit python-single-r1 scons-utils toolchain-funcs
|
||||
|
||||
DESCRIPTION="The SunPinYin IMEngine for IBus Framework"
|
||||
HOMEPAGE="https://sunpinyin.googlecode.com/"
|
||||
SRC_URI="https://dev.gentoo.org/~jstein/dist/sunpinyin-${PV}.tar.xz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+nls"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
app-i18n/ibus[python,${PYTHON_USEDEP}]
|
||||
~app-i18n/sunpinyin-${PV}:=
|
||||
nls? ( virtual/libintl )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )"
|
||||
REQUIRED_USE=${PYTHON_REQUIRED_USE}
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
mv "${WORKDIR}/sunpinyin-${PV}" "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e "s/python/${EPYTHON}/" wrapper/ibus/setup/ibus-setup-sunpinyin.in || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CXX
|
||||
myesconsargs=(
|
||||
--prefix="${EPREFIX}"/usr
|
||||
--libexecdir="${EPREFIX}"/usr/libexec
|
||||
)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons -C wrapper/ibus
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons -C wrapper/ibus --install-sandbox="${ED}" install
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
PLOCALES="zh_CN"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit l10n python-single-r1 scons-utils toolchain-funcs vcs-snapshot
|
||||
|
||||
MY_P="${P#*-}"
|
||||
|
||||
DESCRIPTION="SunPinyin engine for IBus"
|
||||
HOMEPAGE="https://github.com/sunpinyin/sunpinyin"
|
||||
SRC_URI="https://github.com/${PN#*-}/${PN#*-}/archive/v${PV/_rc/-rc}.tar.gz -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+nls"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
app-i18n/ibus[python,${PYTHON_USEDEP}]
|
||||
~app-i18n/sunpinyin-${PV}:=
|
||||
nls? ( virtual/libintl )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${PN}-python3.patch )
|
||||
|
||||
src_prepare() {
|
||||
sed -i "/^locales/s/'.*'/$(l10n_get_locales | sed "s/\([^[:space:]]\+\)/\'\1\',/g")/" wrapper/ibus/SConstruct
|
||||
sed -i "s/python/${EPYTHON}/" wrapper/ibus/setup/${PN/-/-setup-}.in
|
||||
|
||||
default
|
||||
tc-export CXX
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons -C wrapper/ibus \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir) \
|
||||
--libexecdir="${EPREFIX}"/usr/libexec
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons -C wrapper/ibus --install-sandbox="${D}" install
|
||||
dodoc wrapper/ibus/README
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
DIST ibus-typing-booster-1.5.38.tar.gz 6408096 BLAKE2B a4559044a4cd06c5dcf69d77d5ec3d8163d564702ff88d3ed11b8c073f5272e2cfab446de548a29887b74767f4318db98fb898dc4d15488fd4c9963cea151009 SHA512 67b81a47501ae4e885d2a79b122799b78dcdd044ad8e36a140d4c6587a23072d08e3e025f755c191cee82c3ab81ea1a974a5a0f6438e7203ba2d63d7e1cd4eff
|
||||
DIST ibus-typing-booster-2.0.0.tar.gz 5689495 BLAKE2B a3ee39faf206c4681d10989d4e438cffc0b78d9339973523af61310482b3ec13c7935e9e49403a3359e0f32d087b72afb27ae7975dcd3abd427b9a0f5f0ba581 SHA512 140044be13b47590a0835bb4b8da7311cdb92e8134a88a7b999ea6f530298950c4f8ce9ff3462394e4b52de0c56e3072671da85c99b448a91f442fdc460c608b
|
||||
EBUILD ibus-typing-booster-1.5.38.ebuild 860 BLAKE2B 7b813a51e80a378e694d3b9d6c3268e7d32d497d9fd62fa78f5239dbe1025dc79ccbfa958d2fdfc7e73be9dbe8bbb75efa29e4a12e41ec679b2efafd94a8e065 SHA512 fa03b6fb55e7505dd13e4aaf830444ea8f25c19089901528c4646611193f8002a0e860f09ba0bc5ca44c5e5cacbde1c3002220ee7e323239ca7c580c5216be2e
|
||||
DIST ibus-typing-booster-2.1.0.tar.gz 6054311 BLAKE2B c0eef436e89e1de56d47713b2c5685d15cddc08d744926b69e6d0d1d7bd7548614009f489d6ae2579482d4d770b62e51cc76734ab3866451ec4fd4d51c84d59b SHA512 7d1b8d0761bdd71a3c72a60d59e0f7f1c94c8c8863b2a1cfb4ed7742060482500d43d7f71bc328a50628a9c116297695813651d7712b88cf7e8594118c4b339f
|
||||
EBUILD ibus-typing-booster-2.0.0.ebuild 860 BLAKE2B 7b813a51e80a378e694d3b9d6c3268e7d32d497d9fd62fa78f5239dbe1025dc79ccbfa958d2fdfc7e73be9dbe8bbb75efa29e4a12e41ec679b2efafd94a8e065 SHA512 fa03b6fb55e7505dd13e4aaf830444ea8f25c19089901528c4646611193f8002a0e860f09ba0bc5ca44c5e5cacbde1c3002220ee7e323239ca7c580c5216be2e
|
||||
EBUILD ibus-typing-booster-2.1.0.ebuild 860 BLAKE2B 7b813a51e80a378e694d3b9d6c3268e7d32d497d9fd62fa78f5239dbe1025dc79ccbfa958d2fdfc7e73be9dbe8bbb75efa29e4a12e41ec679b2efafd94a8e065 SHA512 fa03b6fb55e7505dd13e4aaf830444ea8f25c19089901528c4646611193f8002a0e860f09ba0bc5ca44c5e5cacbde1c3002220ee7e323239ca7c580c5216be2e
|
||||
MISC metadata.xml 331 BLAKE2B 85b93b548e9cbef93b09e59ebf23c10b1cb4c392bcb6aeeab697cdaa775afa06874b5a6965ab09ffd8c937a0842699cdb27ad70c6146d5c37b516d82a92c80b2 SHA512 e0524c2ebad138f51a5d79d639e809196029a83f46dc331c2bd21d94417d5adf8d059f15694b484f4fcb107dff2aba7d3ad4c87a19accaccf75429bfa2c92b63
|
||||
|
@ -1,4 +1,3 @@
|
||||
AUX scim-sunpinyin-2.0.3-force-switch.patch 947 BLAKE2B 0abc3eaa4f217ad33af87a7b2fa3d0c2bab90ea8540d61faa915fd0c673dbf49905d661da1128330aef16b84925fb9da2a25f75342c233fd364151625da09501 SHA512 8a3600507534dda5854465569127a7863fcbcd318542d319e814634e8fea10f7105469717e7141f831385c5e64a910aee0d442d7eb663e0cb46e9c6b9464ca7f
|
||||
DIST scim-sunpinyin-2.0.3.tar.gz 33072 BLAKE2B 06d9bff2eb35b06a49f6be60c8cd5d257f6ca724f03acc01b29b01fd32c2d95bab87c4737448a448a42a58d070f6b254bcf52e6d0c8b98ff10718d2265e43509 SHA512 f983d40972c5792a4a27fdf699cffc7f6882c84060cfe3e260cdc3f587743b0f71339ccdb7067b393f88a69b74d999fba70c4d9bc8016b9b217b3c11667a2986
|
||||
EBUILD scim-sunpinyin-2.0.3-r2.ebuild 639 BLAKE2B 8641ce645f95d0ccf073d47edcd0a182295676f614d905b7b3233ea8ec093621a621b6b55b59649755d017c1fe684a96cd0df3577b585e1036d83e1ed8dfd933 SHA512 868c215144512f3e91b05fb94d23bf9b81163fed23b79e9f0c782e3e50c8c0f5f22a7468206006c093a5677f65a4b01f86b74da7d4f3b4d96359110b83a910f8
|
||||
MISC metadata.xml 313 BLAKE2B e3d71fcea434a51c92b8194791283c33981d3c4b44bda0df1e70b561517c228daebdc713327171192e1523b7ac2f91116a030bb729eb143606810e6ef5522ce4 SHA512 61d943d4f8b8ab912ced89b69be51ad2792ba67672e969f4e32fba373f7133181c1080ba9a2603e3f7623ebac42e32eb3e0e429d66846ab4c7e13afbc0b05974
|
||||
DIST sunpinyin-3.0.0_rc1.tar.gz 547138 BLAKE2B 682e733241d690d1fef8ce452c497a894c5ab61bf5298c1f292ce3a25a681d594744db43ebd51b3e59274cce0e47a1bce15a793f2c20e2998915c3432f2a7c32 SHA512 c9d4936de5835a7f02e52c5b32bf1a42d76bf7588449aaa813f3df7ab2d72f3ca0f4e18f74a60be4860f0724b5e05cbe567c67e6f3150b0e71b23b3a9002fc5e
|
||||
EBUILD scim-sunpinyin-3.0.0_rc1.ebuild 910 BLAKE2B 455568a0c21627c509a562ef3a97608d0e78cce4ea38dbf2c72a0b170236cdb6a291a741af155f614636e534a501378c6b6ffb059b3961c64fdc7eea3f9f53ac SHA512 04cd0eb615f9411c2558537f8c10bdf869b50d36081979364f047cd509d76f6607f5cfeca213766166185e5dd557b4ce3432315f0aefd8a0f8bf4c3254d2e33f
|
||||
MISC metadata.xml 406 BLAKE2B 55aef3d62cc43c2efd86bf7d304a43fa5e5f71cc59e61f1c056e4c18a262c7e1ab8c81adb145ca0e278cb305ca226bee14d6be8704daf1acac04a558a848bd9b SHA512 b3b071ec496cd0a107862810a3b65f31838111dc8be01d2050428043ac11ff5e4fb5950e8ac7fe7d7036879146c14ec182d685451f73b4d2dbbb49386cb82db1
|
||||
|
@ -1,34 +0,0 @@
|
||||
diff --git a/wrapper/scim/SConstruct b/wrapper/scim/SConstruct
|
||||
index 7739300..ef7c69b 100644
|
||||
--- a/wrapper/scim/SConstruct
|
||||
+++ b/wrapper/scim/SConstruct
|
||||
@@ -3,7 +3,7 @@ import SCons.Tool.textfile
|
||||
|
||||
locales = []
|
||||
|
||||
-cflags = '-O2 -g -pipe'
|
||||
+cflags = '-O2 -g -pipe '
|
||||
version = '2.0.3'
|
||||
|
||||
AddOption('--prefix', dest='prefix', metavar='DIR',
|
||||
@@ -51,9 +51,6 @@ if GetOption('datadir') is not None:
|
||||
|
||||
opts.Save('configure.conf', env)
|
||||
|
||||
-if GetOption('rpath') is not None:
|
||||
- env.Append(LINKFLAGS='-Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
-
|
||||
envvar = [('CC', 'CC'),
|
||||
('CXX', 'CXX'),
|
||||
('CFLAGS', 'CFLAGS'),
|
||||
@@ -75,6 +72,10 @@ extra_cflags += ' -Isrc'
|
||||
env.Append(CFLAGS=extra_cflags)
|
||||
env.Append(CXXFLAGS=extra_cflags)
|
||||
env.Replace(SHLIBPREFIX = '')
|
||||
+
|
||||
+if GetOption('rpath') is not None:
|
||||
+ env.Append(LINKFLAGS=' -Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
+
|
||||
#
|
||||
#==============================configure================================
|
||||
#
|
@ -1,31 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils scons-utils
|
||||
|
||||
DESCRIPTION="The SunPinyin IMEngine for Smart Common Input Method (SCIM)"
|
||||
HOMEPAGE="https://sunpinyin.googlecode.com"
|
||||
SRC_URI="${HOMEPAGE}/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="app-i18n/scim
|
||||
~app-i18n/sunpinyin-2.0.3
|
||||
x11-libs/gtk+:2 "
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${P}-force-switch.patch"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons --prefix="/usr"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons --prefix="/usr" --install-sandbox="${D}" install
|
||||
}
|
@ -0,0 +1,41 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit python-any-r1 scons-utils toolchain-funcs vcs-snapshot
|
||||
|
||||
MY_P="${P#*-}"
|
||||
|
||||
DESCRIPTION="SunPinyin IMEngine for SCIM"
|
||||
HOMEPAGE="https://github.com/sunpinyin/sunpinyin"
|
||||
SRC_URI="https://github.com/${PN#*-}/${PN#*-}/archive/v${PV/_rc/-rc}.tar.gz -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="gtk3"
|
||||
|
||||
RDEPEND="app-i18n/scim[gtk3=]
|
||||
~app-i18n/sunpinyin-${PV}:="
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
tc-export CXX
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons -C wrapper/scim \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir) \
|
||||
--libexecdir="${EPREFIX}"/usr/libexec
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons -C wrapper/scim --install-sandbox="${D}" install
|
||||
dodoc wrapper/scim/README
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
AUX 50skktools-gentoo.el 91 BLAKE2B 290cc5542c31bd9c3cd0095162928c80548db2800fc0a6293a8d6cc65caf3f567be725c17a3592f66554a90bd8f86f13641cf3c51dbf6331fc5d5ccce55e9f55 SHA512 f4376f1146586604bc9ef1ea080e5df79f721a245b89ae76dfa2aee38876e38edb804f9201d9eb751a879d017ed929fa18d1b38b307879fa607d086a404d0612
|
||||
DIST skktools-1.3.3_p20150901.tar.gz 483005 BLAKE2B 6db22c59276aee007ed4a457b8b66750d792596855ddfdd98310b14741cd20fe8594672626022dafc17c31d06f3292026e6bba35ea1fa001f4a224e7439eb082 SHA512 dbb15068239158c31a706da2fd5afcb8514d088854bdd4f0d05bb8b9e10947cbdce584ff3698571d601e3b357a1ba11b4608f0457615062016862ac89fb91b83
|
||||
DIST skktools-1.3.3_p20170305.tar.gz 483715 BLAKE2B 0de2cb906e8433f66e706f0aa4dd8c4900343b48bfb9bb24aee4927f583650f54132c2a3bb607c17cefb0f0e686bcf8a0f4bd6ac07b6a9a71c0bd870eda587a7 SHA512 f6e9041fecf8c28a84c3996ca120371528c034eeca3695cb224b4cf225e8dab9e69969d7fb955112cd1e9c1e80c2ba8e2aef4f0eb81f55374dd626402482c235
|
||||
EBUILD skktools-1.3.3_p20150901.ebuild 1197 BLAKE2B 1e0c6fd56c3b9eaaa51bafc14d53e8ff461cafcfc6aedf2229cffadbba6c8c64586733e052867dba0f3eb2e1ba8e70876de48d917ef8ea4f6d71b486a9befb3f SHA512 d4488f9affe3f2e4fe0125b486db5700ab22c490c25ebab9618720a1f78ee1b72c05e7e6f2394add4c3b61453f92b79bd4cb44740f43363c299e45bf88420c08
|
||||
EBUILD skktools-1.3.3_p20170305.ebuild 1199 BLAKE2B 2050af6201a54ba5e96e3b5b153f0bd624666ef3c8e71df996cbf636c0a8793dc6bdeac0ca171c2a2bccbdcafdd52195ed72d72dfc212131094ec45bc6c192cd SHA512 51410c23d7efb2f2cef0d71f6844e6fc28f07eaec4c45441994bdbd0268f1d7ffe48486ed5d7e365bb772a1a93c800b7edefeea71dd91b3f2828245e5ba0f15d
|
||||
DIST skktools-1.3.4.tar.gz 482860 BLAKE2B f9e822531f8f715291e55ec6dec0eeb31683dc72efc7ba73621cfd0c29f0c5147cbef8256d44848792b8a1601c1878321b2dc0260df9d32d0e5e18eb65220987 SHA512 8749dfc4f18474db860d8b7cd85fadfc00327b199addb31a339aa78dd66cb98032429664bdad4b47176b5b64b156b7264bc35a284861f6b9ec8cc9979d4d5ce1
|
||||
EBUILD skktools-1.3.3_p20170305.ebuild 1197 BLAKE2B 417e30a68889f6ea49b8511edece026d1e04bcda6fc18410b0650242f2a6e7a66deeae5601b41427d21d134e6a900b72f6c8610fe36d7ceb02c8de03c13e6230 SHA512 b5cdbe1fd05946477044276c30b69c69e1e467efd6a73e9407caa7b12694e6011f449801537a9219efab3e7b3fb5fcf48615830dfb839e8c184a1ce303a31dfb
|
||||
EBUILD skktools-1.3.4.ebuild 1109 BLAKE2B aec68fe21ab4fd1c0176283c95cd9f33422e9841a24207dfd4bfe3f6d00a1b3af6f0502da436f61b29c71e42612d857cddcc58868b58f222e2b4ff06ed140025 SHA512 b4ac462a44c4cc2d155ebd11618b4c23fe87396becaac822592573a82f51ac7247dc2594c1a38f0eded12a7e5fe0ae7bc7aa86790a18198d6acfd07449925c94
|
||||
MISC metadata.xml 325 BLAKE2B 2d57ed82902d3daf56c670eb02e451104a56374c00f64ffcabc34b85b1bd3666c982624424f7a3e1da5f79a40c336ac16f7b1d62ddf81f2465b790fa3cdfba8f SHA512 aff23e906c8b6f0dbdc293aa4138b51497d32760f0c77307e11d9f7797bffd0d1363e0d8dd5639f8b9838838737afd05dab5d6e0a4f9c8596effdfef733af75b
|
||||
|
@ -1,13 +1,7 @@
|
||||
AUX sunpinyin-2.0.3-force-switch.patch 979 BLAKE2B 9274064e2966330c461f062316256e9d905217d5fbfd2dfd55cd881a5021fc5de747689709f58284f7674f78fabc81b7a8c635cac984e10be7832788eca7c4c7 SHA512 0782895b4a718f218f447fba66253ff38916dacf3168d6ff47e8186e39cdc968c467e74431105a8795cb04176309d5ce333e712a3aab2840094bbdd169853b3e
|
||||
AUX sunpinyin-2.0.3-gcc-4.7.patch 1275 BLAKE2B 9dc9fbc1b63f59fcdd853a8c99e9bfbf021540672729991cab67ea67b82e9d530963b33a34ce378af7309d9b749e0a831b6d1cd0393f3a7c182ca29d9411b27c SHA512 48d7e5ab52395467f3b282b73bb3ca5b2cd27c76ac1b454c0e248a9cfb13d8d628fbdf93b82a57404109d288c46d70456bb4aaf4f2899e3dd6e047140cdfc7c0
|
||||
AUX sunpinyin-2.0.4-gcc-6.patch 959 BLAKE2B 72e027a928bd9f684dbecc7ce50074df6d915b9e699de661853012961454bce48008bff50fd2de135ef828f08e84647b624bd844b9baafb2e929480171a44f63 SHA512 7093542613a2c15c6e1dc7e500bc38f65061d927d3f89f281973f401f19f0e151f0ef438c2a1c21d102bd56b23c81d206b6a524d77b04ae4e0b79f0b97691b96
|
||||
AUX sunpinyin-2.0.4-pod2man.patch 406 BLAKE2B debbbd0c004625c3e9dc73e07876774d12d3514757ea1d5a8ad9a978868f85175d0fa92e0e46541e00c208498b7bae9ac7257491de50f6d0829616c68decbcd5 SHA512 7a0b48e4b0270b1c60844b91df42dd8f59460c9a5725c5492fd4886b77d8e993dbe2c8efc464da271d51d19d17c3c94573c57c0dd7f28414336138212911e387
|
||||
DIST dict.utf8.tar.bz2 1598995 BLAKE2B 4cb990b6bbb440218c6af695369bdccf97b820da9aa10d118043a7bda1c602e53d0c63c4a460db2c64530e69ac1d98619e1a2efa2113a292063b422fc1b3d32c SHA512 04ec55e4af4b58d29b1141a824b5c3de5dbaaab0133d88e477d9183db738fc63543b4004bf071e611c6ea0d4b4c161b73849a64ab75f4df5bb5116d7f52d8e34
|
||||
DIST lm_sc.t3g.arpa.tar.bz2 25098718 BLAKE2B a7cd87d4e786a7dfe854b33c5c70019075ec99b02fd6cb33f91f89babdd2b255b6d157fff30c22b5372e74908483b814cc9698fd84caa3e56c61e76a59dbea04 SHA512 1e5e577c92df2f230b6b5962298ef7c215f6069b53e8e2dd4c5ad3eb54f999fc239b0924b4ab031af59c3194da15d6317ea2860f158e805b5cf0126666eaad98
|
||||
DIST sunpinyin-2.0.3.tar.gz 169394 BLAKE2B d93472c0c208da2a7aab99b1d514fa01acf67e69bdddc2c0e15f40af7a2abaf8860f8e792c2bd286bd1ec3a24124b0284d28295115c8dff1051f5df3c2314bb7 SHA512 25f1fc4b8f550663861f2c7426832924676f83e1f201689fde51b04ca78704b46dbbf2b92736234d5e1a729ba1bb23bd1f3a0394f6b8b54cb0df57b9bb7ece1d
|
||||
DIST sunpinyin-2.0.4_pre20130108.tar.xz 964764 BLAKE2B 2c9d2e3fc02009ad10784c9408434c6806d1403026fb27629701650fe0e8a69c5580050846cf5c3b870215b8bfd68fe9c52d8bdaf83c41e523224463af9cf530 SHA512 7c1dd7db8b800e9d436746a560a16de2c6777576868f2e7e28f6dcb767b91ccd62b974f9d4ce6bd6ce80d30e1ee83887c3ee03c227e7e9fa59c01db4867465b2
|
||||
DIST sunpinyin-3.0.0_rc1.tar.gz 547138 BLAKE2B 682e733241d690d1fef8ce452c497a894c5ab61bf5298c1f292ce3a25a681d594744db43ebd51b3e59274cce0e47a1bce15a793f2c20e2998915c3432f2a7c32 SHA512 c9d4936de5835a7f02e52c5b32bf1a42d76bf7588449aaa813f3df7ab2d72f3ca0f4e18f74a60be4860f0724b5e05cbe567c67e6f3150b0e71b23b3a9002fc5e
|
||||
EBUILD sunpinyin-2.0.3-r2.ebuild 1627 BLAKE2B e6868f2e9f3ca8bd1947d2eccf40e221afeab10046f493e6ed674a7e0ebe75994c8d801edecbab9529d21322068ac888fe36c6dc816e270e8b6684d1b9fb5997 SHA512 84ef99fd67b79b2bc0bc9ea8a8e2e110465a5b0103096364f142e98539262d42594c427761f2e0ce82761e4a3b9f49a331200891fe3f2641ccc1482739e4f4f9
|
||||
EBUILD sunpinyin-2.0.4_pre20130108-r2.ebuild 969 BLAKE2B 3a4fed1810722b8d0f74282add5b5298c120b373c083fab1f1289285435915a12be3b8cfd3c44514c5f0d085231ffe933d5fab0ba3a2522d1422b71447bb0da8 SHA512 588f5bf39e30b91ecea1550c28c6ab2fca113fbbcc999f12ebaa335abccb214d4d2f4f6d28dbbdf728561b6ccecd9177f518134b0d39dd9c36a19428cab70ebf
|
||||
EBUILD sunpinyin-3.0.0_rc1.ebuild 918 BLAKE2B e5220cd1829a49aa2155ab92e5b9c2ea82ca281bff4743935f24b2072a8237f064905f979feccca99007d653877728430108c45793286eeb41d3668832b39859 SHA512 065897821edeed4dece2aff5061f7d97fcf634a544a7d1d6cf614b4215e05808459c7940953e8ae6f0319f3803d36630cb520b2b97da1284289e5d447da9a3e3
|
||||
MISC metadata.xml 328 BLAKE2B 61db20b9475140020b99ef82cc8949db01b996bbe043b4aa68bd7bd6cb67c56286ce0e00c8dd1a039798b23a8921621260286231f1d87a079ef13a4a764b8049 SHA512 c67333df77b03f92845334d6b738c172cc2e1935b5df4cad2d7bc983c08cda59f1427588ab8d054cd40b7fdc52c0adcb516d74c7de4bb320f85979a6a3297628
|
||||
|
@ -1,28 +0,0 @@
|
||||
--- a/SConstruct
|
||||
+++ b/SConstruct
|
||||
@@ -180,12 +180,6 @@ libdir = env['LIBDIR']
|
||||
libdatadir = env['LIBDATADIR'] + '/sunpinyin/data'
|
||||
headersdir = env['PREFIX'] + '/include/sunpinyin-2.0'
|
||||
|
||||
-if GetOS() != 'Darwin':
|
||||
- env.Append(LINKFLAGS=['-Wl,-soname=libsunpinyin.so.%d' % abi_major])
|
||||
-
|
||||
-if GetOption('rpath') is not None and GetOS() != 'Darwin':
|
||||
- env.Append(LINKFLAGS='-Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
-
|
||||
# pass through environmental variables
|
||||
envvar = [('CC', 'CC'),
|
||||
('CXX', 'CXX'),
|
||||
@@ -202,6 +196,12 @@ extra_cflags=' -DHAVE_CONFIG_H -DSUNPINYIN_DATA_DIR=\'"%s"\'' % libdatadir
|
||||
env.Append(CFLAGS=extra_cflags)
|
||||
env.Append(CXXFLAGS=extra_cflags)
|
||||
|
||||
+if GetOS() != 'Darwin':
|
||||
+ env.Append(LINKFLAGS=' -Wl,-soname=libsunpinyin.so.%d' % abi_major)
|
||||
+
|
||||
+if GetOption('rpath') is not None and GetOS() != 'Darwin':
|
||||
+ env.Append(LINKFLAGS=' -Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
+
|
||||
#
|
||||
#==============================configure================================
|
||||
#
|
@ -1,49 +0,0 @@
|
||||
From 3d35aa0370d9c7bd455098caa9ba22ebe1f82968 Mon Sep 17 00:00:00 2001
|
||||
From: Yong Sun <mail@yongsun.me>
|
||||
Date: Wed, 4 Apr 2012 18:41:39 +0800
|
||||
Subject: [PATCH] Integrated patch from YunQiang Su, fixed FTBFS with gcc-4.7
|
||||
|
||||
---
|
||||
SConstruct | 3 ++-
|
||||
src/portability.h | 5 ++---
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/SConstruct b/SConstruct
|
||||
index 97abf47..354fd19 100644
|
||||
--- a/SConstruct
|
||||
+++ b/SConstruct
|
||||
@@ -313,7 +313,8 @@ def DoConfigure():
|
||||
conf.CheckCHeader('sys/param.h')
|
||||
conf.CheckCHeader('sys/stat.h')
|
||||
conf.CheckCHeader('sys/types.h')
|
||||
- conf.CheckCHeader('unistd.h')
|
||||
+ if conf.CheckCHeader('unistd.h'):
|
||||
+ conf.Define('DHAVE_UNISTD_H', 1)
|
||||
conf.CheckCHeader('wchar.h')
|
||||
|
||||
# add essential package requirements
|
||||
diff --git a/src/portability.h b/src/portability.h
|
||||
index 949d4f2..cf43bd0 100644
|
||||
--- a/src/portability.h
|
||||
+++ b/src/portability.h
|
||||
@@ -44,15 +44,14 @@
|
||||
#include <string>
|
||||
#include <cstring>
|
||||
|
||||
-#if defined(sun)
|
||||
+#if defined(HAVE_UNISTD_H)
|
||||
#include <unistd.h>
|
||||
#ifdef __cplusplus
|
||||
#include <algorithm>
|
||||
#else
|
||||
#include <sys/ddi.h>
|
||||
#endif //__cpluscplus
|
||||
-#endif //defined(sun)
|
||||
-
|
||||
+#endif //defined(HAVE_UNISTD_H)
|
||||
|
||||
#ifndef HOST_OS_GNUC_2
|
||||
#if defined(DEBUG) && !defined(NDEBUG)
|
||||
--
|
||||
1.7.8.5
|
||||
|
@ -1,65 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit python-any-r1 scons-utils toolchain-funcs
|
||||
|
||||
DESCRIPTION="A Statistical Language Model based Chinese input method library"
|
||||
HOMEPAGE="https://github.com/sunpinyin/sunpinyin"
|
||||
SRC_URI="${HOMEPAGE}/files/${P}.tar.gz
|
||||
https://open-gram.googlecode.com/files/dict.utf8.tar.bz2
|
||||
https://open-gram.googlecode.com/files/lm_sc.t3g.arpa.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="dev-db/sqlite:3"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-force-switch.patch
|
||||
"${FILESDIR}"/${P}-gcc-4.7.patch
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
unpack ${P}.tar.gz
|
||||
ln -s "${DISTDIR}"/dict.utf8.tar.bz2 "${S}"/raw/ || die "dict file not found"
|
||||
ln -s "${DISTDIR}"/lm_sc.t3g.arpa.tar.bz2 "${S}"/raw/ || die "dict file not found"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
tc-export CXX
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir) \
|
||||
--libdatadir="${EPREFIX}"/usr/lib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons --install-sandbox="${D}" install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog ""
|
||||
elog "If you have already installed former version of ${PN}"
|
||||
elog "and any wrapper, please remerge the wrapper to make it work with"
|
||||
elog "the new version."
|
||||
elog ""
|
||||
elog "To use any wrapper for ${PN}, please merge any of the following"
|
||||
elog "packages: "
|
||||
elog "emerge app-i18n/fcitx-sunpinyin"
|
||||
elog "emerge app-i18n/ibus-sunpinyin"
|
||||
elog "emerge app-i18n/scim-sunpinyin"
|
||||
elog "emerge app-i18n/xsunpinyin"
|
||||
elog ""
|
||||
}
|
@ -1,7 +1,3 @@
|
||||
AUX README.gentoo 164 BLAKE2B 38860db416a64e3acfa7900c3a97c612df73109b414d9b666f5170d306771218b39c81ef34c24c019dcc8baea191febf314101f32e60cfc999028422a98901e9 SHA512 4793b665af505a5b33ed27b99aa236bc9e1ce4e4bfaa12e2fa7fe5e275cde71759e893a30f28fff1c79b2a02e0d4979a0c84319518c487751156b683fab2436e
|
||||
AUX xsunpinyin-2.0.3-force-switch.patch 1328 BLAKE2B c61eb697aa9214c1bc603b7a8d210e629e67ba57141fe6c1daa28e27066e8adfb1c3065f520442c163671e2eb4a600e7c083db524aae162adc7b7d872dbfd7c4 SHA512 fcc2110c2b1e0b4dda4995688e360bee7f0e26582bb212875e41e22b208168d0a18d5a2a1a4cdf93935a43bef11bdb0a6fd45a9506675165c1a2a1aeedd2ad5e
|
||||
DIST sunpinyin-2.0.4_pre20130108.tar.xz 964764 BLAKE2B 2c9d2e3fc02009ad10784c9408434c6806d1403026fb27629701650fe0e8a69c5580050846cf5c3b870215b8bfd68fe9c52d8bdaf83c41e523224463af9cf530 SHA512 7c1dd7db8b800e9d436746a560a16de2c6777576868f2e7e28f6dcb767b91ccd62b974f9d4ce6bd6ce80d30e1ee83887c3ee03c227e7e9fa59c01db4867465b2
|
||||
DIST xsunpinyin-2.0.3.tar.gz 128835 BLAKE2B b8f3dd0b7efd0e40d54ee15085e4f1e7e2fff0d4f22845d7e043012f761e358e97843d1f3a26b85e49303afa86fb4a8263974f6f761d192b44bd88a1a0eef18f SHA512 71bc1677d545ecbd8572c9ba1877d091a2a58154eb326623ed240701f98a70ec29245e98d684a30aad46445e6c461359663ba3778e7f5c42469f0bea6e2bc419
|
||||
EBUILD xsunpinyin-2.0.3-r3.ebuild 629 BLAKE2B ba3693a7f3eeb42793333d40f272f02a0a9ad0fa10d592e057075d0562f21a255c37f420125899af207d5c6f7e46e123f3c1689d14771c2b696c94224d14a019 SHA512 0a0916bb06034a2f0585911be41e92007a785d40e9e5c95cce5ce010de15c980f4a14fedbec846570f344484d77e1657e76ec386b683b8c07bc0513f80650db0
|
||||
EBUILD xsunpinyin-2.0.4_pre20130108.ebuild 836 BLAKE2B 66d779b1ece649ee371c02e5161b32076b8ce0a55ca55372982682a0dce10d14c97f0d679c026c5c3011ee4512e4dc1a0f30944591b1acf1d8057b3c759f12f5 SHA512 a89e6c8c09595dd5e0ead3435c3618e3e2279e1b403e2abd4f6711025aeca1897560dd17d84381ddd18ae05e23e5bb0ddcf33250f67558dfea71ab798bf58977
|
||||
MISC metadata.xml 323 BLAKE2B cb36295be070944db054e52bd199f502dd1136e35d27e7eb9a0caac66798393c12d19fa9b7a421c9e3561023474a01d0788da1a333b34f15fc576862272955ee SHA512 b91630bdda4510f930c9b114a77859e6350c16cfd41c8b585895d4f40a9d8d7ce4a02dd6f46be41ecc7ba6ad2ce6846b143d1745ac9e1385821e403419df9a39
|
||||
DIST sunpinyin-3.0.0_rc1.tar.gz 547138 BLAKE2B 682e733241d690d1fef8ce452c497a894c5ab61bf5298c1f292ce3a25a681d594744db43ebd51b3e59274cce0e47a1bce15a793f2c20e2998915c3432f2a7c32 SHA512 c9d4936de5835a7f02e52c5b32bf1a42d76bf7588449aaa813f3df7ab2d72f3ca0f4e18f74a60be4860f0724b5e05cbe567c67e6f3150b0e71b23b3a9002fc5e
|
||||
EBUILD xsunpinyin-3.0.0_rc1.ebuild 838 BLAKE2B da1adbb00714726eedd65cd1ccfe144ed469265dce54afb0e64ba2f8ffe72cab2eaa6f99a44375164d28fbabe2315296318a1c8916aff579ecb53d7b48542a37 SHA512 f44f42d1a03aa89d9c2ab128f4a8d40823546029a053910f1b5b28ad3a48a9b951ea83bb15f6301a361ad0c0efa72b83d8f855d2fced666d5588d6fa0f330cf4
|
||||
MISC metadata.xml 318 BLAKE2B cd239258d08a95f0d27a760678be36731954a721daae521d147b882fd07eb5206a38ce9ac9938e94e3501611cd95aba5699fb2e5a5176f3652e8e5531e5e4cf8 SHA512 44d76425ce41ba6cb84f584c7dfe3b0552eb65aec93b4ed72f9c2e6c153e5e51a3965bf4248486046d3ca9e39f861c3bcde90424ba35e4a57f2102a24faf0df5
|
||||
|
@ -1,5 +0,0 @@
|
||||
To use sunpinyin with XIM, you should use the following in your user startup
|
||||
scripts such as .xinitrc or .xprofile:
|
||||
|
||||
XMODIFIERS=@im=xsunpinyin ; export XMODIFIERS
|
||||
|
@ -1,45 +0,0 @@
|
||||
diff --git a/wrapper/xim/SConstruct b/wrapper/xim/SConstruct
|
||||
index 9d1cafd..495871d 100644
|
||||
--- a/wrapper/xim/SConstruct
|
||||
+++ b/wrapper/xim/SConstruct
|
||||
@@ -32,7 +32,7 @@ imdkit_sources = ['IMdkit/FrameMgr.c',
|
||||
'IMdkit/IMValues.c']
|
||||
|
||||
|
||||
-cflags='-O2 -g -pipe'
|
||||
+cflags='-O2 -g -pipe '
|
||||
|
||||
# options
|
||||
AddOption('--prefix', dest='prefix', type='string', nargs=1, action='store',
|
||||
@@ -52,7 +52,6 @@ def PassVariables(envvar, env):
|
||||
|
||||
env = Environment(ENV=os.environ,
|
||||
CFLAGS=cflags, CXXFLAGS=cflags,
|
||||
- LINKFLAGS=['-export-dynamic'],
|
||||
CPPPATH=['.', 'IMdkit'])
|
||||
opts.Update(env)
|
||||
|
||||
@@ -62,11 +61,6 @@ if GetOption('prefix') is not None:
|
||||
|
||||
opts.Save('configure.conf', env)
|
||||
|
||||
-
|
||||
-# set rpath
|
||||
-if GetOption('rpath') is not None:
|
||||
- env.Append(LINKFLAGS='-Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
-
|
||||
envvar = [('CC', 'CC'),
|
||||
('CXX', 'CXX'),
|
||||
('CFLAGS', 'CFLAGS'),
|
||||
@@ -83,7 +77,11 @@ extra_cflags += ' -DSUNPINYIN_XIM_SETTING_DIR=\\"%s\\"' % data_dir
|
||||
|
||||
env.Append(CFLAGS=extra_cflags)
|
||||
env.Append(CXXFLAGS=extra_cflags)
|
||||
+env.Append(LINKFLAGS=' -export-dynamic')
|
||||
|
||||
+# set rpath
|
||||
+if GetOption('rpath') is not None:
|
||||
+ env.Append(LINKFLAGS=' -Wl,-R -Wl,%s' % GetOption('rpath'))
|
||||
|
||||
#
|
||||
#==============================configure================================
|
@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>cjk@gentoo.org</email>
|
||||
<name>Cjk</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="google-code">sunpinyin</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="project">
|
||||
<email>cjk@gentoo.org</email>
|
||||
<name>Cjk</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">sunpinyin/sunpinyin</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,31 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils scons-utils
|
||||
|
||||
DESCRIPTION="The SunPinyin IMEngine Wrapper for XIM Framework"
|
||||
HOMEPAGE="https://sunpinyin.googlecode.com"
|
||||
SRC_URI="${HOMEPAGE}/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="~app-i18n/sunpinyin-2.0.3
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${P}-force-switch.patch"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons --prefix="/usr"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons --prefix="/usr" --install-sandbox="${D}" install
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit readme.gentoo scons-utils toolchain-funcs
|
||||
|
||||
DESCRIPTION="The SunPinyin IMEngine Wrapper for XIM Framework"
|
||||
HOMEPAGE="https://sunpinyin.googlecode.com/"
|
||||
SRC_URI="https://dev.gentoo.org/~yngwin/distfiles/sunpinyin-${PV}.tar.xz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="~app-i18n/sunpinyin-${PV}:=
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
mv "${WORKDIR}/sunpinyin-${PV}" "${S}" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CXX
|
||||
myesconsargs=( --prefix="${EPREFIX}/usr" )
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd "${S}"/wrapper/xim
|
||||
escons
|
||||
popd
|
||||
}
|
||||
|
||||
src_install() {
|
||||
pushd "${S}"/wrapper/xim
|
||||
escons --install-sandbox="${D}" install
|
||||
popd
|
||||
readme.gentoo_create_doc
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit python-any-r1 scons-utils toolchain-funcs vcs-snapshot
|
||||
|
||||
MY_P="${P:1}"
|
||||
|
||||
DESCRIPTION="A standalone XIM server for SunPinyin"
|
||||
HOMEPAGE="https://github.com/sunpinyin/sunpinyin"
|
||||
SRC_URI="https://github.com/${PN#*-}/${PN#*-}/archive/v${PV/_rc/-rc}.tar.gz -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="~app-i18n/sunpinyin-${PV}:=
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
tc-export CXX
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons -C wrapper/xim \
|
||||
--prefix="${EPREFIX}"/usr
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons -C wrapper/xim --install-sandbox="${D}" install
|
||||
dodoc wrapper/xim/README
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,5 +1,7 @@
|
||||
DIST libwps-0.4.10.tar.xz 695448 BLAKE2B ec26b6ccd918aa29d0df053b3e321b651e0c7142910009e0b50a89f88f4dba8f7e9e20f8962a7afb84497b533129d85eb5c7628aa7c64f2a57ce2976d5ff372f SHA512 e5a6155d9e59df226e72db5723ae7574d3f3fdc49bd64156e11f9d3715748fb919dd3d2ab83b6d5fb80c002e7d4ca12563f6ff80472a6485f374b037404acf83
|
||||
DIST libwps-0.4.8.tar.xz 648512 BLAKE2B b446c9999ff0e760569daa52fd24e42af8cdda78f2c0bc77d26cc25957381456f045dde1eb4ec8bd7999de29f658d67b2a493fdeacde4faa12a00aa28725603f SHA512 bf5d7aeb6f06e87f15ec8e911fb6436fb4e14839123db71488638f0e658034ad4ea8849ed83926af2fab9b50a7ef7410199d4a1102abc63c83d37bf1966a4afb
|
||||
DIST libwps-0.4.9.tar.xz 673784 BLAKE2B 7843de719d6c2ff3152b216e808fc06798ae77e582a644fccd34667e409ec8a34764f302c484bf991e653cd1bb8eaca48f68861aa50e5c41ae41373b5b0c531d SHA512 8703e60837c525ab24e40bb3e2e25244e9f4d2231699373b28d86430f6d7f818a5ba32de08f19febdb4f917f1a90e3b27f95e7d3200ca2d4a9101c262b37a30d
|
||||
EBUILD libwps-0.4.10.ebuild 738 BLAKE2B 1a93f47417f85a1c7c0012a842b05e9baca9ca03a2207129fc6f54583c95ec918cdf99c536d3f4f17681a7764c99336a0536bb3d137e137b7839e9f267635138 SHA512 afacf84df37e42654254e9de6aebffa6398f5aa0181ff461a69484d48a9fd645454c62d939fa0815c822e078900d4d97a49d75d84de1a290424d6d6a50140564
|
||||
EBUILD libwps-0.4.8.ebuild 746 BLAKE2B 60cfafa10653cb4911a6c8bc88fd54fbb36de63ba2a8d60a845155eb0e62018f78d7232711be572b1954cf8c763b1eb589b6e4650fcf35e7750ec3fc8ebac981 SHA512 45c309260c9aac532a096bd5f91dfbba32ed7fa79172958c4004f3073e56fcdbf1c32885391ca81cccc7871efca207580a50a97d7be0eaf24574d9fb9f2a9fbb
|
||||
EBUILD libwps-0.4.9.ebuild 748 BLAKE2B b524b053e2cd0e7bddf6e1be0f7c0a6aae415834cc182deec8a1181131cae204d15bc696f3617069a91d989d00a4ab15b9da07dba5ac9a76189e1811cf7b2f41 SHA512 05c507aaf579f55a194f9e066d0e99373aa7f199c1041ef96c3cc24bb5b231ea651f75b24cc6fa23898b68460fc87e7d1f0866ab67b85a8e1841860e80e8d104
|
||||
MISC metadata.xml 512 BLAKE2B e2125277139c062748282be37319771c209ba9b9c6f68e0ab9b8e9b5d10c4dfda9f6369aca792be2f21db8c1dcf3e840f78f159190162114458ed9279bf46270 SHA512 971b6f541825d73b66f09bc6b6ab677c2b1f1430a6cdd469dfe57162528d13b048681c8e00de061aa8ef5f98914b36b8bce7e13a35044937e65298469241bc1e
|
||||
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Microsoft Works file word processor format import filter library"
|
||||
HOMEPAGE="https://sourceforge.net/p/libwps/wiki/Home/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="|| ( LGPL-2.1 MPL-2.0 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~x86"
|
||||
IUSE="doc debug static-libs tools"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/librevenge
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-doc/doxygen )
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_enable debug) \
|
||||
$(use_with doc docs) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable tools)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
Binary file not shown.
@ -1,3 +1,5 @@
|
||||
DIST tlib-1.20.tar.gz 111202 BLAKE2B 0ee6c662e1658607706516adab9b770942ec948633a75879b5a516b46989a34744acde52d10d5b2ea58af6e7215f1241b18c53267d643d4c2e08da425a93169e SHA512 d8a344483da2a174324dc81472b5d3bdb811e54af22a1599c5567019d33bafdf499845d3efeabf081ecf17dc6965c69640a6a01b208811529e86266ba1871218
|
||||
DIST tlib-1.22.tar.gz 119979 BLAKE2B 2fe1231b6a075989c41aa2cf38d0964b6d9ada390d0729ea417aa1c2ef1a105a07d569f80c75ba91a55f7e68f349faab2dcda66741b0b1da59f76d68a5467e24 SHA512 b7fc7e3741876c92bbccc116d4e170663e3d178aa8fb546f969475723cd82e07d9470af37574f8f97cfd23b8ca8f5dd5daa2e7bef50e2f62beec0015a2355908
|
||||
EBUILD tlib-1.20.ebuild 566 BLAKE2B e2b86ca767d1afabe247cb4f18cbc09cd6f43bba431e826b9f28b419cb0cb162bf6f5adcb544916f2b216d2a975361e96e2a5bd838d417e1ffa24257215d8b3a SHA512 658fb2ce850438a65f1b59a1b70298372fa133e004559a7a6917a892e923e95ca8d90ae88f45b1722cf99407566bb45dde41bc485cad8ba0e09653e01af7db61
|
||||
EBUILD tlib-1.22.ebuild 577 BLAKE2B 67411fc4c0dbbeb069dda73be8d6468284edfc657e7a1688cb052b768f506aed65a019cf43d2dafd0c6c124492d3c1163ff97f8b634210473ab7cd8964926dc1 SHA512 e6147e20183b42639f6f6ca223283dcc77b5ee1c3eaaf19f3dc43302868cc0d993597a1ce057f14400599650d92044bf94acc5bf668a83943e056035e193e768
|
||||
MISC metadata.xml 329 BLAKE2B 87f979ae53b0fca4bbf6966613d9ef71365ed69a0b790bd41d526536f3e04b63e435dea3647c7b19fc31ec81bb8df70c1d830c6ec0545f1a5f63f3c1da14d923 SHA512 d36d9443ce025d73d277cc67387418ad73458be408932bf200609b6fa133b06b87598377866c89b8f9606674b54540b19c6f63afdc5ca9696225f1976bcdab48
|
||||
|
@ -0,0 +1,24 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
MY_PN=${PN}_vim
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="vim plugin: a library of utility functions"
|
||||
HOMEPAGE="https://www.vim.org/scripts/script.php?script_id=1863 https://github.com/tomtom/tlib_vim"
|
||||
SRC_URI="https://github.com/tomtom/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
LICENSE="GPL-3"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
VIM_PLUGIN_HELPFILES="${PN}.txt"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
rm -r test samples addon-info.json || die
|
||||
}
|
Binary file not shown.
@ -1,7 +1,7 @@
|
||||
DIST calendar-1.32-pkg.tar.gz 410752 BLAKE2B 698ffcef148c6c84fbea7328da45d73bdf49601a94e3776b00ea7bae58223ef6ff1706ee8bf0e090e6aca16bcc6ed5c2037af2f9bb694ba03a840b20913afc19 SHA512 ca9a2dd135d012e094044f066939dafad0ef5f73f738b538c0f7aefc08c2e9efa0e1bcd3a3630681cfb90ec3b3319fd9b8594675ca2747627924d53d3fbe8ec1
|
||||
DIST calendar-1.38-pkg.tar.gz 411386 BLAKE2B be833c4f81a9d2e79e06768836fe1e58601c9b483f9febe127bd2c2bfe77259a3cd50630920e2df38de14234c1eece9c498b71073d967a06bf27258d91c9010c SHA512 d5158147df3fffcba550f4bdb34aba916b9071734c2e08b3bebb4c1969ac06b15b79337b4d2f50a53e057ff097fc63162849d5dc0983da4363e4e484357c571f
|
||||
DIST calendar-1.41-pkg.tar.gz 409552 BLAKE2B f4ccf53eaf68d8f7098cd94954a3165fcd7513fa920288b08694c6c47f4b43ffe1075090bd303a838a75d67d489ec19f0ed203e6fe92167e89513635ee09f48f SHA512 0b4f48e37a367ab7337b4fd12d97235114ac1e889b6e858c644ff308879a921787c88add3bfcf4d16155324167910254854171c74205fa1822dde86570ba6e0b
|
||||
DIST calendar-1.42-pkg.tar.gz 409513 BLAKE2B 81f59fa4743682beed93be1eadf211ef8f096720bc44ee47d80142ec037029942e2cb02166b15318dbba300eedaa551c1426fbf3e454c3de119f5c2e41a8d4d8 SHA512 75e0eeaab3c818d28d4b0da798c961108457d7b2ffb9c671589194473ff3d3f967e52b956601acd42d53ef584d72cac08d4de47a9aa3ea3720211bfde201c8f2
|
||||
EBUILD calendar-1.32.ebuild 295 BLAKE2B 7b3ad75b0119b31f8531a1dbd36166253231fcea2352ad1802e75381bda52f263f11a3fbbd36a63cf557cc6629438a65211ffb5674e12b509e733dddb915f2cb SHA512 c57e15c7bfd9d85693440be694a0eea8a243643884ac3a222c44a0c0680fe772e11c3e010889032685e4d757da4c4ca02150788e3b667abf2aea66ca16717680
|
||||
EBUILD calendar-1.38.ebuild 295 BLAKE2B 7b3ad75b0119b31f8531a1dbd36166253231fcea2352ad1802e75381bda52f263f11a3fbbd36a63cf557cc6629438a65211ffb5674e12b509e733dddb915f2cb SHA512 c57e15c7bfd9d85693440be694a0eea8a243643884ac3a222c44a0c0680fe772e11c3e010889032685e4d757da4c4ca02150788e3b667abf2aea66ca16717680
|
||||
EBUILD calendar-1.41.ebuild 323 BLAKE2B 23c964084976bcb1afd8e6c985fd348bfcd2fa0a277c1ed417235d919a977ea648bb9443805f0060b3f3acc960666c48991eec9aa8069cb855ecb76c80dc605a SHA512 258f2204e81588b11517ad35715479db7ca7089c1f5d10169ba2e48216912d0d5e23ef8c6ca8cf44a13784dd2c827778b815504196569f4d3aa9b5fe4dba2c12
|
||||
EBUILD calendar-1.42.ebuild 323 BLAKE2B 23c964084976bcb1afd8e6c985fd348bfcd2fa0a277c1ed417235d919a977ea648bb9443805f0060b3f3acc960666c48991eec9aa8069cb855ecb76c80dc605a SHA512 258f2204e81588b11517ad35715479db7ca7089c1f5d10169ba2e48216912d0d5e23ef8c6ca8cf44a13784dd2c827778b815504196569f4d3aa9b5fe4dba2c12
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -1,3 +1,5 @@
|
||||
DIST footnote-1.16-pkg.tar.gz 22152 BLAKE2B 4ff8d3df1d76fcf23ec5191516bfeb7be4dbdf11a428d387a5c4a722b8c9b7cf34680548a8e7be2fa39b8dc83f623c96328c974ea4f3d940879b57ae03fde259 SHA512 4eba15270fd4529c3a8b5e8f488cd9dc294dab2f4b968490e8bbfc09e81bc4abd4f9c95b38a295a8f5899f4df55b7dab18e8979130cd8b24a533fbc609f0bf92
|
||||
DIST footnote-1.18-pkg.tar.gz 22196 BLAKE2B a6e99875cda4cf8bba7d27c2fad3d0bc61fcca09d6a79cc30b4e83004fa3dce704201e818ab6b0df96b5359425691f02ee5be92b347c41df6e842a6de6c44437 SHA512 222f2aafa6b0e56fdeacacc36a3dffec6ee6de103ae100f8900e00bfbf866d9bc1c3b6f00999c4d9a3c657bea6282a8b3fd89cac10856491745cab182a86e2c9
|
||||
EBUILD footnote-1.16.ebuild 329 BLAKE2B 9daee3d0d1ca6c262183c9da21aadc479ddcdd8709503a4715dda3647ef982b95afe4eaaf37768a87cbe7171f2e4c757ac5235760418132fb941e64c80219396 SHA512 fd0fd82f2658b716f42eefca9d3ab9b4ce67c7280704d3dc5915a731c031b9d2133454b5bb974b626918c2141aa06218e09d7494549ecaa0f7969bdc023dc760
|
||||
EBUILD footnote-1.18.ebuild 335 BLAKE2B 6ac2fac47ac5a8313f49e9440ad0f6e0c3297c2d70e168c584a34498a3617aa086855e38519c608de18e4a94e9b27777637daf123f4f64b5615dc3b1fc0e83c6 SHA512 33ec8f393db3903f39648b741d07c5fb049d0b62444aad0509d84f24114e3ba6909c64bc624287f7610399fb0fb459c9fcef82b406fad4c5e6179cbc459bbc5a
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,15 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Footnoting in mail message editing modes"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND="app-xemacs/mail-lib
|
||||
app-xemacs/xemacs-base
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST forms-1.15-pkg.tar.gz 48747 BLAKE2B a7695c1d07fc33cf6ccf7f0a3e7bd1039da1f662d589fea02716c9dcccf1441c7acc6bfdf344f6f0dd55965d45fd55633af3f369d57cb18bab3c62f3f95417c8 SHA512 eec09fe907c6b2ec94132ccc508d70903b27fb74cd02ae58a60d2196b80ea62111b0849db0c220e205d9e58394e588913b42dcf350d83cbe17cd9fbdd8ac6a62
|
||||
DIST forms-1.17-pkg.tar.gz 49071 BLAKE2B f0ef7c71819f5d4c036025d8acd7e9da369143500850f7c094729a0d98a5ff3d7fa8f39b2783f3338a9ce81f2036ad2161edecfd3a35966284f39ce5bf44ac55 SHA512 7ef9eade79bf53b1c2e3c1f86d9e3e70225f0041c7b41db844ec55bbfaded100edf9b432813ae5dc6a0f8237faa6e3ba7c58acaa26ec73438a45cd2ba326a249
|
||||
EBUILD forms-1.15.ebuild 287 BLAKE2B c028df35aff20fa2b4bbd1819bde15713aee1f89d290ebc17a46f368bc8844b3d8f0a0a3102efb3cf940290db342cfb3ba7720ab0719c8640c857728c76882c3 SHA512 2db088448bc5d2ad894543b4d46dfa3261b5a403f0ff13ddfa0fb2b3a2cec527ce05882daa35e4ed3bf3813f091b10440d04c978719aef83559764e234001918
|
||||
EBUILD forms-1.17.ebuild 293 BLAKE2B de047aaa79d6d6cb4f644fc50c5cdf94d95eadfd4508d03e3eb5b1a147eb6d0559893c67c1be6f758a75e85c11cda26161725118d47f2a6bb005c22b9afa995b SHA512 6c8d2bf47d23ed11ea9b4bb79581b304052acc0e1bc68328783b7325618c5ad680e541bb5176612d7be928cfb10db7c6157e83985045f7453bc93df4e7668f80
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,12 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Forms editing support (obsolete, use Widget instead)"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST fortran-modes-1.05-pkg.tar.gz 70602 BLAKE2B da1e620e74b497290bf655fcbf9d45b5510193388557e33abc769d874ef2d75786cb91ea9964f0019a40b19de968690f396523144f49c7bd79be783111830d8c SHA512 c3eac57a6d84605fde545951d423855cca8a40dd02dc24d0e005e165ab4e52f2f76f7347ddf33e4e85d25717689b85c578ce1e2b3b738df8a080b56057747b27
|
||||
DIST fortran-modes-1.07-pkg.tar.gz 70601 BLAKE2B 637c183415e196090acdaeaf73a1dbc35ba0aa089ed66ffb1cf69240c5bbce84dc30b7563665a0f7cb0615c16590f11ed5b167d25d71cbc50eb750d682e2d1f3 SHA512 760d60adacec1f9c1ee591193ced65560968363e7a3d148530a493ce04a4efca4c7a15e6058f30b744d7de7763968064b4f4a7b0a831542fbd2bf4d22d2adb38
|
||||
EBUILD fortran-modes-1.05.ebuild 284 BLAKE2B 83041f886a60ad6a9081ed68860f79d512e48f4e907899815cf144c5107ecf2761a5f8c39e2220c1132ace9bcfac55ba04aa9f32875bf5176e89689d74fcb99e SHA512 26b1f0c7e0f6bbe5af0b4541b6a7d3df343eb886f6715802dc3f48c268de614f05a91d7db33d983a11dab80682261452c5a9571554f468ad9a4c964daa57f357
|
||||
EBUILD fortran-modes-1.07.ebuild 290 BLAKE2B 6c113d2a9162fe1dfe02558cd54af4fc7b264792fc345d8781dcea6bc58c547b204cfe8d00d35b5bd2c05d941b4fa621937e1b6b480d044f2fcfd19138a5ecb2 SHA512 679663d24cf9041a0689dd1bec7fb0aeb1bce27b938dcc14851e4884c115f47f3aa98544b5a41722a7382515451f43b23ea46babd3cefffaf75d8de5169463d1
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,14 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Fortran support"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND="app-xemacs/xemacs-base
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST frame-icon-1.11-pkg.tar.gz 33800 BLAKE2B 93c404c9dfc894634e1b463d54eb53812de102e20f0d622dec9dcd5b37006bc92f5f4c1a2d47c5e1e1bc2344a49819bb6839a5c3d41df68546d6027abf6f5f8f SHA512 30e4de2e4bdac71483d39f3893b4ccd5d1ec37bc8b522a621af35f569e00c69bf02312c1039a52bfae759da2eaa748d26356a2b7db8c6b4dc8ce2ceb494d7d82
|
||||
DIST frame-icon-1.13-pkg.tar.gz 33818 BLAKE2B 73f88b6a41c42a5376d68820245b341d9ff290f62b6cfb6b40201c90523d80386b07613a824e35c898456cdd8bcebeb82973eb98724c64e702b5ebdec4aa7ed9 SHA512 45e37a4dd59f6e7bdac12558079a4b7c0cd552053950fbc5b67b32b00c3631580d3645bfc2d662a91b3da7410754d89f402ed1faa02eecefcc1691460aea95a2
|
||||
EBUILD frame-icon-1.11.ebuild 289 BLAKE2B c013e5b9b897cacf48e0959b4df9baefd4d3a1b4618f7fe7cb819966a8d6ece07c05be2d9119e55ca8a3497735247a055dfe765121a8438676091378eb59b925 SHA512 f20f4b8028d1bcd20358894440fab60020d4df29e2b83796c87180c2a56d2462cc21214026aca21272cfffa3a2fb1f58d88198929fdd9a58e30779d0fba47878
|
||||
EBUILD frame-icon-1.13.ebuild 295 BLAKE2B df54ebd5bb61b130bccb9d3c41a56394d1683862bea1d1e24fb60521aebf9243c0fc6619a28ca8c3edb84b7aef5a021779a608906f6d77b47c64e48f73149ad2 SHA512 1c4e4014430d38a1112fab429f5a42731b68d43b861f8e3ee55cac5eb9ff612c6dba1f7c1400722c076fec3a0d3f200364a07cf81dd1a84314a6748301844005
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,12 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Set up mode-specific icons for each frame under XEmacs"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,5 +1,7 @@
|
||||
DIST fsf-compat-1.15-pkg.tar.gz 18912 BLAKE2B c44bea3e0aba7dbd13d747a6faf6e5824df5cae83a2fb341d4fe81590cd0575c163f6f3a7a919ec71a7b3d2860436342df87fb93db89375099b1e08c7ceeeea5 SHA512 87e208b0f30d58953c9d49b7988b0dcd886870e29083ec9bfd47eef347e83b2c275e446593f200c8b76075b70c9691286f6c1e6639b82eb9f1599df33c5042a6
|
||||
DIST fsf-compat-1.19-pkg.tar.gz 20477 BLAKE2B d231757c8498693b1f08d164f1b93a89352e081cb52e3c46dc79007d5e5b0076d59950e7269b62eaa1efdf990aac21f56a355e42dd52b59008e5c182b4179912 SHA512 e1c64af5aee787691b527ee90a7ca6112ec0556b5939fc916c32fd4f990a60c8af70fda3b5c9e557888596ae5294b7ca8ddc4ae0df741299ec5d17a99a2479db
|
||||
DIST fsf-compat-1.24-pkg.tar.gz 30304 BLAKE2B e54d2484b0dd7e42543e7e629bf403e042e3966e3776e9a108a19b34db4ce634a2e9d99122225d005e09bf2a35411d95f613b1aaac2f57755e8af685084872b0 SHA512 b16e4ac297bbc6fecd278bb7e26842f92cba279c0edf7ddf880c43470e586232d30e84d923f52f5bf13904fb7ce3fb3193f48ecc3d5709fe6613bf6dec681f2d
|
||||
EBUILD fsf-compat-1.15.ebuild 303 BLAKE2B a07a401564e467a1f06d33f03a9f928ba148dbb919945a4bb34e90f7ad897fdd5ddee3fc3210478c65851a4bf10a6688ff4441b8f9c4f9b0c48db15a442cf83d SHA512 5595cee32937d00e83c396cac4490bc29edc9c92c4ff8da0dbd2e6197f547cd29b79a15cd7f748255898a7c8d141f70c36f014861d9c8ee1def032ec13f4d678
|
||||
EBUILD fsf-compat-1.19.ebuild 323 BLAKE2B ee930e5f0ee164c76dc73615f6abb37aa99e0dc80d583c7ef430f22bb7b1031daa11c2948047652809433b99d8f6cbc526539085fd2563b30ed47738671fd1fa SHA512 842d13d504dd7ed2a5bfd70d92c171ab371b3e0cf50c5010b94208876aea2e52a2f8b7044d982de613764daea68ebeffa93173b84e0d567df1784e715e4d0ded
|
||||
EBUILD fsf-compat-1.24.ebuild 330 BLAKE2B e04f151607374cd050e37f9acab04820dc24624b63269510252f35753269f121fb964d7fab7a4956a0002c456162fb47e50ba3ca3d7e912197add2c3e1a309c8 SHA512 70ae47a2fde60cd5fe388f7f7fb43ede96b0d0b29d666e6c3debeae97ed012ff6fb4e8dbf8ff9f6d05c74fbe85aa7351c54a51cbc04933b9688f716f262a6f9f
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,15 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="FSF Emacs compatibility files"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
|
||||
|
||||
inherit xemacs-packages
|
||||
|
||||
RDEPEND="app-xemacs/xemacs-base
|
||||
"
|
@ -1,3 +1,5 @@
|
||||
DIST games-1.20-pkg.tar.gz 84330 BLAKE2B c2f7fbd059de6e9da0670ed77fc86d8ada289f9841885038ed81bcf7db2825cf2006fc12f12dd308287a4bcea4d06ee98bb60ec0a0d4d4867356f1e48c446544 SHA512 dbee4a0da7a7ef1ddffcec72caa1af09aaa449c3d1f662c217bbd53ce0a7651c0ba3b31a3af750cba79454455c5325c5a9d81bcbae80610f356656b998b2f649
|
||||
DIST games-1.23-pkg.tar.gz 84601 BLAKE2B 05af9e6ef9425712324947369bc84cf8dfd5996293777255f4ff8b06990057eef91bf71d504243e11688098b2ea6f3942819ca0a3aa9762e1d94b5c7066b8605 SHA512 0aad12664b89c27bb809d02514cc406165c9d9c938c0cd910ff31380f30898faaf4e38a0cbebd5d9a744321ae4c726f30ad4a920185e7d78b654329adf533a0f
|
||||
EBUILD games-1.20.ebuild 295 BLAKE2B 59842188c0f5ee629d8582f2fd14224fac8b3861e59465670775d91dd56f856dad7225ac2b72750193ffe01726b331866d9df5b72cca3524a76883f198c5d2ea SHA512 db45b744179f294aed00fec0a6905e3cef91301254d10d60106a9f6a3b94e66d82acffdbfca9838ed8c2b91f5222959a2f955496bbbd8d80bc4e709390801b89
|
||||
EBUILD games-1.23.ebuild 301 BLAKE2B 636d6d9f459ad8ba934aaae9e7751b912f938cfab2182fdc95c83fe3ac028fd3c007ce31bbe822fec44b9e2e825fe7a41d6793c8e9e10b96924ee222f6ce328c SHA512 d200cd41438254a6eb3c5603a9fb99e8aeaad0ffa72331a327d381df299d2c01575e7448a717b2396670018aedb86a410ed562866c9eea7864fefaf41ac31536
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,14 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Tetris, Sokoban, and Snake"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND="app-xemacs/xemacs-base
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,5 +1,7 @@
|
||||
DIST general-docs-1.04-pkg.tar.gz 43374 BLAKE2B 535370c9dd135ac36603812db099624a167bc234203fb4b87f5a8b0e9a535d9e0bb9f6a9adad00fd62d4caf904f551ad61e50f3b16d9ccff9ab795b9e88d5a78 SHA512 a5df76303cffcac6e334decca3b11900e927e1ee70be73bbbd217e67ab0594c8f9829f7a0f582c254e616df491aee9a4e89c5a8ad6ef54ab3157abf367ecf647
|
||||
DIST general-docs-1.06-pkg.tar.gz 146305 BLAKE2B 5341120385d4c6c9d631f604e8ad71a8213c5033184a1b8ed14a14c066024a16bda397db9c656dc0d01483e42bfc9ff7754a47afce654014677187479dc4b828 SHA512 ff4847f881dd2f431e3a861015212798b23716087bd15ec117b7edb8f182bf5bddb31d370e9e69aa21847fd062164f05d2b4eba93326d6ffb784134b9152ddf8
|
||||
DIST general-docs-1.10-pkg.tar.gz 150069 BLAKE2B 12bc9cdb095685d954500373dcbf5b9000cbea49bda67dc81945ade24896a66ff3ec7b9d73a840706f48570b30da2dd10874bb15bc732a6cd11de5bfa56f64aa SHA512 f94798e437d5278c31e0cf18e22f22c88cc0c8eca1febf23f6c1e5dbe8856955c9334334c70832d6ce25db535704e56355536cb402c7c587a2bfee450c1485b9
|
||||
EBUILD general-docs-1.04.ebuild 274 BLAKE2B fbd4894c2845c46ed8defacad92d94666c4bb4b3ea5e703ccda285f6b9d680b56c6a9efc0ce1ab116adf104ec2ad077335273ce70764db6f346e75246b8f53cf SHA512 e0df4685f897bcb3a8515c711f1de6c6eb5084626483ffdfff62335a2aa72455fa6f40158ba32d08e4de2756b17915d2e93ab447522fa5fe92a73cabf6bdf2ca
|
||||
EBUILD general-docs-1.06.ebuild 274 BLAKE2B fbd4894c2845c46ed8defacad92d94666c4bb4b3ea5e703ccda285f6b9d680b56c6a9efc0ce1ab116adf104ec2ad077335273ce70764db6f346e75246b8f53cf SHA512 e0df4685f897bcb3a8515c711f1de6c6eb5084626483ffdfff62335a2aa72455fa6f40158ba32d08e4de2756b17915d2e93ab447522fa5fe92a73cabf6bdf2ca
|
||||
EBUILD general-docs-1.10.ebuild 280 BLAKE2B f572450d01ce2d51d969f308bad5ded6bc059ade8bfe2a7161173117a0911c644680c91ac128c731cc5177773df52ca5d92b5c4d2783a3e665f41ce531cf3fd8 SHA512 52c52e62225f23d838026ccbfe1ee2d02afda4383c5a366e30e616d090e2a8d742ab4c77c6eca99c1adad926151943e0dc782bcd52630454d42587ee724e297d
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,13 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="General XEmacs documentation"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND=""
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST gnats-1.17-pkg.tar.gz 188959 BLAKE2B fd32eea586b1610abba78a51383d86714091a3656dabeeb871bb56eb5b85e7f9ff52dfba87da76bdf3abd15c1e66f98c03d807b26071879f64b33b3fac048b4e SHA512 b8d5a0faeb55c46b7a4f2d42d7b347304bff7a94f8487df72fac0a1aa4e388f188abb351de8764fac1c2381b01b3ac21abb1682878d4e998b5e141e4c443d29b
|
||||
DIST gnats-1.19-pkg.tar.gz 190492 BLAKE2B a0ee4d1c7014dde6ece2f8e7919832a36ebdfa556083af37561404cd002239ff25d2c7074ac1498f2e388e133040445745620513955f5c4f345b213232c91219 SHA512 116375ab1830fff3ecb889a5236c1915a69b4d2e08daa95885aaa22c4980ee27d4e5ea41c3e5d2a9bad507acf3d668752b068c8e3ae9281e4a129f297fb0a9c1
|
||||
EBUILD gnats-1.17.ebuild 307 BLAKE2B 3381b54e8e014eca3ba5acfae67eae56bfcc4c149f89c5ba807324d2c428f9f6005918504772cc6ac4436992a004ae411315570b625bdf4fd2798a3d99997474 SHA512 66844e8572299bb04788add7b30dc670aeba48b08f39d915c6f542bdcf73d645861e83025325f60a2846500523683dc83cef111d5a26697c2f57c47f6a68e766
|
||||
EBUILD gnats-1.19.ebuild 313 BLAKE2B 38cdd1db2a0602a091e5f7dbe3dd97c0169460e3ffa8f5181b2fc1c132f1b3700f4ab0f8927394373e736ab25233656d2de616b686943173aedddd85c55b96d4 SHA512 35a96c4be3cf19b2539bf53d465681547ddd63ee448fd831479defbb31bbb1917aea68ac689712f1f8a365812c37d99162c81b16f80ccbdd14e44682b2db4c74
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,15 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="XEmacs bug reports"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND="app-xemacs/mail-lib
|
||||
app-xemacs/xemacs-base
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST gnus-1.99-pkg.tar.gz 3636886 BLAKE2B 5345498a95388998c5cefe65c20991ae34386e582e291c45d51194e509670ec395b2d4ad164ca219e4892a7377030bd769b2e76e3f624b6751d60f2a5161bb5d SHA512 f938e77d2a93e29b7eb89db5b67d717a55ff36e827b7ba3ea1d114f59eda763e06933b645fe42d51a53c483f1e6fe74c669d595af36aa97b30cb97f5ca39db79
|
||||
DIST gnus-2.04-pkg.tar.gz 3628467 BLAKE2B 1b6f6ffd4693065a666353e87cf5ec4ae5f897470fe1423f43c5f3ec99c827f6c9074c70f4add6cbf7462491ee0a50b8faf0b9f6e1d4cab16d23e64e20d07975 SHA512 d7bce3b6ff62ca901e9dabf59a5bf2044ec569ab1dd84898f11cb966dc97bc35b1842b61c62ad024e200db4bd1df9f7d17fd642c251e42931603b0eb286356e2
|
||||
EBUILD gnus-1.99.ebuild 592 BLAKE2B a33dab6e121bc96858b04426178c27e7437abb7d4f815d336936304b1135a11ec23d58fe2ea75eb4398038b9535df90855df85ae12db6613e795d25a27cf78c5 SHA512 6ce4a4b61e34ee5679dad6232f7edd48fa927016a25d9d2572a7caceb0e5a27368cbb038d4432b6c277d8b70e9d2642b0b00460cee7b38645b3e2a878db1c55a
|
||||
EBUILD gnus-2.04.ebuild 570 BLAKE2B b3c6f970d27318d2690be8e1b0ab8d2450b546e772d36a0d3ee38a7163ab703bc77656cd81e6ca26cc1503e6becc843bba527f3fd52afbadadf661588093751f SHA512 c402cac8238263ca5d6ff10370381cff5b399357c1ae8d94f8d1bc3dd69a8cc7ef5e118e8f2656473613614d575976f32667de50a20eb42fd1f2c44945ae722c
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="The Gnus Newsreader and Mailreader"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
RDEPEND="app-xemacs/mail-lib
|
||||
app-xemacs/xemacs-base
|
||||
app-xemacs/xemacs-eterm
|
||||
app-xemacs/sh-script
|
||||
app-xemacs/net-utils
|
||||
app-xemacs/os-utils
|
||||
app-xemacs/dired
|
||||
app-xemacs/mh-e
|
||||
app-xemacs/sieve
|
||||
app-xemacs/ps-print
|
||||
app-xemacs/w3
|
||||
app-xemacs/pgg
|
||||
app-xemacs/mailcrypt
|
||||
app-xemacs/ecrypto
|
||||
app-xemacs/sasl
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
inherit xemacs-packages
|
@ -1,3 +1,5 @@
|
||||
DIST guided-tour-0.52-pkg.tar.gz 1450982 BLAKE2B e201ec081b563998f269dd051e298591be1a885270b8e05b1c4f8e905f977ffcd173b5ea7b684a461866939490d783ef52e6d2c12c659065b542ec85d344b038 SHA512 160a4a1a70acaf6e6b02e5d9b3a0fa1d5a31accb98a3b9ad131d08dbc0366163cee21ec912aaa0c2bde7f0c785e01c417f3541bca0ba2eed8a88ad30c0a44691
|
||||
DIST guided-tour-0.54-pkg.tar.gz 1451029 BLAKE2B 015887c44331679d09a32559271da90af8b713ee20cb48ebd680c2cc0efeb993ef8bfbfee70c0dacdef52d0c7ae80edfee6c64dd7bd6a816870b9abb926834d0 SHA512 fd395b0b340e0962b589a37cae4af8f2a1c36259c4417019857dcc7dc2ae10b55df754883e618a35cb95e94358f669f557dd173c1da85b251982ccb4b34adaff
|
||||
EBUILD guided-tour-0.52.ebuild 242 BLAKE2B 434e345c29ac11bbb80de8811000f3f6fc801a4a2b3d125813ba13b8f96b6f848782acac5d167777d0735980f4daa92666929025b39698ee9d37fca5bacf2b20 SHA512 a4cd91a344fb1c1939bbd1af330cfdd6549ad0863274845e593c97a276045657194f50dbb6d66d7d37b3aefba4ddae064a79302d76d17696d024acd769501751
|
||||
EBUILD guided-tour-0.54.ebuild 242 BLAKE2B b6f5cc75ea1571b5c4afdfaed8ab034ee009837999a672fe9a2dac234a2d66c9ce7fb7bd37f6e248ffb7522674b70be018bf6ce3ccaf235aa678f8b181e72394 SHA512 5465510094e024e922ccad5069264d57d0de006f50e4c598bb65913477abfc681e4a7c18d12f48c12ab797df6b123c87954041ff1580199c43bb3ed4551ec327
|
||||
MISC metadata.xml 261 BLAKE2B 2bc0ee46f3970104b4897908fe0ed8532badcb765971ce704f7d2b06e3556a066f0ca41c2a60e7612352167338ff88e579c89be7ff229de9d8722aef3ca9ca05 SHA512 02e04fab2304da6c05c55b2aeb44563d99a7a6db37ada15993575509ed47fc7f4eb97b6a03fd30535aeb5e30f57ee908917b9c25841fd3619914360b0629f20a
|
||||
|
@ -0,0 +1,12 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
SLOT="0"
|
||||
DESCRIPTION="Phil Sung's Guided Tour of Emacs"
|
||||
XEMACS_PKG_CAT="standard"
|
||||
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
inherit xemacs-packages
|
Binary file not shown.
@ -1,7 +1,5 @@
|
||||
AUX couchdb.conf-2 234 BLAKE2B ced08a5fc870703da6ab1e743cb421e7f1d5e8831923dc9115e708c728b27955650e69e323567bf6ad0041eca968f6cf152e097b962d496450ac90fd3d4f6d38 SHA512 5c40927957362a7431be6980be3a239e4ee0ca47d28f1b4d4fb3014b307e459eb429f5b50e0c8aa58b3e9f2285371616a58f06207e272feae1bed33f8c32d836
|
||||
AUX couchdb.init-4 439 BLAKE2B 4b334d42238616a1bfef41f915e7e42038457b6e52b713af698aa625dcf8364008d2e0763b1b5c90bd01121778447a86646730836bacc4cafe3477bec99b77f7 SHA512 a1e0a9403082e1c336454584d78d15e5d76861b3b3d0e56fcfb25ab50c0dbbdcf658e251e25f22e2a58dc72f38ec16ce82759bf9c7b5330a569ffb5fab912999
|
||||
DIST apache-couchdb-1.7.1.tar.gz 9963069 BLAKE2B 69a3f835f6a7b5752e4707b02edfa726cfdb76813e36e570566641b999eea556ff788b0ca8ce1e66beb819119d90e387beab3bba8618e3b7a606870794307fef SHA512 cd7417ef4b1eaeb1fe4251b559d904238fd25881c542f1498e6e9f1c4a55a79e34e06e711f90ce39e5e65fcac8be9c611943b8ed57d4a7465859b5811ac0a21f
|
||||
DIST apache-couchdb-1.7.2.tar.gz 10009424 BLAKE2B 3d3b4922fe5b2c55e4851e48993442ba23369753fb17d5cafba936947624af0d3dac70e0a23d0c22c79e7e2776a3a441d5b1020a4a420b7d9a621fb59aad48d9 SHA512 507a35a7f1e826b1562eec86146cc6fcff3c65fa7762f9742e6e8fdacfca735473105772757624183778f7a532c742f6644b301677607bb81c1f3f0ceb742867
|
||||
EBUILD couchdb-1.7.1.ebuild 1833 BLAKE2B 40ee843a46d254f64cf4b7de9927db335f2c928f8ceca249b8cdfc3e45dc5051a28da81a8bbd286f9a0e45ece27b0a21872067f59c5fff50ecf9792fec795b83 SHA512 48561428b5da0cf6afc118c782e9d627dc82208e7bc9825cdf186e51c746d0bca6040dac52586b56d42f4ecb01d08fb7b12c431641a23de47cd814a2648372f0
|
||||
EBUILD couchdb-1.7.2.ebuild 1833 BLAKE2B 7f7e685bf752daf2b0a968543956b8b3debf293e01441c9e812f9740407b6df6d324f75c146f0eec8be39dc423f37991cd4b69b68cf0a3e2c7688c93dd00799e SHA512 cb0ce76bdef08e39fa286486da0b0787ef9d5c0c894aa31eb750875de5f5562c19a4ecc8216c67c5c7cb87ccee6f9ce53bc33b3acdf8e41bcc9d8c1827616b1c
|
||||
MISC metadata.xml 168 BLAKE2B 28995e217ebfd4a11f4738455bcd495fccb2214a7e4f48a820d2057a7d29a1d510707f94d15bff49abf69d68fdecd658381f34692181502eb587de9f2c7e0f9e SHA512 9f2101e330a89b03cbbc1814dcf7ad75f3dd4117abeeed5047cb695f81cd8f0719d3285b39acfb93f3ea1ba1b98911cc452b5d332d266b84a19791190ca123b6
|
||||
|
@ -1,77 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools eutils multilib pax-utils user
|
||||
|
||||
DESCRIPTION="Distributed, fault-tolerant and schema-free document-oriented database"
|
||||
HOMEPAGE="https://couchdb.apache.org/"
|
||||
SRC_URI="mirror://apache/couchdb/source/${PV}/apache-${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc x86"
|
||||
IUSE="libressl selinux test"
|
||||
|
||||
RDEPEND=">=dev-libs/icu-4.3.1:=
|
||||
<dev-lang/erlang-21.0[ssl]
|
||||
!libressl? ( >=dev-libs/openssl-0.9.8j:0 )
|
||||
libressl? ( dev-libs/libressl )
|
||||
>=net-misc/curl-7.18.2
|
||||
<dev-lang/spidermonkey-1.8.7
|
||||
selinux? ( sec-policy/selinux-couchdb )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/autoconf-archive"
|
||||
RESTRICT=test
|
||||
|
||||
S="${WORKDIR}/apache-${P}"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup couchdb
|
||||
enewuser couchdb -1 -1 /var/lib/couchdb couchdb
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
sed -i ./src/couchdb/priv/Makefile.* -e 's|-Werror||g'
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--with-erlang="${EPREFIX}"/usr/$(get_libdir)/erlang/usr/include \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--with-js-lib="${EPREFIX}"/usr/$(get_libdir)
|
||||
# bug 296609, upstream bug #COUCHDB-621
|
||||
sed -e "s#localdocdir = /usr/share/doc/couchdb#localdocdir = "${EPREFIX}"/usr/share/doc/${PF}#" -i Makefile || die "sed failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
# bug 442616
|
||||
pax-mark mr src/couchdb/priv/couchjs
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake distcheck
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
fowners couchdb:couchdb \
|
||||
/var/lib/couchdb \
|
||||
/var/log/couchdb
|
||||
|
||||
for f in "${ED}"/etc/couchdb/*.ini ; do
|
||||
fowners root:couchdb "${f#${ED}}"
|
||||
fperms 660 "${f#${ED}}"
|
||||
done
|
||||
fperms 664 /etc/couchdb/default.ini
|
||||
|
||||
newinitd "${FILESDIR}/couchdb.init-4" couchdb
|
||||
newconfd "${FILESDIR}/couchdb.conf-2" couchdb
|
||||
|
||||
sed -i -e "s:LIBDIR:$(get_libdir):" "${ED}/etc/conf.d/couchdb"
|
||||
}
|
@ -0,0 +1,887 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
MY_EXTRAS_VER="20180809-1700Z"
|
||||
SUBSLOT="18"
|
||||
|
||||
JAVA_PKG_OPT_USE="jdbc"
|
||||
|
||||
# Keeping eutils in EAPI=6 for emktemp in pkg_config
|
||||
|
||||
inherit eutils systemd flag-o-matic prefix toolchain-funcs java-pkg-opt-2 user cmake-utils multilib-build
|
||||
|
||||
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
|
||||
|
||||
# Gentoo patches to MySQL
|
||||
if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then
|
||||
SRC_URI="${SRC_URI}
|
||||
mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2"
|
||||
fi
|
||||
|
||||
HOMEPAGE="https://mariadb.org/"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/${SUBSLOT:-0}"
|
||||
IUSE="+backup bindist client-libs cracklib debug extraengine galera jdbc jemalloc kerberos
|
||||
innodb-lz4 innodb-lzo innodb-snappy latin1 libressl mroonga numa odbc oqgraph pam
|
||||
+perl profiling selinux +server sphinx sst-rsync sst-mariabackup sst-xtrabackup
|
||||
systemd systemtap static static-libs tcmalloc test tokudb xml yassl"
|
||||
|
||||
# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests
|
||||
RESTRICT="!bindist? ( bindist ) libressl? ( test )"
|
||||
|
||||
REQUIRED_USE="jdbc? ( extraengine server !static )
|
||||
server? ( tokudb? ( jemalloc !tcmalloc ) )
|
||||
?? ( tcmalloc jemalloc )
|
||||
static? ( yassl !pam )"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Shorten the path because the socket path length must be shorter than 107 chars
|
||||
# and we will run a mysql server during test phase
|
||||
S="${WORKDIR}/mysql"
|
||||
|
||||
if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then
|
||||
MY_PATCH_DIR="${WORKDIR%/}/mysql-extras"
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras"
|
||||
EGIT_CLONE_TYPE=shallow
|
||||
else
|
||||
MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}"
|
||||
fi
|
||||
|
||||
PATCHES=(
|
||||
"${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.27.patch
|
||||
"${MY_PATCH_DIR}"/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch
|
||||
"${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch
|
||||
"${MY_PATCH_DIR}"/20018_all_mariadb-10.1.16-without-clientlibs-tools.patch
|
||||
"${MY_PATCH_DIR}"/20025_all_mariadb-10.1.26-gssapi-detect.patch
|
||||
"${MY_PATCH_DIR}"/20029_all_mariadb-10.1.31-enable-numa.patch
|
||||
"${MY_PATCH_DIR}"/20035_all_mariadb-10.1-atomic-detection.patch
|
||||
)
|
||||
|
||||
# Be warned, *DEPEND are version-dependant
|
||||
# These are used for both runtime and compiletime
|
||||
COMMON_DEPEND="
|
||||
kernel_linux? (
|
||||
sys-process/procps:0=
|
||||
dev-libs/libaio:0=
|
||||
)
|
||||
>=sys-apps/sed-4
|
||||
>=sys-apps/texinfo-4.7-r1
|
||||
jemalloc? ( dev-libs/jemalloc:0= )
|
||||
tcmalloc? ( dev-util/google-perftools:0= )
|
||||
systemtap? ( >=dev-util/systemtap-1.3:0= )
|
||||
!yassl? (
|
||||
!libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
>=sys-libs/zlib-1.2.3:0=
|
||||
sys-libs/ncurses:0=
|
||||
!bindist? (
|
||||
sys-libs/binutils-libs:0=
|
||||
>=sys-libs/readline-4.1:0=
|
||||
)
|
||||
server? (
|
||||
backup? ( app-arch/libarchive:0= )
|
||||
cracklib? ( sys-libs/cracklib:0= )
|
||||
extraengine? (
|
||||
odbc? ( dev-db/unixODBC:0= )
|
||||
xml? ( dev-libs/libxml2:2= )
|
||||
sys-libs/zlib[minizip]
|
||||
)
|
||||
innodb-lz4? ( app-arch/lz4 )
|
||||
innodb-lzo? ( dev-libs/lzo )
|
||||
innodb-snappy? ( app-arch/snappy )
|
||||
kerberos? ( virtual/krb5 )
|
||||
mroonga? ( app-text/groonga-normalizer-mysql >=app-text/groonga-7.0.4 )
|
||||
numa? ( sys-process/numactl )
|
||||
oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
|
||||
pam? ( virtual/pam:0= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
tokudb? ( app-arch/snappy )
|
||||
)
|
||||
!yassl? ( !libressl? ( !>=dev-libs/openssl-1.1.0 ) )
|
||||
>=dev-libs/libpcre-8.41-r1:3=
|
||||
!client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] )
|
||||
"
|
||||
DEPEND="virtual/yacc
|
||||
static? ( sys-libs/ncurses[static-libs] )
|
||||
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
|
||||
server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) )
|
||||
${COMMON_DEPEND}"
|
||||
RDEPEND="selinux? ( sec-policy/selinux-mysql )
|
||||
client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c )
|
||||
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
|
||||
server? ( !prefix? ( dev-db/mysql-init-scripts ) )
|
||||
${COMMON_DEPEND}
|
||||
server? ( galera? (
|
||||
sys-apps/iproute2
|
||||
=sys-cluster/galera-25*
|
||||
sst-rsync? ( sys-process/lsof )
|
||||
sst-mariabackup? ( net-misc/socat[ssl] )
|
||||
sst-xtrabackup? ( net-misc/socat[ssl] )
|
||||
) )
|
||||
perl? ( !dev-db/mytop
|
||||
virtual/perl-Getopt-Long
|
||||
dev-perl/TermReadKey
|
||||
virtual/perl-Term-ANSIColor
|
||||
virtual/perl-Time-HiRes )
|
||||
server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) )
|
||||
"
|
||||
# For other stuff to bring us in
|
||||
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
|
||||
# percona-xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed
|
||||
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
|
||||
server? ( galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )"
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
||||
local GCC_MAJOR_SET=$(gcc-major-version)
|
||||
local GCC_MINOR_SET=$(gcc-minor-version)
|
||||
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
|
||||
# non x86{,_64} arches
|
||||
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
fi
|
||||
java-pkg-opt-2_pkg_setup
|
||||
if has test ${FEATURES} && \
|
||||
use server && ! has userpriv ${FEATURES} ; then
|
||||
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
|
||||
# This should come after all of the die statements
|
||||
enewgroup mysql 60 || die "problem adding 'mysql' group"
|
||||
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
java-pkg-opt-2_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Create log directory securely if it does not exist
|
||||
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
|
||||
|
||||
if use server ; then
|
||||
if use pam; then
|
||||
einfo
|
||||
elog "This install includes the PAM authentication plugin."
|
||||
elog "To activate and configure the PAM plugin, please read:"
|
||||
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
|
||||
einfo
|
||||
fi
|
||||
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
|
||||
einfo
|
||||
elog "You might want to run:"
|
||||
elog "\"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "if this is a new install."
|
||||
elog
|
||||
elog "If you are switching server implentations, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
else
|
||||
einfo
|
||||
elog "If you are upgrading major versions, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo
|
||||
elog "Be sure to edit the my.cnf file to activate your cluster settings."
|
||||
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "The first time the cluster is activated, you should add"
|
||||
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
|
||||
elog "This option should then be removed for subsequent starts."
|
||||
einfo
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
# Grab the patches
|
||||
[[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack
|
||||
|
||||
mv -f "${WORKDIR%/}/${PN%%-galera}-${PV}" "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
_disable_engine() {
|
||||
echo > "${S%/}/storage/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
|
||||
_disable_plugin() {
|
||||
echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
|
||||
if use tcmalloc; then
|
||||
echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die
|
||||
fi
|
||||
|
||||
# Don't build bundled xz-utils for tokudb
|
||||
echo > "${S%/}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die
|
||||
sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S%/}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die
|
||||
sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S%/}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die
|
||||
|
||||
local plugin
|
||||
local server_plugins=( handler_socket auth_socket feedback metadata_lock_info
|
||||
locale_info qc_info server_audit semisync sql_errlog )
|
||||
local test_plugins=( audit_null auth_examples daemon_example fulltext )
|
||||
if ! use server; then # These plugins are for the server
|
||||
for plugin in "${server_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
if ! use test; then # These plugins are only used during testing
|
||||
for plugin in "${test_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Collides with mariadb-connector-c bug 655980
|
||||
_disable_plugin auth_dialog
|
||||
|
||||
# Avoid useless library checks
|
||||
use mroonga || _disable_engine mroonga
|
||||
use oqgraph || _disable_engine oqgraph
|
||||
_disable_engine example
|
||||
|
||||
cmake-utils_src_prepare
|
||||
java-pkg-opt-2_src_prepare
|
||||
}
|
||||
|
||||
src_configure(){
|
||||
# bug 508724 mariadb cannot use ld.gold
|
||||
tc-ld-disable-gold
|
||||
# Bug #114895, bug #110149
|
||||
filter-flags "-O" "-O[01]"
|
||||
|
||||
append-cxxflags -felide-constructors
|
||||
|
||||
# bug #283926, with GCC4.4, this is required to get correct behavior.
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
CMAKE_BUILD_TYPE="RelWithDebInfo"
|
||||
|
||||
# debug hack wrt #497532
|
||||
mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr"
|
||||
-DDEFAULT_SYSCONFDIR="${EPREFIX%/}/etc/mysql"
|
||||
-DINSTALL_BINDIR=bin
|
||||
-DINSTALL_DOCDIR=share/doc/${PF}
|
||||
-DINSTALL_DOCREADMEDIR=share/doc/${PF}
|
||||
-DINSTALL_INCLUDEDIR=include/mysql
|
||||
-DINSTALL_INFODIR=share/info
|
||||
-DINSTALL_LIBDIR=$(get_libdir)
|
||||
-DINSTALL_MANDIR=share/man
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mariadb
|
||||
-DINSTALL_MYSQLTESTDIR=$(usex test 'share/mariadb/mysql-test' '')
|
||||
-DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin
|
||||
-DINSTALL_SCRIPTDIR=share/mariadb/scripts
|
||||
-DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql"
|
||||
-DINSTALL_SBINDIR=sbin
|
||||
-DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mariadb"
|
||||
-DCOMPILATION_COMMENT="Gentoo Linux ${PF}"
|
||||
-DWITH_UNIT_TESTS=$(usex test ON OFF)
|
||||
-DWITH_ZLIB=system
|
||||
-DENABLED_LOCAL_INFILE=1
|
||||
-DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock"
|
||||
-DINSTALL_UNIX_ADDRDIR="${EPREFIX%/}/var/run/mysqld/mysqld.sock"
|
||||
-DWITH_DEFAULT_COMPILER_OPTIONS=0
|
||||
-DWITH_DEFAULT_FEATURE_SET=0
|
||||
-DINSTALL_SYSTEMD_UNITDIR="$(systemd_get_systemunitdir)"
|
||||
# The build forces this to be defined when cross-compiling. We pass it
|
||||
# all the time for simplicity and to make sure it is actually correct.
|
||||
-DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1)
|
||||
-DWITHOUT_CLIENTLIBS=YES
|
||||
-DWITH_READLINE=$(usex bindist 1 0)
|
||||
-DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1)
|
||||
-DENABLE_DTRACE=$(usex systemtap)
|
||||
-DWITH_SSL=$(usex yassl bundled system)
|
||||
)
|
||||
|
||||
if use server ; then
|
||||
|
||||
# Federated{,X} must be treated special otherwise they will not be built as plugins
|
||||
if ! use extraengine ; then
|
||||
mycmakeargs+=(
|
||||
-DPLUGIN_FEDERATED=NO
|
||||
-DPLUGIN_FEDERATEDX=NO )
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DWITH_JEMALLOC=$(usex jemalloc system)
|
||||
-DWITH_PCRE=system
|
||||
-DPLUGIN_OQGRAPH=$(usex oqgraph DYNAMIC NO)
|
||||
-DPLUGIN_SPHINX=$(usex sphinx YES NO)
|
||||
-DPLUGIN_TOKUDB=$(usex tokudb YES NO)
|
||||
-DPLUGIN_AUTH_PAM=$(usex pam YES NO)
|
||||
-DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
|
||||
-DPLUGIN_CASSANDRA=NO
|
||||
-DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
|
||||
-DPLUGIN_SPIDER=$(usex extraengine YES NO)
|
||||
-DPLUGIN_CONNECT=$(usex extraengine YES NO)
|
||||
-DCONNECT_WITH_MYSQL=1
|
||||
-DCONNECT_WITH_LIBXML2=$(usex xml)
|
||||
-DCONNECT_WITH_ODBC=$(usex odbc)
|
||||
-DCONNECT_WITH_JDBC=$(usex jdbc)
|
||||
# Build failure and autodep wrt bug 639144
|
||||
-DCONNECT_WITH_MONGO=OFF
|
||||
-DWITH_WSREP=$(usex galera)
|
||||
-DWITH_INNODB_LZ4=$(usex innodb-lz4 ON OFF)
|
||||
-DWITH_INNODB_LZO=$(usex innodb-lzo ON OFF)
|
||||
-DWITH_INNODB_SNAPPY=$(usex innodb-snappy ON OFF)
|
||||
-DPLUGIN_MROONGA=$(usex mroonga DYNAMIC NO)
|
||||
-DPLUGIN_AUTH_GSSAPI=$(usex kerberos DYNAMIC NO)
|
||||
-DPLUGIN_AUTH_GSSAPI_CLIENT=NO
|
||||
-DWITH_MARIABACKUP=$(usex backup ON OFF)
|
||||
-DWITH_LIBARCHIVE=$(usex backup ON OFF)
|
||||
-DWITH_SYSTEMD=$(usex systemd yes no)
|
||||
-DWITH_NUMA=$(usex numa ON OFF)
|
||||
-DINSTALL_SQLBENCHDIR=''
|
||||
)
|
||||
|
||||
if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
|
||||
ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
|
||||
ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
|
||||
ewarn "You MUST file bugs without these variables set."
|
||||
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
|
||||
-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
|
||||
)
|
||||
|
||||
elif ! use latin1 ; then
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=utf8
|
||||
-DDEFAULT_COLLATION=utf8_general_ci
|
||||
)
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=latin1
|
||||
-DDEFAULT_COLLATION=latin1_swedish_ci
|
||||
)
|
||||
fi
|
||||
mycmakeargs+=(
|
||||
-DEXTRA_CHARSETS=all
|
||||
-DMYSQL_USER=mysql
|
||||
-DDISABLE_SHARED=$(usex static YES NO)
|
||||
-DWITH_DEBUG=$(usex debug)
|
||||
-DWITH_EMBEDDED_SERVER=OFF
|
||||
-DENABLED_PROFILING=$(usex profiling)
|
||||
)
|
||||
|
||||
if use static; then
|
||||
mycmakeargs+=( -DWITH_PIC=1 )
|
||||
fi
|
||||
|
||||
if use jemalloc || use tcmalloc ; then
|
||||
mycmakeargs+=( -DWITH_SAFEMALLOC=OFF )
|
||||
fi
|
||||
|
||||
# Storage engines
|
||||
mycmakeargs+=(
|
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=1
|
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
|
||||
-DWITH_CSV_STORAGE_ENGINE=1
|
||||
-DWITH_HEAP_STORAGE_ENGINE=1
|
||||
-DWITH_INNOBASE_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAMMRG_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAM_STORAGE_ENGINE=1
|
||||
-DWITH_PARTITION_STORAGE_ENGINE=1
|
||||
)
|
||||
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_SERVER=1
|
||||
-DWITH_EMBEDDED_SERVER=OFF
|
||||
-DEXTRA_CHARSETS=none
|
||||
-DINSTALL_SQLBENCHDIR=
|
||||
-DWITH_SYSTEMD=no
|
||||
)
|
||||
fi
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake-utils_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
# Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used
|
||||
if [[ -f "${ED}/usr/include/mysql/server/private/config.h" ]] ; then
|
||||
rm "${ED}/usr/include/mysql/server/private/config.h" || die
|
||||
fi
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Convenience links
|
||||
einfo "Making Convenience links for mysqlcheck multi-call binary"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlanalyze"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlrepair"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqloptimize"
|
||||
|
||||
# INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir
|
||||
if [[ -d "${ED}/usr/data" ]] ; then
|
||||
rm -Rf "${ED}/usr/data" || die
|
||||
fi
|
||||
|
||||
# Unless they explicitly specific USE=test, then do not install the
|
||||
# testsuite. It DOES have a use to be installed, esp. when you want to do a
|
||||
# validation of your database configuration after tuning it.
|
||||
if ! use test ; then
|
||||
rm -rf "${D}/${MY_SHAREDSTATEDIR}/mysql-test"
|
||||
fi
|
||||
|
||||
# Configuration stuff
|
||||
einfo "Building default configuration ..."
|
||||
insinto "${MY_SYSCONFDIR#${EPREFIX}}"
|
||||
[[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf
|
||||
local mycnf_src="my.cnf-5.6-r1"
|
||||
sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
|
||||
"${FILESDIR}/${mycnf_src}" \
|
||||
> "${TMPDIR}/my.cnf.ok" || die
|
||||
use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR}/my.cnf.ok"
|
||||
if use latin1 ; then
|
||||
sed -i \
|
||||
-e "/character-set/s|utf8|latin1|g" \
|
||||
"${TMPDIR}/my.cnf.ok" || die
|
||||
fi
|
||||
eprefixify "${TMPDIR}/my.cnf.ok"
|
||||
newins "${TMPDIR}/my.cnf.ok" my.cnf
|
||||
|
||||
if use server ; then
|
||||
einfo "Including support files and sample configurations"
|
||||
docinto "support-files"
|
||||
local script
|
||||
for script in \
|
||||
"${S}"/support-files/magic
|
||||
do
|
||||
[[ -f "$script" ]] && dodoc "${script}"
|
||||
done
|
||||
|
||||
docinto "scripts"
|
||||
for script in "${S}"/scripts/mysql* ; do
|
||||
[[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}"
|
||||
done
|
||||
# Manually install supporting files that conflict with other packages
|
||||
# but are needed for galera and initial installation
|
||||
exeinto /usr/libexec/mariadb
|
||||
doexe "${BUILD_DIR}/extra/my_print_defaults" "${BUILD_DIR}/extra/perror"
|
||||
fi
|
||||
|
||||
#Remove mytop if perl is not selected
|
||||
[[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop"
|
||||
}
|
||||
|
||||
# Official test instructions:
|
||||
# USE='extraengine perl server' \
|
||||
# FEATURES='test userpriv -usersandbox' \
|
||||
# ebuild mariadb-X.X.XX.ebuild \
|
||||
# digest clean package
|
||||
src_test() {
|
||||
|
||||
_disable_test() {
|
||||
local rawtestname reason
|
||||
rawtestname="${1}" ; shift
|
||||
reason="${@}"
|
||||
ewarn "test '${rawtestname}' disabled: '${reason}'"
|
||||
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
|
||||
}
|
||||
|
||||
local TESTDIR="${BUILD_DIR}/mysql-test"
|
||||
local retstatus_unit
|
||||
local retstatus_tests
|
||||
|
||||
if ! use server ; then
|
||||
einfo "Skipping server tests due to minimal build."
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [[ $UID -eq 0 ]]; then
|
||||
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
|
||||
# Run CTest (test-units)
|
||||
# cmake-utils_src_test
|
||||
# retstatus_unit=$?
|
||||
|
||||
# Ensure that parallel runs don't die
|
||||
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
|
||||
# Enable parallel testing, auto will try to detect number of cores
|
||||
# You may set this by hand.
|
||||
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
|
||||
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
|
||||
|
||||
# create directories because mysqladmin might run out of order
|
||||
mkdir -p "${T}"/var-tests{,/log} || die
|
||||
|
||||
# Run mysql tests
|
||||
pushd "${TESTDIR}" > /dev/null || die
|
||||
|
||||
touch "${T}/disabled.def"
|
||||
# These are failing in MariaDB 10.0 for now and are believed to be
|
||||
# false positives:
|
||||
#
|
||||
# main.mysql_client_test, main.mysql_client_test_nonblock
|
||||
# main.mysql_client_test_comp:
|
||||
# segfaults at random under Portage only, suspect resource limits.
|
||||
|
||||
local t
|
||||
for t in plugins.cracklib_password_check plugins.two_password_validations ; do
|
||||
_disable_test "$t" "False positive due to varying policies"
|
||||
done
|
||||
|
||||
for t in main.mysql_client_test main.mysql_client_test_nonblock \
|
||||
rpl.rpl_semi_sync_uninstall_plugin \
|
||||
main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam ; do
|
||||
_disable_test "$t" "False positives in Gentoo"
|
||||
done
|
||||
|
||||
if ! use client-libs ; then
|
||||
_disable_test main.plugin_auth "Needs client libraries built"
|
||||
fi
|
||||
|
||||
_disable_test sys_vars.sysvars_server_notembedded "Broken test" # bug #661700 required profiling always on
|
||||
|
||||
# run mysql-test tests
|
||||
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
|
||||
retstatus_tests=$?
|
||||
|
||||
popd > /dev/null || die
|
||||
|
||||
# Cleanup is important for these testcases.
|
||||
pkill -9 -f "${S}/ndb" 2>/dev/null
|
||||
pkill -9 -f "${S}/sql" 2>/dev/null
|
||||
|
||||
local failures=""
|
||||
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
|
||||
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
|
||||
|
||||
[[ -z "$failures" ]] || die "Test failures: $failures"
|
||||
einfo "Tests successfully completed"
|
||||
}
|
||||
|
||||
mysql_init_vars() {
|
||||
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
|
||||
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
|
||||
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
|
||||
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
|
||||
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=""
|
||||
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
|
||||
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
|
||||
| sed -e 's/.*=\s*//' \
|
||||
| tail -n1`
|
||||
fi
|
||||
fi
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR="${MY_LOCALSTATEDIR}"
|
||||
einfo "Using default MY_DATADIR"
|
||||
fi
|
||||
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
|
||||
|
||||
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
|
||||
if [[ -e "${MY_DATADIR}" ]] ; then
|
||||
# If you get this and you're wondering about it, see bug #207636
|
||||
elog "MySQL datadir found in ${MY_DATADIR}"
|
||||
elog "A new one will not be created."
|
||||
PREVIOUS_DATADIR="yes"
|
||||
else
|
||||
PREVIOUS_DATADIR="no"
|
||||
fi
|
||||
export PREVIOUS_DATADIR
|
||||
fi
|
||||
else
|
||||
if [[ ${EBUILD_PHASE} == "config" ]]; then
|
||||
local new_MY_DATADIR
|
||||
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
|
||||
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
|
||||
ewarn "MySQL MY_DATADIR has changed"
|
||||
ewarn "from ${MY_DATADIR}"
|
||||
ewarn "to ${new_MY_DATADIR}"
|
||||
MY_DATADIR="${new_MY_DATADIR}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
|
||||
export MY_LOCALSTATEDIR MY_LOGDIR
|
||||
export MY_DATADIR
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
_getoptval() {
|
||||
local mypd="${EROOT}"/usr/bin/my_print_defaults
|
||||
local section="$1"
|
||||
local flag="--${2}="
|
||||
local extra_options="${3}"
|
||||
"${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp"
|
||||
}
|
||||
local old_MY_DATADIR="${MY_DATADIR}"
|
||||
local old_HOME="${HOME}"
|
||||
# my_print_defaults needs to read stuff in $HOME/.my.cnf
|
||||
export HOME=${EPREFIX}/root
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
[[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR"
|
||||
if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then
|
||||
die "Minimal builds do NOT include the MySQL server"
|
||||
fi
|
||||
|
||||
if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then
|
||||
local MY_DATADIR_s="${ROOT}/${MY_DATADIR}"
|
||||
MY_DATADIR_s="${MY_DATADIR_s%%/}"
|
||||
local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}"
|
||||
old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}"
|
||||
|
||||
if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist"
|
||||
ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}"
|
||||
else
|
||||
elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}"
|
||||
mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \
|
||||
|| die "Moving MY_DATADIR failed"
|
||||
fi
|
||||
else
|
||||
ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist"
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Attempting to use ${MY_DATADIR_s}"
|
||||
else
|
||||
eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist"
|
||||
die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
local pwd1="a"
|
||||
local pwd2="b"
|
||||
local maxtry=15
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
local tmp_mysqld_password_source=
|
||||
|
||||
for tmp_mysqld_password_source in mysql client; do
|
||||
einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..."
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)"
|
||||
if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then
|
||||
if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then
|
||||
ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!"
|
||||
MYSQL_ROOT_PASSWORD=
|
||||
continue
|
||||
fi
|
||||
|
||||
einfo "Found password in '${tmp_mysqld_password_source}' section!"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Sometimes --show is required to display passwords in some implementations of my_print_defaults
|
||||
if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)"
|
||||
fi
|
||||
|
||||
unset tmp_mysqld_password_source
|
||||
fi
|
||||
MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)"
|
||||
# These are dir+prefix
|
||||
MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)"
|
||||
MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*}
|
||||
MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)"
|
||||
MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*}
|
||||
|
||||
if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then
|
||||
einfo "Creating MySQL tmpdir $MYSQL_TMPDIR"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR"
|
||||
fi
|
||||
if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then
|
||||
einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN"
|
||||
fi
|
||||
if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then
|
||||
einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG"
|
||||
fi
|
||||
|
||||
if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then
|
||||
ewarn "You have already a MySQL database in place."
|
||||
ewarn "(${ROOT}/${MY_DATADIR}/*)"
|
||||
ewarn "Please rename or delete it if you wish to replace it."
|
||||
die "MySQL database already exists!"
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
|
||||
einfo "Please provide a password for the mysql 'root' user now"
|
||||
einfo "or through the ${HOME}/.my.cnf file."
|
||||
ewarn "Avoid [\"'\\_%] characters in the password"
|
||||
read -rsp " >" pwd1 ; echo
|
||||
|
||||
einfo "Retype the password"
|
||||
read -rsp " >" pwd2 ; echo
|
||||
|
||||
if [[ "x$pwd1" != "x$pwd2" ]] ; then
|
||||
die "Passwords are not the same"
|
||||
fi
|
||||
MYSQL_ROOT_PASSWORD="${pwd1}"
|
||||
unset pwd1 pwd2
|
||||
fi
|
||||
|
||||
local options
|
||||
local sqltmp="$(emktemp)"
|
||||
|
||||
# Fix bug 446200. Don't reference host my.cnf, needs to come first,
|
||||
# see https://bugs.mysql.com/bug.php?id=31312
|
||||
use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'"
|
||||
|
||||
# Figure out which options we need to disable to do the setup
|
||||
local helpfile="${TMPDIR}/mysqld-help"
|
||||
"${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null
|
||||
for opt in grant-tables host-cache name-resolve networking slave-start \
|
||||
federated ssl log-bin relay-log slow-query-log external-locking \
|
||||
log-slave-updates \
|
||||
; do
|
||||
optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}"
|
||||
egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}"
|
||||
done
|
||||
|
||||
einfo "Creating the mysql database and setting proper permissions on it ..."
|
||||
|
||||
# Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it
|
||||
PID_DIR="${EROOT}/var/run/mysqld"
|
||||
if [[ ! -d "${PID_DIR}" ]]; then
|
||||
install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory"
|
||||
fi
|
||||
|
||||
if [[ ! -d "${MY_DATADIR}" ]]; then
|
||||
install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory"
|
||||
fi
|
||||
|
||||
pushd "${TMPDIR}" &>/dev/null || die
|
||||
|
||||
# Filling timezones, see
|
||||
# https://dev.mysql.com/doc/mysql/en/time-zone-support.html
|
||||
"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
|
||||
|
||||
local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" )
|
||||
[[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" )
|
||||
cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" )
|
||||
einfo "Command: ${cmd[*]}"
|
||||
su -s /bin/sh -c "${cmd[*]}" mysql \
|
||||
>"${TMPDIR}"/mysql_install_db.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2
|
||||
die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log"
|
||||
fi
|
||||
popd &>/dev/null || die
|
||||
[[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \
|
||||
|| die "MySQL databases not installed"
|
||||
|
||||
use prefix || options="${options} --user=mysql"
|
||||
|
||||
local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock"
|
||||
local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid"
|
||||
local mysqld="${EROOT}/usr/sbin/mysqld \
|
||||
${options} \
|
||||
--log-warnings=0 \
|
||||
--basedir=${EROOT}/usr \
|
||||
--datadir=${ROOT}/${MY_DATADIR} \
|
||||
--max_allowed_packet=8M \
|
||||
--net_buffer_length=16K \
|
||||
--socket=${socket} \
|
||||
--pid-file=${pidfile}
|
||||
--tmpdir=${ROOT}/${MYSQL_TMPDIR}"
|
||||
#einfo "About to start mysqld: ${mysqld}"
|
||||
ebegin "Starting mysqld"
|
||||
einfo "Command ${mysqld}"
|
||||
${mysqld} &
|
||||
rc=$?
|
||||
while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do
|
||||
maxtry=$((${maxtry}-1))
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
eend $rc
|
||||
|
||||
if ! [[ -S "${socket}" ]]; then
|
||||
die "Completely failed to start up mysqld with: ${mysqld}"
|
||||
fi
|
||||
|
||||
ebegin "Setting root password"
|
||||
# Do this from memory, as we don't want clear text passwords in temp files
|
||||
local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-e "${sql}"
|
||||
eend $?
|
||||
|
||||
if [[ -n "${sqltmp}" ]] ; then
|
||||
ebegin "Loading \"zoneinfo\", this step may require a few seconds"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-uroot \
|
||||
--password="${MYSQL_ROOT_PASSWORD}" \
|
||||
mysql < "${sqltmp}"
|
||||
rc=$?
|
||||
eend $?
|
||||
[[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!"
|
||||
fi
|
||||
|
||||
# Stop the server and cleanup
|
||||
einfo "Stopping the server ..."
|
||||
kill $(< "${pidfile}" )
|
||||
rm -f "${sqltmp}"
|
||||
wait %1
|
||||
einfo "Done"
|
||||
}
|
@ -0,0 +1,164 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
SCONS_MIN_VERSION="2.5.0"
|
||||
CHECKREQS_DISK_BUILD="2400M"
|
||||
CHECKREQS_DISK_USR="512M"
|
||||
CHECKREQS_MEMORY="1024M"
|
||||
|
||||
inherit check-reqs eapi7-ver eutils flag-o-matic multilib multiprocessing pax-utils python-single-r1 scons-utils systemd toolchain-funcs user
|
||||
|
||||
MY_P=${PN}-src-r${PV/_rc/-rc}
|
||||
|
||||
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
|
||||
HOMEPAGE="https://www.mongodb.com"
|
||||
SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3 Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="debug kerberos libressl mms-agent ssl test +tools"
|
||||
|
||||
RDEPEND=">=app-arch/snappy-1.1.3
|
||||
>=dev-cpp/yaml-cpp-0.5.3
|
||||
>=dev-libs/boost-1.60:=[threads(+)]
|
||||
>=dev-libs/libpcre-8.41[cxx]
|
||||
dev-libs/snowball-stemmer
|
||||
net-libs/libpcap
|
||||
>=sys-libs/zlib-1.2.11:=
|
||||
kerberos? ( dev-libs/cyrus-sasl[kerberos] )
|
||||
mms-agent? ( app-admin/mms-agent )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
dev-python/cheetah[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
virtual/python-typing[${PYTHON_USEDEP}]
|
||||
dev-util/scons
|
||||
sys-libs/ncurses:0=
|
||||
sys-libs/readline:0=
|
||||
debug? ( dev-util/valgrind )
|
||||
test? (
|
||||
dev-python/pymongo[${PYTHON_USEDEP}]
|
||||
)"
|
||||
PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.4.7-no-boost-check.patch"
|
||||
"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
|
||||
"${FILESDIR}/${PN}-4.0.0-no-compass.patch"
|
||||
)
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ -n ${REPLACING_VERSIONS} ]]; then
|
||||
if ver_test "$REPLACING_VERSIONS" -lt 3.6; then
|
||||
ewarn "To upgrade from a version earlier than the 3.6-series, you must"
|
||||
ewarn "successively upgrade major releases until you have upgraded"
|
||||
ewarn "to 3.6-series. Then upgrade to 4.0 series."
|
||||
else
|
||||
ewarn "Be sure to set featureCompatibilityVersion to 3.6 before upgrading."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup mongodb
|
||||
enewuser mongodb -1 -1 /var/lib/${PN} mongodb
|
||||
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# remove bundled libs
|
||||
rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
|
||||
|
||||
# remove compass
|
||||
rm -r src/mongo/installer/compass || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
|
||||
# --use-system-icu fails tests
|
||||
# --use-system-tcmalloc is strongly NOT recommended:
|
||||
scons_opts=(
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
|
||||
--disable-warnings-as-errors
|
||||
--use-system-boost
|
||||
--use-system-pcre
|
||||
--use-system-snappy
|
||||
--use-system-stemmer
|
||||
--use-system-yaml
|
||||
--use-system-zlib
|
||||
)
|
||||
|
||||
use debug && scons_opts+=( --dbg=on )
|
||||
use kerberos && scons_opts+=( --use-sasl-client )
|
||||
use ssl && scons_opts+=( --ssl )
|
||||
|
||||
# respect mongoDB upstream's basic recommendations
|
||||
# see bug #536688 and #526114
|
||||
if ! use debug; then
|
||||
filter-flags '-m*'
|
||||
filter-flags '-O?'
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
escons "${scons_opts[@]}" core tools
|
||||
}
|
||||
|
||||
# FEATURES="test -usersandbox" emerge dev-db/mongodb
|
||||
src_test() {
|
||||
"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
|
||||
|
||||
doman debian/mongo*.1
|
||||
dodoc README docs/building.md
|
||||
|
||||
newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
|
||||
newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
|
||||
newinitd "${FILESDIR}/mongos.initd-r3" ${PN/db/s}
|
||||
newconfd "${FILESDIR}/mongos.confd-r3" ${PN/db/s}
|
||||
|
||||
insinto /etc
|
||||
newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
|
||||
newins "${FILESDIR}/mongos.conf-r2" ${PN/db/s}.conf
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
|
||||
insinto /etc/logrotate.d/
|
||||
newins "${FILESDIR}/${PN}.logrotate" ${PN}
|
||||
|
||||
# see bug #526114
|
||||
pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
|
||||
|
||||
local x
|
||||
for x in /var/{lib,log}/${PN}; do
|
||||
diropts -m0750 -o mongodb -g mongodb
|
||||
keepdir "${x}"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Make sure to read the release notes and follow the upgrade process:"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
|
||||
ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
|
||||
}
|
@ -0,0 +1,460 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
|
||||
|
||||
inherit eutils flag-o-matic linux-info multilib pam prefix python-single-r1 \
|
||||
systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT=$(get_major_version)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="doc kerberos kernel_linux ldap libressl nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
wanted_languages() {
|
||||
local 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"
|
||||
local enable_langs lingua
|
||||
|
||||
for lingua in ${linguas} ; do
|
||||
has ${lingua} ${LINGUAS-${lingua}} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,uclibc,musl} )
|
||||
BSD_LIBC=( elibc_{Free,Net,Open}BSD )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
!dev-db/postgresql-docs:${SLOT}
|
||||
!dev-db/postgresql-base:${SLOT}
|
||||
!dev-db/postgresql-server:${SLOT}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Work around PPC{,64} compilation bug where bool is already defined
|
||||
sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
|
||||
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-10.2-no-server.patch"
|
||||
|
||||
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
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
for i in ${BSD_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=bsd"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/${PF}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !alpha spinlocks) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
use static-libs || find "${ED}" -name '*.a' -delete
|
||||
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
# Temporarily tack on tmp to workaround a file collision
|
||||
# issue. This is only necessary for 9.7 and earlier. 10 never
|
||||
# had this issue.
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://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}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -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 " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://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
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
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
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
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}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${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
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,452 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
|
||||
|
||||
PLOCALES="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"
|
||||
|
||||
inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
|
||||
systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT=$(get_major_version)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
|
||||
IUSE="doc kerberos kernel_linux ldap libressl llvm nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
llvm? ( sys-devel/llvm:=
|
||||
sys-devel/clang:= )
|
||||
pam? ( virtual/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,uclibc,musl} )
|
||||
BSD_LIBC=( elibc_{Free,Net,Open}BSD )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
!dev-db/postgresql-docs:${SLOT}
|
||||
!dev-db/postgresql-base:${SLOT}
|
||||
!dev-db/postgresql-server:${SLOT}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-11_beta1-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
for i in ${BSD_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=bsd"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/${PF}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !alpha spinlocks) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_enable nls nls "'$(l10n_get_locales)'")
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
use static-libs || find "${ED}" -name '*.a' -delete
|
||||
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
# Temporarily tack on tmp to workaround a file collision
|
||||
# issue. This is only necessary for 9.7 and earlier. 10 never
|
||||
# had this issue.
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
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}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -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
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
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
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
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}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${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
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,450 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
|
||||
|
||||
inherit eutils flag-o-matic linux-info 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)"
|
||||
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp python
|
||||
+readline selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
wanted_languages() {
|
||||
local 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"
|
||||
local enable_langs lingua
|
||||
|
||||
for lingua in ${linguas} ; do
|
||||
has ${lingua} ${LINGUAS-${lingua}} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
uuid? ( dev-libs/ossp-uuid )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
!dev-db/postgresql-docs:${SLOT}
|
||||
!dev-db/postgresql-base:${SLOT}
|
||||
!dev-db/postgresql-server:${SLOT}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Work around PPC{,64} compilation bug where bool is already defined
|
||||
sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
|
||||
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-${SLOT}-no-server.patch"
|
||||
|
||||
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
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
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/${PF}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with kerberos krb5) \
|
||||
$(use_with ldap) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with tcl) \
|
||||
$(use_with uuid ossp-uuid) \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT/.}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
use static-libs || find "${ED}" -name '*.a' -delete
|
||||
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
# Temporarily tack on tmp to workaround a file collision
|
||||
# issue. This is only necessary for 9.7 and earlier. 10 never
|
||||
# had this issue.
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}tmp"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
|
||||
docinto sgml
|
||||
dodoc doc/src/sgml/*.{sgml,dsl}
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.2" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
|
||||
# /usr/bin/psql96). They may have been created by the
|
||||
# postgresql.eselect module, but they're handled within this ebuild
|
||||
# now. It's alright if we momentarily delete /usr/bin/psql as it
|
||||
# will be recreated by the eselect module in pkg_ppostinst(). This
|
||||
# is only necessary for 9.7 and earlier. 10 and later were never
|
||||
# handled in this manner.
|
||||
local canonicalise
|
||||
if type -p realpath > /dev/null; then
|
||||
canonicalise=realpath
|
||||
elif type -p readlink > /dev/null; then
|
||||
canonicalise='readlink -f'
|
||||
else
|
||||
# can't die, subshell
|
||||
die "No readlink nor realpath found, cannot canonicalise"
|
||||
fi
|
||||
|
||||
local l
|
||||
# First remove any symlinks in /usr/bin that may have been created
|
||||
# by the old eselect
|
||||
for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
|
||||
if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
|
||||
rm "${l}" || ewarn "Couldn't remove ${l}"
|
||||
fi
|
||||
done
|
||||
|
||||
# Then move the symlinks created by the ebuild to their proper place.
|
||||
for l in "${ED}"/usr/bin/*tmp ; do
|
||||
mv "${l}" "${l%tmp}" \
|
||||
|| ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://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}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -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 " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://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
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
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() {
|
||||
if use server && [[ ${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
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,482 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
|
||||
|
||||
inherit eutils flag-o-matic linux-info 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)"
|
||||
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp python
|
||||
+readline selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
wanted_languages() {
|
||||
local 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"
|
||||
local enable_langs lingua
|
||||
|
||||
for lingua in ${linguas} ; do
|
||||
has ${lingua} ${LINGUAS-${lingua}} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,uclibc,musl} )
|
||||
BSD_LIBC=( elibc_{Free,Net,Open}BSD )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
!dev-db/postgresql-docs:${SLOT}
|
||||
!dev-db/postgresql-base:${SLOT}
|
||||
!dev-db/postgresql-server:${SLOT}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Work around PPC{,64} compilation bug where bool is already defined
|
||||
sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
|
||||
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-9.4.10-no-server.patch"
|
||||
|
||||
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
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
for i in ${BSD_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=bsd"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/${PF}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT/.}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
use static-libs || find "${ED}" -name '*.a' -delete
|
||||
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
# Temporarily tack on tmp to workaround a file collision
|
||||
# issue. This is only necessary for 9.7 and earlier. 10 never
|
||||
# had this issue.
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}tmp"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
|
||||
docinto sgml
|
||||
dodoc doc/src/sgml/*.{sgml,dsl}
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.2" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
|
||||
# /usr/bin/psql96). They may have been created by the
|
||||
# postgresql.eselect module, but they're handled within this ebuild
|
||||
# now. It's alright if we momentarily delete /usr/bin/psql as it
|
||||
# will be recreated by the eselect module in pkg_ppostinst(). This
|
||||
# is only necessary for 9.7 and earlier. 10 and later were never
|
||||
# handled in this manner.
|
||||
local canonicalise
|
||||
if type -p realpath > /dev/null; then
|
||||
canonicalise=realpath
|
||||
elif type -p readlink > /dev/null; then
|
||||
canonicalise='readlink -f'
|
||||
else
|
||||
# can't die, subshell
|
||||
die "No readlink nor realpath found, cannot canonicalise"
|
||||
fi
|
||||
|
||||
local l
|
||||
# First remove any symlinks in /usr/bin that may have been created
|
||||
# by the old eselect
|
||||
for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
|
||||
if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
|
||||
rm "${l}" || ewarn "Couldn't remove ${l}"
|
||||
fi
|
||||
done
|
||||
|
||||
# Then move the symlinks created by the ebuild to their proper place.
|
||||
for l in "${ED}"/usr/bin/*tmp ; do
|
||||
mv "${l}" "${l%tmp}" \
|
||||
|| ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://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}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -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 " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://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
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
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() {
|
||||
if use server && [[ ${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
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,488 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
|
||||
|
||||
inherit eutils flag-o-matic linux-info multilib pam prefix python-single-r1 \
|
||||
systemd user versionator
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
|
||||
|
||||
SLOT="$(get_version_component_range 1-2)"
|
||||
|
||||
SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp python
|
||||
+readline selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
wanted_languages() {
|
||||
local 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"
|
||||
local enable_langs lingua
|
||||
|
||||
for lingua in ${linguas} ; do
|
||||
has ${lingua} ${LINGUAS-${lingua}} && enable_langs+="${lingua} "
|
||||
done
|
||||
|
||||
echo -n ${enable_langs}
|
||||
}
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap )
|
||||
pam? ( virtual/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
ssl? (
|
||||
!libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,uclibc,musl} )
|
||||
BSD_LIBC=( elibc_{Free,Net,Open}BSD )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
!!<sys-apps/sandbox-2.0
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
!dev-db/postgresql-docs:${SLOT}
|
||||
!dev-db/postgresql-base:${SLOT}
|
||||
!dev-db/postgresql-server:${SLOT}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Work around PPC{,64} compilation bug where bool is already defined
|
||||
sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
|
||||
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-9.5.5-no-server.patch"
|
||||
|
||||
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
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX%/}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
for i in ${BSD_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=bsd"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--docdir="${PO}/usr/share/doc/${PF}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !alpha spinlocks) \
|
||||
$(use_enable !pg_legacytimestamp integer-datetimes) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
"$(use_enable nls nls "$(wanted_languages)")"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT/.}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
use static-libs || find "${ED}" -name '*.a' -delete
|
||||
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
# Temporarily tack on tmp to workaround a file collision
|
||||
# issue. This is only necessary for 9.7 and earlier. 10 never
|
||||
# had this issue.
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}tmp"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
|
||||
docinto sgml
|
||||
dodoc doc/src/sgml/*.{sgml,dsl}
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.2" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
|
||||
# /usr/bin/psql96). They may have been created by the
|
||||
# postgresql.eselect module, but they're handled within this ebuild
|
||||
# now. It's alright if we momentarily delete /usr/bin/psql as it
|
||||
# will be recreated by the eselect module in pkg_ppostinst(). This
|
||||
# is only necessary for 9.7 and earlier. 10 and later were never
|
||||
# handled in this manner.
|
||||
local canonicalise
|
||||
if type -p realpath > /dev/null; then
|
||||
canonicalise=realpath
|
||||
elif type -p readlink > /dev/null; then
|
||||
canonicalise='readlink -f'
|
||||
else
|
||||
# can't die, subshell
|
||||
die "No readlink nor realpath found, cannot canonicalise"
|
||||
fi
|
||||
|
||||
local l
|
||||
# First remove any symlinks in /usr/bin that may have been created
|
||||
# by the old eselect
|
||||
for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
|
||||
if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
|
||||
rm "${l}" || ewarn "Couldn't remove ${l}"
|
||||
fi
|
||||
done
|
||||
|
||||
# Then move the symlinks created by the ebuild to their proper place.
|
||||
for l in "${ED}"/usr/bin/*tmp ; do
|
||||
mv "${l}" "${l%tmp}" \
|
||||
|| ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
if use alpha && use server ; then
|
||||
ewarn "PostgreSQL 9.5+ no longer has native spinlock support on Alpha platforms."
|
||||
ewarn "As a result, performance will be extremely degraded."
|
||||
fi
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT%/}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://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}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -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 " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://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
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
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() {
|
||||
if use server && [[ ${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
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue