parent
dc18c9eb14
commit
c7d870953d
Binary file not shown.
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST needrestart-2.11.tar.gz 52156 BLAKE2B fb3ffbf6f7876625ad0b7db4feb629c80f0798b7b117f5c94058533e8ed53e695fca5de76670a184245e23720886c79b97c3cfdcc5e9400c1e6988fdb2f64459 SHA512 e987ebafe77aba6920645088fa12e609b52f55edfd545ede1c0a93ee1d6b91ed3ea84cb8db69cd067aaabe8ba973b366da61301b5527ec176a29e3ba30605311
|
||||
DIST needrestart-3.0.tar.gz 58437 BLAKE2B 6f3b79f793dab85af2a68f3796926b958c077b16c357969943db867dead470cef20aadb076a12a0e3161efc64c82cd1df7f6cdbc70f73cce563a11dec472f69a SHA512 6b653e29b10e497563e67102e11833f7c97d2bde697a99130ff89d5fcd2e616fec279328656f44ccdbb62a2c533bf10827b035efad7785ef5d0556c7f37e625f
|
||||
|
@ -0,0 +1,41 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/liske/${PN}.git"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="https://github.com/liske/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Restart daemons after library updates"
|
||||
HOMEPAGE="https://fiasko-nw.net/~thomas/tag/needrestart.html https://github.com/liske/needrestart"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2+"
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/sed-4.2.2
|
||||
dev-lang/perl:=
|
||||
dev-perl/libintl-perl
|
||||
dev-perl/Module-Find
|
||||
dev-perl/Module-ScanDeps
|
||||
dev-perl/Proc-ProcessTable
|
||||
dev-perl/Sort-Naturally
|
||||
dev-perl/TermReadKey
|
||||
sys-apps/init-system-helpers
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/gettext
|
||||
"
|
||||
|
||||
src_install() {
|
||||
default
|
||||
doman man/*.1
|
||||
dodoc -r ex
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST PackageKit-Qt-0.9.6.tar.xz 43288 BLAKE2B 7f00595ae91163346b1bd5b80da0f243388cb9a5ff64520a2574b96b3e6f240bc270b1083d24d4075960474d55720736c47cb84033d26f2ae5fce3ab6f062a23 SHA512 67d025e4e5b9860ec188518c11b3941b9a26cf9dce65665ea56307731721dac57dbb4e8726eb253f9fb39022aa3d0b0c7b9765532fa12b014fe9357028ece8aa
|
||||
DIST packagekit-qt-1.0.0.tar.gz 53495 BLAKE2B a19ff095ec42bc16e498455323a4046365f6ae144fdfc998dee799df9f4ea022696ab30682316b6417c8a96e80e75db31704e36e43c1a5eddd0a7d86309adada SHA512 4109117a94c47180cff0f073c03820ac39a139b6b3ac88dec82758fffe01271f7a3dae85d94e86a4a1167f4660326adc1d58dc6eb0fd164bd0aefee2e412dad4
|
||||
DIST packagekit-qt-1.0.1.tar.gz 53503 BLAKE2B af96899e520f4139d6025746c2a2e7a65c67c2900cdf4fbdb410c12e33f494343d078ec24e7dcdb33749b1d5206b0bf622809827ed64beae162888e48d0aaec0 SHA512 e1291545b496571c00a6a24586c45b7173e85e3704d419af6a0ec47ea5ce256c8ec7e887721b1bf8038cb967ceb82726925800ab06aa784b2bdd560e49be724a
|
||||
|
@ -0,0 +1,29 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
MY_PN="PackageKit-Qt"
|
||||
MY_P=${MY_PN}-${PV}
|
||||
inherit cmake-utils
|
||||
|
||||
DESCRIPTION="Qt PackageKit backend library"
|
||||
HOMEPAGE="http://www.packagekit.org/"
|
||||
SRC_URI="https://github.com/hughsie/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0/1"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/packagekit-base-0.9
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-libs/libxslt
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
Binary file not shown.
@ -0,0 +1,160 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools eutils flag-o-matic user systemd
|
||||
|
||||
DESCRIPTION="Clam Anti-Virus Scanner"
|
||||
HOMEPAGE="http://www.clamav.net/"
|
||||
SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE="bzip2 clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs uclibc"
|
||||
|
||||
CDEPEND="bzip2? ( app-arch/bzip2 )
|
||||
clamdtop? ( sys-libs/ncurses:0 )
|
||||
iconv? ( virtual/libiconv )
|
||||
metadata-analysis-api? ( dev-libs/json-c:= )
|
||||
milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
|
||||
dev-libs/libtommath
|
||||
>=sys-libs/zlib-1.2.2:=
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
sys-devel/libtool
|
||||
|| ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
|
||||
!!<app-antivirus/clamav-0.99"
|
||||
# hard block clamav < 0.99 due to linking problems Bug #567680
|
||||
# openssl is now *required* see this link as to why
|
||||
# http://blog.clamav.net/2014/02/introducing-openssl-as-dependency-to.html
|
||||
DEPEND="${CDEPEND}
|
||||
virtual/pkgconfig"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-clamav )"
|
||||
|
||||
DOCS=( AUTHORS BUGS ChangeLog FAQ INSTALL NEWS README UPGRADE )
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.99.2-gcc-6.patch
|
||||
"${FILESDIR}"/${PN}-0.99.2-tinfo.patch
|
||||
"${FILESDIR}"/${PN}-0.99.2-bytecode_api.patch
|
||||
"${FILESDIR}"/${PN}-0.99.2-pcre2-compile-erroffset.patch
|
||||
"${FILESDIR}"/${PN}-0.99.3-fix-fd-leaks-in-cli_scanscript.patch
|
||||
"${FILESDIR}"/${PN}-0.99.3-VMSF_DELTA-fix-CVE-2012-6706.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup clamav
|
||||
enewuser clamav -1 -1 /dev/null clamav
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use ppc64 && append-flags -mminimal-toc
|
||||
use uclibc && export ac_cv_type_error_t=yes
|
||||
|
||||
econf \
|
||||
$(use_enable bzip2) \
|
||||
$(use_enable clamdtop) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable milter) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_with iconv) \
|
||||
$(use_with metadata-analysis-api libjson /usr) \
|
||||
--cache-file="${S}"/config.cache \
|
||||
--disable-experimental \
|
||||
--disable-gcc-vcheck \
|
||||
--disable-zlib-vcheck \
|
||||
--enable-id-check \
|
||||
--with-dbdir="${EPREFIX}"/var/lib/clamav \
|
||||
--with-system-tommath \
|
||||
--with-zlib="${EPREFIX}"/usr
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
rm -rf "${ED}"/var/lib/clamav
|
||||
newinitd "${FILESDIR}"/clamd.initd-r6 clamd
|
||||
newconfd "${FILESDIR}"/clamd.conf-r1 clamd
|
||||
|
||||
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
|
||||
systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
|
||||
systemd_dounit "${FILESDIR}/clamd.service"
|
||||
systemd_dounit "${FILESDIR}/freshclamd.service"
|
||||
|
||||
keepdir /var/lib/clamav
|
||||
fowners clamav:clamav /var/lib/clamav
|
||||
keepdir /var/log/clamav
|
||||
fowners clamav:clamav /var/log/clamav
|
||||
|
||||
dodir /etc/logrotate.d
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/clamav.logrotate clamav
|
||||
|
||||
# Modify /etc/{clamd,freshclam}.conf to be usable out of the box
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
|
||||
-e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
|
||||
-e "s:.*\(User\) .*:\1 clamav:" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
|
||||
-e "s:^\#\(LogTime\).*:\1 yes:" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
"${ED}"/etc/clamd.conf.sample || die
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
|
||||
-e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
|
||||
-e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
|
||||
-e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
|
||||
-e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
"${ED}"/etc/freshclam.conf.sample || die
|
||||
|
||||
if use milter ; then
|
||||
# MilterSocket one to include ' /' because there is a 2nd line for
|
||||
# inet: which we want to leave
|
||||
dodoc "${FILESDIR}"/clamav-milter.README.gentoo
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
|
||||
-e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
|
||||
-e "s:.*\(User\) .*:\1 clamav:" \
|
||||
-e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
|
||||
"${ED}"/etc/clamav-milter.conf.sample || die
|
||||
cat >> "${ED}"/etc/conf.d/clamd <<-EOF
|
||||
MILTER_NICELEVEL=19
|
||||
START_MILTER=no
|
||||
EOF
|
||||
|
||||
systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
|
||||
fi
|
||||
|
||||
for i in clamd freshclam clamav-milter
|
||||
do
|
||||
[[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,}
|
||||
done
|
||||
|
||||
prune_libtool_files --all
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake quick-check
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use milter ; then
|
||||
elog "For simple instructions how to setup the clamav-milter read the"
|
||||
elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
|
||||
fi
|
||||
if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then
|
||||
ewarn "You must run freshclam manually to populate the virus database files"
|
||||
ewarn "before starting clamav for the first time.\n"
|
||||
fi
|
||||
}
|
@ -0,0 +1,186 @@
|
||||
Apply proposed changes to fix RAR VMSF_DELTA Filter Signedness error (CVE-2012-6706)
|
||||
|
||||
Cherry picked from commit a7d8447bd9a4d5ae1fa970c1849c8caeb5f1a805 [Link 1] and
|
||||
d4699442bce76574573dc564e7f2177d679b88bd [Link 2].
|
||||
|
||||
Link 1: https://github.com/Cisco-Talos/clamav-devel/commit/a7d8447bd9a4d5ae1fa970c1849c8caeb5f1a805
|
||||
Link 2: https://github.com/Cisco-Talos/clamav-devel/commit/d4699442bce76574573dc564e7f2177d679b88bd
|
||||
|
||||
--- a/libclamunrar/unrarvm.c
|
||||
+++ b/libclamunrar/unrarvm.c
|
||||
@@ -213,17 +213,20 @@ void rarvm_addbits(rarvm_input_t *rarvm_input, int bits)
|
||||
|
||||
unsigned int rarvm_getbits(rarvm_input_t *rarvm_input)
|
||||
{
|
||||
- unsigned int bit_field;
|
||||
+ unsigned int bit_field = 0;
|
||||
|
||||
- if (rarvm_input->in_addr+2 < rarvm_input->buf_size) {
|
||||
+ if (rarvm_input->in_addr < rarvm_input->buf_size) {
|
||||
bit_field = (unsigned int) rarvm_input->in_buf[rarvm_input->in_addr] << 16;
|
||||
- bit_field |= (unsigned int) rarvm_input->in_buf[rarvm_input->in_addr+1] << 8;
|
||||
- bit_field |= (unsigned int) rarvm_input->in_buf[rarvm_input->in_addr+2];
|
||||
- bit_field >>= (8-rarvm_input->in_bit);
|
||||
-
|
||||
- return (bit_field & 0xffff);
|
||||
+ if (rarvm_input->in_addr+1 < rarvm_input->buf_size) {
|
||||
+ bit_field |= (unsigned int) rarvm_input->in_buf[rarvm_input->in_addr+1] << 8;
|
||||
+ if (rarvm_input->in_addr+2 < rarvm_input->buf_size) {
|
||||
+ bit_field |= (unsigned int) rarvm_input->in_buf[rarvm_input->in_addr+2];
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
- return 0;
|
||||
+ bit_field >>= (8-rarvm_input->in_bit);
|
||||
+
|
||||
+ return (bit_field & 0xffff);
|
||||
}
|
||||
|
||||
unsigned int rarvm_read_data(rarvm_input_t *rarvm_input)
|
||||
@@ -311,10 +314,10 @@ static unsigned int *rarvm_get_operand(rarvm_data_t *rarvm_data,
|
||||
}
|
||||
}
|
||||
|
||||
-static unsigned int filter_itanium_getbits(unsigned char *data, int bit_pos, int bit_count)
|
||||
+static unsigned int filter_itanium_getbits(unsigned char *data, unsigned int bit_pos, unsigned int bit_count)
|
||||
{
|
||||
- int in_addr=bit_pos/8;
|
||||
- int in_bit=bit_pos&7;
|
||||
+ unsigned int in_addr=bit_pos/8;
|
||||
+ unsigned int in_bit=bit_pos&7;
|
||||
unsigned int bit_field=(unsigned int)data[in_addr++];
|
||||
bit_field|=(unsigned int)data[in_addr++] << 8;
|
||||
bit_field|=(unsigned int)data[in_addr++] << 16;
|
||||
@@ -323,10 +326,10 @@ static unsigned int filter_itanium_getbits(unsigned char *data, int bit_pos, int
|
||||
return(bit_field & (0xffffffff>>(32-bit_count)));
|
||||
}
|
||||
|
||||
-static void filter_itanium_setbits(unsigned char *data, unsigned int bit_field, int bit_pos, int bit_count)
|
||||
+static void filter_itanium_setbits(unsigned char *data, unsigned int bit_field, unsigned int bit_pos, unsigned int bit_count)
|
||||
{
|
||||
- int i, in_addr=bit_pos/8;
|
||||
- int in_bit=bit_pos&7;
|
||||
+ unsigned int i, in_addr=bit_pos/8;
|
||||
+ unsigned int in_bit=bit_pos&7;
|
||||
unsigned int and_mask=0xffffffff>>(32-bit_count);
|
||||
and_mask=~(and_mask<<in_bit);
|
||||
|
||||
@@ -343,11 +346,12 @@ static void filter_itanium_setbits(unsigned char *data, unsigned int bit_field,
|
||||
static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_filters_t filter_type)
|
||||
{
|
||||
unsigned char *data, cmp_byte2, cur_byte, *src_data, *dest_data;
|
||||
- int i, j, data_size, channels, src_pos, dest_pos, border, width, PosR;
|
||||
- int op_type, cur_channel, byte_count, start_pos, pa, pb, pc;
|
||||
+ unsigned int i, j, data_size, channels, src_pos, dest_pos, border, width, PosR;
|
||||
+ unsigned int op_type, cur_channel, byte_count, start_pos;
|
||||
+ int pa, pb, pc;
|
||||
unsigned int file_offset, cur_pos, predicted;
|
||||
- int32_t offset, addr;
|
||||
- const int file_size=0x1000000;
|
||||
+ uint32_t offset, addr;
|
||||
+ const unsigned int file_size=0x1000000;
|
||||
|
||||
switch(filter_type) {
|
||||
case VMSF_E8:
|
||||
@@ -356,7 +360,7 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
data_size = rarvm_data->R[4];
|
||||
file_offset = rarvm_data->R[6];
|
||||
|
||||
- if (((unsigned int)data_size >= VM_GLOBALMEMADDR) || (data_size < 4)) {
|
||||
+ if ((data_size > VM_GLOBALMEMADDR) || (data_size < 4)) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -367,12 +371,14 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
if (cur_byte==0xe8 || cur_byte==cmp_byte2) {
|
||||
offset = cur_pos+file_offset;
|
||||
addr = GET_VALUE(FALSE, data);
|
||||
- if (addr < 0) {
|
||||
- if (addr+offset >=0 ) {
|
||||
+ // We check 0x80000000 bit instead of '< 0' comparison
|
||||
+ // not assuming int32 presence or uint size and endianness.
|
||||
+ if ((addr & 0x80000000)!=0) { // addr<0
|
||||
+ if (((addr+offset) & 0x80000000)==0) { // addr+offset>=0
|
||||
SET_VALUE(FALSE, data, addr+file_size);
|
||||
}
|
||||
} else {
|
||||
- if (addr<file_size) {
|
||||
+ if (((addr-file_size) & 0x80000000)!=0) { // addr<file_size
|
||||
SET_VALUE(FALSE, data, addr-offset);
|
||||
}
|
||||
}
|
||||
@@ -386,7 +392,7 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
data_size = rarvm_data->R[4];
|
||||
file_offset = rarvm_data->R[6];
|
||||
|
||||
- if (((unsigned int)data_size >= VM_GLOBALMEMADDR) || (data_size < 21)) {
|
||||
+ if ((data_size > VM_GLOBALMEMADDR) || (data_size < 21)) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -429,7 +435,7 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
border = data_size*2;
|
||||
|
||||
SET_VALUE(FALSE, &rarvm_data->mem[VM_GLOBALMEMADDR+0x20], data_size);
|
||||
- if ((unsigned int)data_size >= VM_GLOBALMEMADDR/2) {
|
||||
+ if (data_size > VM_GLOBALMEMADDR/2 || channels > 1024 || channels == 0) {
|
||||
break;
|
||||
}
|
||||
for (cur_channel=0 ; cur_channel < channels ; cur_channel++) {
|
||||
@@ -440,7 +446,7 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
}
|
||||
break;
|
||||
case VMSF_RGB: {
|
||||
- const int channels=3;
|
||||
+ const unsigned int channels=3;
|
||||
data_size = rarvm_data->R[4];
|
||||
width = rarvm_data->R[0] - 3;
|
||||
PosR = rarvm_data->R[1];
|
||||
@@ -448,15 +454,14 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
dest_data = src_data + data_size;
|
||||
|
||||
SET_VALUE(FALSE, &rarvm_data->mem[VM_GLOBALMEMADDR+0x20], data_size);
|
||||
- if ((unsigned int)data_size >= VM_GLOBALMEMADDR/2) {
|
||||
+ if (data_size > VM_GLOBALMEMADDR/2 || data_size < 3 || width > data_size || PosR > 2) {
|
||||
break;
|
||||
}
|
||||
for (cur_channel=0 ; cur_channel < channels; cur_channel++) {
|
||||
unsigned int prev_byte = 0;
|
||||
for (i=cur_channel ; i<data_size ; i+=channels) {
|
||||
- int upper_pos=i-width;
|
||||
- if (upper_pos >= 3) {
|
||||
- unsigned char *upper_data = dest_data+upper_pos;
|
||||
+ if (i >= width+3) {
|
||||
+ unsigned char *upper_data = dest_data+i-width;
|
||||
unsigned int upper_byte = *upper_data;
|
||||
unsigned int upper_left_byte = *(upper_data-3);
|
||||
predicted = prev_byte+upper_byte-upper_left_byte;
|
||||
@@ -486,13 +491,14 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
break;
|
||||
}
|
||||
case VMSF_AUDIO: {
|
||||
- int channels=rarvm_data->R[0];
|
||||
+ unsigned int channels=rarvm_data->R[0];
|
||||
data_size = rarvm_data->R[4];
|
||||
src_data = rarvm_data->mem;
|
||||
dest_data = src_data + data_size;
|
||||
|
||||
SET_VALUE(FALSE, &rarvm_data->mem[VM_GLOBALMEMADDR+0x20], data_size);
|
||||
- if ((unsigned int)data_size >= VM_GLOBALMEMADDR/2) {
|
||||
+ // In fact, audio channels never exceed 4.
|
||||
+ if (data_size > VM_GLOBALMEMADDR/2 || channels > 128 || channels == 0) {
|
||||
break;
|
||||
}
|
||||
for (cur_channel=0 ; cur_channel < channels ; cur_channel++) {
|
||||
@@ -553,7 +559,7 @@ static void execute_standard_filter(rarvm_data_t *rarvm_data, rarvm_standard_fil
|
||||
data_size = rarvm_data->R[4];
|
||||
src_pos = 0;
|
||||
dest_pos = data_size;
|
||||
- if ((unsigned int)data_size >= VM_GLOBALMEMADDR/2) {
|
||||
+ if (data_size > VM_GLOBALMEMADDR/2) {
|
||||
break;
|
||||
}
|
||||
while (src_pos < data_size) {
|
||||
--
|
||||
2.16.2
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,130 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
inherit systemd toolchain-funcs
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation"
|
||||
HOMEPAGE="http://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl tofu tools usb wks-server"
|
||||
|
||||
COMMON_DEPEND_LIBS="
|
||||
>=dev-libs/npth-1.2
|
||||
>=dev-libs/libassuan-2.5.0
|
||||
>=dev-libs/libgcrypt-1.7.3
|
||||
>=dev-libs/libgpg-error-1.24
|
||||
>=dev-libs/libksba-1.3.4
|
||||
>=net-misc/curl-7.10
|
||||
ssl? ( >=net-libs/gnutls-3.0:0= )
|
||||
sys-libs/zlib
|
||||
ldap? ( net-nds/openldap )
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
smartcard? ( usb? ( virtual/libusb:0 ) )
|
||||
tofu? ( >=dev-db/sqlite-3.7 )
|
||||
"
|
||||
COMMON_DEPEND_BINS="app-crypt/pinentry
|
||||
!app-crypt/dirmngr"
|
||||
|
||||
# Existence of executables is checked during configuration.
|
||||
DEPEND="${COMMON_DEPEND_LIBS}
|
||||
${COMMON_DEPEND_BINS}
|
||||
nls? ( sys-devel/gettext )
|
||||
doc? ( sys-apps/texinfo )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND_LIBS}
|
||||
${COMMON_DEPEND_BINS}
|
||||
selinux? ( sec-policy/selinux-gpg )
|
||||
nls? ( virtual/libintl )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
DOCS=(
|
||||
ChangeLog NEWS README THANKS TODO VERSION
|
||||
doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch"
|
||||
"${FILESDIR}/${PN}-2.2.4-dirmngr-Handle-failures-related-to-missing-IPv6.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local myconf=()
|
||||
|
||||
if use smartcard; then
|
||||
myconf+=(
|
||||
--enable-scdaemon
|
||||
$(use_enable usb ccid-driver)
|
||||
)
|
||||
else
|
||||
myconf+=( --disable-scdaemon )
|
||||
fi
|
||||
|
||||
if use elibc_SunOS || use elibc_AIX; then
|
||||
myconf+=( --disable-symcryptrun )
|
||||
else
|
||||
myconf+=( --enable-symcryptrun )
|
||||
fi
|
||||
|
||||
# glib fails and picks up clang's internal stdint.h causing weird errors
|
||||
[[ ${CC} == *clang ]] && \
|
||||
export gl_cv_absolute_stdint_h=/usr/include/stdint.h
|
||||
|
||||
econf \
|
||||
"${myconf[@]}" \
|
||||
$(use_enable bzip2) \
|
||||
$(use_enable ssl gnutls) \
|
||||
$(use_enable nls) \
|
||||
$(use_enable tofu) \
|
||||
$(use_enable wks-server wks-tools) \
|
||||
$(use_with ldap) \
|
||||
$(use_with readline) \
|
||||
--enable-gpg \
|
||||
--enable-gpgsm \
|
||||
--enable-large-secmem \
|
||||
--enable-all-tests \
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
|
||||
use doc && emake -C doc html
|
||||
}
|
||||
|
||||
src_test() {
|
||||
#Bug: 638574
|
||||
use tofu && export TESTFLAGS=--parallel
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
use tools &&
|
||||
dobin \
|
||||
tools/{convert-from-106,gpg-check-pattern} \
|
||||
tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys} \
|
||||
tools/make-dns-cert
|
||||
|
||||
dosym gpg /usr/bin/gpg2
|
||||
dosym gpgv /usr/bin/gpgv2
|
||||
echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die
|
||||
echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die
|
||||
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg || die
|
||||
|
||||
use doc && dodoc doc/gnupg.html/* doc/*.png
|
||||
|
||||
systemd_douserunit doc/examples/systemd-user/*.{service,socket}
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST hashcat-3.5.0.tar.gz 4103461 BLAKE2B 821280182641ceadab7d712395a0a33cd7bfde8fcc8c133a2c12d089dc76b43edbee632f724083f29e9ec924991cda94e6f17b53f1b3155537d41286d3886832 SHA512 7efc860461894a550fbacc406a40fec400232a120818180abba3d53f26bd3a503f58e7d189e4afad0f871c2244ff68371b145af58ab097478fe2d73f39c9a6b3
|
||||
DIST hashcat-4.0.1.tar.gz 3905127 BLAKE2B 534270c7409f5a3dc4995a81fab63e6bfcd6b2bd4bb549f96b44e9c6bf24ce67505eb82803ace29fba69526c7c0703c66de9cc68cefcca79ef58040165041756 SHA512 7300b16ebd601fdbdbfd66adeba072c6f4f4dd5898dd85824513b97cc7848f4c2ae0fe523cfe7803fdba7954966ea289275fa5d49ff792706f73394e2bd95e77
|
||||
DIST hashcat-4.1.0.tar.gz 3956136 BLAKE2B f9d6f9322e4c50ee1e156c283da1257a24f0e2cb22618cf93b8b11dd1964f6741f409429ee904412f70301e4b2381b388bcab0296a30ea3a94569efe7aaaeec6 SHA512 c9e01847c89dd8521da8734ea324c69f1e9bfef50c059e9dc29d4b947fe090405774a57ae688f907698c7d9a2d1f087b730e0a994dc5ed0d5d937a9ef950dd73
|
||||
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST honggfuzz-1.3.tar.gz 64461562 BLAKE2B b17271d147bab5d03ed056623760bca84d497871971ca57bb431d0bf7da6e600db0e7435afc214bebbcffa411db8d12659c92ee26cc6ac9dbe6e78825b46f324 SHA512 768ec82088c587858200c02c32c040a37a4ebb8bb21e2c6263f533954f4a4e4733cc61f8c6bc0d393bd49d4658177a80dfbb5a75b5c6de2bc8e95011aaf2cc3c
|
||||
DIST honggfuzz-1.4.tar.gz 79323662 BLAKE2B 187f87b596f58efd07ad090a4ce5fee6eda84c2e60ebd6fabd4e2c31582eceb34866416ca2645ee16921ad25dd893deb9743b7a247c986a9e332ffbef51b30a0 SHA512 9eaf4cd9cdf9a9bff438b49f9bb2e217d796a072c083174a810a74f08ed02b520565e3cadcb405db86bbdc09588f11962090705a91f32258918628826eb355b7
|
||||
DIST honggfuzz-1.5.tar.gz 79321550 BLAKE2B dbc45529c7144e8d9847580b80efdea27c3d5fd2c3bd3a740ddb754e7eb786de31e8ece68cc5c8cbe9373e70e7984379708f83f7ad858ae7bc5e9c1fc213a6c3 SHA512 41c84d37b00e713db4aa4c40e8b2c55afc886ec6bd0a2d66acdd6f6d5ca2f862b2cb0e8d53234f497dc1f3a90a26f1b08c2857cf6f30482c7086719d086ee97d
|
||||
|
@ -0,0 +1,46 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="A general purpose fuzzer with feedback support"
|
||||
HOMEPAGE="http://google.github.io/honggfuzz/"
|
||||
SRC_URI="https://github.com/google/honggfuzz/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/binutils-libs:=
|
||||
sys-libs/libunwind
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
DOCS=(
|
||||
CHANGELOG
|
||||
COPYING
|
||||
CONTRIBUTING
|
||||
README.md
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
if has_version ">=sys-libs/binutils-libs-2.29"; then
|
||||
eapply "${FILESDIR}"/${PN}-1.1-binutils-2.29.patch
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin ${PN}
|
||||
|
||||
einstalldocs
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,68 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="A many featured astrology chart calculation program"
|
||||
HOMEPAGE="http://www.astrolog.org/astrolog.htm"
|
||||
SRC_URI="http://www.astrolog.org/ftp/ast54unx.shr"
|
||||
|
||||
LICENSE="astrolog"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ppc ~ppc64 x86"
|
||||
IUSE="X"
|
||||
|
||||
DEPEND="X? ( x11-libs/libX11 )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
sh "${DISTDIR}"/ast54unx.shr || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# remove stripping of created binary, dump hardcoded CFLAGS,
|
||||
# respect CC (bug #243606), and CFLAGS (bug #240057)
|
||||
sed \
|
||||
-e 's:strip:#strip:' -e 's:^CFLAGS = :#CFLAGS = :' \
|
||||
-e 's:\tcc :\t$(CC) $(CFLAGS) $(LDFLAGS) :' \
|
||||
-i Makefile || die
|
||||
|
||||
# we use /usr/share/astrolog for config and (optional) ephemeris-data-files
|
||||
sed -i -e "s:~/astrolog:/usr/share/astrolog:g" astrolog.h || die
|
||||
|
||||
# if we use X, we need to add -L/usr/X11R6/lib to compile succesful
|
||||
#use X && sed -i -e "s:-lm -lX11:-lm -lX11 -L/usr/X11R6/lib:g" Makefile
|
||||
|
||||
# if we do NOT use X, we disable it by removing the -lX11 from the Makefile
|
||||
# and remove the "#define X11" and "#define MOUSE" from astrolog.h
|
||||
use X || ( sed -i -e "s:-lm -lX11:-lm:g" Makefile
|
||||
sed -i -e "s:#define X11:/*#define X11:g" astrolog.h
|
||||
sed -i -e "s:#define MOUSE:/*#define MOUSE:g" astrolog.h )
|
||||
|
||||
# any user may have an own astrolog configfile
|
||||
#sed -i -e "s:astrolog.dat:astrolog.dat:g" astrolog.h
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin astrolog
|
||||
dodoc Helpfile.540 README.1ST README.540 Update.540
|
||||
insinto /usr/share/astrolog
|
||||
doins astrolog.dat
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "There is a sample config file /usr/share/astrolog/astrolog.dat"
|
||||
ewarn "astrolog looks in current dir for a file astrolog.dat before"
|
||||
ewarn "using the file in /usr/share/astrolog"
|
||||
ewarn "If you want extended accuracy of astrolog's calculations you"
|
||||
ewarn "can emerge the optional package \"astrolog-ephemeris\" which"
|
||||
ewarn "needs ~4.7 MB additional diskspace for the ephemeris-files"
|
||||
}
|
Binary file not shown.
@ -1,5 +1,3 @@
|
||||
DIST gnucash-2.6.15.tar.bz2 13406483 BLAKE2B 927838c5c9c11a19eb9f8e11726825458d5b414f4ef24baf1a7ae15c33825eeed2fd87892e728b37c43385360fd06a60df0bade4244b5c93dac5522f09849c92 SHA512 6ec0652565025ac8281152ed64f2f820ecdb17ead5f17738728e094d116e638a08af57a46c0d5b59679f30f142ce372a5f61bd164f68f6b608d09de37cec38c6
|
||||
DIST gnucash-2.6.19.tar.bz2 13612124 BLAKE2B cc66e4d7994274bb2ad97437333dbe62b0e9228e20e05e01fc7861bc45a8f07bc56d2a69850eda301d5e7f679d96a9d28c24c56a4860cff6727b66867482deae SHA512 0a979caf48ba96d6f37a929036e7172855cfb03af8832f479966bce72fad3400903925134d33aaa31eb6b36a2041f5e0d3f74b88e95b83c7d76e96b1503bec13
|
||||
DIST gnucash-2.7.3.tar.bz2 13736166 BLAKE2B 352c7bd9fe11b3b1b039acedb43be6f48960fac7ef6e4eaca5ca1ce944808d2d36c3a22b15b7150b8026bad10bfa0766fd19ac8d1b4f5f2cb2bcb8c112ee87bc SHA512 78c482eb3146406d561320866c480101cf35c51d8ab789e8d2688c7f7e16d1870b33feb7bcdb3cd8feaca300ce9bcf9fa05ba8e1804b221526d181763dcea611
|
||||
DIST gnucash-2.7.4.tar.bz2 13364512 BLAKE2B 0a552efe5a4f024517c054516eb25b51abb2f934e6fc904afd4b0fb48283f9ebb89583b83b0efefba66d014df16c8997c413d05278d4290c44e4fa2278564b61 SHA512 d096ec2a3907dcd09c936f0a49ef6fb5028a17d2e0ade9e68eae7303530480ce19e08c1864efd862d363fda9ef6343260396b794b3c4ac74544baa2628a310eb
|
||||
DIST gtest-1.8.0.tar.gz 1281617 BLAKE2B ac052b4d0eb0d8ded03a8c7dff05177818627b8a51f2dbc2c162b2ee2a5d1323539e7d0d02236d9ebb799995e018f0171c2fdaeb4de3bb339548265e50de79e6 SHA512 1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d
|
||||
|
@ -1,15 +0,0 @@
|
||||
Bug: https://bugs.gentoo.org/643566
|
||||
|
||||
--- a/common/test-core/Makefile.am
|
||||
+++ b/common/test-core/Makefile.am
|
||||
@@ -80,9 +80,9 @@
|
||||
libgmock.a
|
||||
nodist_libgtest_a_SOURCES = ${GTEST_SRC}/src/gtest-all.cc
|
||||
libgtest_a_CPPFLAGS = ${AM_CPPFLAGS} -I${GTEST_HEADERS} -I${GTEST_SRC}
|
||||
-endif
|
||||
nodist_libgmock_a_SOURCES = ${GMOCK_SRC_PATH}/gmock-all.cc
|
||||
libgmock_a_CPPFLAGS = ${libgtest_a_CPPFLAGS} -I${GMOCK_HEADERS} -I${GMOCK_SRC}
|
||||
+endif
|
||||
|
||||
gncscmmoddir = ${GNC_SCM_INSTALL_DIR}/gnucash
|
||||
gncscmmod_DATA = unittest-support.scm
|
@ -1,111 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit autotools gnome2 python-single-r1
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
IUSE="chipcard debug +doc gnome-keyring hbci mysql ofx postgres python quotes sqlite"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# FIXME: rdepend on dev-libs/qof when upstream fix their mess (see configure.ac)
|
||||
# libdbi version requirement for sqlite taken from bug #455134
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.32.0:2
|
||||
>=dev-libs/popt-1.5
|
||||
>=dev-libs/libxml2-2.5.10:2
|
||||
dev-libs/libxslt
|
||||
>=dev-scheme/guile-2.0.0:12=[deprecated,regex]
|
||||
dev-scheme/guile-www
|
||||
gnome-base/libgnomecanvas
|
||||
>=net-libs/webkit-gtk-1.2:2
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
>=x11-libs/goffice-0.7.0:0.8[gnome]
|
||||
x11-libs/pango
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
hbci? ( >=net-libs/aqbanking-5[gtk,ofx?]
|
||||
sys-libs/gwenhywfar[gtk]
|
||||
chipcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? ( dev-perl/Date-Manip
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/HTML-TableExtract )
|
||||
sqlite? ( >=dev-db/libdbi-0.9.0
|
||||
>=dev-db/libdbi-drivers-0.9.0[sqlite] )
|
||||
postgres? ( dev-db/libdbi dev-db/libdbi-drivers[postgres] )
|
||||
mysql? ( dev-db/libdbi dev-db/libdbi-drivers[mysql] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-util/intltool
|
||||
gnome-base/gnome-common
|
||||
sys-devel/libtool
|
||||
virtual/pkgconfig
|
||||
"
|
||||
PDEPEND="doc? ( >=app-doc/gnucash-docs-2.2.0 )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Skip test that needs some locales to be present
|
||||
sed -i -e '/test_suite_gnc_date/d' src/libqof/qof/test/test-qof.c || die
|
||||
|
||||
# We need to run eautoreconf to prevent linking against system libs,
|
||||
# this can be noticed, for example, when updating an old version
|
||||
# compiled against guile-1.8 to a newer one relying on 2.0
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=590536#c39
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=775634
|
||||
eautoreconf
|
||||
|
||||
gnome2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
DOCS="doc/README.OFX doc/README.HBCI"
|
||||
|
||||
if use sqlite || use mysql || use postgres ; then
|
||||
myconf+=" --enable-dbi"
|
||||
else
|
||||
myconf+=" --disable-dbi"
|
||||
fi
|
||||
|
||||
# gtkmm is experimental and shouldn't be enabled, upstream bug #684166
|
||||
gnome2_src_configure \
|
||||
$(use_enable debug) \
|
||||
$(use_enable gnome-keyring password-storage) \
|
||||
$(use_enable ofx) \
|
||||
$(use_enable hbci aqbanking) \
|
||||
$(use_enable python) \
|
||||
--disable-doxygen \
|
||||
--disable-gtkmm \
|
||||
--enable-locale-specific-tax \
|
||||
--disable-error-on-warning \
|
||||
--with-guile=2.0 \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Parallel installation fails from time to time, bug #359123
|
||||
# Usually reproducible after removing any gnucash installed copy
|
||||
MAKEOPTS="${MAKEOPTS} -j1" GNC_DOC_INSTALL_DIR=/usr/share/doc/${PF} \
|
||||
gnome2_src_install
|
||||
|
||||
rm -rf "${ED}"/usr/share/doc/${PF}/{examples/,COPYING,INSTALL,*win32-bin.txt,projects.html}
|
||||
mv "${ED}"/usr/share/doc/${PF} "${T}"/cantuseprepalldocs || die
|
||||
dodoc "${T}"/cantuseprepalldocs/*
|
||||
}
|
@ -1,112 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit autotools gnome2 python-single-r1
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="amd64 ~ppc ~ppc64 x86"
|
||||
IUSE="chipcard debug +doc gnome-keyring hbci mysql ofx postgres python quotes sqlite"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# FIXME: rdepend on dev-libs/qof when upstream fix their mess (see configure.ac)
|
||||
# libdbi version requirement for sqlite taken from bug #455134
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.32.0:2
|
||||
>=dev-libs/popt-1.5
|
||||
>=dev-libs/libxml2-2.5.10:2
|
||||
dev-libs/libxslt
|
||||
>=dev-scheme/guile-1.8.3:12=[deprecated,regex]
|
||||
<dev-scheme/guile-2:12
|
||||
dev-scheme/guile-www
|
||||
gnome-base/libgnomecanvas
|
||||
>=net-libs/webkit-gtk-1.2:2
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
>=x11-libs/goffice-0.7.0:0.8[gnome]
|
||||
x11-libs/pango
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
hbci? ( >=net-libs/aqbanking-5[gtk,ofx?]
|
||||
sys-libs/gwenhywfar[gtk]
|
||||
chipcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? ( dev-perl/Date-Manip
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/HTML-TableExtract )
|
||||
sqlite? ( >=dev-db/libdbi-0.9.0
|
||||
>=dev-db/libdbi-drivers-0.9.0[sqlite] )
|
||||
postgres? ( dev-db/libdbi dev-db/libdbi-drivers[postgres] )
|
||||
mysql? ( dev-db/libdbi dev-db/libdbi-drivers[mysql] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-util/intltool
|
||||
gnome-base/gnome-common
|
||||
sys-devel/libtool
|
||||
virtual/pkgconfig
|
||||
"
|
||||
PDEPEND="doc? ( >=app-doc/gnucash-docs-2.2.0 )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Skip test that needs some locales to be present
|
||||
sed -i -e '/test_suite_gnc_date/d' src/libqof/qof/test/test-qof.c || die
|
||||
|
||||
# We need to run eautoreconf to prevent linking against system libs,
|
||||
# this can be noticed, for example, when updating an old version
|
||||
# compiled against guile-1.8 to a newer one relying on 2.0
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=590536#c39
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=775634
|
||||
eautoreconf
|
||||
|
||||
gnome2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
DOCS="doc/README.OFX doc/README.HBCI"
|
||||
|
||||
if use sqlite || use mysql || use postgres ; then
|
||||
myconf+=" --enable-dbi"
|
||||
else
|
||||
myconf+=" --disable-dbi"
|
||||
fi
|
||||
|
||||
# gtkmm is experimental and shouldn't be enabled, upstream bug #684166
|
||||
gnome2_src_configure \
|
||||
$(use_enable debug) \
|
||||
$(use_enable gnome-keyring password-storage) \
|
||||
$(use_enable ofx) \
|
||||
$(use_enable hbci aqbanking) \
|
||||
$(use_enable python) \
|
||||
--disable-doxygen \
|
||||
--disable-gtkmm \
|
||||
--enable-locale-specific-tax \
|
||||
--disable-error-on-warning \
|
||||
--with-guile=1.8 \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Parallel installation fails from time to time, bug #359123
|
||||
# Usually reproducible after removing any gnucash installed copy
|
||||
MAKEOPTS="${MAKEOPTS} -j1" GNC_DOC_INSTALL_DIR=/usr/share/doc/${PF} \
|
||||
gnome2_src_install
|
||||
|
||||
rm -rf "${ED}"/usr/share/doc/${PF}/{examples/,COPYING,INSTALL,*win32-bin.txt,projects.html}
|
||||
mv "${ED}"/usr/share/doc/${PF} "${T}"/cantuseprepalldocs || die
|
||||
dodoc "${T}"/cantuseprepalldocs/*
|
||||
}
|
@ -1,153 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
# We need to run eautoreconf to prevent linking against system libs,
|
||||
# this can be noticed, for example, when updating an old version
|
||||
# compiled against guile-1.8 to a newer one relying on 2.0
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=590536#c39
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=775634
|
||||
GNOME2_EAUTORECONF="yes"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit gnome2 python-single-r1
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
# Add doc back in for 3.0 and bump app-doc/gnucash-docs
|
||||
IUSE="aqbanking chipcard debug gnome-keyring mysql nls ofx postgres python
|
||||
quotes -register2 sqlite"
|
||||
REQUIRED_USE="
|
||||
chipcard? ( aqbanking )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# libdbi version requirement for sqlite taken from bug #455134
|
||||
#
|
||||
# dev-libs/boost must always be built with nls enabled.
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.40.0:2
|
||||
>=dev-libs/libxml2-2.7.0:2
|
||||
>=dev-scheme/guile-2.0.0:12=[regex]
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=x11-libs/gtk+-3.14.0:3
|
||||
dev-libs/boost:=[icu,nls]
|
||||
dev-libs/icu:=
|
||||
dev-libs/libxslt
|
||||
gnome-base/dconf
|
||||
net-libs/webkit-gtk:4=
|
||||
aqbanking? (
|
||||
>=net-libs/aqbanking-5[gtk,ofx?]
|
||||
sys-libs/gwenhywfar[gtk]
|
||||
chipcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
mysql? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[mysql]
|
||||
)
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
postgres? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[postgres]
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? (
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/Date-Manip
|
||||
dev-perl/HTML-TableExtract
|
||||
)
|
||||
sqlite? (
|
||||
>=dev-db/libdbi-0.9.0
|
||||
>=dev-db/libdbi-drivers-0.9.0[sqlite]
|
||||
)
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
|| (
|
||||
>=dev-cpp/gtest-1.8.0
|
||||
(
|
||||
dev-cpp/gmock
|
||||
dev-cpp/gtest
|
||||
)
|
||||
)
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Parser
|
||||
dev-util/intltool
|
||||
gnome-base/gnome-common
|
||||
sys-devel/libtool
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
# Uncomment for 3.0
|
||||
# PDEPEND="doc? (
|
||||
# ~app-doc/gnucash-docs-${PV}
|
||||
# gnome-extra/yelp
|
||||
# )"
|
||||
|
||||
# Bug 643566: Conditional didn't enclose everything related to gtest source
|
||||
# files and they're not needed.
|
||||
PATCHES=( "${FILESDIR}"/gnucash-2.7.3-no-gtest-src.patch )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
if use sqlite || use mysql || use postgres ; then
|
||||
myconf+=" --enable-dbi"
|
||||
else
|
||||
myconf+=" --disable-dbi"
|
||||
fi
|
||||
|
||||
# As of 2.7.3, the presence of --disable-register2 would enable register2 as
|
||||
# well.
|
||||
use register2 && myconf+=" --enable-register2"
|
||||
|
||||
gnome2_src_configure \
|
||||
--disable-doxygen \
|
||||
--disable-error-on-warning \
|
||||
--disable-binreloc \
|
||||
$(use_enable nls) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable gnome-keyring password-storage) \
|
||||
$(use_enable aqbanking) \
|
||||
$(use_enable ofx) \
|
||||
$(use_enable python) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Parallel installation fails from time to time, bug #359123
|
||||
# Usually reproducible after removing any gnucash installed copy
|
||||
MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/{COPYING,INSTALL,projects.html} || die
|
||||
rm "${ED}"/usr/share/doc/${PF}/*win32-bin.txt || die
|
||||
|
||||
use aqbanking && dodoc doc/README.HBCI
|
||||
use ofx && dodoc doc/README.OFX
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_pkg_postinst
|
||||
|
||||
ewarn "Backup all financial files or databases before using GnuCash >=2.7.0!"
|
||||
ewarn
|
||||
ewarn "GnuCash 2.7.0 introduced large changes in its file format and database"
|
||||
ewarn "schema that WILL prevent you from reverting back to GnuCash 2.6."
|
||||
|
||||
}
|
@ -1,155 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
# google{test,mock} version
|
||||
GV="1.8.0"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit cmake-utils gnome2-utils python-single-r1 xdg-utils
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2
|
||||
https://github.com/google/googletest/archive/release-${GV}.tar.gz -> gtest-${GV}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
# Add doc back in for 3.0 and bump app-doc/gnucash-docs
|
||||
IUSE="aqbanking chipcard debug examples gnome-keyring mysql nls ofx postgres
|
||||
python quotes -register2 sqlite"
|
||||
REQUIRED_USE="
|
||||
chipcard? ( aqbanking )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# libdbi version requirement for sqlite taken from bug #455134
|
||||
#
|
||||
# dev-libs/boost must always be built with nls enabled.
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.40.0:2
|
||||
>=dev-libs/libxml2-2.7.0:2
|
||||
>=dev-scheme/guile-2.0.0:12=[regex]
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=x11-libs/gtk+-3.14.0:3
|
||||
dev-libs/boost:=[icu,nls]
|
||||
dev-libs/icu:=
|
||||
dev-libs/libxslt
|
||||
gnome-base/dconf
|
||||
net-libs/webkit-gtk:4=
|
||||
aqbanking? (
|
||||
>=net-libs/aqbanking-5[gtk,ofx?]
|
||||
sys-libs/gwenhywfar[gtk]
|
||||
chipcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
mysql? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[mysql]
|
||||
)
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
postgres? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[postgres]
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? (
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/Date-Manip
|
||||
dev-perl/HTML-TableExtract
|
||||
)
|
||||
sqlite? (
|
||||
>=dev-db/libdbi-0.9.0
|
||||
>=dev-db/libdbi-drivers-0.9.0[sqlite]
|
||||
)
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
~dev-cpp/gtest-${GV}
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Parser
|
||||
dev-util/intltool
|
||||
gnome-base/gnome-common
|
||||
sys-devel/libtool
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
# Uncomment for 3.0
|
||||
# PDEPEND="doc? (
|
||||
# ~app-doc/gnucash-docs-${PV}
|
||||
# gnome-extra/yelp
|
||||
# )"
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local sql_on_off="OFF"
|
||||
if use mysql || use postgres || use sqlite ; then
|
||||
sql_on_off="ON"
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DGMOCK_ROOT="${WORKDIR}"/googletest-release-${GV}/googlemock
|
||||
-DGTEST_ROOT="${WORKDIR}"/googletest-release-${GV}/googletest
|
||||
|
||||
-DDISABLE_NLS=$(usex !nls)
|
||||
-DENABLE_REGISTER2=$(usex register2)
|
||||
-DWITH_AQBANKING=$(usex aqbanking)
|
||||
-DWITH_OFX=$(usex ofx)
|
||||
-DWITH_PYTHON=$(usex python)
|
||||
-DWITH_SQL=${sql_on_off}
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${BUILD_DIR}" || die
|
||||
emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
rm "${ED%/}"/usr/share/doc/${PF}/README.dependencies || die
|
||||
rm "${ED%/}"/usr/share/glib-2.0/schemas/gschemas.compiled || die
|
||||
|
||||
if use examples ; then
|
||||
mv "${ED%/}"/usr/share/doc/gnucash \
|
||||
"${ED%/}"/usr/share/doc/${PF}/examples || die
|
||||
pushd "${ED%/}"/usr/share/doc/${PF}/examples/ > /dev/null || die
|
||||
rm AUTHORS DOCUMENTERS LICENSE NEWS projects.html ChangeLog* \
|
||||
*win32-bin.txt || die
|
||||
popd > /dev/null || die
|
||||
docompress -x /usr/share/doc/${PF}/examples/
|
||||
else
|
||||
rm -r "${ED%/}"/usr/share/doc/gnucash || die
|
||||
fi
|
||||
|
||||
use aqbanking && dodoc doc/README.HBCI
|
||||
use ofx && dodoc doc/README.OFX
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
ewarn "Backup all financial files or databases before using GnuCash >=2.7.0!"
|
||||
ewarn
|
||||
ewarn "GnuCash 2.7.0 introduced large changes in its file format and database"
|
||||
ewarn "schema that WILL prevent you from reverting back to GnuCash 2.6."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
Binary file not shown.
@ -0,0 +1,11 @@
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -76,7 +76,7 @@
|
||||
AC_CHECK_LIB(m, cos, [], [AC_MSG_ERROR([Could not find m library])])
|
||||
AC_CHECK_LIB(readline, using_history, [], [AC_MSG_ERROR([Could not find readline library])])
|
||||
# ncurses might be linked in libtinfo
|
||||
-#AC_CHECK_LIB(tinfo, keypad, [], [AC_MSG_ERROR([Could not find tinfo library])])
|
||||
+AC_SEARCH_LIBS(keypad, tinfo, [], [AC_MSG_ERROR([Could not find tinfo library])])
|
||||
|
||||
# Checks for header files.
|
||||
AC_CHECK_HEADER(assert.h)
|
Binary file not shown.
@ -1 +1 @@
|
||||
DIST blogc-0.13.0.tar.xz 314448 BLAKE2B b328d5e669af1f55ea745823c81bd1ada8af672c483e95b46f76306161e5b562329cb4dc64590a33809f83e94e47cd1564b8b38fddb62d46b36f76c838e0c3f1 SHA512 bd18099503ff5c14218a4c8a56f0993c2df7d24a30f0e9e5db7fe324726c123335016ba4a19bff5daff3df3bdcb1d8cb032e3f328e5049141ea5fef534352aa9
|
||||
DIST blogc-0.13.1.tar.xz 315300 BLAKE2B e764854004bc51c2636fd7459018241835908473838e6fd242e09dbbf4e631c66a68af4c566eb6cd096302079323c74e124093989c9d3ed0ea909f7316c4913c SHA512 3fcb7440707a671c3d077cad0bbd3f2b2a09faacc2abaede6ee18f6a7d5d9e315922ae1f281cb5a1742073401882ecce0983be24f70373a4741016a3b8042dbc
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
Binary file not shown.
@ -1,7 +1,5 @@
|
||||
DIST aerospike-server-community-3.13.0.7-debian7.tgz 10658707 BLAKE2B 0c254ed314adee2b625bad7aa5a96dfcd87f25cc053a22a38da7fa796fc734d3b2a551c990cb45c0ac2bc7b0459ca57a8aa5c15f54fe45ee75d2005b29ed07e3 SHA512 1dfe2fc52c7870f6c4bfbe26cb718cad7725c1362886c4ed30fed04ac40a692eedab47f03ce70fd2a4bc52a9df92ec08683eec24a1fa62a5674530272c705409
|
||||
DIST aerospike-server-community-3.13.0.8-debian7.tgz 10659161 BLAKE2B 845b752a2071b6a9a0502a3bc63f15db836fc0615103ce27b0a81c11a808f1b7423dcd84bf8d3584738c273e3756a6cf155b0a9bea73a79511ec5ea5a5243f0a SHA512 70ec34a1832659918c21f08de4968c4e237aa5dc43f07135dd4cfc49d4107de08418f6dadbf07a375b39e1f5e8dc5e156e56428818a4327001e03b75a7bc0038
|
||||
DIST aerospike-server-community-3.14.1.4-debian7.tgz 10451324 BLAKE2B 59cd0531efb5c45418a1d80ee1eb6b47b281c23b1fc9f2685053fd556a3ca385db216b713be283cf6ccb199ed45c892d5940c1ca87b1c4d6c113b63fe3ea5cd2 SHA512 737c8e2e64d4738d97f1abe4199c4fbc5c00f4c967da3cf6ebbe6e77e416d40ec4c431cf3aec1b9dd4d6388efc0268220b5717924c7083631582899a2d3b6402
|
||||
DIST aerospike-server-community-3.14.1.5-debian7.tgz 10451650 BLAKE2B 1b043893094fd843f459e31af7be2818e54697e32dea7338842876bc88deb6a649d8275892b5eb54c1613e52a8bad153e676fbf258afeb5f4e76aed881d16494 SHA512 3b7bb44ba8ce9b9b643067c0c33e1d154dd760096df3d2629ffb7dc6b1c04002b54d771d9cf0303c78e102c6a12a882edd0a689395a8bf55518e23dbf36aea8e
|
||||
DIST aerospike-server-community-3.15.0.1-debian7.tgz 10299283 BLAKE2B 197c8acc0f27c0c5019416e29ed8611b8021d29f5104ca23e06707e2d1fc276f7d86c0a66a0e1395b4d3e286ce4e834c80fcbbcc224b9ac11ac114a91e0a51f4 SHA512 a68c6ce094176bf944baef551553a526581718757967f5f06a7bb02cb81eef923a86db6310f20a3380923ca65d8f31a6785251b7aaacca318c3dc9d6987eaaec
|
||||
DIST aerospike-server-community-3.15.0.2-debian7.tgz 10299075 BLAKE2B 86b755fef6b0fe9e1736584d38e3e9b9ec46f661698ec9643c507605a0252725fea971a46ba2f25a302961c2916b4e21a8d76c8ae8a1a76b3e9a06f30d4fdc74 SHA512 6aae04d81ff9a56e2283186b8a38947b9a30cd2ed97ea4613a9eecd89912ec31695a959f25fc0b06b2cac13c1aaf1c46366cf3967f776a515196e2a2e5dbe431
|
||||
DIST aerospike-server-community-3.15.1.3-debian7.tgz 9774757 BLAKE2B bf050897c8ed862155c80844035af39efb04f5875e49593412f3735465e6ddb1eb24cb7a3734c158041ac2e42f54ddc0cbd54ce0019e306b2297fa83d9a6f276 SHA512 67b57814f3a2c950b41952a45a9b3e56739397084af295dccdb364f79dec3e4db717a1e3b4569e920dfac76352f4214c5178bc6f780a60fec6689b1fdff01f4a
|
||||
DIST aerospike-server-community-3.15.1.4-debian7.tgz 9775381 BLAKE2B 4f7fe86d99cb0cdc74d0bacdcdaea8112e105b6daa870fee12a0137447118ba73adc580b4e4a47f9e1338bc393aeb32787b067a75415bf5c1c6d76cf4ee94d7c SHA512 2b77622ea4eb35de9eb26b33f0cf47fc8d29a70fe75848b81245842b2f3c728d6b2d3ebe72369b91ef0d53be168cea04086ae469ad69124ab2010f48f3005fd5
|
||||
DIST aerospike-server-community-3.16.0.1-debian7.tgz 13480540 BLAKE2B 4137670c9ee0bba6cb836e9e60a200b8e71896461b96dc594e51cdf075cf0d89031079160d30896ae890f3e72a8ee4bba1bb4133d1054f5ddf5928fad792d2c5 SHA512 17f6ab38ec8e81cc81197eaa858f61eb15555ae66ba3c6e01153805dd0b3fe9d48b9436e327a3395c9de3db92920a351354359fcb49214820a5945fcef757e6b
|
||||
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils user
|
||||
|
||||
DESCRIPTION="Flash-optimized, in-memory, nosql database"
|
||||
HOMEPAGE="http://www.aerospike.com"
|
||||
SRC_URI="http://www.aerospike.com/artifacts/${PN}/${PV}/${P}-debian7.tgz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="sys-libs/readline:0
|
||||
sys-libs/zlib
|
||||
dev-libs/openssl:0
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
S="${WORKDIR}/${P}-debian7"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup aerospike
|
||||
enewuser aerospike -1 /bin/bash /opt/aerospike aerospike
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local server_deb="${P}.debian7.x86_64.deb"
|
||||
local tools_deb="aerospike-tools-3.13.0.1.debian7.x86_64.deb"
|
||||
|
||||
ar x "${server_deb}" || die
|
||||
tar xzf data.tar.gz && rm data.tar.gz || die
|
||||
|
||||
ar x "${tools_deb}" || die
|
||||
tar xzf data.tar.gz && rm data.tar.gz || die
|
||||
|
||||
rm *.deb asinstall control.tar.gz debian-binary LICENSE SHA256SUMS
|
||||
rm usr/bin/{asfixownership,asmigrate2to3}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /opt/
|
||||
doins -r opt/aerospike
|
||||
|
||||
fperms +x -R /opt/aerospike/bin/
|
||||
fperms +x -R /opt/aerospike/lib/python/
|
||||
|
||||
for dir in '/etc' '/var/log'; do
|
||||
keepdir "${dir}/aerospike"
|
||||
done
|
||||
|
||||
insinto /etc/aerospike
|
||||
for conf in 'aerospike.conf' 'aerospike_mesh.conf' 'aerospike_ssd.conf'; do
|
||||
doins "${FILESDIR}/${conf}"
|
||||
done
|
||||
|
||||
insinto /usr/bin
|
||||
doins usr/bin/*
|
||||
fperms +x -R /usr/bin/asd
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/aerospike.logrotate aerospike
|
||||
|
||||
newinitd "${FILESDIR}"/aerospike.init aerospike
|
||||
|
||||
fowners -R aerospike:aerospike /opt/aerospike/
|
||||
fowners aerospike:aerospike /usr/bin/asd
|
||||
fowners -R aerospike:aerospike /var/log/aerospike
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils user
|
||||
|
||||
DESCRIPTION="Flash-optimized, in-memory, nosql database"
|
||||
HOMEPAGE="http://www.aerospike.com"
|
||||
SRC_URI="http://www.aerospike.com/artifacts/${PN}/${PV}/${P}-debian7.tgz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="sys-libs/readline:0
|
||||
sys-libs/zlib
|
||||
dev-libs/openssl:0
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
S="${WORKDIR}/${P}-debian7"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup aerospike
|
||||
enewuser aerospike -1 /bin/bash /opt/aerospike aerospike
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local server_deb="${P}.debian7.x86_64.deb"
|
||||
local tools_deb="aerospike-tools-3.13.0.1.debian7.x86_64.deb"
|
||||
|
||||
ar x "${server_deb}" || die
|
||||
tar xzf data.tar.gz && rm data.tar.gz || die
|
||||
|
||||
ar x "${tools_deb}" || die
|
||||
tar xzf data.tar.gz && rm data.tar.gz || die
|
||||
|
||||
rm *.deb asinstall control.tar.gz debian-binary LICENSE SHA256SUMS
|
||||
rm usr/bin/{asfixownership,asmigrate2to3}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /opt/
|
||||
doins -r opt/aerospike
|
||||
|
||||
fperms +x -R /opt/aerospike/bin/
|
||||
fperms +x -R /opt/aerospike/lib/python/
|
||||
|
||||
for dir in '/etc' '/var/log'; do
|
||||
keepdir "${dir}/aerospike"
|
||||
done
|
||||
|
||||
insinto /etc/aerospike
|
||||
for conf in 'aerospike.conf' 'aerospike_mesh.conf' 'aerospike_ssd.conf'; do
|
||||
doins "${FILESDIR}/${conf}"
|
||||
done
|
||||
|
||||
insinto /usr/bin
|
||||
doins usr/bin/*
|
||||
fperms +x -R /usr/bin/asd
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/aerospike.logrotate aerospike
|
||||
|
||||
newinitd "${FILESDIR}"/aerospike.init aerospike
|
||||
|
||||
fowners -R aerospike:aerospike /opt/aerospike/
|
||||
fowners aerospike:aerospike /usr/bin/asd
|
||||
fowners -R aerospike:aerospike /var/log/aerospike
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
@ -1,2 +1 @@
|
||||
DIST psqlodbc-10.00.0000.tar.gz 914115 BLAKE2B 3f1753a43b4707c0cb723df756b3d9a0177452231fd950a7bec4e5fc35bcd03012f64d2e0b64c1f7cdae375d2ff9211272537c6a76e044fcb3ac277752dff9a5 SHA512 95898b0030778f2f002b0820180de7261387cd7161231a000523ab84f3aa106436a4e6598b40936ab313a5cf578657548f833f58791eba50160c40be4ef3d275
|
||||
DIST psqlodbc-10.01.0000.tar.gz 915109 BLAKE2B a09de8218dbfbacf7972fc02c02863891ed65d19b86217a646aa0176ad7a8b962da83bb5036ad11b819a583409e4d1f3ce257a0457838000bc9cc060753c67b3 SHA512 1c5b9732a9c7e7bff0fd0a04cc7f0b45db9150486a2c3a8a96d85fb55e9296a80f12ee652cfb7ff54700e7dfc10accf9e5420b7ca798df31be51f997bbda88aa
|
||||
|
@ -1,32 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
DESCRIPTION="Official ODBC driver for PostgreSQL"
|
||||
HOMEPAGE="http://www.postgresql.org/"
|
||||
SRC_URI="mirror://postgresql/odbc/versions/src/${P}.tar.gz"
|
||||
SLOT="0"
|
||||
LICENSE="LGPL-2"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="doc iodbc ssl threads"
|
||||
|
||||
DEPEND="dev-db/postgresql:*[ssl?]
|
||||
!iodbc? ( dev-db/unixODBC )
|
||||
iodbc? ( dev-db/libiodbc )
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_with iodbc) \
|
||||
$(use_with !iodbc unixodbc) \
|
||||
$(use_enable threads pthreads)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
dodoc readme.txt
|
||||
use doc && dodoc docs/*{html,jpg,txt}
|
||||
}
|
Binary file not shown.
@ -0,0 +1,41 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
RESTRICT="test" # needs some pointy sticks. Seriously.
|
||||
PYTHON_COMPAT=(python{2_7,3_4,3_5})
|
||||
|
||||
inherit distutils-r1 eutils
|
||||
DESCRIPTION="A LISP dialect running in python"
|
||||
HOMEPAGE="http://hylang.org/"
|
||||
SRC_URI="https://github.com/hylang/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="test doc"
|
||||
|
||||
RDEPEND="dev-python/flake8[${PYTHON_USEDEP}]
|
||||
>=dev-python/rply-0.7.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/astor-0.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/clint-0.4[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
|
||||
test? ( dev-python/tox[${PYTHON_USEDEP}]
|
||||
dev-python/nose[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
dev-python/coverage[${PYTHON_USEDEP}]
|
||||
)"
|
||||
src_prepare() {
|
||||
use doc && HTML_DOCS=( docs/_build/html/. )
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
use doc && emake docs
|
||||
}
|
||||
|
||||
python_test() {
|
||||
nosetests || die "Tests failed under ${EPYTHON}"
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic
|
||||
|
||||
MY_PN="MoarVM"
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
S="${WORKDIR}/${P}"
|
||||
else
|
||||
SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
S="${WORKDIR}/${MY_PN}-${PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
|
||||
HOMEPAGE="http://moarvm.org"
|
||||
LICENSE="Artistic-2"
|
||||
SLOT="0"
|
||||
IUSE="asan clang debug doc +jit static-libs optimize ubsan"
|
||||
|
||||
RDEPEND="dev-libs/libatomic_ops
|
||||
dev-libs/libuv
|
||||
dev-lang/lua:0[deprecated]
|
||||
dev-lua/LuaBitOp
|
||||
virtual/libffi"
|
||||
DEPEND="${RDEPEND}
|
||||
clang? ( >=sys-devel/clang-3.1 )
|
||||
dev-lang/perl"
|
||||
|
||||
DOCS=( CREDITS README.markdown )
|
||||
|
||||
# Tests are conducted via nqp
|
||||
RESTRICT=test
|
||||
|
||||
src_configure() {
|
||||
use doc && DOCS+=( docs/* )
|
||||
local myconfigargs=(
|
||||
"--prefix=/usr"
|
||||
"--has-libuv"
|
||||
"--has-libatomic_ops"
|
||||
"--has-libffi"
|
||||
"--libdir=$(get_libdir)"
|
||||
"--compiler=$(usex clang clang gcc)"
|
||||
"$(usex asan --asan)"
|
||||
"$(usex debug --debug --no-debug)"
|
||||
"$(usex optimize --optimize= --no-optimize)"
|
||||
"$(usex static-libs --static)"
|
||||
"$(usex ubsan --ubsan)"
|
||||
)
|
||||
use optimize && filter-flags '-O*'
|
||||
|
||||
perl Configure.pl "${myconfigargs[@]}" || die
|
||||
}
|
@ -0,0 +1,159 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit java-pkg-opt-2 multibuild
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="https://github.com/perl6/${PN}/tarball/${PV} -> ${P}.tar.gz"
|
||||
inherit vcs-snapshot
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
|
||||
HOMEPAGE="http://rakudo.org/"
|
||||
|
||||
LICENSE="Artistic-2"
|
||||
SLOT="0"
|
||||
IUSE="doc clang java +moar test"
|
||||
REQUIRED_USE="|| ( java moar )"
|
||||
|
||||
CDEPEND="java? (
|
||||
dev-java/asm:4
|
||||
dev-java/jline:0
|
||||
dev-java/jna:4
|
||||
)
|
||||
moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
|
||||
RDEPEND="${CDEPEND}
|
||||
java? ( >=virtual/jre-1.7 )"
|
||||
DEPEND="${CDEPEND}
|
||||
clang? ( sys-devel/clang )
|
||||
java? ( >=virtual/jdk-1.7 )
|
||||
dev-lang/perl"
|
||||
|
||||
pkg_pretend() {
|
||||
if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
|
||||
ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
|
||||
ewarn "already being installed. So if it fails, try uninstalling both"
|
||||
ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
|
||||
ewarn "(see Bug #584394)"
|
||||
fi
|
||||
}
|
||||
|
||||
java_prepare() {
|
||||
# Don't clean stage0 jars.
|
||||
einfo "Cleaning upstream jars"
|
||||
java-pkg_clean 3rdparty/
|
||||
|
||||
# Don't use jars we just deleted.
|
||||
sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
|
||||
src/vm/jvm/runners/nqp-j || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
MULTIBUILD_VARIANTS=()
|
||||
use moar && MULTIBUILD_VARIANTS+=( moar )
|
||||
use java && MULTIBUILD_VARIANTS+=( jvm )
|
||||
|
||||
multibuild_copy_sources
|
||||
|
||||
# This will pull in conditional java_prepare
|
||||
default
|
||||
}
|
||||
|
||||
nqp_configure() {
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
local myconfargs=(
|
||||
"--backend=${MULTIBUILD_VARIANT}"
|
||||
"--prefix=/usr" )
|
||||
|
||||
perl Configure.pl "${myconfargs[@]}" || die
|
||||
popd || die
|
||||
}
|
||||
|
||||
nqp_compile() {
|
||||
if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
|
||||
emake -j1 \
|
||||
-C "${BUILD_DIR}" \
|
||||
THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
|
||||
JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
|
||||
elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
|
||||
emake -j1 \
|
||||
-C "${BUILD_DIR}"
|
||||
fi
|
||||
}
|
||||
|
||||
nqp_test() {
|
||||
emake -j1 \
|
||||
-C "${BUILD_DIR}" \
|
||||
test
|
||||
}
|
||||
|
||||
nqp_install() {
|
||||
# This is the actual reason we need multibuild.eclass.
|
||||
# We need to distinguish the install procedure for MoarVM and JVM backends.
|
||||
case "${MULTIBUILD_VARIANT}" in
|
||||
moar)
|
||||
emake \
|
||||
DESTDIR="${ED}" \
|
||||
-C "${BUILD_DIR}" \
|
||||
install
|
||||
;;
|
||||
jvm)
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
# Set JAVA_PKG_JARDEST early.
|
||||
java-pkg_init_paths_
|
||||
|
||||
# Upstream sets the classpath to this location. Perhaps it's
|
||||
# used to locate the additional libraries?
|
||||
java-pkg_addcp "${JAVA_PKG_JARDEST}"
|
||||
|
||||
insinto "${JAVA_PKG_JARDEST}"
|
||||
local jar
|
||||
|
||||
for jar in *.jar; do
|
||||
if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
|
||||
# jars for NQP itself.
|
||||
java-pkg_dojar ${jar}
|
||||
else
|
||||
# jars used by NQP.
|
||||
doins ${jar}
|
||||
fi
|
||||
done
|
||||
|
||||
# Upstream uses -Xbootclasspath/a, which is faster due to lack
|
||||
# of verification, but gjl isn't flexible enough yet. :(
|
||||
java-pkg_dolauncher ${PN}-j --main ${PN}
|
||||
dosym ${PN}-j /usr/bin/${PN}
|
||||
dobin tools/jvm/eval-client.pl
|
||||
popd > /dev/null || die
|
||||
;;
|
||||
*)
|
||||
die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
multibuild_foreach_variant nqp_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
multibuild_foreach_variant nqp_compile
|
||||
}
|
||||
|
||||
src_test() {
|
||||
multibuild_foreach_variant nqp_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
multibuild_foreach_variant nqp_install
|
||||
|
||||
dodoc CREDITS README.pod
|
||||
use doc && dodoc -r docs/*
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
diff --git a/Configure b/Configure
|
||||
index e32d18ce1f..85ab0249bc 100755
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -1497,7 +1497,7 @@ archname=''
|
||||
usereentrant='undef'
|
||||
: List of libraries we want.
|
||||
: If anyone needs extra -lxxx, put those in a hint file.
|
||||
-libswanted="cl pthread socket bind inet nsl ndbm gdbm dbm db malloc dl ld"
|
||||
+libswanted="cl pthread socket bind inet ndbm gdbm dbm db malloc dl ld"
|
||||
libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
|
@ -0,0 +1,572 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
|
||||
|
||||
PATCH_VER=2
|
||||
CROSS_VER=1.1.7
|
||||
PATCH_BASE="perl-5.24.3-patches-${PATCH_VER}"
|
||||
|
||||
PERL_OLDVERSEN="5.24.2 5.24.1 5.24.0"
|
||||
DIST_AUTHOR=SHAY
|
||||
|
||||
SHORT_PV="${PV%.*}"
|
||||
MY_P="perl-${PV/_rc/-RC}"
|
||||
MY_PV="${PV%_rc*}"
|
||||
|
||||
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
|
||||
|
||||
SRC_URI="
|
||||
mirror://cpan/src/5.0/${MY_P}.tar.xz
|
||||
mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
|
||||
https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
|
||||
mirror://gentoo/${PATCH_BASE}.tar.xz
|
||||
https://dev.gentoo.org/~kentnl/distfiles/${PATCH_BASE}.tar.xz
|
||||
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
|
||||
"
|
||||
HOMEPAGE="https://www.perl.org/"
|
||||
|
||||
LICENSE="|| ( Artistic GPL-1+ )"
|
||||
SLOT="0/${SHORT_PV}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="berkdb debug doc gdbm ithreads"
|
||||
|
||||
RDEPEND="
|
||||
berkdb? ( sys-libs/db:= )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
||||
app-arch/bzip2
|
||||
sys-libs/zlib
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
!prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
|
||||
"
|
||||
PDEPEND="
|
||||
>=app-admin/perl-cleaner-2.5
|
||||
>=virtual/perl-File-Path-2.130.0
|
||||
>=virtual/perl-File-Temp-0.230.400-r2
|
||||
>=virtual/perl-Data-Dumper-2.154.0
|
||||
virtual/perl-Test-Harness
|
||||
"
|
||||
# bug 390719, bug 523624, bug 620304
|
||||
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
PATCHES=( "${FILESDIR}/perl-5.24-libnsl.patch" )
|
||||
|
||||
dual_scripts() {
|
||||
src_remove_dual perl-core/Archive-Tar 2.40.100_rc ptar ptardiff ptargrep
|
||||
src_remove_dual perl-core/CPAN 2.110.100_rc cpan
|
||||
src_remove_dual perl-core/Digest-SHA 5.950.100_rc shasum
|
||||
src_remove_dual perl-core/Encode 2.800.100_rc enc2xs piconv
|
||||
src_remove_dual perl-core/ExtUtils-MakeMaker 7.100.200_rc instmodsh
|
||||
src_remove_dual perl-core/ExtUtils-ParseXS 3.310.0 xsubpp
|
||||
src_remove_dual perl-core/IO-Compress 2.69.1_rc zipdetails
|
||||
src_remove_dual perl-core/JSON-PP 2.273.0.100_rc json_pp
|
||||
src_remove_dual perl-core/Module-CoreList 5.201.709.222.400_rc corelist
|
||||
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
|
||||
src_remove_dual perl-core/Pod-Perldoc 3.250.300_rc perldoc
|
||||
src_remove_dual perl-core/Test-Harness 3.360.100_rc prove
|
||||
src_remove_dual perl-core/podlators 4.70.0 pod2man pod2text
|
||||
src_remove_dual_man perl-core/podlators 4.70.0 /usr/share/man/man1/perlpodstyle.1
|
||||
}
|
||||
|
||||
check_rebuild() {
|
||||
# Fresh install
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
||||
return 0;
|
||||
# Major Upgrade
|
||||
# doesn't matter if there's multiple copies, it still needs a rebuild
|
||||
# if the string is anything other than "5.CURRENTMAJOR"
|
||||
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
|
||||
echo ""
|
||||
ewarn "UPDATE THE PERL MODULES:"
|
||||
ewarn "After updating dev-lang/perl the installed Perl modules"
|
||||
ewarn "have to be re-installed. In most cases, this is done automatically"
|
||||
ewarn "by the package manager, but subsequent steps are still recommended"
|
||||
ewarn "to ensure system consistency."
|
||||
ewarn
|
||||
ewarn "You should start with a depclean to remove any unused perl dependencies"
|
||||
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
|
||||
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
|
||||
ewarn "Recommended: emerge --depclean -va"
|
||||
ewarn
|
||||
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
|
||||
ewarn "remaining rebuilds portage may have missed."
|
||||
ewarn "Use: perl-cleaner --all"
|
||||
return 0;
|
||||
|
||||
# Reinstall w/ USE Change
|
||||
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
|
||||
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
|
||||
( use debug && ! has_version dev-lang/perl[debug] ) || \
|
||||
( ! use debug && has_version dev-lang/perl[debug] ) ; then
|
||||
echo ""
|
||||
ewarn "TOGGLED USE-FLAGS WARNING:"
|
||||
ewarn "You changed one of the use-flags ithreads or debug."
|
||||
ewarn "You must rebuild all perl-modules installed."
|
||||
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
case ${CHOST} in
|
||||
*-freebsd*) osname="freebsd" ;;
|
||||
*-dragonfly*) osname="dragonfly" ;;
|
||||
*-netbsd*) osname="netbsd" ;;
|
||||
*-openbsd*) osname="openbsd" ;;
|
||||
*-darwin*) osname="darwin" ;;
|
||||
*-interix*) osname="interix" ;;
|
||||
*-aix*) osname="aix" ;;
|
||||
*-cygwin*) osname="cygwin" ;;
|
||||
*) osname="linux" ;;
|
||||
esac
|
||||
|
||||
myarch="${CHOST%%-*}-${osname}"
|
||||
if use debug ; then
|
||||
myarch+="-debug"
|
||||
fi
|
||||
if use ithreads ; then
|
||||
mythreading="-multi"
|
||||
myarch+="-thread"
|
||||
fi
|
||||
|
||||
LIBPERL="libperl$(get_libname ${MY_PV} )"
|
||||
PRIV_LIB="/usr/$(get_libdir)/perl5/${MY_PV}"
|
||||
ARCH_LIB="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
||||
SITE_LIB="/usr/local/$(get_libdir)/perl5/${MY_PV}"
|
||||
SITE_ARCH="/usr/local/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
|
||||
VENDOR_LIB="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}"
|
||||
VENDOR_ARCH="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}"
|
||||
|
||||
dual_scripts
|
||||
}
|
||||
|
||||
src_remove_dual_file() {
|
||||
local i pkg ver
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
case "${EBUILD_PHASE:-none}" in
|
||||
postinst|postrm)
|
||||
for i in "$@" ; do
|
||||
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
|
||||
done
|
||||
;;
|
||||
setup)
|
||||
for i in "$@" ; do
|
||||
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
|
||||
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
|
||||
break
|
||||
fi
|
||||
done
|
||||
;;
|
||||
install)
|
||||
for i in "$@" ; do
|
||||
if ! [[ -f "${ED}"${i} ]] ; then
|
||||
ewarn "${i} does not exist!"
|
||||
continue
|
||||
fi
|
||||
mv "${ED}"${i}{,-${ver}-${P}} || die
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_remove_dual_man() {
|
||||
local i pkg ver ff
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
case "${EBUILD_PHASE:-none}" in
|
||||
postinst|postrm)
|
||||
for i in "$@" ; do
|
||||
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
|
||||
ff=${ff##*${i#${i%.[0-9]}}}
|
||||
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
|
||||
done
|
||||
;;
|
||||
install)
|
||||
for i in "$@" ; do
|
||||
if ! [[ -f "${ED}"${i} ]] ; then
|
||||
ewarn "${i} does not exist!"
|
||||
continue
|
||||
fi
|
||||
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_remove_dual() {
|
||||
local i pkg ver
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
for i in "$@" ; do
|
||||
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
|
||||
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare_update_patchlevel_h() {
|
||||
# Copied and modified from debian:
|
||||
# Copyright 2011 Niko Tyni
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the same terms as Perl itself.
|
||||
local patchdir="${WORKDIR}/patches"
|
||||
local prefix
|
||||
local patchoutput="patchlevel-gentoo.h"
|
||||
|
||||
[[ -f ${patchdir}/series ]] || return 0
|
||||
|
||||
while read patch
|
||||
do
|
||||
patchname=$(echo $patch | sed 's/\.diff$//')
|
||||
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
|
||||
|
||||
# massage the patch headers
|
||||
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
|
||||
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
|
||||
s|^Bug-Gentoo: ||; tprepend;
|
||||
s/^\(Subject\|Description\): //; tappend;
|
||||
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
|
||||
|
||||
# post-process at the end of input
|
||||
$ { x;
|
||||
# include the version number in the patchlevel.h description (if available)
|
||||
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
|
||||
|
||||
# escape any backslashes and double quotes
|
||||
s|\\|\\\\|g; s|"|\\"|g;
|
||||
|
||||
# add a prefix
|
||||
s|^|\t,"'"$prefix$patchname"' - |;
|
||||
# newlines away
|
||||
s/\n/ /g; s/ */ /g;
|
||||
# add a suffix
|
||||
s/ *$/"/; p
|
||||
};
|
||||
# stop all processing
|
||||
d;
|
||||
# label: append to the hold space
|
||||
:append H; d;
|
||||
# label: prepend to the hold space
|
||||
:prepend x; H; d;
|
||||
'
|
||||
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
|
||||
echo "${patchoutput}" >> "${S}/MANIFEST"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local patch
|
||||
EPATCH_OPTS+=" -p1"
|
||||
einfo "Applying patches from ${MY_P}-${PATCH_VER} ..."
|
||||
while read patch ; do
|
||||
EPATCH_SINGLE_MSG=" ${patch} ..."
|
||||
epatch "${WORKDIR}"/patches/${patch}
|
||||
done < "${WORKDIR}"/patches/series
|
||||
|
||||
src_prepare_update_patchlevel_h
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
cp -a ../perl-cross-${CROSS_VER}/* . || die
|
||||
|
||||
sed -i \
|
||||
-e 's/(15 + $CLEANUP)/(13 + $CLEANUP)/' \
|
||||
cnf/diffs/perl5-${PV}/makemaker-test.patch || die
|
||||
|
||||
sed -i \
|
||||
-e 's/MakeMaker\.pm .*/MakeMaker.pm bf9174c70a0e50ff2fee4552c7df89b37d292da1/' \
|
||||
-e 's/MM_Unix\.pm .*/MM_Unix.pm b0ec308fe2d7dcfcef5732880db0fae1f4ea80fa/' \
|
||||
cnf/diffs/perl5-${PV}/customized.patch || die
|
||||
|
||||
sed -i \
|
||||
-e 's|^lib/unicore/CombiningClass.pl pod/perluniprops.pod:|lib/unicore/CombiningClass.pl pod/perluniprops.pod: $(CONFIGPM)|' \
|
||||
Makefile || die
|
||||
|
||||
# bug 604072
|
||||
MAKEOPTS+=" -j1"
|
||||
export MAKEOPTS
|
||||
fi
|
||||
|
||||
if ! tc-is-static-only ; then
|
||||
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -s ${LIBPERL} libperl$(get_libname ) || die
|
||||
fi
|
||||
|
||||
if use gdbm; then
|
||||
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
|
||||
ext/NDBM_File/Makefile.PL || die
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
myconf() {
|
||||
# the myconf array is declared in src_configure
|
||||
myconf=( "${myconf[@]}" "$@" )
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
declare -a myconf
|
||||
|
||||
export LC_ALL="C"
|
||||
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
|
||||
|
||||
# some arches and -O do not mix :)
|
||||
use ppc && replace-flags -O? -O1
|
||||
|
||||
# Perl has problems compiling with -Os in your flags with glibc
|
||||
use elibc_uclibc || replace-flags "-Os" "-O2"
|
||||
|
||||
# xlocale.h is going away in glibc-2.26, so it's counterproductive
|
||||
# if we use it and include it in CORE/perl.h ... Perl builds just
|
||||
# fine with glibc and locale.h only.
|
||||
# However, the darwin prefix people have no locale.h ...
|
||||
use elibc_glibc && myconf -Ui_xlocale
|
||||
|
||||
# This flag makes compiling crash in interesting ways
|
||||
filter-flags "-malign-double"
|
||||
|
||||
# Fixes bug #97645
|
||||
use ppc && filter-flags "-mpowerpc-gpopt"
|
||||
|
||||
# Fixes bug #143895 on gcc-4.1.1
|
||||
filter-flags "-fsched2-use-superblocks"
|
||||
|
||||
use sparc && myconf -Ud_longdbl
|
||||
|
||||
export BUILD_BZIP2=0
|
||||
export BZIP2_INCLUDE=${EROOT}/usr/include
|
||||
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
|
||||
|
||||
export BUILD_ZLIB=False
|
||||
export ZLIB_INCLUDE=${EROOT}/usr/include
|
||||
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
|
||||
|
||||
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
|
||||
myndbm='U'
|
||||
mygdbm='U'
|
||||
mydb='U'
|
||||
if use gdbm ; then
|
||||
mygdbm='D'
|
||||
if use berkdb ; then
|
||||
myndbm='D'
|
||||
fi
|
||||
fi
|
||||
if use berkdb ; then
|
||||
mydb='D'
|
||||
has_version '=sys-libs/db-1*' && myndbm='D'
|
||||
fi
|
||||
|
||||
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
|
||||
|
||||
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
|
||||
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
|
||||
myconf -Ui_db -Ui_ndbm
|
||||
fi
|
||||
|
||||
use ithreads && myconf -Dusethreads
|
||||
|
||||
if use debug ; then
|
||||
append-cflags "-g"
|
||||
myconf -DDEBUGGING
|
||||
elif [[ ${CFLAGS} == *-g* ]] ; then
|
||||
myconf -DDEBUGGING=-g
|
||||
else
|
||||
myconf -DDEBUGGING=none
|
||||
fi
|
||||
|
||||
if [[ -n ${PERL_OLDVERSEN} ]] ; then
|
||||
local inclist=$(for v in ${PERL_OLDVERSEN}; do echo -n "${v}/${myarch}${mythreading} ${v} "; done )
|
||||
myconf -Dinc_version_list="${inclist}"
|
||||
fi
|
||||
|
||||
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
|
||||
|
||||
# Make sure we can do the final link #523730, need to set deployment
|
||||
# target to override hardcoded 10.3 which breaks on modern OSX
|
||||
[[ ${CHOST} == *-darwin* ]] && \
|
||||
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
|
||||
|
||||
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
|
||||
# Prefix itself we don't do multilib either, so make sure perl can find
|
||||
# something compatible.
|
||||
if use prefix ; then
|
||||
# Set a hook to check for each detected library whether it actually works.
|
||||
export libscheck="
|
||||
( echo 'main(){}' > '${T}'/conftest.c &&
|
||||
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
|
||||
) || xxx=/dev/null"
|
||||
|
||||
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
|
||||
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
|
||||
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
|
||||
elif [[ $(get_libdir) != "lib" ]] ; then
|
||||
# We need to use " and not ', as the written config.sh use ' ...
|
||||
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
|
||||
fi
|
||||
|
||||
# don't try building ODBM, bug #354453
|
||||
disabled_extensions="ODBM_File"
|
||||
|
||||
if ! use gdbm ; then
|
||||
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
|
||||
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
|
||||
fi
|
||||
|
||||
myconf -Dnoextensions="${disabled_extensions}"
|
||||
|
||||
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
|
||||
# allow fiddling via EXTRA_ECONF, bug 558070
|
||||
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
|
||||
|
||||
myconf \
|
||||
-Duseshrplib \
|
||||
-Darchname="${myarch}" \
|
||||
-Dcc="$(tc-getCC)" \
|
||||
-Doptimize="${CFLAGS}" \
|
||||
-Dldflags="${LDFLAGS}" \
|
||||
-Dprefix="${EPREFIX}"'/usr' \
|
||||
-Dsiteprefix="${EPREFIX}"'/usr/local' \
|
||||
-Dvendorprefix="${EPREFIX}"'/usr' \
|
||||
-Dscriptdir="${EPREFIX}"'/usr/bin' \
|
||||
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
|
||||
-Darchlib="${EPREFIX}${ARCH_LIB}" \
|
||||
-Dsitelib="${EPREFIX}${SITE_LIB}" \
|
||||
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
|
||||
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
|
||||
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
|
||||
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
|
||||
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
|
||||
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||
-Dman1ext='1' \
|
||||
-Dman3ext='3pm' \
|
||||
-Dlibperl="${LIBPERL}" \
|
||||
-Dlocincpth="${EPREFIX}"'/usr/include ' \
|
||||
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
|
||||
-Duselargefiles \
|
||||
-Dd_semctl_semun \
|
||||
-Dcf_by='Gentoo' \
|
||||
-Dmyhostname='localhost' \
|
||||
-Dperladmin='root@localhost' \
|
||||
-Ud_csh \
|
||||
-Dsh="${EPREFIX}"/bin/sh \
|
||||
-Dtargetsh="${EPREFIX}"/bin/sh \
|
||||
-Uusenm \
|
||||
"${myconf[@]}" \
|
||||
"${EXTRA_ECONF[@]}"
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
./configure \
|
||||
--target="${CHOST}" \
|
||||
--build="${CBUILD}" \
|
||||
-Dinstallprefix='' \
|
||||
-Dinstallusrbinperl='undef' \
|
||||
-Dusevendorprefix='define' \
|
||||
"${myconf[@]}" \
|
||||
|| die "Unable to configure"
|
||||
else
|
||||
sh Configure \
|
||||
-des \
|
||||
-Dinstallprefix="${EPREFIX}"'/usr' \
|
||||
-Dinstallusrbinperl='n' \
|
||||
"${myconf[@]}" \
|
||||
|| die "Unable to configure"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
export NO_GENTOO_NETWORK_TESTS=1;
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
|
||||
return 0
|
||||
fi
|
||||
use elibc_uclibc && export MAKEOPTS+=" -j1"
|
||||
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local i
|
||||
local coredir="${ARCH_LIB}/CORE"
|
||||
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
rm -f "${ED}/usr/bin/perl${MY_PV}"
|
||||
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
|
||||
|
||||
if ! tc-is-static-only ; then
|
||||
dolib.so "${ED}"${coredir}/${LIBPERL}
|
||||
rm -f "${ED}"${coredir}/${LIBPERL}
|
||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
|
||||
fi
|
||||
|
||||
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
|
||||
|
||||
# This removes ${D} from Config.pm
|
||||
for i in $(find "${D}" -iname "Config.pm" ) ; do
|
||||
einfo "Removing ${D} from ${i}..."
|
||||
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
|
||||
done
|
||||
|
||||
dodoc Changes* README AUTHORS
|
||||
|
||||
if use doc ; then
|
||||
# HTML Documentation
|
||||
# We expect errors, warnings, and such with the following.
|
||||
|
||||
dodir /usr/share/doc/${PF}/html
|
||||
LD_LIBRARY_PATH=. ./perl installhtml \
|
||||
--podroot='.' \
|
||||
--podpath='lib:ext:pod:vms' \
|
||||
--recurse \
|
||||
--htmldir="${ED}/usr/share/doc/${PF}/html"
|
||||
fi
|
||||
|
||||
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
|
||||
|
||||
dual_scripts
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
check_rebuild
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
dual_scripts
|
||||
|
||||
if [[ "${ROOT}" = "/" ]] ; then
|
||||
local INC DIR file
|
||||
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
|
||||
einfo "Removing old .ph files"
|
||||
for DIR in ${INC} ; do
|
||||
if [[ -d "${DIR}" ]] ; then
|
||||
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
|
||||
rm -f "${file}"
|
||||
einfo "<< ${file}"
|
||||
done
|
||||
fi
|
||||
done
|
||||
# Silently remove the now empty dirs
|
||||
for DIR in ${INC} ; do
|
||||
if [[ -d "${DIR}" ]] ; then
|
||||
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
|
||||
fi
|
||||
done
|
||||
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm(){
|
||||
dual_scripts
|
||||
}
|
@ -0,0 +1,627 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
|
||||
|
||||
PATCH_VER=1
|
||||
CROSS_VER=1.1.7
|
||||
PATCH_BASE="perl-5.26.1-patches-${PATCH_VER}"
|
||||
|
||||
DIST_AUTHOR=SHAY
|
||||
|
||||
# Greatest first, don't include yourself
|
||||
# Devel point-releases are not ABI-intercompatible, but stable point releases are
|
||||
# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
|
||||
PERL_BIN_OLDVERSEN="5.26.0"
|
||||
if [[ "${PV##*.}" == "9999" ]]; then
|
||||
DIST_VERSION=5.26.1-RC1
|
||||
else
|
||||
DIST_VERSION="${PV/_rc/-RC}"
|
||||
fi
|
||||
SHORT_PV="${DIST_VERSION%.*}"
|
||||
# Even numbered major versions are ABI intercompatible
|
||||
# Odd numbered major versions are not
|
||||
if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then
|
||||
SUBSLOT="${DIST_VERSION%-RC*}"
|
||||
else
|
||||
SUBSLOT="${DIST_VERSION%.*}"
|
||||
fi
|
||||
# Used only in tar paths
|
||||
MY_P="perl-${DIST_VERSION}"
|
||||
# Used in library paths
|
||||
MY_PV="${DIST_VERSION%-RC*}"
|
||||
|
||||
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
|
||||
|
||||
SRC_URI="
|
||||
mirror://cpan/src/5.0/${MY_P}.tar.xz
|
||||
mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
|
||||
https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
|
||||
mirror://gentoo/${PATCH_BASE}.tar.xz
|
||||
https://dev.gentoo.org/~kentnl/distfiles/${PATCH_BASE}.tar.xz
|
||||
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
|
||||
"
|
||||
HOMEPAGE="https://www.perl.org/"
|
||||
|
||||
LICENSE="|| ( Artistic GPL-1+ )"
|
||||
SLOT="0/${SUBSLOT}"
|
||||
|
||||
if [[ "${PV##*.}" != "9999" ]]; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
IUSE="berkdb debug doc gdbm ithreads"
|
||||
|
||||
RDEPEND="
|
||||
berkdb? ( sys-libs/db:= )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
||||
app-arch/bzip2
|
||||
sys-libs/zlib
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
!prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
|
||||
"
|
||||
PDEPEND="
|
||||
>=app-admin/perl-cleaner-2.5
|
||||
>=virtual/perl-File-Temp-0.230.400-r2
|
||||
>=virtual/perl-Data-Dumper-2.154.0
|
||||
virtual/perl-Test-Harness
|
||||
"
|
||||
# bug 390719, bug 523624
|
||||
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
PATCHES=( "${FILESDIR}/perl-5.24-libnsl.patch" )
|
||||
|
||||
dual_scripts() {
|
||||
src_remove_dual perl-core/Archive-Tar 2.240.0 ptar ptardiff ptargrep
|
||||
src_remove_dual perl-core/CPAN 2.180.0 cpan
|
||||
src_remove_dual perl-core/Digest-SHA 5.960.0 shasum
|
||||
src_remove_dual perl-core/Encode 2.880.0 enc2xs piconv
|
||||
src_remove_dual perl-core/ExtUtils-MakeMaker 7.240.0 instmodsh
|
||||
src_remove_dual perl-core/ExtUtils-ParseXS 3.340.0 xsubpp
|
||||
src_remove_dual perl-core/IO-Compress 2.74.0 zipdetails
|
||||
src_remove_dual perl-core/JSON-PP 2.274.0.200_rc json_pp
|
||||
src_remove_dual perl-core/Module-CoreList 5.201.709.222.600_rc corelist
|
||||
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
|
||||
src_remove_dual perl-core/Pod-Perldoc 3.280.0 perldoc
|
||||
src_remove_dual perl-core/Test-Harness 3.380.0 prove
|
||||
src_remove_dual perl-core/podlators 4.90.0 pod2man pod2text
|
||||
src_remove_dual_man perl-core/podlators 4.90.0 /usr/share/man/man1/perlpodstyle.1
|
||||
}
|
||||
|
||||
check_rebuild() {
|
||||
# Fresh install
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
||||
return 0;
|
||||
# Major Upgrade
|
||||
# doesn't matter if there's multiple copies, it still needs a rebuild
|
||||
# if the string is anything other than "5.CURRENTMAJOR"
|
||||
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
|
||||
echo ""
|
||||
ewarn "UPDATE THE PERL MODULES:"
|
||||
ewarn "After updating dev-lang/perl the installed Perl modules"
|
||||
ewarn "have to be re-installed. In most cases, this is done automatically"
|
||||
ewarn "by the package manager, but subsequent steps are still recommended"
|
||||
ewarn "to ensure system consistency."
|
||||
ewarn
|
||||
ewarn "You should start with a depclean to remove any unused perl dependencies"
|
||||
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
|
||||
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
|
||||
ewarn "Recommended: emerge --depclean -va"
|
||||
ewarn
|
||||
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
|
||||
ewarn "remaining rebuilds portage may have missed."
|
||||
ewarn "Use: perl-cleaner --all"
|
||||
return 0;
|
||||
|
||||
# Reinstall w/ USE Change
|
||||
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
|
||||
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
|
||||
( use debug && ! has_version dev-lang/perl[debug] ) || \
|
||||
( ! use debug && has_version dev-lang/perl[debug] ) ; then
|
||||
echo ""
|
||||
ewarn "TOGGLED USE-FLAGS WARNING:"
|
||||
ewarn "You changed one of the use-flags ithreads or debug."
|
||||
ewarn "You must rebuild all perl-modules installed."
|
||||
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
case ${CHOST} in
|
||||
*-freebsd*) osname="freebsd" ;;
|
||||
*-dragonfly*) osname="dragonfly" ;;
|
||||
*-netbsd*) osname="netbsd" ;;
|
||||
*-openbsd*) osname="openbsd" ;;
|
||||
*-darwin*) osname="darwin" ;;
|
||||
*-interix*) osname="interix" ;;
|
||||
*-aix*) osname="aix" ;;
|
||||
*-cygwin*) osname="cygwin" ;;
|
||||
*) osname="linux" ;;
|
||||
esac
|
||||
|
||||
myarch="${CHOST%%-*}-${osname}"
|
||||
if use debug ; then
|
||||
myarch+="-debug"
|
||||
fi
|
||||
if use ithreads ; then
|
||||
mythreading="-multi"
|
||||
myarch+="-thread"
|
||||
fi
|
||||
|
||||
PRIV_BASE="/usr/$(get_libdir)/perl5"
|
||||
SITE_BASE="/usr/local/$(get_libdir)/perl5"
|
||||
VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl"
|
||||
|
||||
LIBPERL="libperl$(get_libname ${MY_PV} )"
|
||||
PRIV_LIB="${PRIV_BASE}/${MY_PV}"
|
||||
ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}"
|
||||
SITE_LIB="${SITE_BASE}/${MY_PV}"
|
||||
SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}"
|
||||
VENDOR_LIB="${VENDOR_BASE}/${MY_PV}"
|
||||
VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}"
|
||||
|
||||
dual_scripts
|
||||
}
|
||||
|
||||
src_remove_dual_file() {
|
||||
local i pkg ver
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
case "${EBUILD_PHASE:-none}" in
|
||||
postinst|postrm)
|
||||
for i in "$@" ; do
|
||||
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
|
||||
done
|
||||
;;
|
||||
setup)
|
||||
for i in "$@" ; do
|
||||
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
|
||||
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
|
||||
break
|
||||
fi
|
||||
done
|
||||
;;
|
||||
install)
|
||||
for i in "$@" ; do
|
||||
if ! [[ -f "${ED}"${i} ]] ; then
|
||||
ewarn "${i} does not exist!"
|
||||
continue
|
||||
fi
|
||||
mv "${ED}"${i}{,-${ver}-${P}} || die
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_remove_dual_man() {
|
||||
local i pkg ver ff
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
case "${EBUILD_PHASE:-none}" in
|
||||
postinst|postrm)
|
||||
for i in "$@" ; do
|
||||
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
|
||||
ff=${ff##*${i#${i%.[0-9]}}}
|
||||
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
|
||||
done
|
||||
;;
|
||||
install)
|
||||
for i in "$@" ; do
|
||||
if ! [[ -f "${ED}"${i} ]] ; then
|
||||
ewarn "${i} does not exist!"
|
||||
continue
|
||||
fi
|
||||
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
|
||||
done
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
src_remove_dual() {
|
||||
local i pkg ver
|
||||
pkg="$1"
|
||||
ver="$2"
|
||||
shift 2
|
||||
for i in "$@" ; do
|
||||
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
|
||||
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare_update_patchlevel_h() {
|
||||
# Copied and modified from debian:
|
||||
# Copyright 2011 Niko Tyni
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the same terms as Perl itself.
|
||||
local patchdir="${WORKDIR}/patches"
|
||||
local prefix
|
||||
local patchoutput="patchlevel-gentoo.h"
|
||||
|
||||
[[ -f ${patchdir}/series ]] || return 0
|
||||
|
||||
while read patch
|
||||
do
|
||||
patchname=$(echo $patch | sed 's/\.diff$//')
|
||||
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
|
||||
|
||||
# massage the patch headers
|
||||
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
|
||||
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
|
||||
s|^Bug-Gentoo: ||; tprepend;
|
||||
s/^\(Subject\|Description\): //; tappend;
|
||||
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
|
||||
|
||||
# post-process at the end of input
|
||||
$ { x;
|
||||
# include the version number in the patchlevel.h description (if available)
|
||||
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
|
||||
|
||||
# escape any backslashes and double quotes
|
||||
s|\\|\\\\|g; s|"|\\"|g;
|
||||
|
||||
# add a prefix
|
||||
s|^|\t,"'"$prefix$patchname"' - |;
|
||||
# newlines away
|
||||
s/\n/ /g; s/ */ /g;
|
||||
# add a suffix
|
||||
s/ *$/"/; p
|
||||
};
|
||||
# stop all processing
|
||||
d;
|
||||
# label: append to the hold space
|
||||
:append H; d;
|
||||
# label: prepend to the hold space
|
||||
:prepend x; H; d;
|
||||
'
|
||||
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
|
||||
echo "${patchoutput}" >> "${S}/MANIFEST"
|
||||
}
|
||||
|
||||
src_prepare_perlcross() {
|
||||
cp -a ../perl-cross-${CROSS_VER}/* . || die
|
||||
|
||||
sed -i \
|
||||
-e 's/MakeMaker\.pm .*/MakeMaker.pm bf9174c70a0e50ff2fee4552c7df89b37d292da1/' \
|
||||
-e 's/MM_Unix\.pm .*/MM_Unix.pm b0ec308fe2d7dcfcef5732880db0fae1f4ea80fa/' \
|
||||
cnf/diffs/perl5-${PV}/customized.patch || die
|
||||
|
||||
sed -i \
|
||||
-e 's|^lib/unicore/CombiningClass.pl pod/perluniprops.pod:|lib/unicore/CombiningClass.pl pod/perluniprops.pod: $(CONFIGPM)|' \
|
||||
Makefile || die
|
||||
|
||||
# bug 604072
|
||||
MAKEOPTS+=" -j1"
|
||||
export MAKEOPTS
|
||||
}
|
||||
src_prepare_dynamic() {
|
||||
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -s ${LIBPERL} libperl$(get_libname ) || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local patch
|
||||
EPATCH_OPTS+=" -p1"
|
||||
einfo "Applying patches from ${PATCH_BASE} ..."
|
||||
while read patch ; do
|
||||
EPATCH_SINGLE_MSG=" ${patch} ..."
|
||||
epatch "${WORKDIR}"/patches/${patch}
|
||||
done < "${WORKDIR}"/patches/series
|
||||
|
||||
src_prepare_update_patchlevel_h
|
||||
|
||||
tc-is-cross-compiler && src_prepare_perlcross
|
||||
|
||||
tc-is-static-only || src_prepare_dynamic
|
||||
|
||||
if use gdbm; then
|
||||
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
|
||||
ext/NDBM_File/Makefile.PL || die
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
myconf() {
|
||||
# the myconf array is declared in src_configure
|
||||
myconf=( "${myconf[@]}" "$@" )
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
declare -a myconf
|
||||
|
||||
export LC_ALL="C"
|
||||
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
|
||||
|
||||
# some arches and -O do not mix :)
|
||||
use ppc && replace-flags -O? -O1
|
||||
|
||||
# Perl has problems compiling with -Os in your flags with glibc
|
||||
use elibc_uclibc || replace-flags "-Os" "-O2"
|
||||
|
||||
# xlocale.h is going away in glibc-2.26, so it's counterproductive
|
||||
# if we use it and include it in CORE/perl.h ... Perl builds just
|
||||
# fine with glibc and locale.h only.
|
||||
# However, the darwin prefix people have no locale.h ...
|
||||
use elibc_glibc && myconf -Ui_xlocale
|
||||
|
||||
# This flag makes compiling crash in interesting ways
|
||||
filter-flags "-malign-double"
|
||||
|
||||
# Fixes bug #97645
|
||||
use ppc && filter-flags "-mpowerpc-gpopt"
|
||||
|
||||
# Fixes bug #143895 on gcc-4.1.1
|
||||
filter-flags "-fsched2-use-superblocks"
|
||||
|
||||
use sparc && myconf -Ud_longdbl
|
||||
|
||||
export BUILD_BZIP2=0
|
||||
export BZIP2_INCLUDE=${EROOT}/usr/include
|
||||
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
|
||||
|
||||
export BUILD_ZLIB=False
|
||||
export ZLIB_INCLUDE=${EROOT}/usr/include
|
||||
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
|
||||
|
||||
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
|
||||
myndbm='U'
|
||||
mygdbm='U'
|
||||
mydb='U'
|
||||
if use gdbm ; then
|
||||
mygdbm='D'
|
||||
if use berkdb ; then
|
||||
myndbm='D'
|
||||
fi
|
||||
fi
|
||||
if use berkdb ; then
|
||||
mydb='D'
|
||||
has_version '=sys-libs/db-1*' && myndbm='D'
|
||||
fi
|
||||
|
||||
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
|
||||
|
||||
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
|
||||
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
|
||||
myconf -Ui_db -Ui_ndbm
|
||||
fi
|
||||
|
||||
use ithreads && myconf -Dusethreads
|
||||
|
||||
if use debug ; then
|
||||
append-cflags "-g"
|
||||
myconf -DDEBUGGING
|
||||
elif [[ ${CFLAGS} == *-g* ]] ; then
|
||||
myconf -DDEBUGGING=-g
|
||||
else
|
||||
myconf -DDEBUGGING=none
|
||||
fi
|
||||
|
||||
# Autodiscover all old version directories, some of them will even be newer
|
||||
# if you downgrade
|
||||
if [[ -z ${PERL_OLDVERSEN} ]]; then
|
||||
PERL_OLDVERSEN="$(
|
||||
find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \
|
||||
-maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \
|
||||
-printf "%f " 2>/dev/null )"
|
||||
fi
|
||||
# Fixup versions, removing self match, fixing order and dupes
|
||||
PERL_OLDVERSEN="$(
|
||||
echo "${PERL_OLDVERSEN}" |\
|
||||
tr " " "\n" |\
|
||||
grep -vF "${DIST_VERSION%-RC}" |\
|
||||
sort -u -nr -t'.' -k1,1 -k2,2 -k3,3
|
||||
)"
|
||||
|
||||
# Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string
|
||||
if [[ -n "${PERL_OLDVERSEN// }" ]]; then
|
||||
local inclist="$(
|
||||
for v in ${PERL_OLDVERSEN}; do
|
||||
has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} ";
|
||||
echo -n "${v} ";
|
||||
done )"
|
||||
einfo "This version of perl may partially support modules previously"
|
||||
einfo "installed in any of the following paths:"
|
||||
for incpath in ${inclist}; do
|
||||
[[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}"
|
||||
[[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}"
|
||||
[[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}"
|
||||
done
|
||||
einfo "This is a temporary measure and you should aim to cleanup these paths"
|
||||
einfo "via world updates and perl-cleaner"
|
||||
myconf -Dinc_version_list="${inclist}"
|
||||
fi
|
||||
|
||||
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
|
||||
|
||||
# Make sure we can do the final link #523730, need to set deployment
|
||||
# target to override hardcoded 10.3 which breaks on modern OSX
|
||||
[[ ${CHOST} == *-darwin* ]] && \
|
||||
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
|
||||
|
||||
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
|
||||
# Prefix itself we don't do multilib either, so make sure perl can find
|
||||
# something compatible.
|
||||
if use prefix ; then
|
||||
# Set a hook to check for each detected library whether it actually works.
|
||||
export libscheck="
|
||||
( echo 'main(){}' > '${T}'/conftest.c &&
|
||||
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
|
||||
) || xxx=/dev/null"
|
||||
|
||||
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
|
||||
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
|
||||
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
|
||||
elif [[ $(get_libdir) != "lib" ]] ; then
|
||||
# We need to use " and not ', as the written config.sh use ' ...
|
||||
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
|
||||
fi
|
||||
|
||||
# don't try building ODBM, bug #354453
|
||||
disabled_extensions="ODBM_File"
|
||||
|
||||
if ! use gdbm ; then
|
||||
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
|
||||
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
|
||||
fi
|
||||
|
||||
myconf -Dnoextensions="${disabled_extensions}"
|
||||
|
||||
[[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly
|
||||
|
||||
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
|
||||
# allow fiddling via EXTRA_ECONF, bug 558070
|
||||
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
|
||||
|
||||
myconf \
|
||||
-Duseshrplib \
|
||||
-Darchname="${myarch}" \
|
||||
-Dcc="$(tc-getCC)" \
|
||||
-Doptimize="${CFLAGS}" \
|
||||
-Dldflags="${LDFLAGS}" \
|
||||
-Dprefix="${EPREFIX}"'/usr' \
|
||||
-Dsiteprefix="${EPREFIX}"'/usr/local' \
|
||||
-Dvendorprefix="${EPREFIX}"'/usr' \
|
||||
-Dscriptdir="${EPREFIX}"'/usr/bin' \
|
||||
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
|
||||
-Darchlib="${EPREFIX}${ARCH_LIB}" \
|
||||
-Dsitelib="${EPREFIX}${SITE_LIB}" \
|
||||
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
|
||||
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
|
||||
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
|
||||
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
|
||||
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
|
||||
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
|
||||
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
|
||||
-Dman1ext='1' \
|
||||
-Dman3ext='3pm' \
|
||||
-Dlibperl="${LIBPERL}" \
|
||||
-Dlocincpth="${EPREFIX}"'/usr/include ' \
|
||||
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
|
||||
-Duselargefiles \
|
||||
-Dd_semctl_semun \
|
||||
-Dcf_by='Gentoo' \
|
||||
-Dmyhostname='localhost' \
|
||||
-Dperladmin='root@localhost' \
|
||||
-Ud_csh \
|
||||
-Dsh="${EPREFIX}"/bin/sh \
|
||||
-Dtargetsh="${EPREFIX}"/bin/sh \
|
||||
-Uusenm \
|
||||
"${myconf[@]}" \
|
||||
"${EXTRA_ECONF[@]}"
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
./configure \
|
||||
--target="${CHOST}" \
|
||||
--build="${CBUILD}" \
|
||||
-Dinstallprefix='' \
|
||||
-Dinstallusrbinperl='undef' \
|
||||
-Dusevendorprefix='define' \
|
||||
"${myconf[@]}" \
|
||||
|| die "Unable to configure"
|
||||
else
|
||||
sh Configure \
|
||||
-des \
|
||||
-Dinstallprefix="${EPREFIX}"'/usr' \
|
||||
-Dinstallusrbinperl='n' \
|
||||
"${myconf[@]}" \
|
||||
|| die "Unable to configure"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
export NO_GENTOO_NETWORK_TESTS=1;
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
|
||||
return 0
|
||||
fi
|
||||
use elibc_uclibc && export MAKEOPTS+=" -j1"
|
||||
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local i
|
||||
local coredir="${ARCH_LIB}/CORE"
|
||||
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
rm -f "${ED}/usr/bin/perl${MY_PV}"
|
||||
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
|
||||
|
||||
if ! tc-is-static-only ; then
|
||||
dolib.so "${ED}"${coredir}/${LIBPERL}
|
||||
rm -f "${ED}"${coredir}/${LIBPERL}
|
||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
|
||||
ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
|
||||
fi
|
||||
|
||||
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
|
||||
|
||||
# This removes ${D} from Config.pm
|
||||
for i in $(find "${D}" -iname "Config.pm" ) ; do
|
||||
einfo "Removing ${D} from ${i}..."
|
||||
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
|
||||
done
|
||||
|
||||
dodoc Changes* README AUTHORS
|
||||
|
||||
if use doc ; then
|
||||
# HTML Documentation
|
||||
# We expect errors, warnings, and such with the following.
|
||||
|
||||
dodir /usr/share/doc/${PF}/html
|
||||
LD_LIBRARY_PATH=. ./perl installhtml \
|
||||
--podroot='.' \
|
||||
--podpath='lib:ext:pod:vms' \
|
||||
--recurse \
|
||||
--htmldir="${ED}/usr/share/doc/${PF}/html"
|
||||
fi
|
||||
|
||||
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
|
||||
|
||||
dual_scripts
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
check_rebuild
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
dual_scripts
|
||||
|
||||
if [[ "${ROOT}" = "/" ]] ; then
|
||||
local INC DIR file
|
||||
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
|
||||
einfo "Removing old .ph files"
|
||||
for DIR in ${INC} ; do
|
||||
if [[ -d "${DIR}" ]] ; then
|
||||
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
|
||||
rm -f "${file}"
|
||||
einfo "<< ${file}"
|
||||
done
|
||||
fi
|
||||
done
|
||||
# Silently remove the now empty dirs
|
||||
for DIR in ${INC} ; do
|
||||
if [[ -d "${DIR}" ]] ; then
|
||||
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
|
||||
fi
|
||||
done
|
||||
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm(){
|
||||
dual_scripts
|
||||
}
|
@ -0,0 +1,72 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit java-pkg-opt-2
|
||||
|
||||
DESCRIPTION="A compiler for the Perl 6 programming language"
|
||||
HOMEPAGE="http://rakudo.org"
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="https://rakudo.perl6.org/downloads/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="Artistic-2"
|
||||
SLOT="0"
|
||||
# TODO: add USE="javascript" once that's usable in nqp
|
||||
IUSE="clang java +moar test"
|
||||
REQUIRED_USE="|| ( java moar )"
|
||||
|
||||
CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]"
|
||||
RDEPEND="${CDEPEND}
|
||||
java? ( >=virtual/jre-1.7 )"
|
||||
DEPEND="${CDEPEND}
|
||||
clang? ( sys-devel/clang )
|
||||
java? ( >=virtual/jdk-1.7 )
|
||||
>=dev-lang/perl-5.10"
|
||||
|
||||
pkg_pretend() {
|
||||
if has_version dev-lang/rakudo; then
|
||||
ewarn "Rakudo is known to fail compilation/installation with Rakudo"
|
||||
ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
|
||||
ewarn "then do a new installation."
|
||||
ewarn "(see Bug #584394)"
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local backends
|
||||
use moar && backends+="moar,"
|
||||
use java && backends+="jvm"
|
||||
|
||||
local myargs=(
|
||||
"--prefix=/usr"
|
||||
"--sysroot=/"
|
||||
"--sdkroot=/"
|
||||
"--backends=${backends}"
|
||||
)
|
||||
|
||||
perl Configure.pl "${myargs[@]}" || die
|
||||
|
||||
if use java; then
|
||||
NQP=$(java-pkg_getjars --with-dependencies nqp)
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
|
||||
}
|
||||
|
||||
src_test() {
|
||||
RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
|
||||
}
|
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
DIST libfilezilla-0.11.1.tar.bz2 395868 BLAKE2B d7d0004ca2b64fcfb8ba8121fefffb416bca2c4575c7a47ac9f890e352c88d3b35a5b881a3d7ca476a5b202a01a0d8094a1377f31b4b0b46b064c335781884b7 SHA512 a41ad8b2b0de25cba3283a55344a147383860d6ae7df7a0c634b48c07319bcb8057f84611e5cb98696e1f94856f5901f948c2e376fffe7151e145bf18ab82cc4
|
||||
DIST libfilezilla-0.11.2.tar.bz2 396032 BLAKE2B 68285a458c026ead9d0ab413e0638a45a451fd34d3284ff205d33e878f8c5e43fd4b3c92a5742d539383cbe0738c7e8d783c7523362ab744e9fc4d01d71dc932 SHA512 a2242fd67a054d47a938011c07a074f7e6d4a8fd7352b88411db1302d24a908a7b39ea76cd38cfe63765eb522476da4ccc22164884f9563e263a9e0895e7217f
|
||||
DIST libfilezilla-0.12.1.tar.bz2 397506 BLAKE2B 79f2009329195c51c81b6013b2ab14899a604cabd2a421888959690e57d67f1c0a30881bed5e7201f6a8d3f5ecdf56944f8f3ff7f2fab9bd8884cde6a0435a99 SHA512 3eeeb549eb5e07c712246a21c41e4ce076f4e9de8a65ad56f2a33bd7390a42950442cdb7113696b9673071f1f4253e847e4f961e97d4c8fad0a5369e790928dc
|
||||
DIST libfilezilla-0.9.1.tar.bz2 383315 BLAKE2B 0cade4316662d64b9a0eb6abd586355236bc2c3d73f3d2ad84fe857a25e593027bbb090f57c8656b8c06ae40d126d93b8310fb0642e2e73d3cace7e560c86837 SHA512 bbcd826675e9c3e2f8cf1cea4da01434a66359ae816efdc5c981fbfebde0b73ce44a6d37546196fc00cb118d9b4d7772b73e30f8d5a78294f97b9899e9ba3393
|
||||
DIST libfilezilla-0.9.2.tar.bz2 383522 BLAKE2B e70d23a67a8c365d06692dc27cf76543db75200ebb808e9ad91be95dafb8df2c7603c23e249405b056b7c44bffc527fd84d5a4052e704db63135fb93876d916f SHA512 f825d116e252786801115189f9966ba7ab8663863d921cce530569a172ab33dbc31234d6286b0b3e6edc19ec0a5ba009788382ec5d5359f97a9cb10f30715f88
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
@ -1,2 +1 @@
|
||||
DIST qtkeychain-0.7.0.tar.gz 18913 BLAKE2B df8d54b5436ee936ba9aa8b7613f035b8c23d7eb998565e5cffc68e286f1bd972b223968628d1bba008960bfb16a3451b2d83c7f412ba7140b53e150d4fb061d SHA512 b7e98fa6c7f6a8a5e4d79468366b30c859db4edf08984d685d2cd8d87c5ab60b5f4769b5af96c8d9ca306111e46a63e4d23be7c07d77d6c3492f2e81ae8cd88b
|
||||
DIST qtkeychain-0.8.0.tar.gz 34686 BLAKE2B bb20ace4393e04a8c8167ce112499fed75615ed165824bfcbba6a243e374523ff397aa85eb324ee8d742295a1bd4618a363fae6f92aae74caf09b9ca18d76c1e SHA512 be83ebc665a7916e96a2fd9990c72cd29373196591cf557fa6f9691f332ab67cc5475cab240c3e50e76cb37e0b7f189f0a1f2c3a70a6f655918e1d2465ed2f33
|
||||
|
@ -1,35 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
DESCRIPTION="Qt API for storing passwords securely"
|
||||
HOMEPAGE="https://github.com/frankosterfeld/qtkeychain"
|
||||
SRC_URI="https://github.com/frankosterfeld/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/1"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-qt/linguist-tools:5
|
||||
"
|
||||
|
||||
DOCS=( ChangeLog ReadMe.txt )
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_WITH_QT4=OFF
|
||||
-DQTKEYCHAIN_STATIC=OFF
|
||||
-DBUILD_TRANSLATIONS=ON
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
DIST_AUTHOR=MONSIEURP
|
||||
DIST_VERSION=0.100200
|
||||
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Utility to merge PRs from the Gentoo Github repository"
|
||||
HOMEPAGE="https://github.com/monsieurp/Gentoo-App-Pram"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-fbsd"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-vcs/git
|
||||
virtual/perl-Encode
|
||||
dev-perl/File-Which
|
||||
virtual/perl-File-Temp
|
||||
virtual/perl-HTTP-Tiny
|
||||
virtual/perl-Getopt-Long
|
||||
virtual/perl-Term-ANSIColor
|
||||
>=dev-perl/Net-SSLeay-1.490.0
|
||||
>=dev-perl/IO-Socket-SSL-1.560.0"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-perl/Module-Build-Tiny-0.34.0
|
||||
test? (
|
||||
>=virtual/perl-Test-Simple-0.890.0
|
||||
)"
|
@ -1 +1,2 @@
|
||||
DIST Gentoo-App-Pram-0.100100.tar.gz 12919 BLAKE2B d7c414c7010723017255931de95d76483c31a30efbc31fb5b9b01435201a16ad3c0c859f85ef425555f78d370d4b36572586123305391f4084c5bcfaf8975d42 SHA512 8a2c16610dc00b56d1ef61f17fbdee053c4cceedb6dd23d99ffb83220873870ce97398f3d1522c5f1210a6928381c401bb08a7c18192bcc8c48a3ded037a4140
|
||||
DIST Gentoo-App-Pram-0.100200.tar.gz 12893 BLAKE2B e88903f941c72607d7e367231f7c4c8f4bb58cde85c43f7a8c3f3a8b4a058313b08cabdaeee972d0fca3c56839d5cc34f001d86fe5002461712faac3bfba21d8 SHA512 e2f452b187005dc4ba8d98db9cd9257e6c9a90dbaa0c83c19698b996f5cac273529f6ac98c4d1bde0a3e8401389ba6703cf8c3525b65ed7494b1a986f15cd492
|
||||
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue