mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-17 18:06:59 +02:00
commit
8d618c6ea6
@ -1 +1 @@
|
||||
DIST bzip2-1.0.6.tar.gz 782025 SHA256 a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd SHA512 00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12 WHIRLPOOL 8e92c24f77c3711f5103a26d6fefbe61fe49a7d1e46879d259d46347c606ca956b7228ab011aa88007db771f86a500d4954057c7f9c70bd8380ca6c9430bd81e
|
||||
DIST bzip2-1.0.6.tar.gz 782025 BLAKE2B b31533af7c71d715e6600874bb0a11b9b3aebbb08af0414a6d88bd5a2ad879a482ad408338159cb6c241815da8f48798d2ea7789ea971431d0be42ee827b0a7e SHA512 00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12
|
||||
|
@ -1,20 +1,20 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
|
||||
# (since we're building shared libs) ...
|
||||
|
||||
EAPI=5
|
||||
EAPI=6
|
||||
|
||||
inherit eutils toolchain-funcs multilib multilib-minimal
|
||||
inherit toolchain-funcs multilib-minimal
|
||||
|
||||
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
|
||||
HOMEPAGE="http://www.bzip.org/"
|
||||
SRC_URI="http://www.bzip.org/${PV}/${P}.tar.gz"
|
||||
HOMEPAGE="https://sourceware.org/bzip2/"
|
||||
SRC_URI="mirror://gentoo/${P}.tar.gz"
|
||||
|
||||
LICENSE="BZIP2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||
SLOT="0/1" # subslot = SONAME
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="static static-libs"
|
||||
|
||||
PATCHES=(
|
||||
@ -27,10 +27,15 @@ PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.0.6-mingw.patch #393573
|
||||
"${FILESDIR}"/${PN}-1.0.6-out-of-tree-build.patch
|
||||
"${FILESDIR}"/${PN}-1.0.6-CVE-2016-3189.patch #620466
|
||||
"${FILESDIR}"/${PN}-1.0.6-ubsan-error.patch
|
||||
"${FILESDIR}"/${PN}-1.0.6-nselectors-upper-bound-check.patch
|
||||
)
|
||||
|
||||
DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf )
|
||||
HTML_DOCS=( manual.html )
|
||||
|
||||
src_prepare() {
|
||||
epatch "${PATCHES[@]}"
|
||||
default
|
||||
|
||||
# - Use right man path
|
||||
# - Generate symlinks instead of hardlinks
|
||||
@ -54,7 +59,7 @@ bemake() {
|
||||
multilib_src_compile() {
|
||||
bemake -f "${S}"/Makefile-libbz2_so all
|
||||
# Make sure we link against the shared lib #504648
|
||||
ln -sf libbz2.so.${PV} libbz2.so
|
||||
ln -s libbz2.so.${PV} libbz2.so || die
|
||||
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
|
||||
}
|
||||
|
||||
@ -105,8 +110,7 @@ multilib_src_install_all() {
|
||||
dosym bzgrep.1 /usr/share/man/man1/${x}.1
|
||||
done
|
||||
|
||||
dodoc README* CHANGES manual.pdf
|
||||
dohtml manual.html
|
||||
einstalldocs
|
||||
|
||||
# move "important" bzip2 binaries to /bin and use the shared libbz2.so
|
||||
dosym bzip2 /bin/bzcat
|
@ -1,114 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
|
||||
# (since we're building shared libs) ...
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit eutils toolchain-funcs multilib multilib-minimal
|
||||
|
||||
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
|
||||
HOMEPAGE="http://www.bzip.org/"
|
||||
SRC_URI="http://www.bzip.org/${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BZIP2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="static static-libs"
|
||||
|
||||
RDEPEND="abi_x86_32? (
|
||||
!<=app-emulation/emul-linux-x86-baselibs-20130224
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
)"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.0.6-saneso.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986
|
||||
epatch "${FILESDIR}"/${PN}-1.0.6-progress.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.0.3-no-test.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.0.4-POSIX-shell.patch #193365
|
||||
epatch "${FILESDIR}"/${PN}-1.0.6-mingw.patch #393573
|
||||
epatch "${FILESDIR}"/${PN}-1.0.6-out-of-tree-build.patch
|
||||
|
||||
# - Use right man path
|
||||
# - Generate symlinks instead of hardlinks
|
||||
# - pass custom variables to control libdir
|
||||
sed -i \
|
||||
-e 's:\$(PREFIX)/man:\$(PREFIX)/share/man:g' \
|
||||
-e 's:ln -s -f $(PREFIX)/bin/:ln -s -f :' \
|
||||
-e 's:$(PREFIX)/lib:$(PREFIX)/$(LIBDIR):g' \
|
||||
Makefile || die
|
||||
}
|
||||
|
||||
bemake() {
|
||||
emake \
|
||||
VPATH="${S}" \
|
||||
CC="$(tc-getCC)" \
|
||||
AR="$(tc-getAR)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
bemake -f "${S}"/Makefile-libbz2_so all
|
||||
# Make sure we link against the shared lib #504648
|
||||
ln -sf libbz2.so.${PV} libbz2.so
|
||||
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
into /usr
|
||||
|
||||
# Install the shared lib manually. We install:
|
||||
# .x.x.x - standard shared lib behavior
|
||||
# .x.x - SONAME some distros use #338321
|
||||
# .x - SONAME Gentoo uses
|
||||
dolib.so libbz2.so.${PV}
|
||||
local v
|
||||
for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
|
||||
dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
|
||||
done
|
||||
use static-libs && dolib.a libbz2.a
|
||||
|
||||
if multilib_is_native_abi ; then
|
||||
gen_usr_ldscript -a bz2
|
||||
|
||||
dobin bzip2recover
|
||||
into /
|
||||
dobin bzip2
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
# `make install` doesn't cope with out-of-tree builds, nor with
|
||||
# installing just non-binaries, so handle things ourselves.
|
||||
insinto /usr/include
|
||||
doins bzlib.h
|
||||
into /usr
|
||||
dobin bz{diff,grep,more}
|
||||
doman *.1
|
||||
|
||||
dosym bzdiff /usr/bin/bzcmp
|
||||
dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
|
||||
|
||||
dosym bzmore /usr/bin/bzless
|
||||
dosym bzmore.1 /usr/share/man/man1/bzless.1
|
||||
|
||||
local x
|
||||
for x in bunzip2 bzcat bzip2recover ; do
|
||||
dosym bzip2.1 /usr/share/man/man1/${x}.1
|
||||
done
|
||||
for x in bz{e,f}grep ; do
|
||||
dosym bzgrep /usr/bin/${x}
|
||||
dosym bzgrep.1 /usr/share/man/man1/${x}.1
|
||||
done
|
||||
|
||||
dodoc README* CHANGES manual.pdf
|
||||
dohtml manual.html
|
||||
|
||||
# move "important" bzip2 binaries to /bin and use the shared libbz2.so
|
||||
dosym bzip2 /bin/bzcat
|
||||
dosym bzip2 /bin/bunzip2
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
--- Makefile
|
||||
+++ Makefile
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -23,5 +23,5 @@
|
||||
bzlib.o
|
||||
|
||||
|
@ -3,8 +3,8 @@ with calls to sed so POSIX shells work
|
||||
|
||||
http://bugs.gentoo.org/193365
|
||||
|
||||
--- bzgrep
|
||||
+++ bzgrep
|
||||
--- a/bzgrep
|
||||
+++ b/bzgrep
|
||||
@@ -63,10 +63,9 @@
|
||||
bzip2 -cdfq "$i" | $grep $opt "$pat"
|
||||
r=$?
|
||||
|
@ -1,5 +1,5 @@
|
||||
--- Makefile
|
||||
+++ Makefile
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -18,10 +18,9 @@
|
||||
CC=gcc
|
||||
AR=ar
|
||||
@ -12,8 +12,8 @@
|
||||
|
||||
# Where you want it installed when you do 'make install'
|
||||
PREFIX=/usr/local
|
||||
--- Makefile-libbz2_so
|
||||
+++ Makefile-libbz2_so
|
||||
--- a/Makefile-libbz2_so
|
||||
+++ b/Makefile-libbz2_so
|
||||
@@ -24,7 +24,7 @@
|
||||
SHELL=/bin/sh
|
||||
CC=gcc
|
||||
|
@ -1,7 +1,7 @@
|
||||
http://bugs.gentoo.org/172986
|
||||
|
||||
--- bzip2-1.0.4/Makefile
|
||||
+++ bzip2-1.0.4/Makefile
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -85,4 +85,7 @@
|
||||
cp -f bzip2.1 $(PREFIX)/share/man/man1
|
||||
chmod a+r $(PREFIX)/share/man/man1/bzip2.1
|
||||
|
@ -6,8 +6,8 @@ Signed-off-by: Armin Kuster <akuster@mvista.com>
|
||||
|
||||
Index: bzip2-1.0.6/bzip2recover.c
|
||||
===================================================================
|
||||
--- bzip2-1.0.6.orig/bzip2recover.c
|
||||
+++ bzip2-1.0.6/bzip2recover.c
|
||||
--- a/bzip2recover.c
|
||||
+++ b/bzip2recover.c
|
||||
@@ -457,6 +457,7 @@ Int32 main ( Int32 argc, Char** argv )
|
||||
bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 );
|
||||
bsPutUInt32 ( bsWr, blockCRC );
|
||||
|
@ -0,0 +1,30 @@
|
||||
From 13ca8fee0c897121ae79ae644a212418398dfea7 Mon Sep 17 00:00:00 2001
|
||||
From: Amin Hassani <ahassani@chromium.org>
|
||||
Date: Fri, 8 Mar 2019 09:58:20 -0800
|
||||
Subject: [PATCH] Check for upper bounds of nselectors.
|
||||
|
||||
Currently there is no check for the upper bounds of the
|
||||
nselectors. Hence, a corrupt input can cause a segfault.
|
||||
|
||||
This issue was discovered by one of our fuzzers. The actual error was:
|
||||
|
||||
../bzip2-1.0.6/decompress.c:299:10: runtime error: index 18002 out of bounds for type 'UChar [18002]'
|
||||
---
|
||||
decompress.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/decompress.c b/decompress.c
|
||||
index 311f566..391552d 100644
|
||||
--- a/decompress.c
|
||||
+++ b/decompress.c
|
||||
@@ -288,6 +288,7 @@ Int32 BZ2_decompress ( DState* s )
|
||||
if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR);
|
||||
GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15);
|
||||
if (nSelectors < 1) RETURN(BZ_DATA_ERROR);
|
||||
+ if (nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR);
|
||||
for (i = 0; i < nSelectors; i++) {
|
||||
j = 0;
|
||||
while (True) {
|
||||
--
|
||||
2.21.0.360.g471c308f928-goog
|
||||
|
@ -2,8 +2,8 @@ Ripped from Mandrake
|
||||
|
||||
http://bugs.gentoo.org/82192
|
||||
|
||||
--- bzip2-1.0.6/bzip2.1
|
||||
+++ bzip2-1.0.6/bzip2.1
|
||||
--- a/bzip2.1
|
||||
+++ b/bzip2.1
|
||||
@@ -235,6 +235,10 @@
|
||||
Suppress non-essential warning messages. Messages pertaining to
|
||||
I/O errors and other critical events will not be suppressed.
|
||||
@ -15,8 +15,8 @@ http://bugs.gentoo.org/82192
|
||||
.B \-v --verbose
|
||||
Verbose mode -- show the compression ratio for each file processed.
|
||||
Further \-v's increase the verbosity level, spewing out lots of
|
||||
--- bzip2-1.0.6/bzip2.c
|
||||
+++ bzip2-1.0.6/bzip2.c
|
||||
--- a/bzip2.c
|
||||
+++ b/bzip2.c
|
||||
@@ -145,6 +145,7 @@
|
||||
#include <signal.h>
|
||||
#include <math.h>
|
||||
|
@ -1,5 +1,5 @@
|
||||
--- Makefile-libbz2_so
|
||||
+++ Makefile-libbz2_so
|
||||
--- a/Makefile-libbz2_so
|
||||
+++ b/Makefile-libbz2_so
|
||||
@@ -35,8 +35,8 @@
|
||||
bzlib.o
|
||||
|
||||
|
24
sdk_container/src/third_party/portage-stable/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
vendored
Normal file
24
sdk_container/src/third_party/portage-stable/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
Author: Manoj Gupta <manojgupta@google.com>
|
||||
|
||||
Use unsigned 1 for shifting instead of signed 1.
|
||||
|
||||
This fixed an issue with shift caught by undefined behavior
|
||||
sanitizer in clang.
|
||||
bzip2-1.0.6/blocksort.c:255:7
|
||||
runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
|
||||
|
||||
--- a/blocksort.c
|
||||
+++ b/blocksort.c
|
||||
@@ -202,9 +202,9 @@ void fallbackQSort3 ( UInt32* fmap,
|
||||
bhtab [ 0 .. 2+(nblock/32) ] destroyed
|
||||
*/
|
||||
|
||||
-#define SET_BH(zz) bhtab[(zz) >> 5] |= (1 << ((zz) & 31))
|
||||
-#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1 << ((zz) & 31))
|
||||
-#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1 << ((zz) & 31)))
|
||||
+#define SET_BH(zz) bhtab[(zz) >> 5] |= (1u << ((zz) & 31))
|
||||
+#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1u << ((zz) & 31))
|
||||
+#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1u << ((zz) & 31)))
|
||||
#define WORD_BH(zz) bhtab[(zz) >> 5]
|
||||
#define UNALIGNED_BH(zz) ((zz) & 0x01f)
|
||||
|
@ -1,111 +0,0 @@
|
||||
# ChangeLog for app-arch/gzip
|
||||
# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
|
||||
# (auto-generated from git log)
|
||||
|
||||
*gzip-1.6 (09 Aug 2015)
|
||||
*gzip-1.5 (09 Aug 2015)
|
||||
*gzip-1.4 (09 Aug 2015)
|
||||
|
||||
09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org>
|
||||
+files/gzip-1.3.8-install-symlinks.patch, +files/gzip-1.4-asmv.patch,
|
||||
+files/gzip-1.4-assembler.patch, +files/gzip-1.4-no-gets.patch,
|
||||
+gzip-1.4.ebuild, +gzip-1.5.ebuild, +gzip-1.6.ebuild, +metadata.xml:
|
||||
proj/gentoo: Initial commit
|
||||
|
||||
This commit represents a new era for Gentoo:
|
||||
Storing the gentoo-x86 tree in Git, as converted from CVS.
|
||||
|
||||
This commit is the start of the NEW history.
|
||||
Any historical data is intended to be grafted onto this point.
|
||||
|
||||
Creation process:
|
||||
1. Take final CVS checkout snapshot
|
||||
2. Remove ALL ChangeLog* files
|
||||
3. Transform all Manifests to thin
|
||||
4. Remove empty Manifests
|
||||
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
|
||||
5.1. Do not touch files with -kb/-ko keyword flags.
|
||||
|
||||
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
|
||||
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration
|
||||
tests
|
||||
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this
|
||||
project
|
||||
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo
|
||||
developer, wrote Git features for the migration
|
||||
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve
|
||||
cvs2svn
|
||||
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
|
||||
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014
|
||||
work in migration
|
||||
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
|
||||
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on
|
||||
the bikeshed
|
||||
|
||||
24 Aug 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
|
||||
Use https by default
|
||||
|
||||
Convert all URLs for sites supporting encrypted connections from http to
|
||||
https
|
||||
|
||||
Signed-off-by: Justin Lecher <jlec@gentoo.org>
|
||||
|
||||
24 Aug 2015; Justin Lecher <jlec@gentoo.org> gzip-1.4.ebuild,
|
||||
gzip-1.5.ebuild, gzip-1.6.ebuild:
|
||||
Use https for most gnu.org URLs
|
||||
|
||||
Signed-off-by: Justin Lecher <jlec@gentoo.org>
|
||||
|
||||
24 Aug 2015; Mike Gilbert <floppym@gentoo.org> metadata.xml:
|
||||
Revert DOCTYPE SYSTEM https changes in metadata.xml
|
||||
|
||||
repoman does not yet accept the https version.
|
||||
This partially reverts eaaface92ee81f30a6ac66fe7acbcc42c00dc450.
|
||||
|
||||
Bug: https://bugs.gentoo.org/552720
|
||||
|
||||
24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
|
||||
Unify quoting in metadata.xml files for machine processing
|
||||
|
||||
Force unified quoting in all metadata.xml files since lxml does not
|
||||
preserve original use of single and double quotes. Ensuring unified
|
||||
quoting before the process allows distinguishing the GLEP 67-related
|
||||
metadata.xml changes from unrelated quoting changes.
|
||||
|
||||
24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
|
||||
Replace all herds with appropriate projects (GLEP 67)
|
||||
|
||||
Replace all uses of herd with appropriate project maintainers, or no
|
||||
maintainers in case of herds requested to be disbanded.
|
||||
|
||||
24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
|
||||
Set appropriate maintainer types in metadata.xml (GLEP 67)
|
||||
|
||||
*gzip-1.7 (28 Mar 2016)
|
||||
|
||||
28 Mar 2016; Lars Wendler <polynomial-c@gentoo.org> +gzip-1.7.ebuild:
|
||||
Bump to version 1.7
|
||||
|
||||
Package-Manager: portage-2.2.28
|
||||
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|
||||
|
||||
28 Mar 2016; Lars Wendler <polynomial-c@gentoo.org> -gzip-1.4.ebuild,
|
||||
-gzip-1.5.ebuild:
|
||||
Removed old.
|
||||
|
||||
Package-Manager: portage-2.2.28
|
||||
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|
||||
|
||||
*gzip-1.8 (27 Apr 2016)
|
||||
|
||||
27 Apr 2016; Lars Wendler <polynomial-c@gentoo.org> +gzip-1.8.ebuild:
|
||||
Bump to version 1.8
|
||||
|
||||
Package-Manager: portage-2.2.28
|
||||
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|
||||
|
||||
04 May 2016; Mike Gilbert <floppym@gentoo.org> gzip-1.8.ebuild:
|
||||
re-order SRC_URI to put the valid mirror first
|
||||
|
||||
Package-Manager: portage-2.2.28_p97
|
||||
|
@ -1,549 +0,0 @@
|
||||
# ChangeLog for app-arch/gzip
|
||||
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/gzip/ChangeLog,v 1.135 2015/04/04 21:28:12 vapier Exp $
|
||||
|
||||
04 Apr 2015; Mike Frysinger <vapier@gentoo.org> gzip-1.6.ebuild:
|
||||
Mark arm64/m68k/s390/sh stable.
|
||||
|
||||
28 Feb 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for ia64, wrt bug #534810
|
||||
|
||||
27 Feb 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for sparc, wrt bug #534810
|
||||
|
||||
22 Feb 2015; Matt Turner <mattst88@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable on alpha, bug 534810.
|
||||
|
||||
26 Jan 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for x86, wrt bug #534810
|
||||
|
||||
18 Jan 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for ppc64, wrt bug #534810
|
||||
|
||||
17 Jan 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for ppc, wrt bug #534810
|
||||
|
||||
09 Jan 2015; Agostino Sarubbo <ago@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for amd64, wrt bug #534810
|
||||
|
||||
08 Jan 2015; Jeroen Roovers <jer@gentoo.org> gzip-1.6.ebuild:
|
||||
Stable for HPPA (bug #534810).
|
||||
|
||||
08 Jan 2015; Markus Meier <maekke@gentoo.org> gzip-1.6.ebuild:
|
||||
arm stable, bug #534810
|
||||
|
||||
31 Dec 2014; Christoph Junghans <ottxor@gentoo.org>
|
||||
+files/gzip-1.4-asmv.patch, gzip-1.6.ebuild:
|
||||
added prefix support (bug #534032)
|
||||
|
||||
18 Jan 2014; Mike Frysinger <vapier@gentoo.org> gzip-1.5.ebuild,
|
||||
gzip-1.6.ebuild:
|
||||
Add arm64 love.
|
||||
|
||||
*gzip-1.6 (11 Jun 2013)
|
||||
|
||||
11 Jun 2013; Mike Frysinger <vapier@gentoo.org> +gzip-1.6.ebuild:
|
||||
Version bump.
|
||||
|
||||
11 Jun 2013; Mike Frysinger <vapier@gentoo.org> metadata.xml:
|
||||
Add upstream CPE tag (security info) from ChromiumOS.
|
||||
|
||||
09 Sep 2012; Raúl Porcel <armin76@gentoo.org> gzip-1.5.ebuild:
|
||||
alpha/ia64/m68k/s390/sh/sparc stable wrt #431844
|
||||
|
||||
20 Aug 2012; Anthony G. Basile <blueness@gentoo.org> gzip-1.5.ebuild:
|
||||
Stable arm, bug #431844
|
||||
|
||||
20 Aug 2012; Anthony G. Basile <blueness@gentoo.org> gzip-1.5.ebuild:
|
||||
Stable ppc ppc64, bug #431844
|
||||
|
||||
20 Aug 2012; Jeroen Roovers <jer@gentoo.org> gzip-1.5.ebuild:
|
||||
Stable for HPPA (bug #431844).
|
||||
|
||||
19 Aug 2012; Johannes Huber <johu@gentoo.org> gzip-1.5.ebuild:
|
||||
Stable for x86, wrt bug #431844
|
||||
|
||||
19 Aug 2012; Agostino Sarubbo <ago@gentoo.org> gzip-1.5.ebuild:
|
||||
Stable for amd64, wrt bug #431844
|
||||
|
||||
06 Jul 2012; Mike Frysinger <vapier@gentoo.org> gzip-1.4.ebuild,
|
||||
gzip-1.5.ebuild:
|
||||
Change license to GPLv3 #425072 by Nanouck.
|
||||
|
||||
*gzip-1.5 (17 Jun 2012)
|
||||
|
||||
17 Jun 2012; Mike Frysinger <vapier@gentoo.org> +gzip-1.5.ebuild:
|
||||
Version bump.
|
||||
|
||||
22 May 2012; Mike Frysinger <vapier@gentoo.org> +files/gzip-1.4-no-gets.patch,
|
||||
gzip-1.4.ebuild:
|
||||
Fix building with glibc-2.16+.
|
||||
|
||||
26 Apr 2012; Alexis Ballier <aballier@gentoo.org> gzip-1.4.ebuild:
|
||||
keyword ~amd64-fbsd
|
||||
|
||||
24 Apr 2012; Michał Górny <mgorny@gentoo.org> gzip-1.4.ebuild:
|
||||
Update to use mirror://.
|
||||
|
||||
03 Apr 2011; Ulrich Mueller <ulm@gentoo.org> gzip-1.4.ebuild:
|
||||
Don't provide virtual/gzip, bug 358829.
|
||||
|
||||
31 Jul 2010; Mike Frysinger <vapier@gentoo.org> gzip-1.4.ebuild,
|
||||
+files/gzip-1.4-assembler.patch:
|
||||
Add fix from upstream for USE=-pic building on x86 #309079.
|
||||
|
||||
11 Feb 2010; Raúl Porcel <armin76@gentoo.org> gzip-1.4.ebuild:
|
||||
alpha/ia64/m68k/s390/sh stable wrt #300943
|
||||
|
||||
11 Feb 2010; Tiago Cunha <tcunha@gentoo.org> gzip-1.4.ebuild:
|
||||
stable sparc, security bug 300943
|
||||
|
||||
10 Feb 2010; Markus Meier <maekke@gentoo.org> gzip-1.4.ebuild:
|
||||
amd64/arm/x86 stable, bug #300943
|
||||
|
||||
10 Feb 2010; Jeroen Roovers <jer@gentoo.org> gzip-1.4.ebuild:
|
||||
Stable for HPPA (bug #300943).
|
||||
|
||||
10 Feb 2010; Joseph Jezak <josejx@gentoo.org> gzip-1.4.ebuild:
|
||||
Marked ppc/ppc64 stable for bug #300943.
|
||||
|
||||
*gzip-1.4 (21 Jan 2010)
|
||||
|
||||
21 Jan 2010; Mike Frysinger <vapier@gentoo.org> +gzip-1.4.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.14 (05 Nov 2009)
|
||||
|
||||
05 Nov 2009; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.14.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.13 (06 Oct 2009)
|
||||
|
||||
06 Oct 2009; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.13.ebuild:
|
||||
Version bump.
|
||||
|
||||
29 Mar 2008; Santiago M. Mola <coldwind@gentoo.org> gzip-1.3.12-r1.ebuild:
|
||||
amd64 stable wrt bug #214963
|
||||
|
||||
28 Mar 2008; nixnut <nixnut@gentoo.org> gzip-1.3.12-r1.ebuild:
|
||||
Stable on ppc wrt bug 214963
|
||||
|
||||
28 Mar 2008; Jeroen Roovers <jer@gentoo.org> gzip-1.3.12-r1.ebuild:
|
||||
Stable for HPPA (bug #214963).
|
||||
|
||||
27 Mar 2008; Markus Rothe <corsair@gentoo.org> gzip-1.3.12-r1.ebuild:
|
||||
Stable on ppc64; bug #214963
|
||||
|
||||
27 Mar 2008; Raúl Porcel <armin76@gentoo.org> gzip-1.3.12-r1.ebuild:
|
||||
alpha/ia64/sparc/x86 stable wrt #214963
|
||||
|
||||
*gzip-1.3.12-r1 (20 Feb 2008)
|
||||
|
||||
20 Feb 2008; Doug Klima <cardoe@gentoo.org> +gzip-1.3.12-r1.ebuild:
|
||||
fix PATH in gunzip. bug #210871
|
||||
|
||||
20 Jul 2007; Roy Marples <uberlord@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Keyworded ~sparc-fbsd.
|
||||
|
||||
06 Jul 2007; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gnulib-futimens-rename.patch, gzip-1.3.12.ebuild:
|
||||
Fix from upstream gnulib for futimens handling with newer glibc #180764.
|
||||
|
||||
03 Jul 2007; Tom Gall <tgall@gentoo.org> gzip-1.3.12.ebuild:
|
||||
stable on ppc64, bug #183829
|
||||
|
||||
02 Jul 2007; Christoph Mende <angelos@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Stable on amd64 wrt bug #183829
|
||||
|
||||
02 Jul 2007; Jeroen Roovers <jer@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Stable for HPPA (bug #183829).
|
||||
|
||||
01 Jul 2007; Raúl Porcel <armin76@gentoo.org> gzip-1.3.12.ebuild:
|
||||
alpha stable wrt #183829
|
||||
|
||||
01 Jul 2007; Joshua Kinard <kumba@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Stable on mips, per #174882.
|
||||
|
||||
01 Jul 2007; Lars Weiler <pylon@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Stable opn ppc; bug #183829.
|
||||
|
||||
12 Jun 2007; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.12.ebuild:
|
||||
Stable on sparc
|
||||
|
||||
11 Jun 2007; Raúl Porcel <armin76@gentoo.org> gzip-1.3.12.ebuild:
|
||||
ia64/x86 stable
|
||||
|
||||
18 May 2007; Fernando J. Pereda <ferdy@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Stable on alpha as per bug #171666
|
||||
|
||||
*gzip-1.3.12 (14 Apr 2007)
|
||||
|
||||
14 Apr 2007; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.12.ebuild:
|
||||
Version bump.
|
||||
|
||||
27 Mar 2007; Peter Weller <welp@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Stable on amd64 wrt bug 171666
|
||||
|
||||
24 Mar 2007; Joseph Jezak <josejx@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Marked ppc stable for bug #171666.
|
||||
|
||||
24 Mar 2007; Markus Rothe <corsair@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Stable on ppc64; bug #171666
|
||||
|
||||
22 Mar 2007; Jeroen Roovers <jer@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Stable for HPPA (bug #171666).
|
||||
|
||||
22 Mar 2007; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Stable on sparc wrt #171666
|
||||
|
||||
20 Mar 2007; Raúl Porcel <armin76@gentoo.org> gzip-1.3.11.ebuild:
|
||||
x86 stable
|
||||
|
||||
06 Feb 2007; Mike Frysinger <vapier@gentoo.org> gzip-1.3.11.ebuild:
|
||||
Move uncompress to /bin so we dont conflict with app-arch/ncompress #165608
|
||||
by barthek.
|
||||
|
||||
*gzip-1.3.11 (06 Feb 2007)
|
||||
|
||||
06 Feb 2007; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.11.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.10 (31 Dec 2006)
|
||||
|
||||
31 Dec 2006; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.10.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.9 (16 Dec 2006)
|
||||
|
||||
16 Dec 2006; Mike Frysinger <vapier@gentoo.org> +gzip-1.3.9.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.8 (09 Dec 2006)
|
||||
|
||||
09 Dec 2006; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.8-install-symlinks.patch, +gzip-1.3.8.ebuild:
|
||||
Version bump.
|
||||
|
||||
*gzip-1.3.7 (07 Dec 2006)
|
||||
|
||||
07 Dec 2006; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.7-CVE-2006-4334-8.2.patch,
|
||||
+files/gzip-1.3.7-asm-execstack.patch,
|
||||
+files/gzip-1.3.7-install-symlinks.patch, +gzip-1.3.7.ebuild:
|
||||
Version bump.
|
||||
|
||||
11 Nov 2006; Mike Frysinger <vapier@gentoo.org> gzip-1.3.5-r9.ebuild,
|
||||
gzip-1.3.5-r10.ebuild:
|
||||
Stabilize to fix security team screwup #154757.
|
||||
|
||||
17 Oct 2006; Roy Marples <uberlord@gentoo.org> gzip-1.3.5-r10.ebuild:
|
||||
Added ~sparc-fbsd keyword.
|
||||
|
||||
*gzip-1.3.5-r10 (27 Sep 2006)
|
||||
|
||||
27 Sep 2006; Tavis Ormandy <taviso@gentoo.org>
|
||||
+files/gzip-1.3.5-CVE-2006-4334-8.2.patch, +gzip-1.3.5-r10.ebuild:
|
||||
Correct unlzh security patch, thanks to Haruhiko Okumura.
|
||||
|
||||
22 Sep 2006; Bryan Østergaard <kloeri@gentoo.org> gzip-1.3.5-r9.ebuild:
|
||||
Stable on alpha + ia64, bug 145511.
|
||||
|
||||
21 Sep 2006; Tobias Scherbaum <dertobi123@gentoo.org>
|
||||
gzip-1.3.5-r9.ebuild:
|
||||
hppa stable, bug #145511
|
||||
|
||||
21 Sep 2006; <blubb@gentoo.org> gzip-1.3.5-r9.ebuild:
|
||||
stable on amd64
|
||||
|
||||
21 Sep 2006; Jason Wever <weeve@gentoo.org> gzip-1.3.5-r9.ebuild:
|
||||
Stable on SPARC wrt security bug #145511.
|
||||
|
||||
20 Sep 2006; Markus Rothe <corsair@gentoo.org> gzip-1.3.5-r9.ebuild:
|
||||
Stable on ppc64; bug #145511
|
||||
|
||||
20 Sep 2006; Torsten Veller <tove@gentoo.org> gzip-1.3.5-r9.ebuild:
|
||||
Stable on x86 (#145511)
|
||||
|
||||
20 Sep 2006; Tobias Scherbaum <dertobi123@gentoo.org> ChangeLog:
|
||||
ppc stable, bug #145511
|
||||
|
||||
*gzip-1.3.5-r9 (20 Sep 2006)
|
||||
|
||||
20 Sep 2006; Christian Hartmann <ian@gentoo.org>
|
||||
+files/gzip-1.3.5-CVE-2006-4334-8.patch, +gzip-1.3.5-r9.ebuild:
|
||||
Revbump for bug #145511 - commit approved by DerCorny.
|
||||
|
||||
27 Apr 2006; Alec Warner <antarus@gentoo.org> files/digest-gzip-1.3.5-r8,
|
||||
Manifest:
|
||||
Fixing duff SHA256 digests: Bug # 131293
|
||||
|
||||
30 Mar 2006; Diego Pettenò <flameeyes@gentoo.org> gzip-1.3.5-r8.ebuild:
|
||||
Add ~x86-fbsd keyword.
|
||||
|
||||
*gzip-1.3.5-r8 (02 Jul 2005)
|
||||
|
||||
02 Jul 2005; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.5-huft-build-return-fix.patch, +gzip-1.3.5-r8.ebuild:
|
||||
Fix crash on bad input #94584 by Tavis Ormandy.
|
||||
|
||||
*gzip-1.3.5-r7 (31 May 2005)
|
||||
|
||||
31 May 2005; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.5-alpha.patch, +gzip-1.3.5-r7.ebuild:
|
||||
Fix segfault on alpha/xorg with a patch from Debian #92232.
|
||||
|
||||
06 May 2005; Stephen Bennett <spb@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Mips stable for #89946.
|
||||
|
||||
04 May 2005; Bryan Østergaard <kloeri@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Stable on alpha + ia64, bug 89946.
|
||||
|
||||
03 May 2005; Michael Hanselmann <hansmi@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Stable on ppc and hppa.
|
||||
|
||||
03 May 2005; Olivier Crête <tester@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Stable on x86 per security bug #89946
|
||||
|
||||
03 May 2005; Omkhar Arasaratnam <omkhar@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Stable on ppc64 wrt #89946
|
||||
|
||||
03 May 2005; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
Stable on sparc wrt #89946
|
||||
|
||||
03 May 2005; Jan Brinkmann <luckyduck@gentoo.org> gzip-1.3.5-r6.ebuild:
|
||||
stable on amd64 wrt #89946
|
||||
|
||||
*gzip-1.3.5-r6 (02 May 2005)
|
||||
|
||||
02 May 2005; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.5-asm-execstack.patch, +files/gzip-1.3.5-debian.patch,
|
||||
+files/gzip-1.3.5-gunzip-dir.patch, +files/gzip-1.3.5-gzip-perm.patch,
|
||||
+files/gzip-1.3.5-infodir.patch, +files/gzip-1.3.5-rsync.patch,
|
||||
+files/gzip-1.3.5-zgrep-sed.patch, -files/gzip-1.3.5-znew-tempfile.patch,
|
||||
+gzip-1.3.5-r6.ebuild:
|
||||
Add a bunch of patches from Redhat, break up the Debian patch we used, and
|
||||
add fixes for security #89946 and #90626.
|
||||
|
||||
*gzip-1.3.5-r5 (04 Jan 2005)
|
||||
|
||||
04 Jan 2005; Mike Frysinger <vapier@gentoo.org>
|
||||
-files/gzip-1.3.5-zdiff-tempfile-2.patch,
|
||||
-files/gzip-1.3.5-zdiff-tempfile.patch, -gzip-1.3.5-r3.ebuild,
|
||||
-gzip-1.3.5-r4.ebuild, +gzip-1.3.5-r5.ebuild:
|
||||
Remove zdiff patch since it isnt actually needed (zdiff utilizes the
|
||||
noclobber feature of bash to protect against symlink attacks). Fixes zdiff
|
||||
breakage #70277.
|
||||
|
||||
29 Dec 2004; Hardave Riar <hardave@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
Stable on mips, bug #70825.
|
||||
|
||||
14 Dec 2004; Bryan Østergaard <kloeri@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
Stable on alpha, bug 70825.
|
||||
|
||||
14 Dec 2004; Markus Rothe <corsair@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
Stable on ppc64
|
||||
|
||||
14 Dec 2004; Guy Martin <gmsoft@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
Stable on hppa.
|
||||
|
||||
13 Dec 2004; Mike Doty <kingtaco@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
stable on amd64. bug #70825
|
||||
|
||||
13 Dec 2004; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
Stable on sparc
|
||||
|
||||
13 Dec 2004; Daniel Black <dragonheart@gentoo.org> gzip-1.3.5-r4.ebuild:
|
||||
ppc stable as per bug #70825.
|
||||
|
||||
*gzip-1.3.5-r4 (12 Dec 2004)
|
||||
|
||||
12 Dec 2004; Mike Frysinger <vapier@gentoo.org>
|
||||
+files/gzip-1.3.5-zdiff-tempfile-2.patch,
|
||||
+files/gzip-1.3.5-znew-tempfile-2.patch, +gzip-1.3.5-r4.ebuild:
|
||||
Fix the zdiff patch so it works #70277 by Michael Moen. Update the znew
|
||||
patch with the mandrake version #70825.
|
||||
|
||||
24 Nov 2004; Guy Martin <gmsoft@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on hppa.
|
||||
|
||||
18 Nov 2004; Aron Griffis <agriffis@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
stable on ia64
|
||||
|
||||
18 Nov 2004; Bryan Østergaard <kloeri@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on alpha, bug 70825.
|
||||
|
||||
18 Nov 2004; Karol Wojtaszek <sekretarz@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on amd64, bug #70825
|
||||
|
||||
18 Nov 2004; Markus Rothe <corsair@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on ppc64; bug #70825
|
||||
|
||||
18 Nov 2004; Hardave Riar <hardave@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on mips, bug #70825
|
||||
|
||||
18 Nov 2004; Olivier Crete <tester@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable in x86 wrt 70825
|
||||
|
||||
18 Nov 2004; Luca Barbato <lu_zero@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Marked ppc
|
||||
|
||||
18 Nov 2004; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.5-r3.ebuild:
|
||||
Stable on sparc wrt #70825
|
||||
|
||||
*gzip-1.3.5-r3 (17 Nov 2004)
|
||||
|
||||
17 Nov 2004; <solar@gentoo.org> +files/gzip-1.3.5-znew-tempfile.patch,
|
||||
+gzip-1.3.5-r3.ebuild:
|
||||
security bump. znew tmpfile handling.
|
||||
|
||||
30 Oct 2004; Tom Gall <tgall@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
stable on ppc64, bug #68405
|
||||
|
||||
27 Oct 2004; Seemant Kulleen <seemant@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
stable on x86, bug 68405
|
||||
|
||||
27 Oct 2004; Hardave Riar <hardave@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
Stable on mips, bug #68405.
|
||||
|
||||
27 Oct 2004; Bryan Østergaard <kloeri@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
Stable on alpha, bug 68405.
|
||||
|
||||
27 Oct 2004; Joseph Jezak <josejx@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
Tested and marked ppc
|
||||
|
||||
26 Oct 2004; Travis Tilley <lv@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
stable on amd64
|
||||
|
||||
26 Oct 2004; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.5-r2.ebuild:
|
||||
Stable on sparc wrt #68405
|
||||
|
||||
*gzip-1.3.5-r2 (26 Oct 2004)
|
||||
|
||||
26 Oct 2004; <solar@gentoo.org> +files/gzip-1.3.5-zdiff-tempfile.patch,
|
||||
+gzip-1.3.5-r2.ebuild:
|
||||
security bump. insecure tmpfile handling bug 68405
|
||||
|
||||
13 Oct 2004; Travis Tilley <lv@gentoo.org> gzip-1.3.5-r1.ebuild:
|
||||
stable on amd64
|
||||
|
||||
05 Oct 2004; Pieter Van den Abeele <pvdabeel@gentoo.org>
|
||||
gzip-1.3.5-r1.ebuild:
|
||||
Masked gzip-1.3.5-r1.ebuild stable for ppc
|
||||
|
||||
19 Sep 2004; Joshua Kinard <kumba@gentoo.org> gzip-1.3.5-r1.ebuild:
|
||||
Marked stable on mips.
|
||||
|
||||
09 Sep 2004; Gustavo Zacarias <gustavoz@gentoo.org> gzip-1.3.5-r1.ebuild:
|
||||
Stable on sparc
|
||||
|
||||
08 Sep 2004; Mike Frysinger <vapier@gentoo.org> gzip-1.3.5-r1.ebuild:
|
||||
Trim out useless stuff from the debian patch #55450 by Tyler Montbriand.
|
||||
|
||||
28 Jun 2004; <solar@gentoo.org> gzip-1.3.5-r1.ebuild:
|
||||
added the pic USE= flag to allow gzip to be built without inline assembler
|
||||
code to avoid text relocations
|
||||
|
||||
*gzip-1.3.3-r4 (23 Jun 2004)
|
||||
*gzip-1.3.5-r1 (23 Jun 2004)
|
||||
|
||||
23 Jun 2004; Aron Griffis <agriffis@gentoo.org>
|
||||
files/gzip-1.3.3-security.patch, files/gzip-1.3.5-security.patch,
|
||||
-gzip-1.3.3-r3.ebuild, +gzip-1.3.3-r4.ebuild, +gzip-1.3.5-r1.ebuild,
|
||||
-gzip-1.3.5.ebuild:
|
||||
More security fixes: Use set -C to protect against more tempfile
|
||||
problems in gzexe. Use tail -n in all cases since current GNU version
|
||||
doesn't support tail +number at all.
|
||||
|
||||
*gzip-1.3.5 (23 Jun 2004)
|
||||
|
||||
23 Jun 2004; Aron Griffis <agriffis@gentoo.org> +metadata.xml,
|
||||
files/gzip-1.3.3-security.patch, +files/gzip-1.3.5-security.patch,
|
||||
-gzip-1.3.3-r2.ebuild, +gzip-1.3.5.ebuild:
|
||||
Check exit status of tempfile command #54890
|
||||
Update to 1.3.5 plus Debian patches to fix segfault on alpha #53641
|
||||
|
||||
06 May 2004; Daniel Black <dragonheart@gentoo.org>
|
||||
-files/gzip-1.2.4a-r5-gentoo.diff, -files/gzip-1.2.4a-r6-gentoo.diff,
|
||||
-files/gzip-1.3.2-gentoo.diff, -files/gzip-1.3.3-gentoo.diff:
|
||||
Old file cleanout
|
||||
|
||||
28 Mar 2004; Mike Frysinger <vapier@gentoo.org> :
|
||||
Add USE=static support #45055 by Sascha Silbe.
|
||||
|
||||
02 Mar 2004; Brian Jackson <iggy@gentoo.org> gzip-1.3.3-r2.ebuild:
|
||||
adding initial s390 support
|
||||
|
||||
21 Feb 2004; Michael Sterrett <mr_bones_@gentoo.org> gzip-1.3.3-r2.ebuild:
|
||||
header fix; arm needs deps first; tidy
|
||||
|
||||
*gzip-1.3.2 (14 Nov 2003)
|
||||
|
||||
14 Nov 2003; Seemant Kulleen <seemant@gentoo.org> gzip-1.2.4a-r6.ebuild,
|
||||
gzip-1.3.2.ebuild, gzip-1.3.3-r1.ebuild, gzip-1.3.3-r2.ebuild,
|
||||
gzip-1.3.3.ebuild, files/gzip-1.2.4a-r5-gentoo.diff,
|
||||
files/gzip-1.2.4a-r6-gentoo.diff, files/gzip-1.3.2-gentoo.diff,
|
||||
files/gzip-1.3.3-gentoo.diff, files/gzip-1.3.3-security.patch:
|
||||
moved from sys-apps to app-arch, and PROVIDES virtual/gzip
|
||||
|
||||
*gzip-1.3.3-r2 (09 Jun 2003)
|
||||
|
||||
15 Jun 2003; Joshua Kinard <kumba@gentoo.org> :
|
||||
Fixed b0rked digests, added ChangeLog to Manifest
|
||||
|
||||
09 Jun 2003; Daniel Ahlberg <aliz@gentoo.org> :
|
||||
Security update. Added Debian patches for znew and gzexe.
|
||||
|
||||
20 Feb 2003; Zach Welch <zwelch@gentoo.org> :
|
||||
Added arm to keywords.
|
||||
|
||||
*gzip-1.3.3-r1 (20 Jan 2003)
|
||||
|
||||
16 Apr 2003; Guy Martin <gmsoft@gentoo.org> gzip-1.3.3-r1.ebuild :
|
||||
Marked stable on hppa.
|
||||
|
||||
02 Apr 2003; Christian Birchinger <joker@gentoo.org> gzip-1.3.3-r1.ebuild:
|
||||
Added stable sparc keyword
|
||||
|
||||
24 Feb 2003; Nicholas Wourms <dragon@gentoo.org> gzip-1.3.3-r1.ebuild :
|
||||
Mark as stable for mips.
|
||||
|
||||
20 Jan 2003; Martin Schlemmer <azarah@gentoo.org> gzip-1.3.3-r1.ebuild :
|
||||
Do install gzcat, gunzip, etc as symlinks. Closing bug #7600. Also
|
||||
added z?grep and zcmp to the list from #7600.
|
||||
|
||||
10 Dec 2002; Martin Schlemmer <azarah@gentoo.org> gzip-1.3.3.ebuild :
|
||||
Mark stable.
|
||||
|
||||
06 Dec 2002; Rodney Rees <manson@gentoo.org>:
|
||||
Changed sparc ~sparc keywords
|
||||
|
||||
19 Oct 2002; Michael Cohen <mjc@gentoo.org> gzip-1.3.3.ebuild :
|
||||
Changed KEYWORDS to "~x86 ~ppc ~sparc ~sparc64 ~alpha".
|
||||
|
||||
*gzip-1.3.3 (19 Oct 2002)
|
||||
|
||||
09 Feb 2003; Guy Martin <gmsoft@gentoo.org> gzip-1.3.3.ebuild :
|
||||
Added hppa to keywords.
|
||||
|
||||
19 Oct 2002; Michael Cohen <mjc@gentoo.org> : New version.
|
||||
|
||||
*gzip-1.2.4a-r6 (14 July 2002)
|
||||
|
||||
14 Jul 2002; phoen][x <phoenix@gentoo.org> gzip-1.2.4a-r6.ebuild :
|
||||
Added KEYWORDS, SLOT.
|
||||
|
||||
*gzip-1.3.2 (1 Feb 2002)
|
||||
|
||||
18 Jan 2003; Jan Seidel <tuxus@gentoo.org> :
|
||||
Added mips to keywords
|
||||
|
||||
14 Jul 2002; phoen][x <phoenix@gentoo.org> gzip-1.3.2.ebuild :
|
||||
Added KEYWORDS, SLOT.
|
||||
|
||||
1 Feb 2002; G.Bevin <gbevin@gentoo.org> ChangeLog :
|
||||
|
||||
Added initial ChangeLog which should be updated whenever the package is
|
||||
updated in any way. This changelog is targetted to users. This means that the
|
||||
comments should well explained and written in clean English. The details about
|
||||
writing correct changelogs are explained in the skel.ChangeLog file which you
|
||||
can find in the root directory of the portage repository.
|
@ -1,5 +1,2 @@
|
||||
DIST gzip-1.4.tar.gz 907411 SHA256 d166cfd3da380da1bd535633e8890bfb5664f9e68870a611d1dc01a3e9f711ee SHA512 9ba6d11f0469b80433a5da25f834f7652db109c235e2a849f4249adae3929fda9ebef98a181cc928a5dfc2b0d35df8b220afba130cd4a596a4dbddbf3fe8d2bc WHIRLPOOL 3d8552d2dc660953714f49674e8af2319eade0fd33c705ee253c2ea215cf4e5c3e6b7088c7087060ea7751508c74769b5b64d9e88bc22ea1d7ad0e8680a616e5
|
||||
DIST gzip-1.5.tar.xz 720956 SHA256 9ac20a3841a1246a8bedd800ea1fb93ef76521535d89cb59397d267026b6a173 SHA512 27b1b9c1ab75331b5368abb54541f3f251009a3bc6e49e42cda13bc088673d9f8c89c55caa63da60c1ea70fac2e6de24203b7aeaaaad4bc54302edbe275f46ea WHIRLPOOL c718e5e4e0e6f29de285380c25564997615b7213fa32604922436c3c6221bb9531d01518a6cc4e0a80b4694bb040768654d4bf07bb48290f90e61f13962e96ab
|
||||
DIST gzip-1.6.tar.xz 725084 SHA256 37dfed1a485d53212c43b3fa2a7c7952f09bf5cd86e37121c222341ee1b27847 SHA512 06da599fc38b459d7e9a3f43fdd06d1a0d7b29ad14cb7b6552176bab584a1135bb47ba37a4eb377e6c42c4934d557079ace1e289a252ae192ee154079a62ed01 WHIRLPOOL 7c639d9a57d5f9a820972275c7813ccd76df7a87ad68b00668696aec251b84fd7efb1129205e8a7cd51e40706b718ce3ce71dc9aa6626acf074bcea6f0fe5c39
|
||||
DIST gzip-1.7.tar.xz 764056 SHA256 fb31c57e7ce7703596ef57329be7cc5c5fd741b4a0f659fea7ee6a54706b41ab SHA512 e28f23738f0d2936773d9b50ea9e46c59945e227a90ca7d8e953fb5a774b8692a3341b744320e924da2d5825117dab730affce506f6fc8e65f0af372f3082539 WHIRLPOOL 5b9b3ce8cae2ec46d9114faf3fcaff03e6ffa1c32a21ba6dc0c58ed2e22191207b484ebba3a407624d6337f47ac2e11110430a703d163f1c7c6378c4fe0ad005
|
||||
DIST gzip-1.8.tar.xz 728116 SHA256 ff1767ec444f71e5daf8972f6f8bf68cfcca1d2f76c248eb18e8741fc91dbbd3 SHA512 efd3e2439476054badeb127d9156e24e9252129111219f13fd939596c057b2a96291630b2717181984b391abf249ac8699488bbd01ceeb8a70b121c500b10c55 WHIRLPOOL 490a1f0c157c880a68758a60cc460df525145d6a3bd7567666f194759b471001a29bf409e1628eb86c8d8e598d0c2a0bdd713ed31e5bd17719511aef93361605
|
||||
DIST gzip-1.10.tar.xz 775144 BLAKE2B 431dc0fd11061eabd9db86594777b86510b124b124fd74799eacd67334631af60f638be2638413bee0153a9da35528d0aecc5b5083152c395223705400c9103b SHA512 e6ba9e3906cdb6a6235b213515093d02afa1722686f73eddacbacae628542b586b449829783b6a1701e9b9e0c4d4dfa6845904d3b6b010f5cf21aec4997c9299
|
||||
DIST gzip-1.9.tar.xz 762516 BLAKE2B 4001fc7a770634916d52b026dab1b621fc96275bfb61ec2df2d0e7d7ec1c81414270d3c866034e6ef758870f38e9d4396a25832abe558915a7ded1f1511eb4b0 SHA512 c0852e7f7662141e79d14bc36e50f1940dba3e804feff3b0b8fa084ffec720ac245352282d2f1db117fadc95758424dd418d192b94621dac4367834ccf101fad
|
||||
|
@ -1,5 +1,5 @@
|
||||
--- Makefile.in
|
||||
+++ Makefile.in
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -926,7 +926,7 @@
|
||||
rm -f "$$dest" && \
|
||||
case $@ in \
|
||||
|
@ -1,30 +0,0 @@
|
||||
http://bugs.gentoo.org/show_bug.cgi?id=302773
|
||||
|
||||
--- tailor.h.old 2010-01-29 11:13:02.000000000 +0000
|
||||
+++ tailor.h 2010-01-29 13:18:15.000000000 +0000
|
||||
@@ -69,9 +69,6 @@
|
||||
# include <io.h>
|
||||
# define OS_CODE 0x00
|
||||
# define SET_BINARY_MODE(fd) setmode(fd, O_BINARY)
|
||||
-# if !defined(NO_ASM) && !defined(ASMV)
|
||||
-# define ASMV
|
||||
-# endif
|
||||
#else
|
||||
# define near
|
||||
#endif
|
||||
@@ -182,7 +179,6 @@
|
||||
# define PATH_SEP2 ':'
|
||||
# define STDC_HEADERS
|
||||
# define OS_CODE 0x01
|
||||
-# define ASMV
|
||||
# ifdef __GNUC__
|
||||
# define HAVE_DIRENT_H
|
||||
# define HAVE_FCNTL_H
|
||||
@@ -201,7 +197,6 @@
|
||||
#endif
|
||||
|
||||
#if defined(ATARI) || defined(atarist)
|
||||
-# define ASMV
|
||||
# define OS_CODE 0x05
|
||||
# ifdef TOSFS
|
||||
# define PATH_SEP2 '\\'
|
@ -1,52 +0,0 @@
|
||||
http://bugs.gentoo.org/309079
|
||||
http://lists.gnu.org/archive/html/bug-gzip/2010-02/msg00032.html
|
||||
|
||||
From 61af16213a488af3a8e994399ebd0859d390edb6 Mon Sep 17 00:00:00 2001
|
||||
From: Jim Meyering <meyering@redhat.com>
|
||||
Date: Sat, 20 Mar 2010 13:05:58 +0100
|
||||
Subject: [PATCH] use assembly code matcher when possible
|
||||
|
||||
* configure.ac (ASCPPPOST): Backslash-escape "#" in AC_SUBST'd
|
||||
variable, to keep make from seeing it as a comment-introducer.
|
||||
Based on a patch by Petr Pisar.
|
||||
* lib/Makefile.am (match.$(OBJEXT)): Use AM_V_GEN and AM_V_at.
|
||||
* lib/match.c: Don't include <config.h>.
|
||||
It would impede configure-time assembler test.
|
||||
* .x-sc_require_config_h: Exempt lib/match.c from syntax-check.
|
||||
* .x-sc_require_config_h_first: Likewise.
|
||||
---
|
||||
.x-sc_require_config_h | 1 +
|
||||
.x-sc_require_config_h_first | 1 +
|
||||
THANKS | 1 +
|
||||
configure.ac | 2 +-
|
||||
lib/Makefile.am | 12 ++++++------
|
||||
lib/match.c | 2 --
|
||||
6 files changed, 10 insertions(+), 9 deletions(-)
|
||||
create mode 100644 .x-sc_require_config_h
|
||||
create mode 100644 .x-sc_require_config_h_first
|
||||
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -22588,5 +22588,5 @@
|
||||
|
||||
# cc -E produces incorrect asm files on SVR4, so postprocess it.
|
||||
-ASCPPPOST="sed '/^ *#/d; s,//.*,,; s/% /%/g; s/\\. /./g'"
|
||||
+ASCPPPOST="sed '/^ *\\#/d; s,//.*,,; s/% /%/g; s/\\. /./g'"
|
||||
|
||||
|
||||
diff --git a/lib/match.c b/lib/match.c
|
||||
index 4ef6128..5dd8d64 100644
|
||||
--- a/lib/match.c
|
||||
+++ b/lib/match.c
|
||||
@@ -28,8 +28,6 @@
|
||||
* David Mosberger-Tang <davidm@hpl.hp.com>.
|
||||
*/
|
||||
|
||||
-#include <config.h>
|
||||
-
|
||||
/* Preprocess with -DNO_UNDERLINE if your C compiler does not prefix
|
||||
* external symbols with an underline character '_'.
|
||||
*/
|
||||
--
|
||||
1.7.1.1
|
||||
|
@ -1,22 +0,0 @@
|
||||
hack until gzip pulls a newer gnulib version
|
||||
|
||||
From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Blake <eblake@redhat.com>
|
||||
Date: Thu, 29 Mar 2012 13:30:41 -0600
|
||||
Subject: [PATCH] stdio: don't assume gets any more
|
||||
|
||||
Gnulib intentionally does not have a gets module, and now that C11
|
||||
and glibc have dropped it, we should be more proactive about warning
|
||||
any user on a platform that still has a declaration of this dangerous
|
||||
interface.
|
||||
|
||||
--- a/lib/stdio.in.h
|
||||
+++ b/lib/stdio.in.h
|
||||
@@ -125,7 +125,6 @@
|
||||
so any use of gets warrants an unconditional warning. Assume it is
|
||||
always declared, since it is required by C89. */
|
||||
#undef gets
|
||||
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
|
||||
|
||||
#if @GNULIB_FOPEN@
|
||||
# if @REPLACE_FOPEN@
|
134
sdk_container/src/third_party/portage-stable/app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch
vendored
Normal file
134
sdk_container/src/third_party/portage-stable/app-arch/gzip/files/gzip-1.9-gnulib-glibc-2.28.patch
vendored
Normal file
@ -0,0 +1,134 @@
|
||||
fix build failure against glibc-2.28
|
||||
|
||||
https://bugs.gentoo.org/663928
|
||||
|
||||
Adopted gnulib's upstream patch:
|
||||
|
||||
From 4af4a4a71827c0bc5e0ec67af23edef4f15cee8e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Mon, 5 Mar 2018 10:56:29 -0800
|
||||
Subject: [PATCH] fflush: adjust to glibc 2.28 libio.h removal
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Problem reported by Daniel P. Berrangé in:
|
||||
https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
|
||||
* lib/fflush.c (clear_ungetc_buffer_preserving_position)
|
||||
(disable_seek_optimization, rpl_fflush):
|
||||
* lib/fpurge.c (fpurge):
|
||||
* lib/freadahead.c (freadahead):
|
||||
* lib/freading.c (freading):
|
||||
* lib/fseeko.c (fseeko):
|
||||
* lib/fseterr.c (fseterr):
|
||||
Check _IO_EOF_SEEN instead of _IO_ftrylockfile.
|
||||
* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]:
|
||||
Define if not already defined.
|
||||
---
|
||||
lib/fflush.c | 6 +++---
|
||||
lib/fpurge.c | 2 +-
|
||||
lib/freading.c | 2 +-
|
||||
lib/fseeko.c | 4 ++--
|
||||
lib/fseterr.c | 2 +-
|
||||
lib/stdio-impl.h | 6 ++++++
|
||||
|
||||
--- a/lib/fflush.c
|
||||
+++ b/lib/fflush.c
|
||||
@@ -33,7 +33,7 @@
|
||||
#undef fflush
|
||||
|
||||
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
|
||||
/* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */
|
||||
static void
|
||||
@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp)
|
||||
|
||||
#endif
|
||||
|
||||
-#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
|
||||
+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
|
||||
|
||||
# if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
|
||||
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
|
||||
@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream)
|
||||
if (stream == NULL || ! freading (stream))
|
||||
return fflush (stream);
|
||||
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
|
||||
clear_ungetc_buffer_preserving_position (stream);
|
||||
|
||||
--- a/lib/fpurge.c
|
||||
+++ b/lib/fpurge.c
|
||||
@@ -62,7 +62,7 @@ fpurge (FILE *fp)
|
||||
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||
fast macros. */
|
||||
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
fp->_IO_read_end = fp->_IO_read_ptr;
|
||||
fp->_IO_write_ptr = fp->_IO_write_base;
|
||||
/* Avoid memory leak when there is an active ungetc buffer. */
|
||||
--- a/lib/freading.c
|
||||
+++ b/lib/freading.c
|
||||
@@ -31,7 +31,7 @@ freading (FILE *fp)
|
||||
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||
fast macros. */
|
||||
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
return ((fp->_flags & _IO_NO_WRITES) != 0
|
||||
|| ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
|
||||
&& fp->_IO_read_base != NULL));
|
||||
--- a/lib/fseeko.c
|
||||
+++ b/lib/fseeko.c
|
||||
@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int whence)
|
||||
#endif
|
||||
|
||||
/* These tests are based on fpurge.c. */
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
if (fp->_IO_read_end == fp->_IO_read_ptr
|
||||
&& fp->_IO_write_ptr == fp->_IO_write_base
|
||||
&& fp->_IO_save_base == NULL)
|
||||
@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int whence)
|
||||
return -1;
|
||||
}
|
||||
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
fp->_flags &= ~_IO_EOF_SEEN;
|
||||
fp->_offset = pos;
|
||||
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
|
||||
--- a/lib/fseterr.c
|
||||
+++ b/lib/fseterr.c
|
||||
@@ -29,7 +29,7 @@ fseterr (FILE *fp)
|
||||
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||
fast macros. */
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
fp->_flags |= _IO_ERR_SEEN;
|
||||
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
|
||||
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
|
||||
--- a/lib/stdio-impl.h
|
||||
+++ b/lib/stdio-impl.h
|
||||
@@ -18,6 +18,12 @@
|
||||
the same implementation of stdio extension API, except that some fields
|
||||
have different naming conventions, or their access requires some casts. */
|
||||
|
||||
+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
|
||||
+ problem by defining it ourselves. FIXME: Do not rely on glibc
|
||||
+ internals. */
|
||||
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
|
||||
+# define _IO_IN_BACKUP 0x100
|
||||
+#endif
|
||||
|
||||
/* BSD stdio derived implementations. */
|
||||
|
||||
--
|
||||
2.19.1
|
||||
|
39
sdk_container/src/third_party/portage-stable/app-arch/gzip/gzip-1.10.ebuild
vendored
Normal file
39
sdk_container/src/third_party/portage-stable/app-arch/gzip/gzip-1.10.ebuild
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~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="pic static"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf --disable-gcc-warnings #663928
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${ED%/}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED%/}"/bin/ || die
|
||||
sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED%/}"/bin/gunzip || die
|
||||
}
|
@ -1,49 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
inherit eutils flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu-alpha/gzip/${P}.tar.gz
|
||||
mirror://gnu/gzip/${P}.tar.gz
|
||||
mirror://gentoo/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="nls pic static"
|
||||
|
||||
RDEPEND=""
|
||||
DEPEND="${RDEPEND}
|
||||
nls? ( sys-devel/gettext )"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
#epatch "${FILESDIR}"/${PN}-1.3.5-rsync.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.3.8-install-symlinks.patch
|
||||
epatch "${FILESDIR}"/${P}-assembler.patch #309079
|
||||
epatch "${FILESDIR}"/${P}-no-gets.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf || die
|
||||
emake || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" || die
|
||||
dodoc ChangeLog NEWS README THANKS TODO
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${D}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${D}"/bin/ || die
|
||||
sed -e 's:/usr::' -i "${D}"/bin/gunzip || die
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
inherit eutils flag-o-matic unpacker
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="nls pic static"
|
||||
|
||||
RDEPEND=""
|
||||
DEPEND="${RDEPEND}
|
||||
nls? ( sys-devel/gettext )"
|
||||
|
||||
src_unpack() {
|
||||
unpacker
|
||||
cd "${S}"
|
||||
#epatch "${FILESDIR}"/${PN}-1.3.5-rsync.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.3.8-install-symlinks.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf || die
|
||||
emake || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" || die
|
||||
dodoc ChangeLog NEWS README THANKS TODO
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${D}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${D}"/bin/ || die
|
||||
sed -e 's:/usr::' -i "${D}"/bin/gunzip || die
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit eutils flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="pic static"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-1.3.8-install-symlinks.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.4-asmv.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${ED}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED}"/bin/ || die
|
||||
sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED}"/bin/gunzip || die
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="pic static"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
|
||||
"${FILESDIR}/${PN}-1.4-asmv.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
epatch "${PATCHES[@]}"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${ED}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED}"/bin/ || die
|
||||
sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED}"/bin/gunzip || die
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="pic static"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
|
||||
"${FILESDIR}/${PN}-1.4-asmv.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
epatch "${PATCHES[@]}"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${ED}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED}"/bin/ || die
|
||||
sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED}"/bin/gunzip || die
|
||||
}
|
40
sdk_container/src/third_party/portage-stable/app-arch/gzip/gzip-1.9.ebuild
vendored
Normal file
40
sdk_container/src/third_party/portage-stable/app-arch/gzip/gzip-1.9.ebuild
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic
|
||||
|
||||
DESCRIPTION="Standard GNU compressor"
|
||||
HOMEPAGE="https://www.gnu.org/software/gzip/"
|
||||
SRC_URI="mirror://gnu/gzip/${P}.tar.xz
|
||||
mirror://gnu-alpha/gzip/${P}.tar.xz
|
||||
mirror://gentoo/${P}.tar.xz"
|
||||
|
||||
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 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="pic static"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
|
||||
"${FILESDIR}/${PN}-1.9-gnulib-glibc-2.28.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
use static && append-flags -static
|
||||
# avoid text relocation in gzip
|
||||
use pic && export DEFS="NO_ASM"
|
||||
econf --disable-gcc-warnings #663928
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
docinto txt
|
||||
dodoc algorithm.doc gzip.doc
|
||||
|
||||
# keep most things in /usr, just the fun stuff in /
|
||||
dodir /bin
|
||||
mv "${ED%/}"/usr/bin/{gunzip,gzip,uncompress,zcat} "${ED%/}"/bin/ || die
|
||||
sed -e "s:${EPREFIX}/usr:${EPREFIX}:" -i "${ED%/}"/bin/gunzip || die
|
||||
}
|
@ -1,8 +1,3 @@
|
||||
AUX lbzip2-2.3-s_isreg.patch 500 SHA256 10b815ddb705e8d12a50694174b1c1020a3ac64203ea8c253e6b2a0f0cfe71e0 SHA512 3158763b364e8ba41b0fea03529c6e4a0c6f3d17e7d0ce796fc9a6f6bc7e70fa7db759dc205026818619e137fb6343cf21534014b64dbf07c1cdb3bc1059cc04 WHIRLPOOL 94129a224b1b68d0de839aa8d98ba1ccedef41291b4848368c5e2da49af4d0415bda5be594a788c1b19620d791bba8b33549102ce2332e1ab20ca0dea1ec70a2
|
||||
DIST lbzip2-2.3.tar.gz 630226 SHA256 d3110a2b9e19da277dec899f7a3f435cc130a518f6a43094ec4e31ca15f93eaa SHA512 4f694445cc90377bf8dac5046b952ff174db571f390c2d7b0aa001f73c76f3d3f048ff8e7297c2055ed1f7b210174496dc31d6628e1cbeff63146a36a442ad4c WHIRLPOOL 781c9e07eccb633eeb713a9e4f821e0a75102e182d6a6ea4dfba7e33aa96afbfd92fdd5d0e9818ec4c41cf86733fe0396bb42071aad7a47c5e4cdd6426812527
|
||||
DIST lbzip2-2.5.tar.gz 651399 SHA256 46c75ee93cc95eedc6005625442b2b8e59a2bef3ba80987d0491f055185650e9 SHA512 76e96cfa75b3ed515b2f891349dffc1403daab2dd0a2a614fa0c811cec6ca25faa395da08ad68a9b6ba4069332c4571f70fb7424f06ef3d800c3082c08d7d3d7 WHIRLPOOL b64e70239d89782499cd59731130258d0432dbd69f84d1bed2adb7f573f706ab635a80bd2e2331231f4aad0c92b51151a0c45f192f4fcea9579fb1eef2fa8708
|
||||
EBUILD lbzip2-2.3-r1.ebuild 806 SHA256 8f6b790889bb957d9a8e375fae7cc7cbd0d1230892efc03accbe98f0d15678f2 SHA512 ce7cb5acd3357e7ad80c782c90c6decd8a9ff6041064988ceb454d559058c1f531c92a903324a2b0e64560119fae3f03f54c6c8fb9b00345382220b5c52338b7 WHIRLPOOL bb8ffd895c4f4dc81d142032ab80223743c3d4869c19715fe03511c0bf01ba2f662d4b73849be93a9b2bab8d906abcd5469762ee773fd6dc493fb5bbf31fb2f6
|
||||
EBUILD lbzip2-2.5.ebuild 826 SHA256 00ec47665ebb8c31322821216951467a9bb9d42c7cf7d1812a0aeef2d784a207 SHA512 f63095d9320ab1ba66a8142b13592c5444e79315e1d765da3e47631df79e3b98ff6ab325725ab1dd00990c92190e05c9cc3d098b2b79340568435bd6033b03fa WHIRLPOOL 925b074f2460d7cc1a0dab38cb5745ea5d0986542efe9ed34c6775ab21e3c9c9142dd1991ea12213dce95927ee3de119e4a33b7c9031516281d7fd0659323d8d
|
||||
MISC ChangeLog 2609 SHA256 c21aabf947f70e6dab0fb0d8fbc246b6c4e282d763adb7660f8eceb8b3eb62e2 SHA512 f371e4ae51b62c4b3b262f4fe2aa79f721ee7fd25741f5830c2621363601a50413a291d1b7da1b86d1be395db2facace78f02bd4061af68f53d53930783c8221 WHIRLPOOL 47f1a8b6da7eb8609631c32996c360529f772b8d828dd833a40ea99fdc131657f20123d76343a9da9e859e99f0adacb191f18f0cc0dc32b013e5954d78ca4050
|
||||
MISC ChangeLog-2015 9240 SHA256 bc1fcf75a15f16e43d687f2063c1f65993749f3a481632835a99a1a76455571f SHA512 f5dd73ff1358b6b8cc792d51d10a00472ecb4f0aafbf4434fe2722f8ecda04e250a001f1e8f6448ee4d51521d532af9c1c44e1edff4d30f279f70071ba39fcb9 WHIRLPOOL 7c57229779b1c41f56625a26c8357855488d221b94eeb1b1fe73273dd2ab37262b5dd25766877ebe44a2f3cbfb24b8e382eb31723f7797b3545fd74b8ba181e2
|
||||
MISC metadata.xml 544 SHA256 e3747415635a82c67ebcef4fb09bc6846c435bc067cefdecf5962a65df355fab SHA512 1e8feee62245ecf708787955fb4fd1dff60922ac7c165783fe0f3636afac000c808407656c06ee5ed166ef787365e15b5ca6b1f87ffcb851adaef45b04ff5bd7 WHIRLPOOL 0f7c1a9e52324a300a973ff53e16f7c009b36cdc8b377de9e678d27991cb72e4264b5e08e38719001b22c7670c48306aff45354041f076a9767fe23608da066b
|
||||
DIST lbzip2-2.3.tar.gz 630226 BLAKE2B c08a7257eff859c0b7fb66ae638a57f837f1a2380c500c42ea65dc36e5650b30865d3c4c9820d6fed62bdbc4e3bdf7bae9e8bfe519897d9aac7f0c77cceacfb2 SHA512 4f694445cc90377bf8dac5046b952ff174db571f390c2d7b0aa001f73c76f3d3f048ff8e7297c2055ed1f7b210174496dc31d6628e1cbeff63146a36a442ad4c
|
||||
DIST lbzip2-2.5.tar.gz 651399 BLAKE2B a53fc34084ed16c0e78a9f084f68fc0bd1217245e9470ee023f0a4f5a1e2ae4e5866086f9fbc3ff7ec5654c595b4388d9eff495bc0228edbe0322bf9d1fd1f23 SHA512 76e96cfa75b3ed515b2f891349dffc1403daab2dd0a2a614fa0c811cec6ca25faa395da08ad68a9b6ba4069332c4571f70fb7424f06ef3d800c3082c08d7d3d7
|
||||
DIST lbzip2-2.5_p20181227.tar.gz 704920 BLAKE2B e5da0091c0e4fb73724c5ea472d757d76356cffbf1fc679bf4ee05e25690b7712dceaf17f355383bfd4eb525c4aea04c2e5312592df5bb99159e000769bcee2e SHA512 53b29721a106d280927f2c18f33247645bb7fb3e67d835885d73e037910bf02e473f1210d848df41a387be30f829213d98ac9387b2a9201b94d12117809fbcf5
|
||||
|
50
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/files/lbzip2-2.5-glibc-2.28.patch
vendored
Normal file
50
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/files/lbzip2-2.5-glibc-2.28.patch
vendored
Normal file
@ -0,0 +1,50 @@
|
||||
diff --git a/lib/fseterr.c b/lib/fseterr.c
|
||||
index 1e212e4..81f51ed 100644
|
||||
--- a/lib/fseterr.c
|
||||
+++ b/lib/fseterr.c
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Set the error indicator of a stream.
|
||||
- Copyright (C) 2007-2014 Free Software Foundation, Inc.
|
||||
+ Copyright (C) 2007-2018 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -12,7 +12,7 @@
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
- along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -23,21 +23,26 @@
|
||||
|
||||
#include "stdio-impl.h"
|
||||
|
||||
+/* This file is not used on systems that have the __fseterr function,
|
||||
+ namely musl libc. */
|
||||
+
|
||||
void
|
||||
fseterr (FILE *fp)
|
||||
{
|
||||
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||
fast macros. */
|
||||
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
|
||||
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
|
||||
fp->_flags |= _IO_ERR_SEEN;
|
||||
-#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
|
||||
+#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
|
||||
+ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
|
||||
fp_->_flags |= __SERR;
|
||||
#elif defined __EMX__ /* emx+gcc */
|
||||
fp->_flags |= _IOERR;
|
||||
#elif defined __minix /* Minix */
|
||||
fp->_flags |= _IOERR;
|
||||
-#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, NonStop Kernel */
|
||||
+#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
|
||||
fp_->_flag |= _IOERR;
|
||||
#elif defined __UCLIBC__ /* uClibc */
|
||||
fp->__modeflags |= __FLAG_ERROR;
|
39
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/lbzip2-2.5-r1.ebuild
vendored
Normal file
39
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/lbzip2-2.5-r1.ebuild
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
DESCRIPTION="Parallel bzip2 utility"
|
||||
HOMEPAGE="https://github.com/kjn/lbzip2/"
|
||||
SRC_URI="http://archive.lbzip2.org/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
|
||||
IUSE="debug symlink"
|
||||
|
||||
RDEPEND="symlink? ( !app-arch/pbzip2[symlink] )"
|
||||
DEPEND=""
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.3-s_isreg.patch
|
||||
# bug 669594
|
||||
"${FILESDIR}"/${PN}-2.5-glibc-2.28.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-silent-rules
|
||||
$(use_enable debug tracing)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use symlink; then
|
||||
dosym ${PN} /usr/bin/bzip2
|
||||
dosym lbunzip2 /usr/bin/bunzip2
|
||||
fi
|
||||
}
|
45
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/lbzip2-2.5_p20181227.ebuild
vendored
Normal file
45
sdk_container/src/third_party/portage-stable/app-arch/lbzip2/lbzip2-2.5_p20181227.ebuild
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit autotools
|
||||
|
||||
DESCRIPTION="Parallel bzip2 utility"
|
||||
HOMEPAGE="https://github.com/kjn/lbzip2/"
|
||||
SRC_URI="https://dev.gentoo.org/~whissi/dist/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
|
||||
IUSE="debug symlink"
|
||||
|
||||
RDEPEND="symlink? ( !app-arch/pbzip2[symlink] )"
|
||||
DEPEND=""
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.3-s_isreg.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-silent-rules
|
||||
$(use_enable debug tracing)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use symlink; then
|
||||
dosym ${PN} /usr/bin/bzip2
|
||||
dosym lbunzip2 /usr/bin/bunzip2
|
||||
fi
|
||||
}
|
@ -1,16 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>mattst88@gentoo.org</email>
|
||||
<name>Matt Turner</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
A multi-threaded bzip2/bunzip2 utility that employs multiple threads and an
|
||||
input-bound splitter even when decompressing .bz2 files created by standard
|
||||
bzip2
|
||||
<maintainer type="person">
|
||||
<email>mattst88@gentoo.org</email>
|
||||
<name>Matt Turner</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
A multi-threaded bzip2/bunzip2 utility that employs multiple threads and an
|
||||
input-bound splitter even when decompressing .bz2 files created by standard
|
||||
bzip2
|
||||
</longdescription>
|
||||
<upstream>
|
||||
<remote-id type="github">kjn/lbzip2</remote-id>
|
||||
</upstream>
|
||||
<upstream>
|
||||
<remote-id type="github">kjn/lbzip2</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
1
sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest
vendored
Normal file
1
sdk_container/src/third_party/portage-stable/app-doc/eclass-manpages/Manifest
vendored
Normal file
@ -0,0 +1 @@
|
||||
DIST eclass-manpages-20190329.tar.xz 428068 BLAKE2B 630f6ba06bef6e4aed7713776b8a0ce737dcba4441309ed326b6eb87a5515f5fbd2f95db4a12385788a1dbf1ff6bc3c09620f4564c0bba201f48f6aa31520b41 SHA512 8088078334c2b7f35301bd75dc2505a366d030cb1d28bf47c387ba0c727cf5a58e1f279708d4a32ecf47ceec543c287ea5ad8c76ce4bbd9c45f039be2924d7ee
|
@ -0,0 +1,20 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://github.com/mgorny/eclass-to-manpage"
|
||||
SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# Keep the keywords stable. No need to change to ~arch.
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
|
||||
|
||||
DEPEND="app-arch/xz-utils
|
||||
sys-apps/gawk"
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" PREFIX=/usr
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit git-r3
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://github.com/mgorny/eclass-to-manpage"
|
||||
SRC_URI=""
|
||||
EGIT_REPO_URI="https://anongit.gentoo.org/git/repo/gentoo.git
|
||||
https://github.com/gentoo/gentoo.git"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS=""
|
||||
IUSE=""
|
||||
|
||||
DEPEND="sys-apps/gawk"
|
||||
|
||||
src_unpack() {
|
||||
git-r3_fetch
|
||||
git-r3_fetch "https://github.com/mgorny/eclass-to-manpage"
|
||||
|
||||
git-r3_checkout '' '' '' eclass
|
||||
git-r3_checkout "https://github.com/mgorny/eclass-to-manpage"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake ECLASSDIR=eclass
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install ECLASSDIR=eclass DESTDIR="${D}" PREFIX=/usr
|
||||
}
|
@ -1 +0,0 @@
|
||||
DIST eclass-manpages-20180812.tar.xz 419912 BLAKE2B 35659ac43e43e71c600fb4955267c9d57ed36f29e0607150a8e8c061b158b6135a4b91f4e4c05fa178a03aa3068726ac13cd54e4cd135fbe152c8bebf81659bb SHA512 6d01070c6113e5d5f4102d466abaa03ae824350285ca71a5a4f84d859f6c473e8e92d3f5387b76c4bb5dc8bcedcc6b36a63e074d70725c87233dea4fa6a6d0c6
|
@ -1,33 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://www.gentoo.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# Keep the keywords stabled. No need to change to ~arch.
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
|
||||
|
||||
DEPEND="app-arch/xz-utils"
|
||||
|
||||
# How to create a snapshot and upload it to your dev-space:
|
||||
#
|
||||
# mkdir eclass-manpages-$(date +%Y%m%d)
|
||||
# cp "$(portageq get_repo_path / gentoo)"/eclass/*.eclass eclass-manpages-$(date +%Y%m%d)/
|
||||
# tar -cf eclass-manpages-$(date +%Y%m%d).tar eclass-manpages-$(date +%Y%m%d)
|
||||
# xz -e eclass-manpages-$(date +%Y%m%d).tar
|
||||
# scp eclass-manpages-$(date +%Y%m%d).tar.xz dev.gentoo.org:public_html/dist/
|
||||
#
|
||||
# Then copy the ebuild and update your name in SRC_URI ;-).
|
||||
|
||||
src_compile() {
|
||||
env ECLASSDIR="${S}" bash "${FILESDIR}"/eclass-to-manpage.sh || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
doman *.5
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://www.gentoo.org/"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS=""
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
|| (
|
||||
sys-apps/portage
|
||||
sys-apps/portage-mgorny
|
||||
)"
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
genit() {
|
||||
local e=${1:-${ECLASSDIR}}
|
||||
einfo "Generating man pages from: ${e}"
|
||||
# Need `bash` because the .sh isn't +x on the servers #451352
|
||||
env ECLASSDIR=${e} bash "${FILESDIR}"/eclass-to-manpage.sh || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# First process any eclasses found in overlays. Then process
|
||||
# the main eclassdir last so that its output will clobber anything
|
||||
# that might have come from overlays. Main tree wins!
|
||||
local o e
|
||||
for o in $(portageq get_repos /) ; do
|
||||
e="$(portageq get_repo_path / ${o})/eclass"
|
||||
[[ -d ${e} ]] || continue
|
||||
genit "${e}" || die
|
||||
done
|
||||
genit || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
doman *.5
|
||||
}
|
@ -1,457 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# This awk converts the comment documentation found in eclasses
|
||||
# into man pages for easier/nicer reading.
|
||||
#
|
||||
# If you wish to have multiple paragraphs in a description, then
|
||||
# create empty comment lines. Paragraph parsing ends when the comment
|
||||
# block does.
|
||||
|
||||
# The format of the eclass description:
|
||||
# @ECLASS: foo.eclass
|
||||
# @MAINTAINER:
|
||||
# <required; list of contacts, one per line>
|
||||
# @AUTHOR:
|
||||
# <optional; list of authors, one per line>
|
||||
# @BUGREPORTS:
|
||||
# <optional; description of how to report bugs;
|
||||
# default: tell people to use bugs.gentoo.org>
|
||||
# @VCSURL: <optional; url to vcs for this eclass; default: https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/@ECLASS@>
|
||||
# @SUPPORTED_EAPIS: <optional; space-separated list of EAPIs>
|
||||
# @BLURB: <required; short description>
|
||||
# @DESCRIPTION:
|
||||
# <optional; long description>
|
||||
# @EXAMPLE:
|
||||
# <optional; example usage>
|
||||
|
||||
# The format of functions:
|
||||
# @FUNCTION: foo
|
||||
# @USAGE: <required arguments to foo> [optional arguments to foo]
|
||||
# @RETURN: <whatever foo returns>
|
||||
# @MAINTAINER:
|
||||
# <optional; list of contacts, one per line>
|
||||
# [@INTERNAL]
|
||||
# @DESCRIPTION:
|
||||
# <required if no @RETURN; blurb about this function>
|
||||
|
||||
# The format of function-specific variables:
|
||||
# @VARIABLE: foo
|
||||
# [@USER_VARIABLE] (set in make.conf, not ebuilds)
|
||||
# [@INTERNAL] (internal eclass use variable)
|
||||
# [@DEFAULT_UNSET]
|
||||
# [@REQUIRED]
|
||||
# @DESCRIPTION:
|
||||
# <required; blurb about this variable>
|
||||
# foo="<default value>"
|
||||
|
||||
# The format of eclass variables:
|
||||
# @ECLASS-VARIABLE: foo
|
||||
# [@PRE_INHERIT] (the variable must be set before inheriting the eclass)
|
||||
# [@USER_VARIABLE] (set in make.conf, not ebuilds)
|
||||
# [@OUTPUT_VARIABLE] (set by eclass, to be read in ebuilds)
|
||||
# [@INTERNAL] (internal eclass use variable)
|
||||
# [@DEFAULT_UNSET]
|
||||
# [@REQUIRED]
|
||||
# @DESCRIPTION:
|
||||
# <required; blurb about this variable>
|
||||
# foo="<default value>"
|
||||
|
||||
# Disable manpage generation:
|
||||
# @DEAD
|
||||
|
||||
# Common features:
|
||||
# @CODE
|
||||
# In multiline paragraphs, you can create chunks of unformatted
|
||||
# code by using this marker at the start and end.
|
||||
# @CODE
|
||||
#
|
||||
# @ROFF <some roff macros>
|
||||
# If you want a little more manual control over the formatting, you can
|
||||
# insert roff macros directly into the output by using the @ROFF escape.
|
||||
|
||||
function _stderr_msg(text, type, file, cnt) {
|
||||
if (_stderr_header_done != 1) {
|
||||
cnt = split(FILENAME, file, /\//)
|
||||
print "\n" file[cnt] ":" > "/dev/stderr"
|
||||
_stderr_header_done = 1
|
||||
}
|
||||
|
||||
print " " type ":" NR ": " text > "/dev/stderr"
|
||||
}
|
||||
function warn(text) {
|
||||
_stderr_msg(text, "warning")
|
||||
}
|
||||
function fail(text) {
|
||||
_stderr_msg(text, "error")
|
||||
exit(1)
|
||||
}
|
||||
function xfail(text) {
|
||||
_stderr_msg(text, "error (ignoring)")
|
||||
exit(77)
|
||||
}
|
||||
|
||||
function eat_line() {
|
||||
ret = $0
|
||||
sub(/^# @[A-Z]*:[[:space:]]*/,"",ret)
|
||||
getline
|
||||
return ret
|
||||
}
|
||||
function eat_paragraph() {
|
||||
code = 0
|
||||
ret = ""
|
||||
getline
|
||||
while ($0 ~ /^#/) {
|
||||
# Only allow certain tokens in the middle of paragraphs
|
||||
if ($2 ~ /^@/ && $2 !~ /^@(CODE|ROFF)$/)
|
||||
break
|
||||
|
||||
sub(/^#[[:space:]]?/, "", $0)
|
||||
|
||||
# Escape . at start of line #420153
|
||||
if ($0 ~ /^[.]/)
|
||||
$0 = "\\&" $0
|
||||
|
||||
# Translate @CODE into @ROFF
|
||||
if ($1 == "@CODE" && NF == 1) {
|
||||
if (code)
|
||||
$0 = "@ROFF .fi"
|
||||
else
|
||||
$0 = "@ROFF .nf"
|
||||
code = !code
|
||||
}
|
||||
|
||||
# Allow people to specify *roff commands directly
|
||||
if ($1 == "@ROFF")
|
||||
sub(/^@ROFF[[:space:]]*/, "", $0)
|
||||
|
||||
ret = ret "\n" $0
|
||||
|
||||
# Handle the common case of trailing backslashes in
|
||||
# code blocks to cross multiple lines #335702
|
||||
if (code && $NF == "\\")
|
||||
ret = ret "\\"
|
||||
getline
|
||||
}
|
||||
sub(/^\n/,"",ret)
|
||||
return ret
|
||||
}
|
||||
|
||||
function pre_text(p) {
|
||||
return ".nf\n" p "\n.fi"
|
||||
}
|
||||
|
||||
function man_text(p) {
|
||||
return gensub(/-/, "\\-", "g", p)
|
||||
}
|
||||
|
||||
#
|
||||
# Handle an @ECLASS block
|
||||
#
|
||||
function handle_eclass() {
|
||||
eclass = $3
|
||||
eclass_maintainer = ""
|
||||
eclass_author = ""
|
||||
supported_eapis = ""
|
||||
blurb = ""
|
||||
desc = ""
|
||||
example = ""
|
||||
|
||||
# Sanity check the eclass name. #537392
|
||||
if (eclass !~ /[.]eclass$/)
|
||||
fail(eclass ": @ECLASS name is missing a '.eclass' suffix")
|
||||
|
||||
# first the man page header
|
||||
print ".\\\" -*- coding: utf-8 -*-"
|
||||
print ".\\\" ### DO NOT EDIT THIS FILE"
|
||||
print ".\\\" ### This man page is autogenerated by eclass-to-manpage.awk"
|
||||
print ".\\\" ### based on comments found in " eclass
|
||||
print ".\\\""
|
||||
print ".\\\" See eclass-to-manpage.awk for documentation on how to get"
|
||||
print ".\\\" your eclass nicely documented as well."
|
||||
print ".\\\""
|
||||
print ".TH \"" toupper(eclass) "\" 5 \"" strftime("%b %Y") "\" \"Portage\" \"portage\""
|
||||
|
||||
# now eat the global data
|
||||
getline
|
||||
if ($2 == "@MAINTAINER:")
|
||||
eclass_maintainer = eat_paragraph()
|
||||
if ($2 == "@AUTHOR:")
|
||||
eclass_author = eat_paragraph()
|
||||
if ($2 == "@BUGREPORTS:")
|
||||
reporting_bugs = eat_paragraph()
|
||||
if ($2 == "@VCSURL:")
|
||||
vcs_url = eat_line()
|
||||
if ($2 == "@SUPPORTED_EAPIS:")
|
||||
supported_eapis = eat_line()
|
||||
if ($2 == "@BLURB:")
|
||||
blurb = eat_line()
|
||||
if ($2 == "@DESCRIPTION:")
|
||||
desc = eat_paragraph()
|
||||
if ($2 == "@EXAMPLE:")
|
||||
example = eat_paragraph()
|
||||
# in case they typo-ed the keyword, bail now
|
||||
if ($2 ~ /^@/)
|
||||
fail(eclass ": unknown keyword " $2)
|
||||
|
||||
# finally display it
|
||||
print ".SH \"NAME\""
|
||||
print eclass " \\- " man_text(blurb)
|
||||
if (desc != "") {
|
||||
print ".SH \"DESCRIPTION\""
|
||||
print man_text(desc)
|
||||
}
|
||||
if (example != "") {
|
||||
print ".SH \"EXAMPLE\""
|
||||
print man_text(example)
|
||||
}
|
||||
|
||||
# sanity checks
|
||||
if (blurb == "")
|
||||
fail(eclass ": no @BLURB found")
|
||||
if (eclass_maintainer == "")
|
||||
warn(eclass ": no @MAINTAINER found")
|
||||
}
|
||||
|
||||
#
|
||||
# Handle a @FUNCTION block
|
||||
#
|
||||
function show_function_header() {
|
||||
if (_function_header_done != 1) {
|
||||
print ".SH \"FUNCTIONS\""
|
||||
_function_header_done = 1
|
||||
}
|
||||
}
|
||||
function handle_function() {
|
||||
func_name = $3
|
||||
usage = ""
|
||||
funcret = ""
|
||||
maintainer = ""
|
||||
internal = 0
|
||||
desc = ""
|
||||
|
||||
# make sure people haven't specified this before (copy & paste error)
|
||||
if (all_funcs[func_name])
|
||||
fail(eclass ": duplicate definition found for function: " func_name)
|
||||
all_funcs[func_name] = func_name
|
||||
|
||||
# grab the docs
|
||||
getline
|
||||
if ($2 == "@USAGE:")
|
||||
usage = eat_line()
|
||||
if ($2 == "@RETURN:")
|
||||
funcret = eat_line()
|
||||
if ($2 == "@MAINTAINER:")
|
||||
maintainer = eat_paragraph()
|
||||
if ($2 == "@INTERNAL") {
|
||||
internal = 1
|
||||
getline
|
||||
}
|
||||
if ($2 == "@DESCRIPTION:")
|
||||
desc = eat_paragraph()
|
||||
|
||||
if (internal == 1)
|
||||
return
|
||||
|
||||
show_function_header()
|
||||
|
||||
# now print out the stuff
|
||||
print ".TP"
|
||||
print "\\fB" func_name "\\fR " man_text(usage)
|
||||
if (desc != "")
|
||||
print man_text(desc)
|
||||
if (funcret != "") {
|
||||
if (desc != "")
|
||||
print ""
|
||||
print "Return value: " funcret
|
||||
}
|
||||
|
||||
if (blurb == "")
|
||||
fail(func_name ": no @BLURB found")
|
||||
if (desc == "" && funcret == "")
|
||||
fail(func_name ": no @DESCRIPTION found")
|
||||
}
|
||||
|
||||
#
|
||||
# Handle @VARIABLE and @ECLASS-VARIABLE blocks
|
||||
#
|
||||
function _handle_variable() {
|
||||
var_name = $3
|
||||
desc = ""
|
||||
val = ""
|
||||
default_unset = 0
|
||||
internal = 0
|
||||
required = 0
|
||||
|
||||
# additional variable classes
|
||||
pre_inherit = 0
|
||||
user_variable = 0
|
||||
output_variable = 0
|
||||
|
||||
# make sure people haven't specified this before (copy & paste error)
|
||||
if (all_vars[var_name])
|
||||
fail(eclass ": duplicate definition found for variable: " var_name)
|
||||
all_vars[var_name] = var_name
|
||||
|
||||
# grab the optional attributes
|
||||
opts = 1
|
||||
while (opts) {
|
||||
getline
|
||||
if ($2 == "@DEFAULT_UNSET")
|
||||
default_unset = 1
|
||||
else if ($2 == "@INTERNAL")
|
||||
internal = 1
|
||||
else if ($2 == "@REQUIRED")
|
||||
required = 1
|
||||
else if ($2 == "@PRE_INHERIT")
|
||||
pre_inherit = 1
|
||||
else if ($2 == "@USER_VARIABLE")
|
||||
user_variable = 1
|
||||
else if ($2 == "@OUTPUT_VARIABLE")
|
||||
output_variable = 1
|
||||
else
|
||||
opts = 0
|
||||
}
|
||||
if ($2 == "@DESCRIPTION:")
|
||||
desc = eat_paragraph()
|
||||
|
||||
# extract the default variable value
|
||||
# first try var="val"
|
||||
op = "="
|
||||
regex = "^.*" var_name "=(.*)$"
|
||||
val = gensub(regex, "\\1", 1, $0)
|
||||
if (val == $0) {
|
||||
# next try : ${var:=val}
|
||||
op = "?="
|
||||
regex = "^[[:space:]]*:[[:space:]]*[$]{" var_name ":?=(.*)}"
|
||||
val = gensub(regex, "\\1", 1, $0)
|
||||
if (val == $0) {
|
||||
if (default_unset + required + internal + output_variable == 0)
|
||||
warn(var_name ": unable to extract default variable content: " $0)
|
||||
val = ""
|
||||
} else if (val !~ /^["']/ && val ~ / /) {
|
||||
if (default_unset == 1)
|
||||
warn(var_name ": marked as unset, but has value: " val)
|
||||
val = "\"" val "\""
|
||||
}
|
||||
}
|
||||
if (length(val))
|
||||
val = " " op " \\fI" val "\\fR"
|
||||
if (required == 1)
|
||||
val = val " (REQUIRED)"
|
||||
# TODO: group variables using those classes
|
||||
if (pre_inherit == 1)
|
||||
val = val " (SET BEFORE INHERIT)"
|
||||
if (user_variable == 1)
|
||||
val = val " (USER VARIABLE)"
|
||||
if (output_variable == 1)
|
||||
val = val " (GENERATED BY ECLASS)"
|
||||
|
||||
# check for invalid combos
|
||||
if (internal + pre_inherit + user_variable + output_variable > 1)
|
||||
fail(var_name ": multiple variable classes specified")
|
||||
|
||||
if (internal == 1)
|
||||
return ""
|
||||
|
||||
# now accumulate the stuff
|
||||
ret = \
|
||||
".TP" "\n" \
|
||||
"\\fB" var_name "\\fR" val "\n" \
|
||||
man_text(desc)
|
||||
|
||||
if (desc == "")
|
||||
fail(var_name ": no @DESCRIPTION found")
|
||||
|
||||
return ret
|
||||
}
|
||||
function handle_variable() {
|
||||
show_function_header()
|
||||
ret = _handle_variable()
|
||||
if (ret == "")
|
||||
return
|
||||
print ret
|
||||
}
|
||||
function handle_eclass_variable() {
|
||||
ret = _handle_variable()
|
||||
if (ret == "")
|
||||
return
|
||||
if (eclass_variables != "")
|
||||
eclass_variables = eclass_variables "\n"
|
||||
eclass_variables = eclass_variables ret
|
||||
}
|
||||
|
||||
#
|
||||
# Spit out the common footer of manpage
|
||||
#
|
||||
function handle_footer() {
|
||||
if (eclass_variables != "") {
|
||||
print ".SH \"ECLASS VARIABLES\""
|
||||
print man_text(eclass_variables)
|
||||
}
|
||||
if (eclass_author != "") {
|
||||
print ".SH \"AUTHORS\""
|
||||
print pre_text(man_text(eclass_author))
|
||||
}
|
||||
if (eclass_maintainer != "") {
|
||||
print ".SH \"MAINTAINERS\""
|
||||
print pre_text(man_text(eclass_maintainer))
|
||||
}
|
||||
print ".SH \"REPORTING BUGS\""
|
||||
print reporting_bugs
|
||||
print ".SH \"FILES\""
|
||||
print ".BR " eclass
|
||||
print ".SH \"SEE ALSO\""
|
||||
print ".BR ebuild (5)"
|
||||
print pre_text(gensub("@ECLASS@", eclass, 1, vcs_url))
|
||||
}
|
||||
|
||||
#
|
||||
# Init parser
|
||||
#
|
||||
BEGIN {
|
||||
state = "header"
|
||||
reporting_bugs = "Please report bugs via https://bugs.gentoo.org/"
|
||||
vcs_url = "https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/@ECLASS@"
|
||||
}
|
||||
|
||||
#
|
||||
# Main parsing routine
|
||||
#
|
||||
{
|
||||
if (state == "header") {
|
||||
if ($0 ~ /^# @ECLASS:/) {
|
||||
handle_eclass()
|
||||
state = "funcvar"
|
||||
} else if ($0 == "# @DEAD") {
|
||||
eclass = "dead"
|
||||
exit(77)
|
||||
} else if ($0 == "# @eclass-begin") {
|
||||
# White list old eclasses that haven't been updated so we can block
|
||||
# new ones from being added to the tree.
|
||||
if (eclass == "")
|
||||
xfail("java documentation not supported")
|
||||
fail("java documentation not supported")
|
||||
} else if ($0 ~ /^# @/)
|
||||
warn("Unexpected tag in \"" state "\" state: " $0)
|
||||
} else if (state == "funcvar") {
|
||||
if ($0 ~ /^# @FUNCTION:/)
|
||||
handle_function()
|
||||
else if ($0 ~ /^# @VARIABLE:/)
|
||||
handle_variable()
|
||||
else if ($0 ~ /^# @ECLASS-VARIABLE:/)
|
||||
handle_eclass_variable()
|
||||
else if ($0 ~ /^# @/)
|
||||
warn("Unexpected tag in \"" state "\" state: " $0)
|
||||
}
|
||||
}
|
||||
|
||||
#
|
||||
# Tail end
|
||||
#
|
||||
END {
|
||||
if (eclass == "")
|
||||
xfail("eclass not documented yet (no @ECLASS found)")
|
||||
else if (eclass != "dead")
|
||||
handle_footer()
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
: ${ECLASSDIR:=${0%/*}/../../../eclass}
|
||||
: ${FILESDIR:=${ECLASSDIR}/../app-portage/eclass-manpages/files}
|
||||
|
||||
AWK="gawk"
|
||||
while [[ $# -gt 0 ]] ; do
|
||||
case $1 in
|
||||
-e) ECLASSDIR=$2; shift;;
|
||||
-f) FILESDIR=$2; shift;;
|
||||
-d) AWK="dgawk";;
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if [[ ! -d ${ECLASSDIR} ]] ; then
|
||||
echo "Usage: ${0##*/} [-e eclassdir] [-f eclass-to-manpage.awk FILESDIR] [eclasses]" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[[ $# -eq 0 ]] && set -- "${ECLASSDIR}"/*.eclass
|
||||
|
||||
ret=0
|
||||
for e in "$@" ; do
|
||||
set -- \
|
||||
${AWK} \
|
||||
-f "${FILESDIR}"/eclass-to-manpage.awk \
|
||||
${e}
|
||||
if [[ ${AWK} == "gawk" ]] ; then
|
||||
"$@" > ${e##*/}.5
|
||||
tret=$?
|
||||
if [[ ${tret} -ne 0 ]] ; then
|
||||
rm -f ${e##*/}.5
|
||||
if [[ ${tret} -ne 77 ]] ; then
|
||||
echo "FAIL: ${e}"
|
||||
ret=1
|
||||
fi
|
||||
fi
|
||||
else
|
||||
"$@"
|
||||
fi
|
||||
done
|
||||
exit ${ret}
|
@ -76,11 +76,24 @@ DIST rust-1.33.0-powerpc64-unknown-linux-gnu.tar.xz 126030216 BLAKE2B b1d1b996b8
|
||||
DIST rust-1.33.0-powerpc64le-unknown-linux-gnu.tar.xz 130922680 BLAKE2B db63d859631703e845efac57074e0f33f80a3b52b2e9dc8707b81892eee8fc922fa5a7d4b7b1f45fb5f19ea4d7f6fde9212f1c6e99e7e4c30dbc02aa87b0df7e SHA512 393c808e93792cf2b126d6111834932a55cbf18339942ac0d20fc4a3692b0ac08c21a3c8fd393795f7aafecac5a2c5d7c9415c18017a7453f759f746045f5144
|
||||
DIST rust-1.33.0-s390x-unknown-linux-gnu.tar.xz 134441220 BLAKE2B e6f0a6e54e4e1fde10f54f66615d44442b7cb5eb5bda43d55ee791328c7ecd61505b3d84719df82b7c5c7ae473b7041512f2cf346281518d7d78d0e22112fa05 SHA512 755a0203e2c143386cb3729faada4d2c38b254dfa7e6eeb722ec9847d6319a1d3d289c7b77a2bc478d79dbbabfcd826d8b015acd29fbdf5acb591feae1876205
|
||||
DIST rust-1.33.0-x86_64-unknown-linux-gnu.tar.xz 155298128 BLAKE2B af5bc628bc054bd354d5af78e53cd2ffbfbdf2c2d3a3e58eeb593f148c54024fa5905aa53a69c514d6d41e48688697e1ce8adb866817c77cdf541399f6e7956f SHA512 b7f3087f34e99517cd729f5ff1f8cce3f3254cb36c734d5b90d878293e4406934c2f597bf7e2941e9257046f62c9274eb4769a64dabfbc5f0bbf2a1703f7fef8
|
||||
DIST rust-1.34.2-aarch64-unknown-linux-gnu.tar.xz 120868188 BLAKE2B d843cce81338b2b3765c973f06dca83161fefed129efefe94efad663b5ddef54aa092bf5977ba7bca74519b008796e60486cf8b193ec2a2dead3add66295d41f SHA512 7103362b8840d094661a16053d8f07eba413c369bf3a2b686313875aa97c30b35697fceefbfc90dffd5cfd4de946e7f848f2b791736443639b30bb75709b7122
|
||||
DIST rust-1.34.2-arm-unknown-linux-gnueabi.tar.xz 122563056 BLAKE2B 05e73de7d58723affef3f272e646245a97b17373cc960d5e1be0365919ad3879e08bd9012126e41235b97a758bb57fa4e67fcd11e2f29322af9ab039fc3e2dfd SHA512 d6c055e8ba0fd494797a55d2a6df1eec2a6361c0b081e4b7cb06e42a03a644e4de49c7b17dc8cb6484f3271517f2bd50935bc72ead486531b5b370a1c576b12a
|
||||
DIST rust-1.34.2-arm-unknown-linux-gnueabihf.tar.xz 122858592 BLAKE2B aebe65fb64044c342f525749eb5d67217f459712aa72d49497062af461901a6e92d21b00e05439bd0753228b876f521198a8b005b116b5121ec3dd812df4bec8 SHA512 5cc2612988182b68d9b220d6d7620fc0b064a9d347825d4677959b7e43820647ff25651427db3a5c72401ab8d0c14e2976921d71ddbe0a5b540cf045241cd727
|
||||
DIST rust-1.34.2-armv7-unknown-linux-gnueabihf.tar.xz 124601212 BLAKE2B 7ab258783070d3ba1e27431faf36a8c75d0afae935bc4ba08bf1e6b7f080d56cb3a9ac3de8b91ff9885e2df2ccebdf29de80b99548c610ea30c157103b920434 SHA512 fe5be9a345d10ee2b3a47986977be91cd2dd94f2076571f810ac21cea36f79f073eb16915c090861cf46c6835f86db64c2ed1ef036f911b3be829d7927ecb747
|
||||
DIST rust-1.34.2-i686-unknown-linux-gnu.tar.xz 169581332 BLAKE2B 75f1fc4c52e81cb9c7f95d18d9aff2439bfc698444321d92f09d5a47e493d693f2cae3d8ee56ccff59ca967a0a2a53828559eefce1398a2450fe39c95397e3e2 SHA512 056243d226cd9a36dfcd266f2aba88adde58dbcfa87f20613183c5dcc514bb413e25f6d6963494dc141f4e91649b17b1db91e6a9d313af7ef7b1893b64337c33
|
||||
DIST rust-1.34.2-mips-unknown-linux-gnu.tar.xz 113493608 BLAKE2B 10df3e2eb9fd9200bab1ca94eafd80f680c94bd21589f72fd660e9d819a6615cc83e47ac70df87712e252946f58df30824be992f16ca707b72451898e1884e99 SHA512 ec100071fbd8373baf41f0f517497b9923a77ebea8257d2fdcc9a4488d7ec6d59c0b517f4d922a0f7f699d701510d32d49c1e699c69a94f571f73ba46fe795f3
|
||||
DIST rust-1.34.2-mips64-unknown-linux-gnuabi64.tar.xz 119118112 BLAKE2B 8ba04a90e82bf7d830c750350570dde8cfa0646f1ea10c583927cc6c7ceeb935fb4035248d8a3ac4a477a858a32d3753811e2893220b8b3919e882213dd63373 SHA512 bb3c5e8ce24895a07984059fca53f4737777a78d350312292877b8e1c21a7a84320f1fee4d64c9d684d14be5fe500494d38ef3f5ab4e4f0e84cbd3f3d30a8586
|
||||
DIST rust-1.34.2-mipsel-unknown-linux-gnu.tar.xz 115776696 BLAKE2B dfe09e60be47c6cbe183e4f4bb358cd6d1fe0872114d6a663ee95cd063155f99688bdf23b5c7230b626351654da8f38c7b763099b8d6c2707e185449267c137c SHA512 91348409dfdb63b82e6b6a3097d181485f05f0dfb6cd3bd80785da2eea23f493a90a4e07e660dbc14e9c887ff7e27bc0d13203c78feece5aca219e439a9c18cf
|
||||
DIST rust-1.34.2-powerpc-unknown-linux-gnu.tar.xz 116817940 BLAKE2B bd7fcc7e0e8844d23e73bb8bc07f7454d234d4fc96d6549399c399845af147debbfbcdea2c53d1ad5a28126d6c9cc20178634290fb837f0537947f64d688df75 SHA512 b8009e9ab2e9167cce8e1911ec0bebc9959a89bafcb645637f2a55af15a2f4f5d4fa20d6b38b7ae572480f3d3817392b8c6386b6ed589b34dd0a02529da2a459
|
||||
DIST rust-1.34.2-powerpc64-unknown-linux-gnu.tar.xz 125735384 BLAKE2B c25d43fa630e9b95692bcb493064f592a12ecee700538671192f04cfdf443a5d046493662c88d91f62cc1eba94e80ec9b6bed9949af9a8bc83788521832336d4 SHA512 d1ab37d68c0b52e3780ea133f8ba4d5b823c7f874bbf15f97f304c21405b1fdbde3d28e83381f08095fca8e2ea615f46accad725ee854ad9db168ab4629e30a3
|
||||
DIST rust-1.34.2-powerpc64le-unknown-linux-gnu.tar.xz 129619832 BLAKE2B df76b7c08941ae2cb512ba656b09a7b87e1e656badbadf58d64ab5f9133e7248a63873675ac44f16207107a0f68da6089706b46af94154c0bd51aed655f8b578 SHA512 3c881e7bcf622237f279855ebaeb544f4df9bfe5bc1f74578093d67befed8f027692ea56dc773c653bef8a124e9ebac2544d0c197a0e3a1ec8da63ef9d434412
|
||||
DIST rust-1.34.2-s390x-unknown-linux-gnu.tar.xz 134376720 BLAKE2B 3eb1452bc0f5d6cbe5547f18ad039c54d4fee44e8c24e35f3399272755cd293df008db2c7dded32c7853944e43de7a4d337b7408835445a4916dbf55d14a7b3e SHA512 181f58b00cdccb205be853f5d00fc0a0c939b7e4dc801717b21ece0f714a8f3b501f1196eb2e3f3081932a0417a6218763c3d095cdd036e9f202cc41291876a1
|
||||
DIST rust-1.34.2-x86_64-unknown-linux-gnu.tar.xz 157279864 BLAKE2B c25fcb6168e16a4deb19a8ca9b3d91966194f4c8d2e60933226fab015b64a819f6e56a6b51b6e9457ce80efaf5bf71f2eed2f3e6e39bef5856524e33d0a5637b SHA512 64d6b7da08ffd877c10d819605a37b0bc178c4ab80e2f7449f3d5ac9254a438e148da3729408b4c9429ed499d7f142c9d2926f5c916e0a32bebaaefe4b0a09a6
|
||||
DIST rustc-1.29.1-src.tar.xz 61937676 BLAKE2B 6a60249538e1ec62471f4d0e3fc31c0a648433aa6f85ca7341657ea07772e338eb92a629941685808f4b80e84cb025d78aee9d0d6fa71c6635a1647c61bca9bc SHA512 1ded651b4c460e11e5e44c26de88a80fb13c2000097de2ee1e5af89638e12a7e8f43dd756689d4cc4fad45c52d4d43a3c70dd6a3ae550735b9dad5f8defea6a7
|
||||
DIST rustc-1.29.2-src.tar.xz 61888912 BLAKE2B f59b0bf45caa6f6136f92ffbaa612bbc6a340c8694ec69d75aadace9180c36753f985641915524388b52cc108f8f5b71840ee3a6c0b1fcff6decb61d2d8a161e SHA512 d8fa9501764348ace8f60f2069bcd016925abe56c8bbc2b87fb52ff796e4bc7284c1fccbb1671416437bb82fde7d9240eeae875d6099914e27e75cfe050e2d38
|
||||
DIST rustc-1.30.1-src.tar.xz 96086232 BLAKE2B 170767b64efe670086e7c4e73838b489a155a72c703148f83cad29d401a825a94a1def3aa462ba527e1bd08181c7a9be0e404c25f012906541c3d739eb57e9e5 SHA512 e466db81b9a82239670c48b876dc7390fcdda28c6390308691ddf2e0c12a39b57bd5ddb18322d1b4cd58165f69a666c7d83bee6573049da3b94e401657459bf5
|
||||
DIST rustc-1.31.1-src.tar.xz 96915864 BLAKE2B bedfe1d56e2f99bb43b4b652d540aedf0a86c47b8493f28fb29e5af3135ff469ed40775bc2ee25ac5bd28a264ecba0094d7c9b6aae25ea365ed3e6f354ffa40b SHA512 d6688711452295c41468af214f036499074d82fbeedc3f03560275219c2fae910e623e38e3210176d86f78ba5533ea098da5ff21532c8ad1a5aac132bb74ee02
|
||||
DIST rustc-1.32.0-src.tar.xz 99602696 BLAKE2B ab26247e3ecb75dbe373254c1c49f46c00a5a4db2b9cedffccb30122ea3b7de2761d6995b5423d0105caf85cc9542b4c21d487385faa34c835398c3320ccbd3b SHA512 487c405fed6430f62d2d0c38b65f6223b1c5074c7a0d3734dc8b3bb72fca255f5727e49541749569713a0c3e9a67eff574ba5698e8dceca6f0ef20b50f99aa42
|
||||
DIST rustc-1.33.0-src.tar.xz 100635400 BLAKE2B 1fe8ffcfab8324a93a07b9b9ac9cd050fd9d660fb24884761e8ce5e5a67ce5b6df8513e1440090b39c3ced9cb5ced43f07cc9b0337d39625d2cf4aa9e083cfef SHA512 3291e4e19f75f44c81e6fcf4c01edc7c9d326eca43722381231abcf2e99f4314059ba59a29b79f5511ad9421c358c45e8fe18584d6954d17fe2aabad0f9d9147
|
||||
DIST rustc-1.34.0-src.tar.xz 95055768 BLAKE2B 5df848369e8087ac10c57d9818e644e51be1d4a89e68341a2a49a09f0902c153ba5fab2d82e4178742b3ac4205249347950d0685259f6b1fe0761ec4daf87518 SHA512 cf9952cafe42987f84a6fe9e351a401f2db35c33ddc87d2efb762c4c33a643ffe516f00d848a1ae759f48cea1504243b6169c29ab28ba2e6b00a51422c745861
|
||||
DIST rustc-1.34.1-src.tar.xz 95048260 BLAKE2B 41e034aa0e5ea71aa21d6b5700134fc2e1391915309aa14e11426b1c0a3ad213c5b11f67df3f1beebd885d9d3bb358b12a10dd2095cbcb6b2a18870e977568f8 SHA512 c9ee59a98e0300c16a9044424fbaad0e1d5f026279b9cb238ab5bfe02c6b111780ec5f9884c4cac67d5ee91833e301bc23bd457026982587982b2fb80a528dca
|
||||
DIST rustc-1.34.2-src.tar.xz 95048792 BLAKE2B e81e4bfda87ddfb09ab8a74792346970aa440c678d2bb1279c329db4929282f761ada6fea9d81ceeecfd513613025c8e636487626fc36bd0b33559e045bb1b15 SHA512 f1bd2b226d90aae8a4657e6117b9a8451d4ce8129f79cc0fce0da7613a3b7800e690bc0ede8fec20a2f5f32c13fa8e22ac97d3838e0d36936793535a75d9c381
|
||||
DIST rustc-1.35.0-src.tar.xz 96543548 BLAKE2B 0291152f2b7aa8b50b22d74afbd9c7654bab8ae7dcb76224dbff43bc39a3b918ff86bfd20f408a9a16da8b20b08d9f0289bb63620f093d25d9fa008de57f52c3 SHA512 477c10b780bd54776be7ecbda0ab970416253e4a87c3e701825a7d07bcbcd91601b8e61129c5d04d4259e89c2e81e87cdbdee853375a8de5c9cf8372be2c9129
|
||||
|
@ -0,0 +1,117 @@
|
||||
From d6bd0a479ceaf6abdd696c3b955a56f66275c562 Mon Sep 17 00:00:00 2001
|
||||
From: Georgy Yakovlev <gyakovlev@gentoo.org>
|
||||
Date: Sat, 25 May 2019 22:21:16 -0700
|
||||
Subject: [PATCH] revert commits triggering multiple llvm rebuilds
|
||||
|
||||
this reverts the following commits
|
||||
https://github.com/rust-lang/rust/commit/105692c3ad281c63bf0f75a26a66bb9cff5b4553
|
||||
https://github.com/rust-lang/rust/commit/975ba58f42b34ff07cd7c2bd73350daed2057186
|
||||
https://github.com/rust-lang/rust/commit/e1daa36ba7df88788c2684bbe5ff6eb37f1cda69
|
||||
---
|
||||
src/bootstrap/llvm-rebuild-trigger | 4 +++
|
||||
src/bootstrap/native.rs | 46 +++++++++++++-----------------
|
||||
2 files changed, 24 insertions(+), 26 deletions(-)
|
||||
create mode 100644 src/bootstrap/llvm-rebuild-trigger
|
||||
|
||||
diff --git a/src/bootstrap/llvm-rebuild-trigger b/src/bootstrap/llvm-rebuild-trigger
|
||||
new file mode 100644
|
||||
index 0000000000..0f18c6a4ac
|
||||
--- /dev/null
|
||||
+++ b/src/rustllvm/llvm-rebuild-trigger
|
||||
@@ -0,0 +1,4 @@
|
||||
+# If this file is modified, then llvm will be (optionally) cleaned and then rebuilt.
|
||||
+# The actual contents of this file do not matter, but to trigger a change on the
|
||||
+# build bots then the contents should be changed so git updates the mtime.
|
||||
+2019-03-18
|
||||
diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
|
||||
index fde40b0d1b..3babbc9e10 100644
|
||||
--- a/src/bootstrap/native.rs
|
||||
+++ b/src/bootstrap/native.rs
|
||||
@@ -67,40 +67,30 @@ impl Step for Llvm {
|
||||
}
|
||||
}
|
||||
|
||||
- let (llvm_info, root, out_dir, llvm_config_ret_dir) = if emscripten {
|
||||
- let info = &builder.emscripten_llvm_info;
|
||||
+ let rebuild_trigger = builder.src.join("src/rustllvm/llvm-rebuild-trigger");
|
||||
+ let rebuild_trigger_contents = t!(fs::read_to_string(&rebuild_trigger));
|
||||
+
|
||||
+ let (out_dir, llvm_config_ret_dir) = if emscripten {
|
||||
let dir = builder.emscripten_llvm_out(target);
|
||||
let config_dir = dir.join("bin");
|
||||
- (info, "src/llvm-emscripten", dir, config_dir)
|
||||
+ (dir, config_dir)
|
||||
} else {
|
||||
- let info = &builder.in_tree_llvm_info;
|
||||
let mut dir = builder.llvm_out(builder.config.build);
|
||||
if !builder.config.build.contains("msvc") || builder.config.ninja {
|
||||
dir.push("build");
|
||||
}
|
||||
- (info, "src/llvm-project/llvm", builder.llvm_out(target), dir.join("bin"))
|
||||
+ (builder.llvm_out(target), dir.join("bin"))
|
||||
};
|
||||
-
|
||||
- if !llvm_info.is_git() {
|
||||
- println!(
|
||||
- "git could not determine the LLVM submodule commit hash. \
|
||||
- Assuming that an LLVM build is necessary.",
|
||||
- );
|
||||
- }
|
||||
-
|
||||
+ let done_stamp = out_dir.join("llvm-finished-building");
|
||||
let build_llvm_config = llvm_config_ret_dir
|
||||
.join(exe("llvm-config", &*builder.config.build));
|
||||
- let done_stamp = out_dir.join("llvm-finished-building");
|
||||
-
|
||||
- if let Some(llvm_commit) = llvm_info.sha() {
|
||||
- if done_stamp.exists() {
|
||||
- let done_contents = t!(fs::read(&done_stamp));
|
||||
+ if done_stamp.exists() {
|
||||
+ let done_contents = t!(fs::read_to_string(&done_stamp));
|
||||
|
||||
- // If LLVM was already built previously and the submodule's commit didn't change
|
||||
- // from the previous build, then no action is required.
|
||||
- if done_contents == llvm_commit.as_bytes() {
|
||||
- return build_llvm_config
|
||||
- }
|
||||
+ // If LLVM was already built previously and contents of the rebuild-trigger file
|
||||
+ // didn't change from the previous build, then no action is required.
|
||||
+ if done_contents == rebuild_trigger_contents {
|
||||
+ return build_llvm_config
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,6 +101,7 @@ impl Step for Llvm {
|
||||
t!(fs::create_dir_all(&out_dir));
|
||||
|
||||
// http://llvm.org/docs/CMake.html
|
||||
+ let root = if self.emscripten { "src/llvm-emscripten" } else { "src/llvm-project/llvm" };
|
||||
let mut cfg = cmake::Config::new(builder.src.join(root));
|
||||
|
||||
let profile = match (builder.config.llvm_optimize, builder.config.llvm_release_debuginfo) {
|
||||
@@ -251,6 +242,11 @@ impl Step for Llvm {
|
||||
channel::CFG_RELEASE_NUM,
|
||||
builder.config.channel,
|
||||
);
|
||||
+ let llvm_info = if self.emscripten {
|
||||
+ &builder.emscripten_llvm_info
|
||||
+ } else {
|
||||
+ &builder.in_tree_llvm_info
|
||||
+ };
|
||||
if let Some(sha) = llvm_info.sha_short() {
|
||||
default_suffix.push_str("-");
|
||||
default_suffix.push_str(sha);
|
||||
@@ -283,9 +279,7 @@ impl Step for Llvm {
|
||||
|
||||
cfg.build();
|
||||
|
||||
- if let Some(llvm_commit) = llvm_info.sha() {
|
||||
- t!(fs::write(&done_stamp, llvm_commit));
|
||||
- }
|
||||
+ t!(fs::write(&done_stamp, &rebuild_trigger_contents));
|
||||
|
||||
build_llvm_config
|
||||
}
|
||||
--
|
||||
2.21.0
|
||||
|
@ -1,17 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>rust@gentoo.org</email>
|
||||
<name>Rust Project</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="cargo">Install cargo component</flag>
|
||||
<flag name="clippy">Install clippy component</flag>
|
||||
<flag name="system-llvm">Use the system LLVM install</flag>
|
||||
<flag name="rls">Install rls component</flag>
|
||||
<flag name="rustfmt">Install rustfmt component</flag>
|
||||
<flag name="wasm">Build support for the wasm32-unknown-unknown
|
||||
target</flag>
|
||||
</use>
|
||||
<maintainer type="project">
|
||||
<email>rust@gentoo.org</email>
|
||||
<name>Rust Project</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="cargo">Install cargo component</flag>
|
||||
<flag name="clippy">Install clippy component</flag>
|
||||
<flag name="system-llvm">Use the system LLVM install</flag>
|
||||
<flag name="rls">Install rls component</flag>
|
||||
<flag name="rustfmt">Install rustfmt component</flag>
|
||||
<flag name="wasm">Build support for the wasm32-unknown-unknown
|
||||
target</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
|
@ -73,11 +73,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
|
@ -72,11 +72,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
|
@ -78,11 +78,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
|
@ -93,11 +93,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
|
@ -18,7 +18,7 @@ else
|
||||
SLOT="stable/${ABI_VER}"
|
||||
MY_P="rustc-${PV}"
|
||||
SRC="${MY_P}-src.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc64 x86"
|
||||
fi
|
||||
|
||||
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
|
||||
@ -96,11 +96,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
@ -268,6 +266,18 @@ src_install() {
|
||||
"${ED}/usr/${abi_libdir}" || die
|
||||
done
|
||||
|
||||
# temp fix for https://bugs.gentoo.org/672816
|
||||
if use x86; then
|
||||
local rust_target wrongdir rightdir
|
||||
rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
|
||||
wrongdir="${ED}/usr/$(get_libdir)/${P}/${P}/rustlib/${rust_target}/codegen-backends"
|
||||
rightdir="${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/codegen-backends"
|
||||
if [[ -e ${wrongdir}/librustc_codegen_llvm-llvm.so ]]; then
|
||||
mv "${wrongdir}" "${rightdir}" || die
|
||||
rm -r "${ED}/usr/$(get_libdir)/${P}/${P}" || die
|
||||
fi
|
||||
fi # end temp fix
|
||||
|
||||
dodoc COPYRIGHT
|
||||
|
||||
# FIXME:
|
@ -1,11 +1,11 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy )
|
||||
|
||||
inherit check-reqs eapi7-ver estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
|
||||
inherit check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
|
||||
|
||||
if [[ ${PV} = *beta* ]]; then
|
||||
betaver=${PV//*beta}
|
||||
@ -18,16 +18,16 @@ else
|
||||
SLOT="stable/${ABI_VER}"
|
||||
MY_P="rustc-${PV}"
|
||||
SRC="${MY_P}-src.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
KEYWORDS="~amd64 arm64 ~ppc64 ~x86"
|
||||
fi
|
||||
|
||||
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
|
||||
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).2"
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
HOMEPAGE="https://www.rust-lang.org/"
|
||||
|
||||
SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
|
||||
$(rust_all_arch_uris rust-${RUST_STAGE0_VERSION})"
|
||||
$(rust_all_arch_uris rust-${RUST_STAGE0_VERSION})"
|
||||
|
||||
ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
|
||||
NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
|
||||
@ -49,6 +49,7 @@ IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm wasm
|
||||
LLVM_DEPEND="
|
||||
|| (
|
||||
sys-devel/llvm:8[llvm_targets_WebAssembly?]
|
||||
wasm? ( =sys-devel/lld-8* )
|
||||
)
|
||||
<sys-devel/llvm-9:=
|
||||
"
|
||||
@ -72,11 +73,15 @@ DEPEND="${COMMON_DEPEND}
|
||||
>=sys-devel/gcc-4.7
|
||||
>=sys-devel/clang-3.5
|
||||
)
|
||||
dev-util/cmake"
|
||||
dev-util/cmake
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
>=app-eselect/eselect-rust-20190311
|
||||
!dev-util/cargo
|
||||
rustfmt? ( !dev-util/rustfmt )"
|
||||
rustfmt? ( !dev-util/rustfmt )
|
||||
"
|
||||
|
||||
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
|
||||
wasm? ( llvm_targets_WebAssembly )
|
||||
x86? ( cpu_flags_x86_sse2 )
|
||||
@ -84,7 +89,7 @@ REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch
|
||||
"${FILESDIR}"/1.34.0-doc-build-fix.patch
|
||||
"${FILESDIR}"/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch
|
||||
"${FILESDIR}"/1.34.0-libressl.patch # bug 684224
|
||||
)
|
||||
|
||||
@ -96,11 +101,9 @@ toml_usex() {
|
||||
|
||||
pre_build_checks() {
|
||||
CHECKREQS_DISK_BUILD="7G"
|
||||
CHECKREQS_MEMORY="4G"
|
||||
eshopts_push -s extglob
|
||||
if is-flagq '-g?(gdb)?([1-9])'; then
|
||||
CHECKREQS_DISK_BUILD="10G"
|
||||
CHECKREQS_MEMORY="16G"
|
||||
fi
|
||||
eshopts_pop
|
||||
check-reqs_pkg_setup
|
||||
@ -124,6 +127,7 @@ src_prepare() {
|
||||
"${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die
|
||||
|
||||
# ugly hack for https://bugs.gentoo.org/679806
|
||||
# we have to keep it until we switch to 1.35.x bootstrap tarball.
|
||||
if use ppc64; then
|
||||
sed -i 's/getentropy/gEtEnTrOpY/g' "${rust_stage0_root}"/bin/cargo || die
|
||||
export OPENSSL_ppccap=0
|
||||
@ -180,6 +184,7 @@ src_configure() {
|
||||
vendor = true
|
||||
extended = ${extended}
|
||||
tools = [${tools}]
|
||||
verbose = 2
|
||||
[install]
|
||||
prefix = "${EPREFIX}/usr"
|
||||
libdir = "$(get_libdir)/${P}"
|
||||
@ -192,7 +197,7 @@ src_configure() {
|
||||
default-linker = "$(tc-getCC)"
|
||||
channel = "stable"
|
||||
rpath = false
|
||||
lld = $(toml_usex wasm)
|
||||
lld = $(usex system-llvm false $(toml_usex wasm))
|
||||
EOF
|
||||
|
||||
for v in $(multilib_get_enabled_abi_pairs); do
|
||||
@ -220,21 +225,22 @@ src_configure() {
|
||||
if use wasm; then
|
||||
cat <<- EOF >> "${S}"/config.toml
|
||||
[target.wasm32-unknown-unknown]
|
||||
linker = "rust-lld"
|
||||
linker = "$(usex system-llvm lld rust-lld)"
|
||||
EOF
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
env $(cat "${S}"/config.env)\
|
||||
"${EPYTHON}" ./x.py build -v --config="${S}"/config.toml -j$(makeopts_jobs) \
|
||||
"${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
|
||||
--exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local rust_target abi_libdir
|
||||
|
||||
env DESTDIR="${D}" "${EPYTHON}" ./x.py install -v || die
|
||||
env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
|
||||
--exclude src/tools/miri || die
|
||||
|
||||
mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die
|
||||
mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die
|
||||
@ -268,6 +274,18 @@ src_install() {
|
||||
"${ED}/usr/${abi_libdir}" || die
|
||||
done
|
||||
|
||||
# temp fix for https://bugs.gentoo.org/672816
|
||||
if use x86; then
|
||||
local rust_target wrongdir rightdir
|
||||
rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
|
||||
wrongdir="${ED}/usr/$(get_libdir)/${P}/${P}/rustlib/${rust_target}/codegen-backends"
|
||||
rightdir="${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/codegen-backends"
|
||||
if [[ -e ${wrongdir}/librustc_codegen_llvm-llvm.so ]]; then
|
||||
mv "${wrongdir}" "${rightdir}" || die
|
||||
rm -r "${ED}/usr/$(get_libdir)/${P}/${P}" || die
|
||||
fi
|
||||
fi # end temp fix
|
||||
|
||||
dodoc COPYRIGHT
|
||||
|
||||
# FIXME:
|
@ -4,9 +4,12 @@ DIST mozjs-24.2.0.tar.bz2 15624530 BLAKE2B 633f3e42011a8395aa4e60842c2de1cb47269
|
||||
DIST mozjs-38.3.0sfink2.tar.bz2 27232902 BLAKE2B 42a039a41b7479a32e22f260cb58f098e1a1d4833f801f193bdd8b75403f94567b9ef2ebe85b2a811fe2f9b27cd934afe1054bd4e7d9aae0b8a80acdec8e42a4 SHA512 debad1fbd21e025c567b083677cfd0a2023ec2aff750241f495ac2977034a7299e068cb3b0b2351c97457119cc8aef563f00416092a70a3a269d20947b700206
|
||||
DIST mozjs-45.0.2.tar.bz2 97508152 BLAKE2B 89600f7e2a3effe71ad140646110aaf3be91cc5313cf227f1d16e796e249e287cc8dbf2599aa4277f2652a83ec3570f58c1c51ef319632254b9ac5caec46bb9a SHA512 84a3cf12e2603e00bcfe518a1a5000f53b21758c1c6b32a0410e63ab7db8d4452028195b0ba3e56144054b06e90f8e5195b4db94dba711f7c75d11da99c6c61d
|
||||
DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d75a223d5e75e4ff90b3b01aab4f7736b4a4e05c47b3a925ff0a74607a0abad3b6583c75d070ef5142009b20ebaf6e4bf SHA512 187b231b246a5ae09e55c0fef77866b316d75f38f4c2e066d5d4325d8da63433027020c929439cab46af3253ac63ab2f780223a8fd2c6ff535b3409bb6c4aa0f
|
||||
DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd106583eb7f640fe2243adc7cbb811dced5cefa94426cceca63468b0112be84078ffcef24cb2b8c1a7b6c8173c0d45 SHA512 5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0
|
||||
DIST mozjs17.0.0.tar.gz 6778934 BLAKE2B a37debf5079fc4c27bb9edd3172c6e7914f6128fac6ffa97b49ac266c477d0916b180fb68ecd0916a52f935959a83d73254b0ba72b4898adc5e3b85927d17d2a SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4
|
||||
DIST spidermonkey-52.0-patches-0.tar.xz 5172 BLAKE2B 8bcf9477de47ef3b882cd3281efa7f77c16ce11fc93f44446a620917adf629fde8290af1dd69f0930a889aacfee3603bf60eb9c1e718a1dfd3e218a1013b6192 SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3
|
||||
DIST spidermonkey-60.0-patches-04.tar.xz 4428 BLAKE2B af78049cd9b3ee6a9b689e6253486c4670fd3b506faade7d745dafaa7af329c0bd15cd35e95528a4c96688230f4803130967fb09b97aae2bda0ce0f73acaaf3e SHA512 fb1326a81512146ba98773d4f7e0c4bc1bff0f076897c13f576fcf63b56f6965efeff633eea9160bca9f9bc4546505901084eabc33bc955de0b7ab3d6334387a
|
||||
DIST spidermonkey-slot0-patches-01.tar.xz 10488 BLAKE2B 4a5195ac11d1076046424fc10d1416d097fb230cd8b0b28ac8b65d379e0c0518586ced0f48f833dea52b13fb5d300e02664657ab2479bfcc343bc358d394d5d7 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a
|
||||
DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
|
||||
DIST spidermonkey-slot17-patches-01.tar.xz 2748 BLAKE2B a55504d726f925096de7e066a1d323154bc796018644f347bc1d012ea6ee8441cc19f30689e06fd26bab5a5d2e8376e90bf2c1930a588be8b48865f7bbc524ea SHA512 21a90f85d156de3cca9811317507162a458f908bb447924fcfbf49b7bb70496b611ce7df90b90775316b8ceafda56692be3bf856b168b83ed40b8a5c668eed3f
|
||||
DIST spidermonkey-slot24-patches-01.tar.xz 3444 BLAKE2B f207577db223d51e315d473f0eefa8a2805fab49acd952fa5796eb4e967c82c76965afcdea1b55ac98c5e94f4321f40c1ea9079d5ebee99fdef950bddee91ab2 SHA512 712250983f726eb2fe7ae243e9ca510b6e5b8fa0f221fe5120c2e2f75334f7e4b10b8ab172869d7333a120529dbc2a513c170533d5ad5af27a2643ce1384bbdb
|
||||
DIST spidermonkey-slot38-patches-01.tar.xz 7472 BLAKE2B 7585aa6f5a84d6ae21e41137fca8da093580182f798f63bfcf2e402e3bf58df4cb3f43cef3eb635044508800f6757247fa3a65ca53230243a455925f436a9510 SHA512 953acee985d192c6d0f18f14c70fdda33a7c8f784c6833ca8b75495044b40a8b3f29b281c40dbfcda0c8570c111a3dd1717c2ef0ffd651c1b50d1f2bff1f6d09
|
||||
|
@ -1,22 +0,0 @@
|
||||
Fix various paths to include MOZ_APP_VERSION
|
||||
|
||||
This has been committed upstream but was not included in
|
||||
the 52.4.0 sources that spidermonkey was rolled from.
|
||||
|
||||
--- a/config/baseconfig.mk 2017-10-03 14:00:45.000000000 -0400
|
||||
+++ b/config/baseconfig.mk 2017-10-03 16:36:10.857663794 -0400
|
||||
@@ -2,10 +2,10 @@
|
||||
# directly in python/mozbuild/mozbuild/base.py for gmake validation.
|
||||
# We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
|
||||
# whether a normal build is happening or whether the check is running.
|
||||
-includedir := $(includedir)/$(MOZ_APP_NAME)
|
||||
-idldir = $(includedir)/idl/$(MOZ_APP_NAME)
|
||||
-installdir = $(libdir)/$(MOZ_APP_NAME)
|
||||
-sdkdir = $(libdir)/$(MOZ_APP_NAME)
|
||||
+includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
+idldir = $(includedir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
+installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
+sdkdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
|
||||
ifeq (.,$(DEPTH))
|
||||
DIST = dist
|
||||
else
|
@ -0,0 +1,32 @@
|
||||
|
||||
# HG changeset patch
|
||||
# User John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
|
||||
# Date 1482966103 -3600
|
||||
# Node ID 1f4d99d8dff27bcc25eff21dc6a16dae63f48595
|
||||
# Parent ce9e9f0dc752896ac7ba00bb0610b3f731e948b0
|
||||
Bug 1326496 - mozbuild: Fix bitness from 32 to 64 bits on alpha. r=glandium
|
||||
|
||||
|
||||
diff --git a/python/mozbuild/mozbuild/configure/constants.py b/python/mozbuild/mozbuild/configure/constants.py
|
||||
--- a/python/mozbuild/mozbuild/configure/constants.py
|
||||
+++ b/python/mozbuild/mozbuild/configure/constants.py
|
||||
@@ -35,17 +35,17 @@ Kernel = EnumString.subclass(
|
||||
'Linux',
|
||||
'NetBSD',
|
||||
'OpenBSD',
|
||||
'WINNT',
|
||||
)
|
||||
|
||||
CPU_bitness = {
|
||||
'aarch64': 64,
|
||||
- 'Alpha': 32,
|
||||
+ 'Alpha': 64,
|
||||
'arm': 32,
|
||||
'hppa': 32,
|
||||
'ia64': 64,
|
||||
'mips32': 32,
|
||||
'mips64': 64,
|
||||
'ppc': 32,
|
||||
'ppc64': 64,
|
||||
's390': 32,
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
@ -19,7 +19,7 @@ SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
|
||||
|
||||
LICENSE="NPL-1.1"
|
||||
SLOT="0/mozjs185"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x64-macos"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x64-macos"
|
||||
IUSE="debug minimal static-libs test"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
@ -1,62 +1,70 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
EAPI=6
|
||||
WANT_AUTOCONF="2.1"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="threads"
|
||||
inherit eutils toolchain-funcs multilib python-any-r1 versionator pax-utils
|
||||
inherit autotools toolchain-funcs multilib python-any-r1 versionator pax-utils
|
||||
|
||||
MY_PN="mozjs"
|
||||
MY_P="${MY_PN}${PV}"
|
||||
MY_PN="js"
|
||||
TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0"
|
||||
DESCRIPTION="Stand-alone JavaScript C library"
|
||||
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
|
||||
SRC_URI="http://archive.mozilla.org/pub/js/${MY_PN}${PV}.tar.gz
|
||||
https://dev.gentoo.org/~axs/distfiles/${PN}-slot17-patches-01.tar.xz"
|
||||
SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
|
||||
https://dev.gentoo.org/~axs/distfiles/${PN}-slot0-patches-02.tar.xz
|
||||
"
|
||||
|
||||
LICENSE="NPL-1.1"
|
||||
SLOT="17"
|
||||
# "MIPS, MacroAssembler is not supported" wrt #491294 for -mips
|
||||
KEYWORDS="alpha amd64 arm -hppa ia64 -mips ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
|
||||
IUSE="debug jit minimal static-libs test"
|
||||
|
||||
REQUIRED_USE="debug? ( jit )"
|
||||
RESTRICT="ia64? ( test )"
|
||||
SLOT="0/mozjs185"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos"
|
||||
IUSE="debug minimal static-libs test"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
BUILDDIR="${S}/js/src"
|
||||
|
||||
RDEPEND=">=dev-libs/nspr-4.9.4
|
||||
virtual/libffi
|
||||
RDEPEND=">=dev-libs/nspr-4.7.0
|
||||
sys-libs/readline:0=
|
||||
>=sys-libs/zlib-1.1.4"
|
||||
x64-macos? ( dev-libs/jemalloc )"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${WORKDIR}"/sm0/${P}-fix-install-symlinks.patch
|
||||
"${WORKDIR}"/sm0/${P}-fix-ppc64.patch
|
||||
"${WORKDIR}"/sm0/${P}-arm_respect_cflags-3.patch
|
||||
"${WORKDIR}"/sm0/${PN}-1.8.7-freebsd-pthreads.patch
|
||||
"${WORKDIR}"/sm0/${P}-perf_event-check.patch
|
||||
"${WORKDIR}"/sm0/${P}-symbol-versions.patch
|
||||
"${WORKDIR}"/sm0/${P}-ia64-fix.patch
|
||||
"${WORKDIR}"/sm0/${P}-ia64-static-strings.patch
|
||||
"${WORKDIR}"/sm0/${P}-isfinite.patch
|
||||
"${FILESDIR}"/${PN}-perl-defined-array-check.patch
|
||||
"${WORKDIR}"/sm0/${PN}-1.8.7-x32.patch
|
||||
"${WORKDIR}"/sm0/${P}-gcc6.patch
|
||||
"${WORKDIR}"/sm0/${P}-drop-asm-volatile-toplevel.patch
|
||||
)
|
||||
|
||||
DOCS=( ${S}/README )
|
||||
HTML_DOCS=( ${BUILDDIR}/README.html )
|
||||
|
||||
pkg_setup(){
|
||||
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
||||
python-any-r1_pkg_setup
|
||||
export LC_ALL="C"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}"/sm17/${PN}-${SLOT}-js-config-shebang.patch
|
||||
epatch "${WORKDIR}"/sm17/${PN}-${SLOT}-ia64-mmap.patch
|
||||
epatch "${WORKDIR}"/sm17/${PN}-17.0.0-fix-file-permissions.patch
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=552786
|
||||
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch
|
||||
pwd
|
||||
|
||||
# Remove obsolete jsuword bug #506160
|
||||
sed -i -e '/jsuword/d' "${BUILDDIR}"/jsval.h ||die "sed failed"
|
||||
epatch_user
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-freebsd* ]]; then
|
||||
# Don't try to be smart, this does not work in cross-compile anyway
|
||||
ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die
|
||||
fi
|
||||
cd "${BUILDDIR}" || die
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
@ -65,17 +73,17 @@ src_configure() {
|
||||
CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
|
||||
AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \
|
||||
LD="$(tc-getLD)" \
|
||||
ac_cv_lib_dnet_dnet_ntoa=no \
|
||||
ac_cv_lib_dnet_stub_dnet_ntoa=no \
|
||||
econf \
|
||||
${myopts} \
|
||||
--enable-jemalloc \
|
||||
--enable-readline \
|
||||
--enable-threadsafe \
|
||||
--with-system-nspr \
|
||||
--enable-system-ffi \
|
||||
--enable-jemalloc \
|
||||
--disable-optimize \
|
||||
--disable-profile-guided-optimization \
|
||||
$(use_enable debug) \
|
||||
$(use_enable jit tracejit) \
|
||||
$(use_enable jit methodjit) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable test tests)
|
||||
}
|
||||
@ -94,12 +102,14 @@ src_compile() {
|
||||
cd "${BUILDDIR}" || die
|
||||
if tc-is-cross-compiler; then
|
||||
tc-export_build_env BUILD_{AR,CC,CXX,RANLIB}
|
||||
cross_make host_jsoplengen host_jskwgen
|
||||
cross_make jscpucfg host_jsoplengen host_jskwgen
|
||||
cross_make -C config nsinstall
|
||||
mv {,native-}jscpucfg || die
|
||||
mv {,native-}host_jskwgen || die
|
||||
mv {,native-}host_jsoplengen || die
|
||||
mv config/{,native-}nsinstall || die
|
||||
sed -i \
|
||||
-e 's@./jscpucfg@./native-jscpucfg@' \
|
||||
-e 's@./host_jskwgen@./native-host_jskwgen@' \
|
||||
-e 's@./host_jsoplengen@./native-host_jsoplengen@' \
|
||||
Makefile || die
|
||||
@ -114,20 +124,20 @@ src_compile() {
|
||||
|
||||
src_test() {
|
||||
cd "${BUILDDIR}/jsapi-tests" || die
|
||||
# for bug 415791
|
||||
pax-mark mr jsapi-tests
|
||||
emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd "${BUILDDIR}" || die
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
if ! use minimal; then
|
||||
if use jit; then
|
||||
pax-mark m "${ED}/usr/bin/js${SLOT}"
|
||||
fi
|
||||
else
|
||||
rm -f "${ED}/usr/bin/js${SLOT}"
|
||||
# bug 437520 , exclude js shell for small systems
|
||||
if ! use minimal ; then
|
||||
dobin shell/js
|
||||
pax-mark m "${ED}/usr/bin/js"
|
||||
fi
|
||||
einstalldocs
|
||||
|
||||
if ! use static-libs; then
|
||||
# We can't actually disable building of static libraries
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
@ -14,7 +14,7 @@ SRC_URI="https://archive.mozilla.org/pub/${PN}/releases/${PV}/${MY_P}.tar.bz2
|
||||
|
||||
LICENSE="NPL-1.1"
|
||||
SLOT="38"
|
||||
KEYWORDS="alpha amd64 ~arm ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
|
||||
IUSE="debug +jit minimal static-libs +system-icu test"
|
||||
|
||||
RESTRICT="ia64? ( test )"
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
@ -16,7 +16,7 @@ SRC_URI="http://ftp.mozilla.org/pub/spidermonkey/prereleases/52/pre1/mozjs-52.9.
|
||||
|
||||
LICENSE="NPL-1.1"
|
||||
SLOT="52"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
|
||||
KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 s390 ~sh ~sparc x86 ~x86-fbsd"
|
||||
IUSE="debug minimal +system-icu test"
|
||||
|
||||
RESTRICT="ia64? ( test )"
|
||||
@ -34,6 +34,8 @@ DEPEND="${RDEPEND}"
|
||||
pkg_setup(){
|
||||
[[ ${MERGE_TYPE} == "binary" ]] || \
|
||||
moz_pkgsetup
|
||||
|
||||
export SHELL="${EPREFIX}/bin/bash"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
@ -46,7 +48,7 @@ src_prepare() {
|
||||
|
||||
eapply "${WORKDIR}/${PN}"
|
||||
eapply "${FILESDIR}"/moz38-dont-hardcode-libc-soname.patch
|
||||
#eapply "${FILESDIR}"/${PN}-52-baseconfig.patch
|
||||
eapply "${FILESDIR}"/${PN}-52.0-fix-alpha-bitness.patch
|
||||
|
||||
eapply_user
|
||||
|
||||
@ -75,6 +77,7 @@ src_configure() {
|
||||
--with-system-nspr \
|
||||
--disable-optimize \
|
||||
--with-intl-api \
|
||||
--disable-gold \
|
||||
$(use_with system-icu) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable test tests) \
|
||||
@ -91,6 +94,7 @@ cross_make() {
|
||||
CC="${BUILD_CC}" \
|
||||
CXX="${BUILD_CXX}" \
|
||||
RANLIB="${BUILD_RANLIB}" \
|
||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
||||
"$@"
|
||||
}
|
||||
src_compile() {
|
||||
@ -120,6 +124,7 @@ src_compile() {
|
||||
fi
|
||||
|
||||
MOZ_MAKE_FLAGS="${MAKEOPTS}" \
|
||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
||||
emake \
|
||||
MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
|
||||
HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
|
||||
@ -133,6 +138,7 @@ src_test() {
|
||||
|
||||
src_install() {
|
||||
cd "${BUILDDIR}" || die
|
||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
if ! use minimal; then
|
||||
|
@ -1,91 +1,87 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
EAPI=6
|
||||
WANT_AUTOCONF="2.1"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="threads"
|
||||
inherit autotools eutils toolchain-funcs multilib python-any-r1 versionator pax-utils
|
||||
inherit autotools check-reqs toolchain-funcs pax-utils mozcoreconf-v5
|
||||
|
||||
MY_PN="mozjs"
|
||||
MY_P="${MY_PN}-${PV/_/.}"
|
||||
DESCRIPTION="Stand-alone JavaScript C library"
|
||||
MY_P="${MY_PN}-${PV/_rc/.rc}"
|
||||
MY_P="${MY_P/_pre/pre}"
|
||||
MY_P="${MY_P%_p[0-9]*}"
|
||||
DESCRIPTION="Stand-alone JavaScript C++ library"
|
||||
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
|
||||
SRC_URI="https://archive.mozilla.org/pub/js/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~axs/distfiles/${PN}-slot24-patches-01.tar.xz"
|
||||
#SRC_URI="https://archive.mozilla.org/pub/spidermonkey/prereleases/60/pre3/${MY_P}.tar.bz2
|
||||
SRC_URI="https://dev.gentoo.org/~axs/distfiles/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~anarchy/mozilla/patchsets/${PN}-60.0-patches-04.tar.xz"
|
||||
|
||||
LICENSE="NPL-1.1"
|
||||
SLOT="24"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
|
||||
IUSE="debug icu jit minimal static-libs +system-icu test"
|
||||
SLOT="60"
|
||||
KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
|
||||
IUSE="debug +jit minimal +system-icu test"
|
||||
|
||||
RESTRICT="ia64? ( test )"
|
||||
|
||||
S="${WORKDIR}/${MY_P%.rc*}"
|
||||
BUILDDIR="${S}/js/src"
|
||||
|
||||
RDEPEND=">=dev-libs/nspr-4.9.4
|
||||
BUILDDIR="${S}/jsobj"
|
||||
|
||||
RDEPEND=">=dev-libs/nspr-4.13.1
|
||||
virtual/libffi
|
||||
sys-libs/readline:0=
|
||||
>=sys-libs/zlib-1.1.4
|
||||
system-icu? ( >=dev-libs/icu-1.51:= )"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
virtual/pkgconfig"
|
||||
>=sys-libs/zlib-1.2.3:=
|
||||
system-icu? ( >=dev-libs/icu-59.1:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
pkg_pretend() {
|
||||
CHECKREQS_DISK_BUILD="2G"
|
||||
|
||||
check-reqs_pkg_setup
|
||||
}
|
||||
pkg_setup(){
|
||||
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
||||
python-any-r1_pkg_setup
|
||||
export LC_ALL="C"
|
||||
fi
|
||||
[[ ${MERGE_TYPE} == "binary" ]] || \
|
||||
moz_pkgsetup
|
||||
export SHELL="${EPREFIX}/bin/bash"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${WORKDIR}"/sm24/${PN}-${SLOT}-system-icu.patch
|
||||
epatch "${WORKDIR}"/sm24/${PN}-24.2.0-fix-file-permissions.patch
|
||||
epatch "${WORKDIR}"/sm24/${PN}-${SLOT}-upward-growing-stack.patch
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=552786
|
||||
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch
|
||||
epatch_user
|
||||
eapply "${WORKDIR}/${PN}"
|
||||
|
||||
eapply_user
|
||||
|
||||
if [[ ${CHOST} == *-freebsd* ]]; then
|
||||
# Don't try to be smart, this does not work in cross-compile anyway
|
||||
ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die
|
||||
fi
|
||||
|
||||
cd "${BUILDDIR}" || die
|
||||
cd "${S}/js/src" || die
|
||||
eautoconf old-configure.in
|
||||
eautoconf
|
||||
|
||||
# there is a default config.cache that messes everything up
|
||||
rm -f "${S}/js/src"/config.cache || die
|
||||
|
||||
mkdir -p "${BUILDDIR}" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export SHELL=/bin/sh
|
||||
cd "${BUILDDIR}" || die
|
||||
|
||||
local myopts=""
|
||||
if use icu; then # make sure system-icu flag only affects icu-enabled build
|
||||
myopts+="$(use_with system-icu)"
|
||||
else
|
||||
myopts+="--without-system-icu"
|
||||
fi
|
||||
|
||||
CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
|
||||
AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \
|
||||
LD="$(tc-getLD)" \
|
||||
ECONF_SOURCE="${S}/js/src" \
|
||||
econf \
|
||||
${myopts} \
|
||||
--enable-jemalloc \
|
||||
--disable-jemalloc \
|
||||
--enable-readline \
|
||||
--enable-threadsafe \
|
||||
--with-system-nspr \
|
||||
--enable-system-ffi \
|
||||
--with-system-zlib \
|
||||
--disable-optimize \
|
||||
$(use_enable icu intl-api) \
|
||||
--with-intl-api \
|
||||
$(use_with system-icu) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable jit yarr-jit) \
|
||||
$(use_enable jit ion) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable test tests)
|
||||
$(use_enable test tests) \
|
||||
XARGS="/usr/bin/xargs" \
|
||||
CONFIG_SHELL="${EPREFIX}/bin/bash" \
|
||||
CC="${CC}" CXX="${CXX}" LD="${LD}" AR="${AR}" RANLIB="${RANLIB}"
|
||||
}
|
||||
|
||||
cross_make() {
|
||||
@ -123,6 +119,8 @@ src_compile() {
|
||||
host_jskwgen.o \
|
||||
host_jsoplengen.o || die
|
||||
fi
|
||||
|
||||
MOZ_MAKE_FLAGS="${MAKEOPTS}" \
|
||||
emake \
|
||||
MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
|
||||
HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
|
||||
@ -130,8 +128,8 @@ src_compile() {
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${BUILDDIR}/jsapi-tests" || die
|
||||
emake check
|
||||
cd "${BUILDDIR}/js/src/jsapi-tests" || die
|
||||
./jsapi-tests || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
@ -140,15 +138,13 @@ src_install() {
|
||||
|
||||
if ! use minimal; then
|
||||
if use jit; then
|
||||
pax-mark m "${ED}/usr/bin/js${SLOT}"
|
||||
pax-mark m "${ED}"usr/bin/js${SLOT}
|
||||
fi
|
||||
else
|
||||
rm -f "${ED}/usr/bin/js${SLOT}"
|
||||
rm -f "${ED}"usr/bin/js${SLOT}
|
||||
fi
|
||||
|
||||
if ! use static-libs; then
|
||||
# We can't actually disable building of static libraries
|
||||
# They're used by the tests and in a few other places
|
||||
find "${D}" -iname '*.a' -delete || die
|
||||
fi
|
||||
# We can't actually disable building of static libraries
|
||||
# They're used by the tests and in a few other places
|
||||
find "${D}" -iname '*.a' -o -iname '*.ajs' -delete || die
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST libunistring-0.9.5.tar.gz 3487957 SHA256 1a8c0772467850bef7197318a95f44abbb678ea83cbf119a3500cc7848276a17 SHA512 89404b8f0fde264c3faa4285e4717487f2b6c348fa9374ccff2251eb3db6dda208fe013056a22f496c1fb099abe7e79b72a203d15499c641e3ac48e7957ba1b4 WHIRLPOOL 445a836b687187faa8b562dff694add9448b7a2770b51748974bead2304f00c2242a3488c20819c250f800f6711d3f594803094aae2b8cb189a1519f2450db20
|
||||
DIST libunistring-0.9.6.tar.gz 3565883 SHA256 9625eec2507f4789ebb6fc48ebda98be0e0168979a2f68aa8b680bf8eeabbd47 SHA512 244f4ef6343047d2dedfdbe536a7a29584a58f668a41ba3183fc86d2f167186acf120708e024e31551ee2f035b9bee35e9ed24a276a4de9359cf08aec198c20a WHIRLPOOL aa279ab2ec4b1943a9d96a43a8a5ab35ae3f477e8ed49634570450bb8bc192e8ddbbe4fb39f4d515e9e834c6bbeb12b2489942d308eab0dd61301fd684abfc29
|
||||
DIST libunistring-0.9.7.tar.gz 3589989 SHA256 9ce081cbee1951b55597b30e7030bda9d7b2f034ef901a135ff3a020be5a41e5 SHA512 43cb60163299a781b57bca326ddeb6333cde0b12d274fcd2b176971c8080ee8868f8c11bf9c524596d3a56dc0213ed1d3246fb805db1de950257c3764eb34ae0 WHIRLPOOL a72fa0efbe9df21924c1312276e574d74ad085a35b74bdf62b2fde3a57fc56bcea70c1a3c64f4f86d43bfecdd5603ca29790c05d1bd13e7e2bf04e53d4813fdf
|
||||
DIST libunistring-0.9.10.tar.gz 3744814 BLAKE2B 3ddc55b8021c0f4822beb83b807bb21dbbf10bbb866747f64e060df3ab822a4143528855e1ce6a13144630bc8daa14f1fa830db77fb605e57cae21d46de804d6 SHA512 690082732fbbd47ab4ffbd6f21d85afece0f8e2ded24982f949f4ae52bf0a981b75ea9bc14ab289e0954cde07f31a7a4c2bb65615a8eb5b2bfa65720310b6fc9
|
||||
|
@ -1,6 +1,5 @@
|
||||
diff -Naur libunistring-0.9.3.orig/Makefile.in libunistring-0.9.3/Makefile.in
|
||||
--- libunistring-0.9.3.orig/Makefile.in 2010-05-02 18:28:21.000000000 -0300
|
||||
+++ libunistring-0.9.3/Makefile.in 2010-09-24 12:45:40.000000000 -0300
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -773,7 +773,7 @@
|
||||
top_srcdir = @top_srcdir@
|
||||
AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
@ -11,7 +11,7 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-3 GPL-3"
|
||||
SLOT="0/2"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~x64-cygwin ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc static-libs"
|
||||
|
||||
PATCHES=(
|
@ -1,35 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="Library for manipulating Unicode and C strings according to Unicode standard"
|
||||
HOMEPAGE="https://www.gnu.org/software/libunistring/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-3 GPL-3"
|
||||
SLOT="0/2"
|
||||
KEYWORDS="amd64 arm x86 ~amd64-linux"
|
||||
IUSE="doc static-libs"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-nodocs.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodoc AUTHORS README ChangeLog || die "dodoc failed"
|
||||
if use doc; then
|
||||
dohtml doc/*.html || die "dohtml failed"
|
||||
doinfo doc/*.info || die "doinfo failed"
|
||||
fi
|
||||
|
||||
emake DESTDIR="${D}" install || die "Install failed"
|
||||
|
||||
prune_libtool_files
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="Library for manipulating Unicode and C strings according to Unicode standard"
|
||||
HOMEPAGE="https://www.gnu.org/software/libunistring/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-3 GPL-3"
|
||||
SLOT="0/2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux"
|
||||
IUSE="doc static-libs"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-nodocs.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
if use doc; then
|
||||
dohtml doc/*.html
|
||||
doinfo doc/*.info
|
||||
fi
|
||||
|
||||
prune_libtool_files
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License, v2 or later
|
||||
|
||||
# @ECLASS: ant-tasks.eclass
|
||||
@ -11,27 +11,37 @@
|
||||
# This eclass provides functionality and default ebuild variables for building
|
||||
# dev-java/ant-* packages easily.
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
0|1|2|3|4|5)
|
||||
die "ant-tasks.eclass: EAPI ${EAPI} is too old."
|
||||
;;
|
||||
6|7)
|
||||
;;
|
||||
*)
|
||||
die "ant-tasks.eclass: EAPI ${EAPI} is not supported yet."
|
||||
;;
|
||||
esac
|
||||
|
||||
# we set ant-core dep ourselves, restricted
|
||||
JAVA_ANT_DISABLE_ANT_CORE_DEP=true
|
||||
# rewriting build.xml for are the testcases has no reason atm
|
||||
JAVA_PKG_BSFIX_ALL=no
|
||||
inherit java-pkg-2 java-ant-2
|
||||
[[ ${EAPI:-0} == [0123456] ]] && inherit eapi7-ver
|
||||
[[ ${EAPI:-0} -eq 6 ]] && inherit eapi7-ver
|
||||
|
||||
EXPORT_FUNCTIONS src_unpack src_compile src_install
|
||||
|
||||
# @ECLASS-VARIABLE: ANT_TASK_JDKVER
|
||||
# @DESCRIPTION:
|
||||
# Affects the >=virtual/jdk version set in DEPEND string. Defaults to 1.5, can
|
||||
# Affects the >=virtual/jdk version set in DEPEND string. Defaults to 1.8, can
|
||||
# be overridden from ebuild BEFORE inheriting this eclass.
|
||||
ANT_TASK_JDKVER=${ANT_TASK_JDKVER-1.5}
|
||||
ANT_TASK_JDKVER=${ANT_TASK_JDKVER-1.8}
|
||||
|
||||
# @ECLASS-VARIABLE: ANT_TASK_JREVER
|
||||
# @DESCRIPTION:
|
||||
# Affects the >=virtual/jre version set in DEPEND string. Defaults to 1.5, can
|
||||
# Affects the >=virtual/jre version set in DEPEND string. Defaults to 1.8, can
|
||||
# be overridden from ebuild BEFORE inheriting this eclass.
|
||||
ANT_TASK_JREVER=${ANT_TASK_JREVER-1.5}
|
||||
ANT_TASK_JREVER=${ANT_TASK_JREVER-1.8}
|
||||
|
||||
# @ECLASS-VARIABLE: ANT_TASK_NAME
|
||||
# @DESCRIPTION:
|
||||
@ -56,31 +66,11 @@ ANT_TASK_DEPNAME=${ANT_TASK_DEPNAME-${ANT_TASK_NAME}}
|
||||
# Version of ant-core this task is intended to register and thus load with.
|
||||
ANT_TASK_PV="${PV}"
|
||||
|
||||
# special care for beta/RC releases
|
||||
if [[ ${PV} == *beta2* ]]; then
|
||||
MY_PV=${PV/_beta2/beta}
|
||||
UPSTREAM_PREFIX="http://people.apache.org/dist/ant/v1.7.1beta2/src"
|
||||
GENTOO_PREFIX="https://dev.gentoo.org/~caster/distfiles"
|
||||
ANT_TASK_PV=$(ver_cut 1-3)
|
||||
elif [[ ${PV} == *_rc* ]]; then
|
||||
MY_PV=${PV/_rc/RC}
|
||||
UPSTREAM_PREFIX="https://dev.gentoo.org/~caster/distfiles"
|
||||
GENTOO_PREFIX="https://dev.gentoo.org/~caster/distfiles"
|
||||
ANT_TASK_PV=$(ver_cut 1-3)
|
||||
else
|
||||
# default for final releases
|
||||
MY_PV=${PV}
|
||||
case ${PV} in
|
||||
1.9.*)
|
||||
UPSTREAM_PREFIX="https://archive.apache.org/dist/ant/source"
|
||||
GENTOO_PREFIX="https://dev.gentoo.org/~tomwij/files/dist"
|
||||
;;
|
||||
*)
|
||||
UPSTREAM_PREFIX="mirror://apache/ant/source"
|
||||
GENTOO_PREFIX="https://dev.gentoo.org/~caster/distfiles"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
# default for final releases
|
||||
MY_PV=${PV}
|
||||
|
||||
UPSTREAM_PREFIX="mirror://apache/ant/source"
|
||||
GENTOO_PREFIX="https://dev.gentoo.org/~fordfrog/distfiles"
|
||||
|
||||
# source/workdir name
|
||||
MY_P="apache-ant-${MY_PV}"
|
||||
@ -101,11 +91,6 @@ if [[ -z "${ANT_TASK_DISABLE_VM_DEPS}" ]]; then
|
||||
DEPEND+=" >=virtual/jdk-${ANT_TASK_JDKVER}"
|
||||
fi
|
||||
|
||||
# we need direct blockers with old ant-tasks for file collisions - bug #252324
|
||||
if ver_test -ge 1.7.1; then
|
||||
DEPEND+=" !dev-java/ant-tasks"
|
||||
fi
|
||||
|
||||
# Would run the full ant test suite for every ant task
|
||||
RESTRICT="test"
|
||||
|
||||
@ -130,7 +115,11 @@ ant-tasks_src_unpack() {
|
||||
cd "${S}"
|
||||
|
||||
# replace build.xml with our modified for split building
|
||||
mv -f "${WORKDIR}"/build.xml .
|
||||
if [ -e "${WORKDIR}"/${PV}-build.patch ] ; then
|
||||
eapply "${WORKDIR}"/${PV}-build.patch
|
||||
else
|
||||
mv -f "${WORKDIR}"/build.xml .
|
||||
fi
|
||||
|
||||
cd lib
|
||||
# remove bundled xerces
|
||||
@ -168,8 +157,6 @@ ant-tasks_src_install() {
|
||||
java-pkg_register-ant-task --version "${ANT_TASK_PV}"
|
||||
|
||||
# create the compatibility symlink
|
||||
if ver_test -ge 1.7.1_beta2; then
|
||||
dodir /usr/share/ant/lib
|
||||
dosym /usr/share/${PN}/lib/${PN}.jar /usr/share/ant/lib/${PN}.jar
|
||||
fi
|
||||
dodir /usr/share/ant/lib
|
||||
dosym /usr/share/${PN}/lib/${PN}.jar /usr/share/ant/lib/${PN}.jar
|
||||
}
|
||||
|
@ -418,6 +418,9 @@ apache-2_pkg_setup() {
|
||||
if use userland_BSD; then
|
||||
elog "On BSD systems you need to add the following line to /boot/loader.conf:"
|
||||
elog " accf_http_load=\"YES\""
|
||||
if use ssl ; then
|
||||
elog " accf_data_load=\"YES\""
|
||||
fi
|
||||
elog
|
||||
fi
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: cmake-utils.eclass
|
||||
@ -419,13 +419,17 @@ _cmake_modify-cmakelists() {
|
||||
grep -qs "<<< Gentoo configuration >>>" "${CMAKE_USE_DIR}"/CMakeLists.txt && return 0
|
||||
|
||||
# Comment out all set (<some_should_be_user_defined_variable> value)
|
||||
# TODO Add QA checker - inform when variable being checked for below is set in CMakeLists.txt
|
||||
find "${CMAKE_USE_DIR}" -name CMakeLists.txt \
|
||||
-exec sed -i -e '/^[[:space:]]*[sS][eE][tT][[:space:]]*([[:space:]]*CMAKE_BUILD_TYPE.*)/{s/^/#IGNORE /g}' {} + \
|
||||
-exec sed -i -e '/^[[:space:]]*[sS][eE][tT][[:space:]]*([[:space:]]*CMAKE_COLOR_MAKEFILE.*)/{s/^/#IGNORE /g}' {} + \
|
||||
-exec sed -i -e '/^[[:space:]]*[sS][eE][tT][[:space:]]*([[:space:]]*CMAKE_INSTALL_PREFIX.*)/{s/^/#IGNORE /g}' {} + \
|
||||
-exec sed -i -e '/^[[:space:]]*[sS][eE][tT][[:space:]]*([[:space:]]*CMAKE_VERBOSE_MAKEFILE.*)/{s/^/#IGNORE /g}' {} + \
|
||||
|| die "${LINENO}: failed to disable hardcoded settings"
|
||||
find "${CMAKE_USE_DIR}" -name CMakeLists.txt -exec sed \
|
||||
-e '/^[[:space:]]*set[[:space:]]*([[:space:]]*CMAKE_BUILD_TYPE[[:space:]].*)/I{s/^/#_cmake_modify_IGNORE /g}' \
|
||||
-e '/^[[:space:]]*set[[:space:]]*([[:space:]]*CMAKE_COLOR_MAKEFILE[[:space:]].*)/I{s/^/#_cmake_modify_IGNORE /g}' \
|
||||
-e '/^[[:space:]]*set[[:space:]]*([[:space:]]*CMAKE_INSTALL_PREFIX[[:space:]].*)/I{s/^/#_cmake_modify_IGNORE /g}' \
|
||||
-e '/^[[:space:]]*set[[:space:]]*([[:space:]]*CMAKE_VERBOSE_MAKEFILE[[:space:]].*)/I{s/^/#G_cmake_modify_IGNORE /g}' \
|
||||
-i {} + || die "${LINENO}: failed to disable hardcoded settings"
|
||||
local x
|
||||
for x in $(find "${CMAKE_USE_DIR}" -name CMakeLists.txt -exec grep -l "^#_cmake_modify_IGNORE" {} +;); do
|
||||
einfo "Hardcoded definition(s) removed in $(echo "${x}" | cut -c $((${#CMAKE_USE_DIR}+2))-):"
|
||||
einfo "$(grep -se '^#_cmake_modify_IGNORE' ${x} | cut -c 22-99)"
|
||||
done
|
||||
|
||||
# NOTE Append some useful summary here
|
||||
cat >> "${CMAKE_USE_DIR}"/CMakeLists.txt <<- _EOF_ || die
|
||||
|
@ -1,9 +1,9 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: cron.eclass
|
||||
# @MAINTAINER:
|
||||
# cron-bugs@gentoo.org
|
||||
# maintainer-needed@gentoo.org
|
||||
# @AUTHOR:
|
||||
# Original Author: Aaron Walker <ka0ttic@gentoo.org>
|
||||
# @BLURB: Some functions for cron
|
||||
|
@ -597,7 +597,16 @@ distutils-r1_python_install() {
|
||||
die "Package installs '${p}' package which is forbidden and likely a bug in the build system."
|
||||
fi
|
||||
done
|
||||
if [[ -d ${root}/usr/$(get_libdir)/pypy/share ]]; then
|
||||
|
||||
local shopt_save=$(shopt -p nullglob)
|
||||
shopt -s nullglob
|
||||
local pypy_dirs=(
|
||||
"${root}/usr/$(get_libdir)"/pypy*/share
|
||||
"${root}/usr/lib"/pypy*/share
|
||||
)
|
||||
${shopt_save}
|
||||
|
||||
if [[ -n ${pypy_dirs} ]]; then
|
||||
local cmd=die
|
||||
[[ ${EAPI} == [45] ]] && cmd=eqawarn
|
||||
"${cmd}" "Package installs 'share' in PyPy prefix, see bug #465546."
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: emboss-r2.eclass
|
||||
@ -58,7 +58,7 @@ RDEPEND="
|
||||
dev-libs/libpcre:3
|
||||
sci-libs/plplot:=
|
||||
sys-libs/zlib
|
||||
mysql? ( virtual/mysql )
|
||||
mysql? ( dev-db/mysql-connector-c:0= )
|
||||
pdf? ( media-libs/libharu:= )
|
||||
png? ( media-libs/gd:2=[png] )
|
||||
postgres? ( dev-db/postgresql:= )
|
||||
|
@ -69,6 +69,13 @@ setup-allowed-flags() {
|
||||
# gcc 4.9
|
||||
-mno-avx512cd -mno-avx512er -mno-avx512f -mno-avx512pf -mno-sha
|
||||
)
|
||||
|
||||
# Allow some safe individual flags. Should come along with the bug reference.
|
||||
ALLOWED_FLAGS+=(
|
||||
# Allow explicit stack realignment to run non-conformant
|
||||
# binaries: bug #677852
|
||||
-mstackrealign
|
||||
)
|
||||
}
|
||||
|
||||
# inverted filters for hardened compiler. This is trying to unpick
|
||||
|
@ -55,7 +55,7 @@ DOCS=${DOCS:-}
|
||||
IUSE="X"
|
||||
|
||||
DEPEND="X? (
|
||||
x11-apps/mkfontdir
|
||||
|| ( >=x11-apps/mkfontscale-1.2.0 x11-apps/mkfontdir )
|
||||
media-fonts/encodings
|
||||
)"
|
||||
RDEPEND=""
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: gnome.org.eclass
|
||||
@ -11,7 +11,8 @@
|
||||
# @DESCRIPTION:
|
||||
# Provide a default SRC_URI for tarball hosted on gnome.org mirrors.
|
||||
|
||||
inherit versionator
|
||||
# versionator inherit kept for older EAPIs due to ebuilds (potentially) relying on it
|
||||
[[ ${EAPI} == [0123456] ]] && inherit eapi7-ver versionator
|
||||
|
||||
# @ECLASS-VARIABLE: GNOME_TARBALL_SUFFIX
|
||||
# @DESCRIPTION:
|
||||
@ -28,7 +29,11 @@ fi
|
||||
# Even though xz-utils are in @system, they must still be added to DEPEND; see
|
||||
# https://archives.gentoo.org/gentoo-dev/msg_a0d4833eb314d1be5d5802a3b710e0a4.xml
|
||||
if [[ ${GNOME_TARBALL_SUFFIX} == "xz" ]]; then
|
||||
DEPEND="${DEPEND} app-arch/xz-utils"
|
||||
if [[ ${EAPI:-0} != [0123456] ]]; then
|
||||
BDEPEND="app-arch/xz-utils"
|
||||
else
|
||||
DEPEND="app-arch/xz-utils"
|
||||
fi
|
||||
fi
|
||||
|
||||
# @ECLASS-VARIABLE: GNOME_ORG_MODULE
|
||||
@ -41,7 +46,7 @@ fi
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
# Major and minor numbers of the version number.
|
||||
: ${GNOME_ORG_PVP:=$(get_version_component_range 1-2)}
|
||||
: ${GNOME_ORG_PVP:=$(ver_cut 1-2)}
|
||||
|
||||
SRC_URI="mirror://gnome/sources/${GNOME_ORG_MODULE}/${GNOME_ORG_PVP}/${GNOME_ORG_MODULE}-${PV}.tar.${GNOME_TARBALL_SUFFIX}"
|
||||
|
||||
|
@ -1,25 +1,25 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: gnome2-utils.eclass
|
||||
# @MAINTAINER:
|
||||
# gnome@gentoo.org
|
||||
# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6
|
||||
# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6 7
|
||||
# @BLURB: Auxiliary functions commonly used by Gnome packages.
|
||||
# @DESCRIPTION:
|
||||
# This eclass provides a set of auxiliary functions needed by most Gnome
|
||||
# packages. It may be used by non-Gnome packages as needed for handling various
|
||||
# Gnome stack related functions such as:
|
||||
# * Gtk+ icon cache management
|
||||
# * GSettings schemas management
|
||||
# * GConf schemas management
|
||||
# * scrollkeeper (old Gnome help system) management
|
||||
|
||||
[[ ${EAPI:-0} == [012345] ]] && inherit multilib
|
||||
inherit eutils xdg-utils
|
||||
[[ ${EAPI:-0} == [0123456] ]] && inherit eutils
|
||||
inherit xdg-utils
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
0|1|2|3|4|5|6) ;;
|
||||
0|1|2|3|4|5|6|7) ;;
|
||||
*) die "EAPI=${EAPI} is not supported" ;;
|
||||
esac
|
||||
|
||||
@ -41,12 +41,6 @@ esac
|
||||
# Path to scrollkeeper-update
|
||||
: ${SCROLLKEEPER_UPDATE_BIN:="/usr/bin/scrollkeeper-update"}
|
||||
|
||||
# @ECLASS-VARIABLE: GTK_UPDATE_ICON_CACHE
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
# Path to gtk-update-icon-cache
|
||||
: ${GTK_UPDATE_ICON_CACHE:="/usr/bin/gtk-update-icon-cache"}
|
||||
|
||||
# @ECLASS-VARIABLE: GLIB_COMPILE_SCHEMAS
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
@ -83,8 +77,6 @@ esac
|
||||
# @DESCRIPTION:
|
||||
# List of gdk-pixbuf loaders provided by the package
|
||||
|
||||
DEPEND=">=sys-apps/sed-4"
|
||||
|
||||
|
||||
# @FUNCTION: gnome2_environment_reset
|
||||
# @DESCRIPTION:
|
||||
@ -102,7 +94,7 @@ gnome2_environment_reset() {
|
||||
# Ensure we don't rely on dconf/gconf while building, bug #511946
|
||||
export GSETTINGS_BACKEND="memory"
|
||||
|
||||
if has ${EAPI:-0} 6; then
|
||||
if has ${EAPI:-0} 6 7; then
|
||||
# Try to cover the packages honoring this variable, bug #508124
|
||||
export GST_INSPECT="$(type -P true)"
|
||||
|
||||
@ -205,72 +197,6 @@ gnome2_gconf_uninstall() {
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: gnome2_icon_savelist
|
||||
# @DESCRIPTION:
|
||||
# Find the icons that are about to be installed and save their location
|
||||
# in the GNOME2_ECLASS_ICONS environment variable. This is only
|
||||
# necessary for eclass implementations that call
|
||||
# gnome2_icon_cache_update conditionally.
|
||||
# This function should be called from pkg_preinst.
|
||||
gnome2_icon_savelist() {
|
||||
has ${EAPI:-0} 0 1 2 && ! use prefix && ED="${D}"
|
||||
pushd "${ED}" > /dev/null || die
|
||||
export GNOME2_ECLASS_ICONS=$(find 'usr/share/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null)
|
||||
popd > /dev/null || die
|
||||
}
|
||||
|
||||
# @FUNCTION: gnome2_icon_cache_update
|
||||
# @DESCRIPTION:
|
||||
# Updates Gtk+ icon cache files under /usr/share/icons.
|
||||
# This function should be called from pkg_postinst and pkg_postrm.
|
||||
gnome2_icon_cache_update() {
|
||||
has ${EAPI:-0} 0 1 2 && ! use prefix && EROOT="${ROOT}"
|
||||
local updater="${EROOT}${GTK_UPDATE_ICON_CACHE}"
|
||||
|
||||
if [[ ! -x "${updater}" ]] ; then
|
||||
debug-print "${updater} is not executable"
|
||||
return
|
||||
fi
|
||||
|
||||
ebegin "Updating icons cache"
|
||||
|
||||
local retval=0
|
||||
local fails=( )
|
||||
|
||||
for dir in "${EROOT%/}"/usr/share/icons/*
|
||||
do
|
||||
if [[ -f "${dir}/index.theme" ]] ; then
|
||||
local rv=0
|
||||
|
||||
"${updater}" -qf "${dir}"
|
||||
rv=$?
|
||||
|
||||
if [[ ! $rv -eq 0 ]] ; then
|
||||
debug-print "Updating cache failed on ${dir}"
|
||||
|
||||
# Add to the list of failures
|
||||
fails+=( "${dir}" )
|
||||
|
||||
retval=2
|
||||
fi
|
||||
elif [[ $(ls "${dir}") = "icon-theme.cache" ]]; then
|
||||
# Clear stale cache files after theme uninstallation
|
||||
rm "${dir}/icon-theme.cache"
|
||||
fi
|
||||
|
||||
if [[ -z $(ls "${dir}") ]]; then
|
||||
# Clear empty theme directories after theme uninstallation
|
||||
rmdir "${dir}"
|
||||
fi
|
||||
done
|
||||
|
||||
eend ${retval}
|
||||
|
||||
for f in "${fails[@]}" ; do
|
||||
eerror "Failed to update cache with icon $f"
|
||||
done
|
||||
}
|
||||
|
||||
# @FUNCTION: gnome2_omf_fix
|
||||
# @DESCRIPTION:
|
||||
# Workaround applied to Makefile rules in order to remove redundant
|
||||
@ -523,3 +449,31 @@ gnome2_disable_deprecation_warning() {
|
||||
ewarn "Failed to disable deprecation warnings in ${makefile}"
|
||||
done
|
||||
}
|
||||
|
||||
case ${EAPI:-0} in
|
||||
0|1|2|3|4|5|6)
|
||||
|
||||
# @FUNCTION: gnome2_icon_savelist
|
||||
# @DESCRIPTION:
|
||||
# Find the icons that are about to be installed and save their location
|
||||
# in the GNOME2_ECLASS_ICONS environment variable. This is only
|
||||
# necessary for eclass implementations that call
|
||||
# gnome2_icon_cache_update conditionally.
|
||||
# This function should be called from pkg_preinst.
|
||||
gnome2_icon_savelist() {
|
||||
has ${EAPI:-0} 0 1 2 && ! use prefix && ED="${D}"
|
||||
pushd "${ED}" > /dev/null || die
|
||||
export GNOME2_ECLASS_ICONS=$(find 'usr/share/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null)
|
||||
popd > /dev/null || die
|
||||
}
|
||||
|
||||
# @FUNCTION: gnome2_icon_cache_update
|
||||
# @DESCRIPTION:
|
||||
# Updates Gtk+ icon cache files under /usr/share/icons.
|
||||
# Deprecated. Please use xdg_icon_cache_update from xdg-utils.eclass
|
||||
gnome2_icon_cache_update() {
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
|
||||
;;
|
||||
esac
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: gnome2.eclass
|
||||
@ -316,7 +316,6 @@ gnome2_src_install() {
|
||||
gnome2_pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
gnome2_gconf_savelist
|
||||
gnome2_icon_savelist
|
||||
gnome2_schemas_savelist
|
||||
gnome2_scrollkeeper_savelist
|
||||
gnome2_gdk_pixbuf_savelist
|
||||
@ -338,9 +337,6 @@ gnome2_pkg_preinst() {
|
||||
gnome2_pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
gnome2_gconf_install
|
||||
if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
|
||||
gnome2_icon_cache_update
|
||||
fi
|
||||
if [[ -n ${GNOME2_ECLASS_GLIB_SCHEMAS} ]]; then
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
@ -362,9 +358,6 @@ gnome2_pkg_postinst() {
|
||||
# Handle scrollkeeper, GSettings, Icons, desktop and mime database updates.
|
||||
gnome2_pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
|
||||
gnome2_icon_cache_update
|
||||
fi
|
||||
if [[ -n ${GNOME2_ECLASS_GLIB_SCHEMAS} ]]; then
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
|
@ -4,7 +4,7 @@
|
||||
# @ECLASS: golang-base.eclass
|
||||
# @MAINTAINER:
|
||||
# William Hubbs <williamh@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 5 6
|
||||
# @SUPPORTED_EAPIS: 5 6 7
|
||||
# @BLURB: Eclass that provides base functions for Go packages.
|
||||
# @DESCRIPTION:
|
||||
# This eclass provides base functions for software written in the Go
|
||||
@ -12,7 +12,7 @@
|
||||
# dev-lang/go.
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
5|6)
|
||||
5|6|7)
|
||||
;;
|
||||
*)
|
||||
die "${ECLASS}: Unsupported eapi (EAPI=${EAPI})"
|
||||
@ -23,12 +23,18 @@ if [[ -z ${_GOLANG_BASE} ]]; then
|
||||
|
||||
_GOLANG_BASE=1
|
||||
|
||||
DEPEND=">=dev-lang/go-1.9"
|
||||
GO_DEPEND=">=dev-lang/go-1.10"
|
||||
if [[ ${EAPI:-0} == [56] ]]; then
|
||||
DEPEND="${GO_DEPEND}"
|
||||
else
|
||||
BDEPEND="${GO_DEPEND}"
|
||||
fi
|
||||
|
||||
# Do not complain about CFLAGS etc since go projects do not use them.
|
||||
QA_FLAGS_IGNORED='.*'
|
||||
|
||||
STRIP_MASK="*.a"
|
||||
# Upstream does not support stripping go packages
|
||||
RESTRICT="strip"
|
||||
|
||||
# @ECLASS-VARIABLE: EGO_PN
|
||||
# @REQUIRED
|
||||
|
@ -4,7 +4,7 @@
|
||||
# @ECLASS: golang-build.eclass
|
||||
# @MAINTAINER:
|
||||
# William Hubbs <williamh@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 5 6
|
||||
# @SUPPORTED_EAPIS: 5 6 7
|
||||
# @BLURB: Eclass for compiling go packages.
|
||||
# @DESCRIPTION:
|
||||
# This eclass provides default src_compile, src_test and src_install
|
||||
@ -13,7 +13,7 @@
|
||||
inherit golang-base
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
5|6)
|
||||
5|6|7)
|
||||
;;
|
||||
*)
|
||||
die "${ECLASS}: Unsupported eapi (EAPI=${EAPI})"
|
||||
|
@ -4,7 +4,7 @@
|
||||
# @ECLASS: golang-vcs-snapshot.eclass
|
||||
# @MAINTAINER:
|
||||
# William Hubbs <williamh@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 5 6
|
||||
# @SUPPORTED_EAPIS: 5 6 7
|
||||
# @BLURB: support eclass for unpacking VCS snapshot tarballs for
|
||||
# software written in the Go programming language
|
||||
# @DESCRIPTION:
|
||||
@ -46,7 +46,7 @@
|
||||
inherit golang-base
|
||||
|
||||
case ${EAPI:-0} in
|
||||
5|6) ;;
|
||||
5|6|7) ;;
|
||||
*) die "${ECLASS} API in EAPI ${EAPI} not yet established."
|
||||
esac
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
# @ECLASS: golang-vcs.eclass
|
||||
# @MAINTAINER:
|
||||
# William Hubbs <williamh@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 5 6
|
||||
# @SUPPORTED_EAPIS: 5 6 7
|
||||
# @BLURB: Eclass for fetching and unpacking go repositories.
|
||||
# @DESCRIPTION:
|
||||
# This eclass is written to ease the maintenance of live ebuilds
|
||||
@ -13,7 +13,7 @@
|
||||
inherit eutils golang-base
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
5|6)
|
||||
5|6|7)
|
||||
;;
|
||||
*)
|
||||
die "${ECLASS}: Unsupported eapi (EAPI=${EAPI})"
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 2004-2018 Gentoo Foundation
|
||||
# Copyright 2004-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: java-utils-2.eclass
|
||||
@ -15,7 +15,10 @@
|
||||
# you should inherit java-pkg-2 for Java packages or java-pkg-opt-2 for packages
|
||||
# that have optional Java support. In addition you can inherit java-ant-2 for
|
||||
# Ant-based packages.
|
||||
inherit eutils versionator multilib
|
||||
|
||||
# EAPI 7 has version functions built-in. Use eapi7-ver for all earlier eclasses.
|
||||
# Keep versionator inheritance in case consumers are using it implicitly.
|
||||
[[ ${EAPI} == [0123456] ]] && inherit eapi7-ver eutils multilib versionator
|
||||
|
||||
IUSE="elibc_FreeBSD"
|
||||
|
||||
@ -1518,8 +1521,8 @@ java-pkg_is-vm-version-eq() {
|
||||
|
||||
local vm_version="$(java-pkg_get-vm-version)"
|
||||
|
||||
vm_version="$(get_version_component_range 1-2 "${vm_version}")"
|
||||
needed_version="$(get_version_component_range 1-2 "${needed_version}")"
|
||||
vm_version="$(ver_cut 1-2 "${vm_version}")"
|
||||
needed_version="$(ver_cut 1-2 "${needed_version}")"
|
||||
|
||||
if [[ -z "${vm_version}" ]]; then
|
||||
debug-print "Could not get JDK version from DEPEND"
|
||||
@ -1570,7 +1573,7 @@ java-pkg_is-vm-version-ge() {
|
||||
debug-print "Could not get JDK version from DEPEND"
|
||||
return 1
|
||||
else
|
||||
if version_is_at_least "${needed_version}" "${vm_version}"; then
|
||||
if ver_test "${vm_version}" -ge "${needed_version}"; then
|
||||
debug-print "Detected a JDK(${vm_version}) >= ${needed_version}"
|
||||
return 0
|
||||
else
|
||||
@ -2029,7 +2032,9 @@ eant() {
|
||||
|
||||
if [[ ${cp#:} ]]; then
|
||||
# It seems ant does not like single quotes around ${cp}
|
||||
antflags="${antflags} -Dgentoo.classpath=\"${cp#:}\""
|
||||
# And ant 1.9.13+ also does not like double quotes around ${cp}
|
||||
# https://bz.apache.org/bugzilla/show_bug.cgi?id=58898
|
||||
antflags="${antflags} -Dgentoo.classpath=${cp#:}"
|
||||
fi
|
||||
|
||||
[[ -n ${JAVA_PKG_DEBUG} ]] && echo ant ${antflags} "${@}"
|
||||
|
@ -123,7 +123,7 @@ get_system_arch() {
|
||||
case $(get_abi_CHOST ${abi}) in
|
||||
mips*l*) echo mipsel ;;
|
||||
mips*) echo mips ;;
|
||||
ppc64le*) echo ppc64le ;;
|
||||
powerpc64le*) echo ppc64le ;;
|
||||
*)
|
||||
case ${abi} in
|
||||
*_fbsd) get_system_arch ${abi%_fbsd} ;;
|
||||
|
@ -36,15 +36,12 @@ export KDE_BUILD_TYPE
|
||||
case ${CATEGORY} in
|
||||
kde-frameworks)
|
||||
[[ ${KDE_BUILD_TYPE} = live ]] && : ${FRAMEWORKS_MINIMAL:=9999}
|
||||
[[ ${PV} = 5.52.0* ]] && : ${QT_MINIMAL:=5.9.4}
|
||||
;;
|
||||
kde-plasma)
|
||||
if [[ ${KDE_BUILD_TYPE} = live && ${PV} != 5.??.49* ]]; then
|
||||
: ${FRAMEWORKS_MINIMAL:=9999}
|
||||
fi
|
||||
;;
|
||||
kde-apps)
|
||||
[[ ${PV} = 18.08.3* ]] && : ${QT_MINIMAL:=5.9.4}
|
||||
[[ ${PV} = 5.15.5 ]] && : ${QT_MINIMAL:=5.11.1}
|
||||
[[ ${PV} = 5.16* ]] && : ${FRAMEWORKS_MINIMAL:=5.58.0}
|
||||
[[ ${KDE_BUILD_TYPE} = live ]] && : ${FRAMEWORKS_MINIMAL:=9999}
|
||||
: ${QT_MINIMAL:=5.12.3}
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -56,17 +53,17 @@ esac
|
||||
# @ECLASS-VARIABLE: FRAMEWORKS_MINIMAL
|
||||
# @DESCRIPTION:
|
||||
# Minimum version of Frameworks to require. This affects add_frameworks_dep.
|
||||
: ${FRAMEWORKS_MINIMAL:=5.52.0}
|
||||
: ${FRAMEWORKS_MINIMAL:=5.57.0}
|
||||
|
||||
# @ECLASS-VARIABLE: PLASMA_MINIMAL
|
||||
# @DESCRIPTION:
|
||||
# Minimum version of Plasma to require. This affects add_plasma_dep.
|
||||
: ${PLASMA_MINIMAL:=5.12.5}
|
||||
: ${PLASMA_MINIMAL:=5.14.5}
|
||||
|
||||
# @ECLASS-VARIABLE: KDE_APPS_MINIMAL
|
||||
# @DESCRIPTION:
|
||||
# Minimum version of KDE Applications to require. This affects add_kdeapps_dep.
|
||||
: ${KDE_APPS_MINIMAL:=18.08.3}
|
||||
: ${KDE_APPS_MINIMAL:=18.12.3}
|
||||
|
||||
# @ECLASS-VARIABLE: KDE_GCC_MINIMAL
|
||||
# @DEFAULT_UNSET
|
||||
@ -74,17 +71,6 @@ esac
|
||||
# Minimum version of active GCC to require. This is checked in kde5.eclass in
|
||||
# kde5_pkg_pretend and kde5_pkg_setup.
|
||||
|
||||
# @ECLASS-VARIABLE: KDEBASE
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# This gets set to a non-zero value when a package is considered a
|
||||
# kdevelop ebuild.
|
||||
if [[ ${KMNAME-${PN}} = kdevelop ]]; then
|
||||
KDEBASE=kdevelop
|
||||
fi
|
||||
|
||||
debug-print "${ECLASS}: ${KDEBASE} ebuild recognized"
|
||||
|
||||
# @FUNCTION: _check_gcc_version
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
@ -138,7 +124,7 @@ _add_category_dep() {
|
||||
|
||||
if [[ -n ${slot} ]] ; then
|
||||
slot=":${slot}"
|
||||
elif [[ ${SLOT%\/*} = 4 || ${SLOT%\/*} = 5 ]] && ! has kde5-meta-pkg ${INHERITED} ; then
|
||||
elif [[ ${SLOT%\/*} = 5 ]] ; then
|
||||
slot=":${SLOT%\/*}"
|
||||
fi
|
||||
|
||||
@ -264,10 +250,10 @@ add_qt_dep() {
|
||||
local slot=${4}
|
||||
|
||||
if [[ -z ${version} ]]; then
|
||||
if [[ ${1} = qtwebkit && $(ver_cut 2 ${QT_MINIMAL}) -ge 9 ]]; then
|
||||
version=5.9.1 # no more upstream release, need bug #624404
|
||||
else
|
||||
version=${QT_MINIMAL}
|
||||
version=${QT_MINIMAL}
|
||||
if [[ ${1} = qtwebkit ]]; then
|
||||
version=5.9.1
|
||||
[[ ${EAPI} != 6 ]] && die "${FUNCNAME} is disallowed for 'qtwebkit' in EAPI 7 and later"
|
||||
fi
|
||||
fi
|
||||
if [[ -z ${slot} ]]; then
|
||||
|
@ -1,25 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: kde5-meta-pkg.eclass
|
||||
# @MAINTAINER:
|
||||
# kde@gentoo.org
|
||||
# @BLURB: This eclass contains boilerplate for KDE meta packages.
|
||||
# @DESCRIPTION:
|
||||
# This eclass should only be used for defining meta packages bundling
|
||||
# software produced by the KDE community.
|
||||
|
||||
if [[ -z ${_KDE5_META_PKG_ECLASS} ]]; then
|
||||
_KDE5_META_PKG_ECLASS=1
|
||||
|
||||
inherit kde5-functions
|
||||
|
||||
HOMEPAGE="https://www.kde.org/"
|
||||
LICENSE="metapackage"
|
||||
SLOT="5"
|
||||
|
||||
if [[ ${CATEGORY} = kde-apps ]]; then
|
||||
RDEPEND+=" !kde-apps/${PN}:4"
|
||||
fi
|
||||
|
||||
fi
|
@ -31,10 +31,10 @@ _KDE5_ECLASS=1
|
||||
# for tests you should proceed with setting VIRTUALX_REQUIRED=test.
|
||||
: ${VIRTUALX_REQUIRED:=manual}
|
||||
|
||||
inherit cmake-utils flag-o-matic gnome2-utils kde5-functions virtualx xdg
|
||||
inherit cmake-utils flag-o-matic kde5-functions virtualx xdg
|
||||
|
||||
case ${EAPI} in
|
||||
6) inherit eapi7-ver eutils ;;
|
||||
6) inherit eapi7-ver eutils gnome2-utils ;;
|
||||
esac
|
||||
|
||||
if [[ ${KDE_BUILD_TYPE} = live ]]; then
|
||||
@ -159,14 +159,7 @@ fi
|
||||
# a proper error message via pkg_nofetch.
|
||||
KDE_UNRELEASED=( )
|
||||
|
||||
if [[ ${KDEBASE} = kdevelop ]]; then
|
||||
HOMEPAGE="https://www.kdevelop.org/"
|
||||
elif [[ ${KMNAME} = kdepim ]]; then
|
||||
HOMEPAGE="https://www.kde.org/applications/office/kontact/"
|
||||
else
|
||||
HOMEPAGE="https://www.kde.org/"
|
||||
fi
|
||||
|
||||
HOMEPAGE="https://kde.org/"
|
||||
LICENSE="GPL-2"
|
||||
|
||||
SLOT=5
|
||||
@ -197,7 +190,7 @@ esac
|
||||
case ${KDE_AUTODEPS} in
|
||||
false) ;;
|
||||
*)
|
||||
DEPEND+=" $(add_frameworks_dep extra-cmake-modules)"
|
||||
BDEPEND+=" $(add_frameworks_dep extra-cmake-modules)"
|
||||
RDEPEND+=" >=kde-frameworks/kf-env-4"
|
||||
COMMONDEPEND+=" $(add_qt_dep qtcore)"
|
||||
|
||||
@ -205,11 +198,6 @@ case ${KDE_AUTODEPS} in
|
||||
if [[ ${PN} != breeze-icons && ${PN} != oxygen-icons ]]; then
|
||||
RDEPEND+=" || ( $(add_frameworks_dep breeze-icons) kde-frameworks/oxygen-icons:* )"
|
||||
fi
|
||||
|
||||
if [[ ${CATEGORY} = kde-apps && ${PV} = 18.08.3 ]]; then
|
||||
[[ ${KDE_BLOCK_SLOT4} = true ]] && RDEPEND+=" !kde-apps/${PN}:4"
|
||||
RDEPEND+=" !kde-apps/kde-l10n"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -224,7 +212,7 @@ case ${KDE_DESIGNERPLUGIN} in
|
||||
false) ;;
|
||||
*)
|
||||
IUSE+=" designer"
|
||||
DEPEND+=" designer? ( $(add_frameworks_dep kdesignerplugin) )"
|
||||
BDEPEND+=" designer? ( $(add_frameworks_dep kdesignerplugin) )"
|
||||
esac
|
||||
|
||||
case ${KDE_EXAMPLES} in
|
||||
@ -238,7 +226,7 @@ case ${KDE_HANDBOOK} in
|
||||
false) ;;
|
||||
*)
|
||||
IUSE+=" +handbook"
|
||||
DEPEND+=" handbook? ( $(add_frameworks_dep kdoctools) )"
|
||||
BDEPEND+=" handbook? ( $(add_frameworks_dep kdoctools) )"
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -247,7 +235,7 @@ case ${KDE_QTHELP} in
|
||||
*)
|
||||
IUSE+=" doc"
|
||||
COMMONDEPEND+=" doc? ( $(add_qt_dep qt-docs) )"
|
||||
DEPEND+=" doc? (
|
||||
BDEPEND+=" doc? (
|
||||
$(add_qt_dep qthelp)
|
||||
>=app-doc/doxygen-1.8.13-r1
|
||||
)"
|
||||
@ -270,6 +258,10 @@ case ${KDE_SELINUX_MODULE} in
|
||||
;;
|
||||
esac
|
||||
|
||||
case ${EAPI} in
|
||||
6) DEPEND+=" ${BDEPEND}" ;;
|
||||
esac
|
||||
|
||||
DEPEND+=" ${COMMONDEPEND} dev-util/desktop-file-utils"
|
||||
RDEPEND+=" ${COMMONDEPEND}"
|
||||
unset COMMONDEPEND
|
||||
@ -278,14 +270,6 @@ if [[ -n ${KMNAME} && ${KMNAME} != ${PN} && ${KDE_BUILD_TYPE} = release ]]; then
|
||||
S=${WORKDIR}/${KMNAME}-${PV}
|
||||
fi
|
||||
|
||||
if [[ -n ${KDEBASE} && ${KDEBASE} = kdevelop && ${KDE_BUILD_TYPE} = release ]]; then
|
||||
if [[ -n ${KMNAME} ]]; then
|
||||
S=${WORKDIR}/${KMNAME}-${PV}
|
||||
else
|
||||
S=${WORKDIR}/${P}
|
||||
fi
|
||||
fi
|
||||
|
||||
_kde_is_unreleased() {
|
||||
local pair
|
||||
for pair in "${KDE_UNRELEASED[@]}" ; do
|
||||
@ -320,8 +304,6 @@ _calculate_src_uri() {
|
||||
;;
|
||||
esac
|
||||
|
||||
DEPEND+=" app-arch/xz-utils"
|
||||
|
||||
case ${CATEGORY} in
|
||||
kde-apps)
|
||||
case ${PV} in
|
||||
@ -351,23 +333,15 @@ _calculate_src_uri() {
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ -z ${SRC_URI} && -n ${KDEBASE} ]] ; then
|
||||
local _kdebase
|
||||
case ${PN} in
|
||||
kdevelop-pg-qt)
|
||||
_kdebase=${PN} ;;
|
||||
*)
|
||||
_kdebase=${KDEBASE} ;;
|
||||
esac
|
||||
if [[ ${PN} = kdevelop* ]]; then
|
||||
case ${PV} in
|
||||
*.*.[6-9]? )
|
||||
SRC_URI="mirror://kde/unstable/${_kdebase}/${PV}/src/${_kmname}-${PV}.tar.xz"
|
||||
SRC_URI="mirror://kde/unstable/kdevelop/${PV}/src/${_kmname}-${PV}.tar.xz"
|
||||
RESTRICT+=" mirror"
|
||||
;;
|
||||
*)
|
||||
SRC_URI="mirror://kde/stable/${_kdebase}/${PV}/src/${_kmname}-${PV}.tar.xz" ;;
|
||||
SRC_URI="mirror://kde/stable/kdevelop/${PV}/src/${_kmname}-${PV}.tar.xz" ;;
|
||||
esac
|
||||
unset _kdebase
|
||||
fi
|
||||
|
||||
if _kde_is_unreleased ; then
|
||||
@ -410,6 +384,10 @@ _calculate_live_repo() {
|
||||
EGIT_BRANCH="Plasma/$(ver_cut 1-2)"
|
||||
fi
|
||||
|
||||
if [[ ${PV} != 9999 && ${PN} = kdevelop* ]]; then
|
||||
EGIT_BRANCH="$(ver_cut 1-2)"
|
||||
fi
|
||||
|
||||
EGIT_REPO_URI="${EGIT_MIRROR}/${_kmname}"
|
||||
}
|
||||
|
||||
@ -632,6 +610,8 @@ kde5_src_configure() {
|
||||
# install mkspecs in the same directory as qt stuff
|
||||
-DKDE_INSTALL_USE_QT_SYS_PATHS=ON
|
||||
)
|
||||
# move handbook outside of doc dir for at least two QA warnings, bug 667138
|
||||
[[ ${EAPI} != 6 ]] && cmakeargs+=( -DKDE_INSTALL_DOCBUNDLEDIR="${EPREFIX}/usr/share/help" )
|
||||
fi
|
||||
|
||||
# allow the ebuild to override what we set here
|
||||
@ -696,14 +676,20 @@ kde5_src_install() {
|
||||
# cmake can't find the tags and qthelp viewers can't find the docs
|
||||
local p=$(best_version dev-qt/qtcore:5)
|
||||
local pv=$(echo ${p/%-r[0-9]*/} | rev | cut -d - -f 1 | rev)
|
||||
if [[ -d ${ED%/}/usr/share/doc/qt-${pv} ]]; then
|
||||
docompress -x /usr/share/doc/qt-${pv}
|
||||
if [[ ${pv} = 5.11* ]]; then
|
||||
#todo: clean up trailing slash check when EAPI <7 is removed
|
||||
if [[ -d ${ED%/}/usr/share/doc/qt-${pv} ]]; then
|
||||
docompress -x /usr/share/doc/qt-${pv}
|
||||
fi
|
||||
fi
|
||||
|
||||
# We don't want /usr/share/doc/HTML to be compressed,
|
||||
# because then khelpcenter can't find the docs
|
||||
if [[ -d ${ED%/}/usr/share/doc/HTML ]]; then
|
||||
docompress -x /usr/share/doc/HTML
|
||||
if [[ ${EAPI} = 6 ]]; then
|
||||
# We don't want /usr/share/doc/HTML to be compressed,
|
||||
# because then khelpcenter can't find the docs
|
||||
#todo: clean up trailing slash check when EAPI <7 is removed
|
||||
if [[ -d ${ED%/}/usr/share/doc/HTML ]]; then
|
||||
docompress -x /usr/share/doc/HTML
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
@ -713,7 +699,6 @@ kde5_src_install() {
|
||||
kde5_pkg_preinst() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
gnome2_icon_savelist
|
||||
xdg_pkg_preinst
|
||||
}
|
||||
|
||||
@ -723,9 +708,6 @@ kde5_pkg_preinst() {
|
||||
kde5_pkg_postinst() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
|
||||
gnome2_icon_cache_update
|
||||
fi
|
||||
xdg_pkg_postinst
|
||||
|
||||
if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
|
||||
@ -744,9 +726,6 @@ kde5_pkg_postinst() {
|
||||
kde5_pkg_postrm() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
if [[ -n ${GNOME2_ECLASS_ICONS} ]]; then
|
||||
gnome2_icon_cache_update
|
||||
fi
|
||||
xdg_pkg_postrm
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: kernel-2.eclass
|
||||
@ -624,8 +624,9 @@ if [[ ${ETYPE} == sources ]]; then
|
||||
IUSE="${IUSE} deblob"
|
||||
|
||||
# Reflect that kernels contain firmware blobs unless otherwise
|
||||
# stripped
|
||||
LICENSE="${LICENSE} !deblob? ( linux-firmware )"
|
||||
# stripped. Starting with version 4.14, the whole firmware
|
||||
# tree has been dropped from the kernel.
|
||||
kernel_is lt 4 14 && LICENSE+=" !deblob? ( linux-firmware )"
|
||||
|
||||
DEPEND+=" deblob? ( ${PYTHON_DEPS} )"
|
||||
|
||||
@ -654,10 +655,10 @@ if [[ ${ETYPE} == sources ]]; then
|
||||
${DEBLOB_URI}
|
||||
${DEBLOB_CHECK_URI}
|
||||
)"
|
||||
else
|
||||
elif kernel_is lt 4 14; then
|
||||
# We have no way to deblob older kernels, so just mark them as
|
||||
# tainted with non-libre materials.
|
||||
LICENSE="${LICENSE} linux-firmware"
|
||||
LICENSE+=" linux-firmware"
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -1226,16 +1227,20 @@ unipatch() {
|
||||
UNIPATCH_LIST_GENPATCHES+=" ${DISTDIR}/${tarball}"
|
||||
debug-print "genpatches tarball: $tarball"
|
||||
|
||||
# check gcc version < 4.9.X uses patch 5000 and = 4.9.X uses patch 5010
|
||||
if [[ $(gcc-major-version) -eq 4 ]] && [[ $(gcc-minor-version) -ne 9 ]]; then
|
||||
# drop 5000_enable-additional-cpu-optimizations-for-gcc-4.9.patch
|
||||
if [[ $UNIPATCH_DROP != *"5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"* ]]; then
|
||||
UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
|
||||
local GCC_MAJOR_VER=$(gcc-major-version)
|
||||
local GCC_MINOR_VER=$(gcc-minor-version)
|
||||
|
||||
# optimization patch for gcc < 8.X and kernel > 4.13
|
||||
if [[ ${GCC_MAJOR_VER} -lt 8 ]] && [[ ${GCC_MAJOR_VER} -gt 4 ]]; then
|
||||
if kernel_is ge 4 13 ; then
|
||||
UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
|
||||
fi
|
||||
else
|
||||
if [[ $UNIPATCH_DROP != *"5000_enable-additional-cpu-optimizations-for-gcc.patch"* ]]; then
|
||||
#drop 5000_enable-additional-cpu-optimizations-for-gcc.patch
|
||||
UNIPATCH_DROP+=" 5000_enable-additional-cpu-optimizations-for-gcc.patch"
|
||||
# optimization patch for gcc >= 8 and kernel ge 4.13
|
||||
elif [[ "${GCC_MAJOR_VER}" -ge 8 ]]; then
|
||||
if kernel_is ge 4 13; then
|
||||
# support old kernels for a period. For now, remove as all gcc versions required are masked
|
||||
UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc.patch"
|
||||
UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
@ -7,7 +7,7 @@
|
||||
# @AUTHOR:
|
||||
# 0xd34df00d@gmail.com
|
||||
# NightNord@niifaq.ru
|
||||
# @SUPPORTED_EAPIS: 6
|
||||
# @SUPPORTED_EAPIS: 6 7
|
||||
# @BLURB: Common functions and setup utilities for the LeechCraft app
|
||||
# @DESCRIPTION:
|
||||
# The leechcraft eclass contains a common set of functions and steps
|
||||
@ -22,7 +22,7 @@
|
||||
# Only EAPI >=6 is supported
|
||||
|
||||
case ${EAPI:-0} in
|
||||
6) ;;
|
||||
6|7) ;;
|
||||
*) die "EAPI not supported, bug ebuild mantainer" ;;
|
||||
esac
|
||||
|
||||
|
@ -638,6 +638,8 @@ linux-mod_src_compile() {
|
||||
set_arch_to_kernel
|
||||
ABI="${KERNEL_ABI}"
|
||||
|
||||
[[ -n ${KERNEL_DIR} ]] && addpredict "${KERNEL_DIR}/null.dwo"
|
||||
|
||||
BUILD_TARGETS=${BUILD_TARGETS:-clean module}
|
||||
strip_modulenames;
|
||||
cd "${S}"
|
||||
@ -702,6 +704,8 @@ linux-mod_src_install() {
|
||||
|
||||
local modulename libdir srcdir objdir i n
|
||||
|
||||
[[ -n ${KERNEL_DIR} ]] && addpredict "${KERNEL_DIR}/null.dwo"
|
||||
|
||||
strip_modulenames;
|
||||
for i in ${MODULE_NAMES}
|
||||
do
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: llvm.eclass
|
||||
@ -6,7 +6,7 @@
|
||||
# Michał Górny <mgorny@gentoo.org>
|
||||
# @AUTHOR:
|
||||
# Michał Górny <mgorny@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 6
|
||||
# @SUPPORTED_EAPIS: 6 7
|
||||
# @BLURB: Utility functions to build against slotted LLVM
|
||||
# @DESCRIPTION:
|
||||
# The llvm.eclass provides utility functions that can be used to build
|
||||
@ -17,20 +17,21 @@
|
||||
# a proper dependency string yourself to guarantee that appropriate
|
||||
# version of LLVM is installed.
|
||||
#
|
||||
# Example use for a package supporting LLVM 3.8 to 5:
|
||||
# Example use for a package supporting LLVM 5 to 7:
|
||||
# @CODE
|
||||
# inherit cmake-utils llvm
|
||||
#
|
||||
# RDEPEND="
|
||||
# <sys-devel/llvm-6_rc:=
|
||||
# <sys-devel/llvm-8:=
|
||||
# || (
|
||||
# sys-devel/llvm:7
|
||||
# sys-devel/llvm:6
|
||||
# sys-devel/llvm:5
|
||||
# sys-devel/llvm:4
|
||||
# >=sys-devel/llvm-3.8:0
|
||||
# )
|
||||
# "
|
||||
# DEPEND=${RDEPEND}
|
||||
#
|
||||
# LLVM_MAX_SLOT=5
|
||||
# LLVM_MAX_SLOT=7
|
||||
#
|
||||
# # only if you need to define one explicitly
|
||||
# pkg_setup() {
|
||||
@ -46,11 +47,12 @@
|
||||
# # note: do not use := on both clang and llvm, it can match different
|
||||
# # slots then. clang pulls llvm in, so we can skip the latter.
|
||||
# RDEPEND="
|
||||
# >=sys-devel/clang-4:=[llvm_targets_AMDGPU(+)]
|
||||
# >=sys-devel/clang-6:=[llvm_targets_AMDGPU(+)]
|
||||
# "
|
||||
# DEPEND=${RDEPEND}
|
||||
#
|
||||
# llvm_check_deps() {
|
||||
# has_version "sys-devel/clang:${LLVM_SLOT}[llvm_targets_AMDGPU(+)]"
|
||||
# has_version -d "sys-devel/clang:${LLVM_SLOT}[llvm_targets_AMDGPU(+)]"
|
||||
# }
|
||||
# @CODE
|
||||
|
||||
@ -58,7 +60,7 @@ case "${EAPI:-0}" in
|
||||
0|1|2|3|4|5)
|
||||
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
|
||||
;;
|
||||
6)
|
||||
6|7)
|
||||
;;
|
||||
*)
|
||||
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
|
||||
@ -79,14 +81,22 @@ if [[ ! ${_LLVM_ECLASS} ]]; then
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
# Correct values of LLVM slots, newest first.
|
||||
declare -g -r _LLVM_KNOWN_SLOTS=( 8 7 6 5 4 )
|
||||
declare -g -r _LLVM_KNOWN_SLOTS=( 9 8 7 6 5 4 )
|
||||
|
||||
# @FUNCTION: get_llvm_prefix
|
||||
# @USAGE: [<max_slot>]
|
||||
# @USAGE: [-b|-d] [<max_slot>]
|
||||
# @DESCRIPTION:
|
||||
# Find the newest LLVM install that is acceptable for the package,
|
||||
# and print an absolute path to it.
|
||||
#
|
||||
# If -b is specified, the checks are performed relative to BROOT,
|
||||
# and BROOT-path is returned. This is appropriate when your package
|
||||
# calls llvm-config executable. -b is supported since EAPI 7.
|
||||
#
|
||||
# If -d is specified, the checks are performed relative to ESYSROOT,
|
||||
# and ESYSROOT-path is returned. This is appropriate when your package
|
||||
# uses CMake find_package(LLVM). -d is the default.
|
||||
#
|
||||
# If <max_slot> is specified, then only LLVM versions that are not newer
|
||||
# than <max_slot> will be considered. Otherwise, all LLVM versions would
|
||||
# be considered acceptable. The function does not support specifying
|
||||
@ -103,6 +113,37 @@ declare -g -r _LLVM_KNOWN_SLOTS=( 8 7 6 5 4 )
|
||||
get_llvm_prefix() {
|
||||
debug-print-function ${FUNCNAME} "${@}"
|
||||
|
||||
local hv_switch=-d
|
||||
while [[ ${1} == -* ]]; do
|
||||
case ${1} in
|
||||
-b|-d) hv_switch=${1};;
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
local prefix=
|
||||
if [[ ${EAPI} != 6 ]]; then
|
||||
case ${hv_switch} in
|
||||
-b)
|
||||
prefix=${BROOT}
|
||||
;;
|
||||
-d)
|
||||
prefix=${ESYSROOT}
|
||||
;;
|
||||
esac
|
||||
else
|
||||
case ${hv_switch} in
|
||||
-b)
|
||||
die "${FUNCNAME} -b is not supported in EAPI ${EAPI}"
|
||||
;;
|
||||
-d)
|
||||
prefix=${EPREFIX}
|
||||
hv_switch=
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
local max_slot=${1}
|
||||
local slot
|
||||
for slot in "${_LLVM_KNOWN_SLOTS[@]}"; do
|
||||
@ -120,10 +161,10 @@ get_llvm_prefix() {
|
||||
llvm_check_deps || continue
|
||||
else
|
||||
# check if LLVM package is installed
|
||||
has_version "sys-devel/llvm:${slot}" || continue
|
||||
has_version ${hv_switch} "sys-devel/llvm:${slot}" || continue
|
||||
fi
|
||||
|
||||
echo "${EPREFIX}/usr/lib/llvm/${slot}"
|
||||
echo "${prefix}/usr/lib/llvm/${slot}"
|
||||
return
|
||||
done
|
||||
|
||||
@ -134,8 +175,8 @@ get_llvm_prefix() {
|
||||
|
||||
# fallback to :0
|
||||
# assume it's always <= 4 (the lower max_slot allowed)
|
||||
if has_version "sys-devel/llvm:0"; then
|
||||
echo "${EPREFIX}/usr"
|
||||
if has_version ${hv_switch} "sys-devel/llvm:0"; then
|
||||
echo "${prefix}/usr"
|
||||
return
|
||||
fi
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: ltprune.eclass
|
||||
@ -11,7 +11,7 @@
|
||||
#
|
||||
# Discouraged. Whenever possible, please use much simpler:
|
||||
# @CODE
|
||||
# find "${D}" -name '*.la' -delete || die
|
||||
# find "${D}" -name '*.la' -type f -delete || die
|
||||
# @CODE
|
||||
|
||||
if [[ -z ${_LTPRUNE_ECLASS} ]]; then
|
||||
|
@ -39,16 +39,6 @@ case ${EAPI:-0} in
|
||||
*) die "EAPI=${EAPI} is not supported" ;;
|
||||
esac
|
||||
|
||||
if [[ ${__MESON_AUTO_DEPEND+set} == "set" ]] ; then
|
||||
# See if we were included already, but someone changed the value
|
||||
# of MESON_AUTO_DEPEND on us. We could reload the entire
|
||||
# eclass at that point, but that adds overhead, and it's trivial
|
||||
# to re-order inherit in eclasses/ebuilds instead. #409611
|
||||
if [[ ${__MESON_AUTO_DEPEND} != ${MESON_AUTO_DEPEND} ]] ; then
|
||||
die "MESON_AUTO_DEPEND changed value between inherits; please inherit meson.eclass first! ${__MESON_AUTO_DEPEND} -> ${MESON_AUTO_DEPEND}"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -z ${_MESON_ECLASS} ]]; then
|
||||
|
||||
inherit ninja-utils python-utils-r1 toolchain-funcs
|
||||
@ -60,23 +50,14 @@ EXPORT_FUNCTIONS src_configure src_compile src_test src_install
|
||||
if [[ -z ${_MESON_ECLASS} ]]; then
|
||||
_MESON_ECLASS=1
|
||||
|
||||
MESON_DEPEND=">=dev-util/meson-0.45.1
|
||||
MESON_DEPEND=">=dev-util/meson-0.48.2
|
||||
>=dev-util/ninja-1.7.2"
|
||||
|
||||
# @ECLASS-VARIABLE: MESON_AUTO_DEPEND
|
||||
# @DESCRIPTION:
|
||||
# Set to 'no' to disable automatically adding to DEPEND. This lets
|
||||
# ebuilds form conditional depends by using ${MESON_DEPEND} in
|
||||
# their own DEPEND string.
|
||||
: ${MESON_AUTO_DEPEND:=yes}
|
||||
if [[ ${MESON_AUTO_DEPEND} != "no" ]] ; then
|
||||
if [[ ${EAPI:-0} == [0123456] ]]; then
|
||||
DEPEND=${MESON_DEPEND}
|
||||
else
|
||||
BDEPEND=${MESON_DEPEND}
|
||||
fi
|
||||
if [[ ${EAPI:-0} == [6] ]]; then
|
||||
DEPEND=${MESON_DEPEND}
|
||||
else
|
||||
BDEPEND=${MESON_DEPEND}
|
||||
fi
|
||||
__MESON_AUTO_DEPEND=${MESON_AUTO_DEPEND} # See top of eclass
|
||||
|
||||
# @ECLASS-VARIABLE: BUILD_DIR
|
||||
# @DEFAULT_UNSET
|
||||
@ -207,6 +188,19 @@ meson_use() {
|
||||
usex "$1" "-D${2-$1}=true" "-D${2-$1}=false"
|
||||
}
|
||||
|
||||
# @FUNCTION: meson_feature
|
||||
# @USAGE: <USE flag> [option name]
|
||||
# @DESCRIPTION:
|
||||
# Given a USE flag and meson project option, outputs a string like:
|
||||
#
|
||||
# -Doption=enabled
|
||||
# -Doption=disabled
|
||||
#
|
||||
# If the project option is unspecified, it defaults to the USE flag.
|
||||
meson_feature() {
|
||||
usex "$1" "-D${2-$1}=enabled" "-D${2-$1}=disabled"
|
||||
}
|
||||
|
||||
# @FUNCTION: meson_src_configure
|
||||
# @USAGE: [extra meson arguments]
|
||||
# @DESCRIPTION:
|
||||
|
@ -129,7 +129,7 @@ RDEPEND=">=app-text/hunspell-1.2:=
|
||||
system-cairo? ( >=x11-libs/cairo-1.12[X,xcb] >=x11-libs/pixman-0.19.2 )
|
||||
system-icu? ( >=dev-libs/icu-58.1:= )
|
||||
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
|
||||
system-libevent? ( >=dev-libs/libevent-2.0:0= )
|
||||
system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
|
||||
system-sqlite? ( >=dev-db/sqlite-3.17.0:3[secure-delete,debug=] )
|
||||
system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] )
|
||||
system-harfbuzz? ( >=media-libs/harfbuzz-1.3.3:0= >=media-gfx/graphite2-1.3.8 )
|
||||
|
@ -112,9 +112,12 @@ RDEPEND=">=app-text/hunspell-1.5.4:=
|
||||
x11-libs/libXt
|
||||
system-icu? ( >=dev-libs/icu-59.1:= )
|
||||
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
|
||||
system-libevent? ( >=dev-libs/libevent-2.0:0= )
|
||||
system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
|
||||
system-sqlite? ( >=dev-db/sqlite-3.23.1:3[secure-delete,debug=] )
|
||||
system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] )
|
||||
system-libvpx? (
|
||||
>=media-libs/libvpx-1.5.0:0=[postproc]
|
||||
<media-libs/libvpx-1.8:0=[postproc]
|
||||
)
|
||||
system-harfbuzz? ( >=media-libs/harfbuzz-1.4.2:0= >=media-gfx/graphite2-1.3.9-r1 )
|
||||
"
|
||||
|
||||
@ -155,9 +158,31 @@ DEPEND="app-arch/zip
|
||||
app-arch/unzip
|
||||
>=sys-devel/binutils-2.30
|
||||
sys-apps/findutils
|
||||
clang? (
|
||||
>=sys-devel/llvm-4.0.1[gold]
|
||||
>=sys-devel/lld-4.0.1
|
||||
|| (
|
||||
(
|
||||
sys-devel/clang:8
|
||||
!clang? ( sys-devel/llvm:8 )
|
||||
clang? (
|
||||
=sys-devel/lld-8*
|
||||
sys-devel/llvm:8[gold]
|
||||
)
|
||||
)
|
||||
(
|
||||
sys-devel/clang:7
|
||||
!clang? ( sys-devel/llvm:7 )
|
||||
clang? (
|
||||
=sys-devel/lld-7*
|
||||
sys-devel/llvm:7[gold]
|
||||
)
|
||||
)
|
||||
(
|
||||
sys-devel/clang:6
|
||||
!clang? ( sys-devel/llvm:6 )
|
||||
clang? (
|
||||
=sys-devel/lld-6*
|
||||
sys-devel/llvm:6[gold]
|
||||
)
|
||||
)
|
||||
)
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
elibc_glibc? (
|
||||
@ -218,6 +243,11 @@ mozconfig_config() {
|
||||
# Must pass release in order to properly select linker
|
||||
mozconfig_annotate 'Enable by Gentoo' --enable-release
|
||||
|
||||
# Set correct update channel, bug 677722
|
||||
if [[ -n "${MOZ_ESR}" ]] ; then
|
||||
mozconfig_annotate 'set update channel to ESR' --enable-update-channel=esr
|
||||
fi
|
||||
|
||||
# Avoid auto-magic on linker
|
||||
if use clang ; then
|
||||
# This is upstream's default
|
||||
@ -331,8 +361,6 @@ mozconfig_config() {
|
||||
if use clang ; then
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1423822
|
||||
mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
|
||||
elif use arm ; then
|
||||
mozconfig_annotate 'elf-hack is broken on arm' --disable-elf-hack
|
||||
fi
|
||||
|
||||
# Modifications to better support ARM, bug 553364
|
||||
|
@ -21,6 +21,7 @@ inherit multilib toolchain-funcs flag-o-matic python-any-r1 versionator
|
||||
IUSE="${IUSE} custom-cflags custom-optimization"
|
||||
|
||||
DEPEND="virtual/pkgconfig
|
||||
dev-lang/python:2.7[ncurses,sqlite,ssl,threads(+)]
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
# @FUNCTION: mozconfig_annotate
|
||||
@ -239,7 +240,7 @@ mozconfig_init() {
|
||||
|
||||
# We need to append flags for gcc-6 support
|
||||
if [[ $(gcc-major-version) -ge 6 ]]; then
|
||||
append-cxxflags -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns -fno-schedule-insns2
|
||||
append-cxxflags -flifetime-dse=1
|
||||
fi
|
||||
|
||||
# Use the MOZILLA_FIVE_HOME for the rpath
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 2013-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: multilib-build.eclass
|
||||
@ -45,8 +45,10 @@ _MULTILIB_FLAGS=(
|
||||
abi_mips_n32:n32
|
||||
abi_mips_n64:n64
|
||||
abi_mips_o32:o32
|
||||
abi_ppc_32:ppc,ppc_aix,ppc_macos
|
||||
abi_ppc_64:ppc64
|
||||
# abi_ppc_32:ppc,ppc_aix,ppc_macos
|
||||
# abi_ppc_64:ppc64
|
||||
abi_riscv_lp64d:lp64d
|
||||
abi_riscv_lp64:lp64
|
||||
abi_s390_32:s390
|
||||
abi_s390_64:s390x
|
||||
)
|
||||
@ -479,30 +481,38 @@ multilib_prepare_wrappers() {
|
||||
#elif defined(__i386__) /* plain x86 */
|
||||
# error "abi_x86_32 not supported by the package."
|
||||
#elif defined(__mips__)
|
||||
# if(_MIPS_SIM == _ABIN32) /* n32 */
|
||||
# error "abi_mips_n32 not supported by the package."
|
||||
# elif(_MIPS_SIM == _ABI64) /* n64 */
|
||||
# error "abi_mips_n64 not supported by the package."
|
||||
# elif(_MIPS_SIM == _ABIO32) /* o32 */
|
||||
# error "abi_mips_o32 not supported by the package."
|
||||
# endif
|
||||
# if(_MIPS_SIM == _ABIN32) /* n32 */
|
||||
# error "abi_mips_n32 not supported by the package."
|
||||
# elif(_MIPS_SIM == _ABI64) /* n64 */
|
||||
# error "abi_mips_n64 not supported by the package."
|
||||
# elif(_MIPS_SIM == _ABIO32) /* o32 */
|
||||
# error "abi_mips_o32 not supported by the package."
|
||||
# endif
|
||||
#elif defined(__riscv)
|
||||
# if defined(__riscv_float_abi_double)
|
||||
# error "abi_riscv_lp64d not supported by the package."
|
||||
# elif defined(__riscv_float_abi_single)
|
||||
# error "abi_riscv_lp64f not supported by the package."
|
||||
# else
|
||||
# error "abi_riscv_lp64 not supported by the package."
|
||||
# endif
|
||||
#elif defined(__sparc__)
|
||||
# if defined(__arch64__)
|
||||
# error "abi_sparc_64 not supported by the package."
|
||||
# error "abi_sparc_64 not supported by the package."
|
||||
# else
|
||||
# error "abi_sparc_32 not supported by the package."
|
||||
# error "abi_sparc_32 not supported by the package."
|
||||
# endif
|
||||
#elif defined(__s390__)
|
||||
# if defined(__s390x__)
|
||||
# error "abi_s390_64 not supported by the package."
|
||||
# error "abi_s390_64 not supported by the package."
|
||||
# else
|
||||
# error "abi_s390_32 not supported by the package."
|
||||
# error "abi_s390_32 not supported by the package."
|
||||
# endif
|
||||
#elif defined(__powerpc__) || defined(__ppc__)
|
||||
# if defined(__powerpc64__) || defined(__ppc64__)
|
||||
# error "abi_ppc_64 not supported by the package."
|
||||
# error "abi_ppc_64 not supported by the package."
|
||||
# else
|
||||
# error "abi_ppc_32 not supported by the package."
|
||||
# error "abi_ppc_32 not supported by the package."
|
||||
# endif
|
||||
#elif defined(SWIG) /* https://sourceforge.net/p/swig/bugs/799/ */
|
||||
# error "Native ABI not supported by the package."
|
||||
|
@ -385,6 +385,20 @@ multilib_env() {
|
||||
: ${MULTILIB_ABIS=ppc64 ppc}
|
||||
: ${DEFAULT_ABI=ppc64}
|
||||
;;
|
||||
riscv64*)
|
||||
export CFLAGS_lp64d=${CFLAGS_lp64d--mabi=lp64d}
|
||||
export CHOST_lp64d=${CTARGET}
|
||||
export CTARGET_lp64d=${CTARGET}
|
||||
export LIBDIR_lp64d="lib64/lp64d"
|
||||
|
||||
export CFLAGS_lp64=${CFLAGS_lp64--mabi=lp64}
|
||||
export CHOST_lp64=${CTARGET}
|
||||
export CTARGET_lp64=${CTARGET}
|
||||
export LIBDIR_lp64="lib64/lp64"
|
||||
|
||||
: ${MULTILIB_ABIS=lp64d lp64}
|
||||
: ${DEFAULT_ABI=lp64d}
|
||||
;;
|
||||
s390x*)
|
||||
export CFLAGS_s390=${CFLAGS_s390--m31} # the 31 is not a typo
|
||||
export CHOST_s390=${CTARGET/s390x/s390}
|
||||
|
@ -1,540 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: mysql-cmake.eclass
|
||||
# @MAINTAINER:
|
||||
# Maintainers:
|
||||
# - MySQL Team <mysql-bugs@gentoo.org>
|
||||
# - Robin H. Johnson <robbat2@gentoo.org>
|
||||
# - Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
|
||||
# - Brian Evans <grknight@gentoo.org>
|
||||
# @BLURB: This eclass provides the support for cmake based mysql releases
|
||||
# @DESCRIPTION:
|
||||
# The mysql-cmake.eclass provides the support to build the mysql
|
||||
# ebuilds using the cmake build system. This eclass provides
|
||||
# the src_prepare, src_configure, src_compile, and src_install
|
||||
# phase hooks.
|
||||
|
||||
inherit cmake-utils flag-o-matic multilib prefix eutils toolchain-funcs versionator
|
||||
|
||||
#
|
||||
# HELPER FUNCTIONS:
|
||||
#
|
||||
|
||||
# @FUNCTION: mysql_cmake_disable_test
|
||||
# @DESCRIPTION:
|
||||
# Helper function to disable specific tests.
|
||||
mysql-cmake_disable_test() {
|
||||
|
||||
local rawtestname testname testsuite reason mysql_disabled_file mysql_disabled_dir
|
||||
rawtestname="${1}" ; shift
|
||||
reason="${@}"
|
||||
ewarn "test '${rawtestname}' disabled: '${reason}'"
|
||||
|
||||
testsuite="${rawtestname/.*}"
|
||||
testname="${rawtestname/*.}"
|
||||
for mysql_disabled_file in \
|
||||
${S}/mysql-test/disabled.def \
|
||||
${S}/mysql-test/t/disabled.def ; do
|
||||
[[ -f ${mysql_disabled_file} ]] && break
|
||||
done
|
||||
#mysql_disabled_file="${S}/mysql-test/t/disabled.def"
|
||||
#einfo "rawtestname=${rawtestname} testname=${testname} testsuite=${testsuite}"
|
||||
echo ${testname} : ${reason} >> "${mysql_disabled_file}"
|
||||
|
||||
if [[ ( -n ${testsuite} ) && ( ${testsuite} != "main" ) ]]; then
|
||||
for mysql_disabled_file in \
|
||||
${S}/mysql-test/suite/${testsuite}/disabled.def \
|
||||
${S}/mysql-test/suite/${testsuite}/t/disabled.def \
|
||||
FAILED ; do
|
||||
[[ -f ${mysql_disabled_file} ]] && break
|
||||
done
|
||||
if [[ ${mysql_disabled_file} != "FAILED" ]]; then
|
||||
echo "${testname} : ${reason}" >> "${mysql_disabled_file}"
|
||||
else
|
||||
for mysql_disabled_dir in \
|
||||
${S}/mysql-test/suite/${testsuite} \
|
||||
${S}/mysql-test/suite/${testsuite}/t \
|
||||
FAILED ; do
|
||||
[[ -d ${mysql_disabled_dir} ]] && break
|
||||
done
|
||||
if [[ ${mysql_disabled_dir} != "FAILED" ]]; then
|
||||
echo "${testname} : ${reason}" >> "${mysql_disabled_dir}/disabled.def"
|
||||
else
|
||||
ewarn "Could not find testsuite disabled.def location for ${rawtestname}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-cmake_use_plugin
|
||||
# @DESCRIPTION:
|
||||
# Helper function to enable/disable plugins by use flags
|
||||
# cmake-utils_use_with is not enough as some references check WITH_ (0|1)
|
||||
# and some check WITHOUT_. Also, this can easily extend to non-storage plugins.
|
||||
mysql-cmake_use_plugin() {
|
||||
[[ -z $2 ]] && die "mysql-cmake_use_plugin <USE flag> <flag name>"
|
||||
if use_if_iuse $1 ; then
|
||||
echo "-DWITH_$2=1 -DPLUGIN_$2=YES"
|
||||
else
|
||||
echo "-DWITHOUT_$2=1 -DWITH_$2=0 -DPLUGIN_$2=NO"
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: configure_cmake_locale
|
||||
# @DESCRIPTION:
|
||||
# Helper function to configure locale cmake options
|
||||
configure_cmake_locale() {
|
||||
|
||||
if use_if_iuse minimal ; then
|
||||
:
|
||||
elif ! in_iuse server || use_if_iuse server ; then
|
||||
if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
|
||||
ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
|
||||
ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
|
||||
ewarn "You MUST file bugs without these variables set."
|
||||
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
|
||||
-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
|
||||
)
|
||||
|
||||
elif ! use latin1 ; then
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=utf8
|
||||
-DDEFAULT_COLLATION=utf8_general_ci
|
||||
)
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=latin1
|
||||
-DDEFAULT_COLLATION=latin1_swedish_ci
|
||||
)
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: configure_cmake_minimal
|
||||
# @DESCRIPTION:
|
||||
# Helper function to configure minimal build
|
||||
configure_cmake_minimal() {
|
||||
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_SERVER=1
|
||||
-DWITHOUT_EMBEDDED_SERVER=1
|
||||
-DEXTRA_CHARSETS=none
|
||||
-DINSTALL_SQLBENCHDIR=
|
||||
-DWITHOUT_ARCHIVE_STORAGE_ENGINE=1
|
||||
-DWITHOUT_BLACKHOLE_STORAGE_ENGINE=1
|
||||
-DWITHOUT_CSV_STORAGE_ENGINE=1
|
||||
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
|
||||
-DWITHOUT_HEAP_STORAGE_ENGINE=1
|
||||
-DWITHOUT_INNOBASE_STORAGE_ENGINE=1
|
||||
-DWITHOUT_MYISAMMRG_STORAGE_ENGINE=1
|
||||
-DWITHOUT_MYISAM_STORAGE_ENGINE=1
|
||||
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
|
||||
-DPLUGIN_ARCHIVE=NO
|
||||
-DPLUGIN_BLACKHOLE=NO
|
||||
-DPLUGIN_CSV=NO
|
||||
-DPLUGIN_FEDERATED=NO
|
||||
-DPLUGIN_HEAP=NO
|
||||
-DPLUGIN_INNOBASE=NO
|
||||
-DPLUGIN_MYISAMMRG=NO
|
||||
-DPLUGIN_MYISAM=NO
|
||||
-DPLUGIN_PARTITION=NO
|
||||
)
|
||||
}
|
||||
|
||||
# @FUNCTION: configure_cmake_standard
|
||||
# @DESCRIPTION:
|
||||
# Helper function to configure standard build
|
||||
configure_cmake_standard() {
|
||||
|
||||
mycmakeargs+=(
|
||||
-DEXTRA_CHARSETS=all
|
||||
-DMYSQL_USER=mysql
|
||||
-DMYSQL_UNIX_ADDR=${EPREFIX}/var/run/mysqld/mysqld.sock
|
||||
$(cmake-utils_use_disable !static SHARED)
|
||||
$(cmake-utils_use_with debug)
|
||||
$(cmake-utils_use_with embedded EMBEDDED_SERVER)
|
||||
$(cmake-utils_use_with profiling)
|
||||
$(cmake-utils_use_enable systemtap DTRACE)
|
||||
)
|
||||
|
||||
if use static; then
|
||||
mycmakeargs+=( -DWITH_PIC=1 )
|
||||
fi
|
||||
|
||||
if use jemalloc; then
|
||||
mycmakeargs+=( -DWITH_SAFEMALLOC=OFF )
|
||||
fi
|
||||
|
||||
if use tcmalloc; then
|
||||
mycmakeargs+=( -DWITH_SAFEMALLOC=OFF )
|
||||
fi
|
||||
|
||||
# Storage engines
|
||||
mycmakeargs+=(
|
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=1
|
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
|
||||
-DWITH_CSV_STORAGE_ENGINE=1
|
||||
-DWITH_HEAP_STORAGE_ENGINE=1
|
||||
-DWITH_INNOBASE_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAMMRG_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAM_STORAGE_ENGINE=1
|
||||
-DWITH_PARTITION_STORAGE_ENGINE=1
|
||||
)
|
||||
|
||||
if in_iuse pbxt ; then
|
||||
mycmakeargs+=( $(cmake-utils_use_with pbxt PBXT_STORAGE_ENGINE) )
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
|
||||
|
||||
# Federated{,X} must be treated special otherwise they will not be built as plugins
|
||||
if ! use extraengine ; then
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
|
||||
-DPLUGIN_FEDERATED=NO
|
||||
-DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1
|
||||
-DPLUGIN_FEDERATEDX=NO )
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
$(mysql-cmake_use_plugin oqgraph OQGRAPH)
|
||||
$(mysql-cmake_use_plugin sphinx SPHINX)
|
||||
$(mysql-cmake_use_plugin tokudb TOKUDB)
|
||||
$(mysql-cmake_use_plugin pam AUTH_PAM)
|
||||
)
|
||||
|
||||
if mysql_version_is_at_least 10.0.5 ; then
|
||||
# CassandraSE needs Apache Thrift which is not in portage
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_CASSANDRA=1 -DWITH_CASSANDRA=0
|
||||
-DPLUGIN_CASSANDRA=NO
|
||||
$(mysql-cmake_use_plugin extraengine SEQUENCE)
|
||||
$(mysql-cmake_use_plugin extraengine SPIDER)
|
||||
$(mysql-cmake_use_plugin extraengine CONNECT)
|
||||
-DCONNECT_WITH_MYSQL=1
|
||||
$(cmake-utils_use xml CONNECT_WITH_LIBXML2)
|
||||
$(cmake-utils_use odbc CONNECT_WITH_ODBC)
|
||||
)
|
||||
fi
|
||||
|
||||
if in_iuse mroonga ; then
|
||||
use mroonga || mycmakeargs+=( -DWITHOUT_MROONGA=1 )
|
||||
else
|
||||
mycmakeargs+=( -DWITHOUT_MROONGA=1 )
|
||||
fi
|
||||
|
||||
if in_iuse galera ; then
|
||||
mycmakeargs+=( $(cmake-utils_use_with galera WSREP) )
|
||||
fi
|
||||
|
||||
if mysql_version_is_at_least "10.1.1" ; then
|
||||
mycmakeargs+=( $(cmake-utils_use_with innodb-lz4 INNODB_LZ4)
|
||||
$(cmake-utils_use_with innodb-lzo INNODB_LZO) )
|
||||
fi
|
||||
|
||||
if in_iuse innodb-snappy ; then
|
||||
mycmakeargs+=( $(cmake-utils_use_with innodb-snappy INNODB_SNAPPY) )
|
||||
fi
|
||||
|
||||
if mysql_version_is_at_least "10.1.2" ; then
|
||||
mycmakeargs+=( $(mysql-cmake_use_plugin cracklib CRACKLIB_PASSWORD_CHECK ) )
|
||||
fi
|
||||
|
||||
# The build forces this to be defined when cross-compiling. We pass it
|
||||
# all the time for simplicity and to make sure it is actually correct.
|
||||
mycmakeargs+=( -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) )
|
||||
else
|
||||
mycmakeargs+=( $(cmake-utils_use_with extraengine FEDERATED_STORAGE_ENGINE) )
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "percona-server" ]]; then
|
||||
mycmakeargs+=(
|
||||
$(cmake-utils_use_with pam PAM)
|
||||
)
|
||||
if in_iuse tokudb ; then
|
||||
# TokuDB Backup plugin requires valgrind unconditionally
|
||||
mycmakeargs+=(
|
||||
$(mysql-cmake_use_plugin tokudb TOKUDB)
|
||||
$(usex tokudb-backup-plugin "" -DTOKUDB_BACKUP_DISABLED=1)
|
||||
)
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mysql-cluster" ]]; then
|
||||
# TODO: This really should include the following options,
|
||||
# but the memcached package doesn't install the files it seeks.
|
||||
# -DWITH_BUNDLED_MEMCACHED=OFF
|
||||
# -DMEMCACHED_HOME=${EPREFIX}/usr
|
||||
mycmakeargs+=(
|
||||
-DWITH_BUNDLED_LIBEVENT=OFF
|
||||
$(cmake-utils_use_with java NDB_JAVA)
|
||||
)
|
||||
fi
|
||||
}
|
||||
|
||||
#
|
||||
# EBUILD FUNCTIONS
|
||||
#
|
||||
|
||||
# @FUNCTION: mysql-cmake_src_prepare
|
||||
# @DESCRIPTION:
|
||||
# Apply patches to the source code and remove unneeded bundled libs.
|
||||
mysql-cmake_src_prepare() {
|
||||
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
cd "${S}"
|
||||
|
||||
if [[ ${MY_EXTRAS_VER} != none ]]; then
|
||||
|
||||
# Apply the patches for this MySQL version
|
||||
EPATCH_SUFFIX="patch"
|
||||
mkdir -p "${EPATCH_SOURCE}" || die "Unable to create epatch directory"
|
||||
# Clean out old items
|
||||
rm -f "${EPATCH_SOURCE}"/*
|
||||
# Now link in right patches
|
||||
mysql_mv_patches
|
||||
# And apply
|
||||
epatch
|
||||
fi
|
||||
|
||||
# last -fPIC fixup, per bug #305873
|
||||
i="${S}"/storage/innodb_plugin/plug.in
|
||||
[[ -f ${i} ]] && sed -i -e '/CFLAGS/s,-prefer-non-pic,,g' "${i}"
|
||||
|
||||
rm -f "scripts/mysqlbug"
|
||||
if use jemalloc && ! ( [[ ${PN} == "mariadb" ]] && mysql_version_is_at_least "5.5.33" ); then
|
||||
echo "TARGET_LINK_LIBRARIES(mysqld jemalloc)" >> "${S}/sql/CMakeLists.txt" || die
|
||||
fi
|
||||
|
||||
if use tcmalloc; then
|
||||
echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S}/sql/CMakeLists.txt"
|
||||
fi
|
||||
|
||||
if in_iuse tokudb ; then
|
||||
# Don't build bundled xz-utils
|
||||
if [[ -d "${S}/storage/tokudb/ft-index" ]] ; then
|
||||
rm -f "${S}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake" || die
|
||||
touch "${S}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake" || die
|
||||
sed -i 's/ build_lzma//' "${S}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die
|
||||
elif [[ -d "${S}/storage/tokudb/PerconaFT" ]] ; then
|
||||
rm "${S}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die
|
||||
touch "${S}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die
|
||||
sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die
|
||||
sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die
|
||||
fi
|
||||
|
||||
if [[ -d "${S}/plugin/tokudb-backup-plugin" ]] && ! use tokudb-backup-plugin ; then
|
||||
rm -r "${S}/plugin/tokudb-backup-plugin/Percona-TokuBackup" || die
|
||||
fi
|
||||
fi
|
||||
|
||||
# Remove the bundled groonga if it exists
|
||||
# There is no CMake flag, it simply checks for existance
|
||||
if [[ -d "${S}"/storage/mroonga/vendor/groonga ]] ; then
|
||||
rm -r "${S}"/storage/mroonga/vendor/groonga || die "could not remove packaged groonga"
|
||||
fi
|
||||
|
||||
cmake-utils_src_prepare
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-cmake_src_configure
|
||||
# @DESCRIPTION:
|
||||
# Configure mysql to build the code for Gentoo respecting the use flags.
|
||||
mysql-cmake_src_configure() {
|
||||
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
CMAKE_BUILD_TYPE="RelWithDebInfo"
|
||||
|
||||
# debug hack wrt #497532
|
||||
mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug "" "-DNDEBUG")"
|
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug "" "-DNDEBUG")"
|
||||
-DCMAKE_INSTALL_PREFIX=${EPREFIX}/usr
|
||||
-DMYSQL_DATADIR=${EPREFIX}/var/lib/mysql
|
||||
-DSYSCONFDIR=${EPREFIX}/etc/mysql
|
||||
-DINSTALL_BINDIR=bin
|
||||
-DINSTALL_DOCDIR=share/doc/${P}
|
||||
-DINSTALL_DOCREADMEDIR=share/doc/${P}
|
||||
-DINSTALL_INCLUDEDIR=include/mysql
|
||||
-DINSTALL_INFODIR=share/info
|
||||
-DINSTALL_LIBDIR=$(get_libdir)
|
||||
-DINSTALL_ELIBDIR=$(get_libdir)/mysql
|
||||
-DINSTALL_MANDIR=share/man
|
||||
-DINSTALL_MYSQLDATADIR=${EPREFIX}/var/lib/mysql
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mysql
|
||||
-DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test
|
||||
-DINSTALL_PLUGINDIR=$(get_libdir)/mysql/plugin
|
||||
-DINSTALL_SBINDIR=sbin
|
||||
-DINSTALL_SCRIPTDIR=share/mysql/scripts
|
||||
-DINSTALL_SQLBENCHDIR=share/mysql
|
||||
-DINSTALL_SUPPORTFILESDIR=${EPREFIX}/usr/share/mysql
|
||||
-DWITH_COMMENT="Gentoo Linux ${PF}"
|
||||
$(cmake-utils_use_with test UNIT_TESTS)
|
||||
-DWITH_LIBEDIT=0
|
||||
-DWITH_ZLIB=system
|
||||
-DWITHOUT_LIBWRAP=1
|
||||
-DENABLED_LOCAL_INFILE=1
|
||||
$(cmake-utils_use_enable static-libs STATIC_LIBS)
|
||||
-DWITH_SSL=$(usex ssl system bundled)
|
||||
-DWITH_DEFAULT_COMPILER_OPTIONS=0
|
||||
-DWITH_DEFAULT_FEATURE_SET=0
|
||||
)
|
||||
|
||||
if in_iuse bindist ; then
|
||||
mycmakeargs+=(
|
||||
-DWITH_READLINE=$(usex bindist 1 0)
|
||||
-DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1)
|
||||
$(usex bindist -DHAVE_BFD_H=0 '')
|
||||
)
|
||||
fi
|
||||
|
||||
mycmakeargs+=( -DWITH_EDITLINE=system )
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
|
||||
mycmakeargs+=(
|
||||
-DWITH_JEMALLOC=$(usex jemalloc system)
|
||||
)
|
||||
mysql_version_is_at_least "10.0.9" && mycmakeargs+=( -DWITH_PCRE=system )
|
||||
fi
|
||||
|
||||
configure_cmake_locale
|
||||
|
||||
if use_if_iuse minimal ; then
|
||||
configure_cmake_minimal
|
||||
else
|
||||
configure_cmake_standard
|
||||
fi
|
||||
|
||||
# Bug #114895, bug #110149
|
||||
filter-flags "-O" "-O[01]"
|
||||
|
||||
CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing"
|
||||
CXXFLAGS="${CXXFLAGS} -felide-constructors"
|
||||
# Causes linkage failures. Upstream bug #59607 removes it
|
||||
if ! mysql_version_is_at_least "5.6" ; then
|
||||
CXXFLAGS="${CXXFLAGS} -fno-implicit-templates"
|
||||
fi
|
||||
# As of 5.7, exceptions and rtti are used!
|
||||
if [[ ${PN} -eq 'percona-server' ]] && mysql_version_is_at_least "5.6.26" ; then
|
||||
CXXFLAGS="${CXXFLAGS} -fno-rtti"
|
||||
elif ! mysql_version_is_at_least "5.7" ; then
|
||||
CXXFLAGS="${CXXFLAGS} -fno-exceptions -fno-rtti"
|
||||
fi
|
||||
export CXXFLAGS
|
||||
|
||||
# bug #283926, with GCC4.4, this is required to get correct behavior.
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-cmake_src_compile
|
||||
# @DESCRIPTION:
|
||||
# Compile the mysql code.
|
||||
mysql-cmake_src_compile() {
|
||||
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
cmake-utils_src_compile
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-cmake_src_install
|
||||
# @DESCRIPTION:
|
||||
# Install mysql.
|
||||
mysql-cmake_src_install() {
|
||||
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
cmake-utils_src_install
|
||||
|
||||
if ! in_iuse tools || use_if_iuse tools ; then
|
||||
# Convenience links
|
||||
einfo "Making Convenience links for mysqlcheck multi-call binary"
|
||||
dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze"
|
||||
dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair"
|
||||
dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize"
|
||||
fi
|
||||
|
||||
# Create a mariadb_config symlink
|
||||
[[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && dosym "/usr/bin/mysql_config" "/usr/bin/mariadb_config"
|
||||
|
||||
# INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir
|
||||
rm -Rf "${ED}/usr/data"
|
||||
|
||||
# Various junk (my-*.cnf moved elsewhere)
|
||||
einfo "Removing duplicate /usr/share/mysql files"
|
||||
|
||||
# Unless they explicitly specific USE=test, then do not install the
|
||||
# testsuite. It DOES have a use to be installed, esp. when you want to do a
|
||||
# validation of your database configuration after tuning it.
|
||||
if ! use test ; then
|
||||
rm -rf "${D}"/${MY_SHAREDSTATEDIR}/mysql-test
|
||||
fi
|
||||
|
||||
# Configuration stuff
|
||||
case ${MYSQL_PV_MAJOR} in
|
||||
5.[1-4]*) mysql_mycnf_version="5.1" ;;
|
||||
5.5) mysql_mycnf_version="5.5" ;;
|
||||
5.[6-9]|6*|7*|8*|9*|10*) mysql_mycnf_version="5.6" ;;
|
||||
esac
|
||||
einfo "Building default my.cnf (${mysql_mycnf_version})"
|
||||
insinto "${MY_SYSCONFDIR#${EPREFIX}}"
|
||||
[[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf
|
||||
mycnf_src="my.cnf-${mysql_mycnf_version}"
|
||||
sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
|
||||
"${FILESDIR}/${mycnf_src}" \
|
||||
> "${TMPDIR}/my.cnf.ok" || die
|
||||
use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR}/my.cnf.ok"
|
||||
if use latin1 ; then
|
||||
sed -i \
|
||||
-e "/character-set/s|utf8|latin1|g" \
|
||||
"${TMPDIR}/my.cnf.ok" || die
|
||||
fi
|
||||
eprefixify "${TMPDIR}/my.cnf.ok"
|
||||
newins "${TMPDIR}/my.cnf.ok" my.cnf
|
||||
|
||||
# Minimal builds don't have the MySQL server
|
||||
if use_if_iuse minimal ; then
|
||||
:
|
||||
elif ! in_iuse server || use_if_iuse server; then
|
||||
einfo "Including support files and sample configurations"
|
||||
docinto "support-files"
|
||||
for script in \
|
||||
"${S}"/support-files/my-*.cnf.sh \
|
||||
"${S}"/support-files/magic \
|
||||
"${S}"/support-files/ndb-config-2-node.ini.sh
|
||||
do
|
||||
[[ -f $script ]] && dodoc "${script}"
|
||||
done
|
||||
|
||||
docinto "scripts"
|
||||
for script in "${S}"/scripts/mysql* ; do
|
||||
[[ ( -f $script ) && ( ${script%.sh} == ${script} ) ]] && dodoc "${script}"
|
||||
done
|
||||
fi
|
||||
|
||||
#Remove mytop if perl is not selected
|
||||
[[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && ! use perl \
|
||||
&& rm -f "${ED}/usr/bin/mytop"
|
||||
|
||||
in_iuse client-libs && ! use client-libs && return
|
||||
|
||||
# Percona has decided to rename libmysqlclient to libperconaserverclient
|
||||
# Use a symlink to preserve linkages for those who don't use mysql_config
|
||||
if [[ ${PN} == "percona-server" ]] && mysql_version_is_at_least "5.5.36" ; then
|
||||
dosym libperconaserverclient.so /usr/$(get_libdir)/libmysqlclient.so
|
||||
dosym libperconaserverclient.so /usr/$(get_libdir)/libmysqlclient_r.so
|
||||
if use static-libs ; then
|
||||
dosym libperconaserverclient.a /usr/$(get_libdir)/libmysqlclient.a
|
||||
dosym libperconaserverclient.a /usr/$(get_libdir)/libmysqlclient_r.a
|
||||
fi
|
||||
fi
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -1,914 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: mysql-v2.eclass
|
||||
# @MAINTAINER:
|
||||
# Maintainers:
|
||||
# - MySQL Team <mysql-bugs@gentoo.org>
|
||||
# - Robin H. Johnson <robbat2@gentoo.org>
|
||||
# - Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
|
||||
# - Brian Evans <grknight@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 4 5
|
||||
# @BLURB: This eclass provides most of the functions for mysql ebuilds
|
||||
# @DESCRIPTION:
|
||||
# The mysql-v2.eclass is the base eclass to build the mysql and
|
||||
# alternative projects (mariadb and percona) ebuilds.
|
||||
# This eclass uses the mysql-autotools and mysql-cmake eclasses for the
|
||||
# specific bits related to the build system.
|
||||
# It provides the src_unpack, src_prepare, src_configure, src_compile,
|
||||
# src_install, pkg_preinst, pkg_postinst, pkg_config and pkg_postrm
|
||||
# phase hooks.
|
||||
|
||||
# @ECLASS-VARIABLE: BUILD
|
||||
# @DESCRIPTION:
|
||||
# Build type of the mysql version
|
||||
: ${BUILD:=autotools}
|
||||
|
||||
case ${BUILD} in
|
||||
"cmake")
|
||||
BUILD_INHERIT="mysql-cmake"
|
||||
;;
|
||||
"autotools")
|
||||
BUILD_INHERIT="mysql-autotools"
|
||||
|
||||
WANT_AUTOCONF="latest"
|
||||
WANT_AUTOMAKE="latest"
|
||||
;;
|
||||
*)
|
||||
die "${BUILD} is not a valid build system for mysql"
|
||||
;;
|
||||
esac
|
||||
|
||||
MYSQL_EXTRAS=""
|
||||
|
||||
# @ECLASS-VARIABLE: MYSQL_EXTRAS_VER
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# The version of the MYSQL_EXTRAS repo to use to build mysql
|
||||
# Use "none" to disable it's use
|
||||
[[ ${MY_EXTRAS_VER} == "live" ]] && MYSQL_EXTRAS="git-r3"
|
||||
|
||||
inherit eutils flag-o-matic ${MYSQL_EXTRAS} ${BUILD_INHERIT} mysql_fx versionator toolchain-funcs user
|
||||
|
||||
#
|
||||
# Supported EAPI versions and export functions
|
||||
#
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
4|5) ;;
|
||||
*) die "Unsupported EAPI: ${EAPI}" ;;
|
||||
esac
|
||||
|
||||
EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_install pkg_preinst pkg_postinst pkg_config pkg_postrm
|
||||
|
||||
#
|
||||
# VARIABLES:
|
||||
#
|
||||
|
||||
# Shorten the path because the socket path length must be shorter than 107 chars
|
||||
# and we will run a mysql server during test phase
|
||||
S="${WORKDIR}/mysql"
|
||||
|
||||
[[ ${MY_EXTRAS_VER} == "latest" ]] && MY_EXTRAS_VER="20090228-0714Z"
|
||||
if [[ ${MY_EXTRAS_VER} == "live" ]]; then
|
||||
EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/mysql-extras
|
||||
EGIT_CLONE_TYPE=shallow
|
||||
fi
|
||||
|
||||
# @ECLASS-VARIABLE: MYSQL_PV_MAJOR
|
||||
# @DESCRIPTION:
|
||||
# Upstream MySQL considers the first two parts of the version number to be the
|
||||
# major version. Upgrades that change major version should always run
|
||||
# mysql_upgrade.
|
||||
MYSQL_PV_MAJOR="$(get_version_component_range 1-2 ${PV})"
|
||||
|
||||
# Cluster is a special case...
|
||||
if [[ ${PN} == "mysql-cluster" ]]; then
|
||||
case ${PV} in
|
||||
6.1*|7.0*|7.1*) MYSQL_PV_MAJOR=5.1 ;;
|
||||
7.2*) MYSQL_PV_MAJOR=5.5 ;;
|
||||
7.3*) MYSQL_PV_MAJOR=5.6 ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# MariaDB has left the numbering schema but keeping compatibility
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
|
||||
case ${PV} in
|
||||
10.0*|10.1*) MYSQL_PV_MAJOR="5.6" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# @ECLASS-VARIABLE: MYSQL_VERSION_ID
|
||||
# @DESCRIPTION:
|
||||
# MYSQL_VERSION_ID will be:
|
||||
# major * 10e6 + minor * 10e4 + micro * 10e2 + gentoo revision number, all [0..99]
|
||||
# This is an important part, because many of the choices the MySQL ebuild will do
|
||||
# depend on this variable.
|
||||
# In particular, the code below transforms a $PVR like "5.0.18-r3" in "5001803"
|
||||
# We also strip off upstream's trailing letter that they use to respin tarballs
|
||||
MYSQL_VERSION_ID=""
|
||||
tpv="${PV%[a-z]}"
|
||||
tpv=( ${tpv//[-._]/ } ) ; tpv[3]="${PVR:${#PV}}" ; tpv[3]="${tpv[3]##*-r}"
|
||||
for vatom in 0 1 2 3 ; do
|
||||
# pad to length 2
|
||||
tpv[${vatom}]="00${tpv[${vatom}]}"
|
||||
MYSQL_VERSION_ID="${MYSQL_VERSION_ID}${tpv[${vatom}]:0-2}"
|
||||
done
|
||||
# strip leading "0" (otherwise it's considered an octal number by BASH)
|
||||
MYSQL_VERSION_ID=${MYSQL_VERSION_ID##"0"}
|
||||
|
||||
# This eclass should only be used with at least mysql-5.1.50
|
||||
mysql_version_is_at_least "5.1.50" || die "This eclass should only be used with >=mysql-5.1.50"
|
||||
|
||||
# @ECLASS-VARIABLE: XTRADB_VER
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# Version of the XTRADB storage engine
|
||||
|
||||
# @ECLASS-VARIABLE: PERCONA_VER
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# Designation by PERCONA for a MySQL version to apply an XTRADB release
|
||||
|
||||
# Work out the default SERVER_URI correctly
|
||||
if [[ -z ${SERVER_URI} ]]; then
|
||||
[[ -z ${MY_PV} ]] && MY_PV="${PV//_/-}"
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
|
||||
# Beginning with 5.5, MariaDB stopped putting beta, alpha or rc on their tarball names
|
||||
mysql_version_is_at_least "5.5" && MARIA_FULL_PV=$(get_version_component_range 1-3) || \
|
||||
MARIA_FULL_PV=$(replace_version_separator 3 '-' ${MY_PV})
|
||||
MARIA_FULL_P="${PN}-${MARIA_FULL_PV}"
|
||||
SERVER_URI="
|
||||
http://ftp.osuosl.org/pub/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
http://ftp.osuosl.org/pub/mariadb/${MARIA_FULL_P}/source/${MARIA_FULL_P}.tar.gz
|
||||
http://mirror.jmu.edu/pub/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
http://mirrors.coreix.net/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
http://mirrors.syringanetworks.net/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
http://mirrors.fe.up.pt/pub/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
http://mirror2.hs-esslingen.de/mariadb/${MARIA_FULL_P}/kvm-tarbake-jaunty-x86/${MARIA_FULL_P}.tar.gz
|
||||
"
|
||||
if [[ ${PN} == "mariadb-galera" ]]; then
|
||||
MY_SOURCEDIR="${PN%%-galera}-${MARIA_FULL_PV}"
|
||||
fi
|
||||
elif [[ ${PN} == "percona-server" ]]; then
|
||||
PERCONA_PN="Percona-Server"
|
||||
MIRROR_PV=$(get_version_component_range 1-2 ${PV})
|
||||
MY_PV=$(get_version_component_range 1-3 ${PV})
|
||||
PERCONA_RELEASE=$(get_version_component_range 4-5 ${PV})
|
||||
PERCONA_RC=$(get_version_component_range 6 ${PV})
|
||||
SERVER_URI="http://www.percona.com/redir/downloads/${PERCONA_PN}-${MIRROR_PV}/${PERCONA_PN}-${MY_PV}-${PERCONA_RC}${PERCONA_RELEASE}/source/tarball/${PN}-${MY_PV}-${PERCONA_RC}${PERCONA_RELEASE}.tar.gz"
|
||||
# http://www.percona.com/redir/downloads/Percona-Server-5.5/LATEST/source/tarball/Percona-Server-5.5.30-30.2.tar.gz
|
||||
# http://www.percona.com/redir/downloads/Percona-Server-5.6/Percona-Server-5.6.13-rc60.5/source/tarball/Percona-Server-5.6.13-rc60.5.tar.gz
|
||||
else
|
||||
if [[ "${PN}" == "mysql-cluster" ]] ; then
|
||||
URI_DIR="MySQL-Cluster"
|
||||
URI_FILE="mysql-cluster-gpl"
|
||||
else
|
||||
URI_DIR="MySQL"
|
||||
URI_FILE="mysql"
|
||||
fi
|
||||
URI_A="${URI_FILE}-${MY_PV}.tar.gz"
|
||||
MIRROR_PV=$(get_version_component_range 1-2 ${PV})
|
||||
# Recently upstream switched to an archive site, and not on mirrors
|
||||
SERVER_URI="http://downloads.mysql.com/archives/${URI_FILE}-${MIRROR_PV}/${URI_A}
|
||||
https://downloads.skysql.com/files/${URI_FILE}-${MIRROR_PV}/${URI_A}
|
||||
mirror://mysql/Downloads/${URI_DIR}-${PV%.*}/${URI_A}"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Define correct SRC_URIs
|
||||
SRC_URI="${SERVER_URI}"
|
||||
|
||||
# Gentoo patches to MySQL
|
||||
if [[ ${MY_EXTRAS_VER} != "live" && ${MY_EXTRAS_VER} != "none" ]]; then
|
||||
SRC_URI="${SRC_URI}
|
||||
mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2"
|
||||
fi
|
||||
|
||||
DESCRIPTION="A fast, multi-threaded, multi-user SQL database server"
|
||||
HOMEPAGE="https://www.mysql.com/"
|
||||
if [[ ${PN} == "mariadb" ]]; then
|
||||
HOMEPAGE="https://mariadb.org/"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL"
|
||||
fi
|
||||
if [[ ${PN} == "mariadb-galera" ]]; then
|
||||
HOMEPAGE="https://mariadb.org/"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL with Galera Replication"
|
||||
fi
|
||||
if [[ ${PN} == "percona-server" ]]; then
|
||||
HOMEPAGE="https://www.percona.com/software/mysql-database/percona-server"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL from the Percona team"
|
||||
fi
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
|
||||
case "${BUILD}" in
|
||||
"autotools")
|
||||
IUSE="big-tables debug embedded minimal +perl selinux ssl static test"
|
||||
;;
|
||||
"cmake")
|
||||
IUSE="debug embedded minimal +perl selinux ssl static static-libs test"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Common IUSE
|
||||
IUSE="${IUSE} latin1 extraengine cluster max-idx-128 +community profiling"
|
||||
|
||||
# This probably could be simplified, but the syntax would have to be just right
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
|
||||
mysql_version_is_at_least "5.5" ; then
|
||||
IUSE="bindist ${IUSE}"
|
||||
RESTRICT="${RESTRICT} !bindist? ( bindist )"
|
||||
elif [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
|
||||
mysql_check_version_range "5.5.37 to 5.6.11.99" ; then
|
||||
IUSE="bindist ${IUSE}"
|
||||
RESTRICT="${RESTRICT} !bindist? ( bindist )"
|
||||
elif [[ ${PN} == "mysql-cluster" ]] && \
|
||||
mysql_check_version_range "7.2 to 7.2.99.99" ; then
|
||||
IUSE="bindist ${IUSE}"
|
||||
RESTRICT="${RESTRICT} !bindist? ( bindist )"
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
|
||||
mysql_check_version_range "5.1.38 to 5.3.99" && IUSE="${IUSE} libevent"
|
||||
mysql_version_is_at_least "5.2" && IUSE="${IUSE} oqgraph" && \
|
||||
REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph )"
|
||||
mysql_version_is_at_least "5.2.5" && IUSE="${IUSE} sphinx" && \
|
||||
REQUIRED_USE="${REQUIRED_USE} minimal? ( !sphinx )"
|
||||
mysql_version_is_at_least "5.2.10" && IUSE="${IUSE} pam"
|
||||
# 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or perfomance suffers
|
||||
mysql_version_is_at_least "10.0.5" && IUSE="${IUSE} tokudb odbc xml" && \
|
||||
REQUIRED_USE="${REQUIRED_USE} odbc? ( extraengine ) xml? ( extraengine ) tokudb? ( jemalloc !tcmalloc )"
|
||||
mysql_check_version_range "5.5.33 to 5.5.99" && IUSE="${IUSE} tokudb" && \
|
||||
REQUIRED_USE="${REQUIRED_USE} tokudb? ( jemalloc !tcmalloc )"
|
||||
fi
|
||||
|
||||
if mysql_version_is_at_least "5.5"; then
|
||||
REQUIRED_USE="${REQUIRED_USE} tcmalloc? ( !jemalloc ) jemalloc? ( !tcmalloc )"
|
||||
IUSE="${IUSE} jemalloc tcmalloc"
|
||||
fi
|
||||
|
||||
if mysql_version_is_at_least "5.5.7"; then
|
||||
IUSE="${IUSE} systemtap"
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "percona-server" ]]; then
|
||||
mysql_version_is_at_least "5.5.10" && IUSE="${IUSE} pam"
|
||||
fi
|
||||
|
||||
REQUIRED_USE="${REQUIRED_USE} minimal? ( !cluster !extraengine !embedded ) static? ( !ssl )"
|
||||
|
||||
#
|
||||
# DEPENDENCIES:
|
||||
#
|
||||
|
||||
# Be warned, *DEPEND are version-dependant
|
||||
# These are used for both runtime and compiletime
|
||||
DEPEND="
|
||||
ssl? ( >=dev-libs/openssl-0.9.6d:0 )
|
||||
kernel_linux? ( sys-process/procps )
|
||||
>=sys-apps/sed-4
|
||||
>=sys-apps/texinfo-4.7-r1
|
||||
>=sys-libs/zlib-1.2.3
|
||||
"
|
||||
# TODO: add this as a dep if it is moved from the overlay
|
||||
# !dev-db/mariadb-native-client[mysqlcompat]
|
||||
|
||||
# dev-db/mysql-5.6.12+ only works with dev-libs/libedit
|
||||
# This probably could be simplified
|
||||
if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
|
||||
mysql_version_is_at_least "5.6.12" ; then
|
||||
DEPEND="${DEPEND} dev-libs/libedit"
|
||||
elif [[ ${PN} == "mysql-cluster" ]] && mysql_version_is_at_least "7.3"; then
|
||||
DEPEND="${DEPEND} dev-libs/libedit"
|
||||
else
|
||||
if mysql_version_is_at_least "5.5" ; then
|
||||
DEPEND="${DEPEND} !bindist? ( >=sys-libs/readline-4.1:0 )"
|
||||
else
|
||||
DEPEND="${DEPEND} >=sys-libs/readline-4.1:0"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
|
||||
mysql_check_version_range "5.1.38 to 5.3.99" && DEPEND="${DEPEND} libevent? ( >=dev-libs/libevent-1.4 )"
|
||||
mysql_version_is_at_least "5.2" && DEPEND="${DEPEND} oqgraph? ( >=dev-libs/boost-1.40.0 )"
|
||||
mysql_version_is_at_least "5.2.10" && DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam ) )"
|
||||
# Bug 441700 MariaDB >=5.3 include custom mytop
|
||||
mysql_version_is_at_least "5.3" && DEPEND="${DEPEND} perl? ( !dev-db/mytop )"
|
||||
if mysql_version_is_at_least "10.0.5" ; then
|
||||
DEPEND="${DEPEND}
|
||||
odbc? ( dev-db/unixODBC )
|
||||
xml? ( dev-libs/libxml2 )
|
||||
"
|
||||
fi
|
||||
mysql_version_is_at_least "10.0.7" && DEPEND="${DEPEND} oqgraph? ( dev-libs/judy )"
|
||||
if mysql_version_is_at_least "10.0.9" ; then
|
||||
DEPEND="${DEPEND} >=dev-libs/libpcre-8.35"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Having different flavours at the same time is not a good idea
|
||||
for i in "mysql" "mariadb" "mariadb-galera" "percona-server" "mysql-cluster" ; do
|
||||
[[ ${i} == ${PN} ]] ||
|
||||
DEPEND="${DEPEND} !dev-db/${i}"
|
||||
done
|
||||
|
||||
if mysql_version_is_at_least "5.5.7" ; then
|
||||
DEPEND="${DEPEND}
|
||||
jemalloc? ( dev-libs/jemalloc[static-libs?] )
|
||||
tcmalloc? ( dev-util/google-perftools )
|
||||
>=sys-libs/zlib-1.2.3[static-libs?]
|
||||
ssl? ( >=dev-libs/openssl-0.9.6d[static-libs?] )
|
||||
systemtap? ( >=dev-util/systemtap-1.3 )
|
||||
kernel_linux? ( dev-libs/libaio )
|
||||
"
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mysql-cluster" ]] ; then
|
||||
# TODO: This really should include net-misc/memcached
|
||||
# but the package does not install the files it seeks.
|
||||
mysql_version_is_at_least "7.2.3" && \
|
||||
DEPEND="${DEPEND} dev-libs/libevent"
|
||||
fi
|
||||
|
||||
# prefix: first need to implement something for #196294
|
||||
RDEPEND="${DEPEND}
|
||||
!minimal? ( !prefix? ( dev-db/mysql-init-scripts ) )
|
||||
selinux? ( sec-policy/selinux-mysql )
|
||||
"
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
|
||||
# Bug 455016 Add dependencies of mytop
|
||||
if mysql_version_is_at_least "5.3" ; then
|
||||
RDEPEND="${RDEPEND}
|
||||
perl? (
|
||||
virtual/perl-Getopt-Long
|
||||
dev-perl/TermReadKey
|
||||
virtual/perl-Term-ANSIColor
|
||||
virtual/perl-Time-HiRes
|
||||
)
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mariadb-galera" ]] ; then
|
||||
# The wsrep API version must match between the ebuild and sys-cluster/galera.
|
||||
# This will be indicated by WSREP_REVISION in the ebuild and the first number
|
||||
# in the version of sys-cluster/galera
|
||||
RDEPEND="${RDEPEND}
|
||||
=sys-cluster/galera-${WSREP_REVISION}*
|
||||
"
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mysql-cluster" ]] ; then
|
||||
mysql_version_is_at_least "7.2.9" && RDEPEND="${RDEPEND} java? ( >=virtual/jre-1.6 )" && \
|
||||
DEPEND="${DEPEND} java? ( >=virtual/jdk-1.6 )"
|
||||
fi
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
virtual/yacc
|
||||
"
|
||||
|
||||
DEPEND="${DEPEND} static? ( sys-libs/ncurses[static-libs] )"
|
||||
|
||||
# compile-time-only
|
||||
DEPEND="${DEPEND} >=dev-util/cmake-2.4.3"
|
||||
|
||||
# compile-time-only
|
||||
if mysql_version_is_at_least "5.5.8" ; then
|
||||
DEPEND="${DEPEND} >=dev-util/cmake-2.6.3"
|
||||
fi
|
||||
|
||||
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
|
||||
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )"
|
||||
|
||||
# For other stuff to bring us in
|
||||
PDEPEND="${PDEPEND} ~virtual/mysql-${MYSQL_PV_MAJOR}"
|
||||
|
||||
#
|
||||
# External patches
|
||||
#
|
||||
|
||||
# MariaDB has integrated PBXT until it was dropped in version 5.5.33
|
||||
# PBXT_VERSION means that we have a PBXT patch for this PV
|
||||
# PBXT was only introduced after 5.1.12
|
||||
pbxt_patch_available() {
|
||||
[[ ${PN} != "mariadb" && ${PN} != "mariadb-galera" && ( -n "${PBXT_VERSION}" ) ]]
|
||||
return $?
|
||||
}
|
||||
|
||||
pbxt_available() {
|
||||
pbxt_patch_available || [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && mysql_check_version_range "5.1 to 5.5.32"
|
||||
return $?
|
||||
}
|
||||
|
||||
# Get the percona tarball if XTRADB_VER and PERCONA_VER are both set
|
||||
# MariaDB has integrated XtraDB
|
||||
# XTRADB_VERS means that we have a XTRADB patch for this PV
|
||||
# XTRADB was only introduced after 5.1.26
|
||||
xtradb_patch_available() {
|
||||
[[ ${PN} != "mariadb" && ${PN} != "mariadb-galera"
|
||||
&& ( -n "${XTRADB_VER}" ) && ( -n "${PERCONA_VER}" ) ]]
|
||||
return $?
|
||||
}
|
||||
|
||||
if pbxt_patch_available; then
|
||||
|
||||
PBXT_P="pbxt-${PBXT_VERSION}"
|
||||
PBXT_SRC_URI="http://www.primebase.org/download/${PBXT_P}.tar.gz mirror://sourceforge/pbxt/${PBXT_P}.tar.gz"
|
||||
SRC_URI="${SRC_URI} pbxt? ( ${PBXT_SRC_URI} )"
|
||||
fi
|
||||
|
||||
# PBXT_NEWSTYLE means pbxt is in storage/ and gets enabled as other plugins
|
||||
# vs. built outside the dir
|
||||
if pbxt_available; then
|
||||
|
||||
IUSE="${IUSE} pbxt"
|
||||
PBXT_NEWSTYLE=1
|
||||
REQUIRED_USE="${REQUIRED_USE} pbxt? ( !embedded ) "
|
||||
fi
|
||||
|
||||
if xtradb_patch_available; then
|
||||
XTRADB_P="percona-xtradb-${XTRADB_VER}"
|
||||
XTRADB_SRC_URI_COMMON="${PERCONA_VER}/source/${XTRADB_P}.tar.gz"
|
||||
XTRADB_SRC_B1="http://www.percona.com/"
|
||||
XTRADB_SRC_B2="${XTRADB_SRC_B1}/percona-builds/"
|
||||
XTRADB_SRC_URI1="${XTRADB_SRC_B2}/Percona-Server/Percona-Server-${XTRADB_SRC_URI_COMMON}"
|
||||
XTRADB_SRC_URI2="${XTRADB_SRC_B2}/xtradb/${XTRADB_SRC_URI_COMMON}"
|
||||
XTRADB_SRC_URI3="${XTRADB_SRC_B1}/${PN}/xtradb/${XTRADB_SRC_URI_COMMON}"
|
||||
SRC_URI="${SRC_URI} xtradb? ( ${XTRADB_SRC_URI1} ${XTRADB_SRC_URI2} ${XTRADB_SRC_URI3} )"
|
||||
IUSE="${IUSE} xtradb"
|
||||
REQUIRED_USE="${REQUIRED_USE} xtradb? ( !embedded ) "
|
||||
fi
|
||||
|
||||
#
|
||||
# HELPER FUNCTIONS:
|
||||
#
|
||||
|
||||
# @FUNCTION: mysql-v2_disable_test
|
||||
# @DESCRIPTION:
|
||||
# Helper function to disable specific tests.
|
||||
mysql-v2_disable_test() {
|
||||
${BUILD_INHERIT}_disable_test "$@"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_configure_minimal
|
||||
# @DESCRIPTION:
|
||||
# Helper function to configure minimal build
|
||||
configure_minimal() {
|
||||
${BUILD_INHERIT}_configure_minimal "$@"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_configure_common
|
||||
# @DESCRIPTION:
|
||||
# Helper function to configure common builds
|
||||
configure_common() {
|
||||
${BUILD_INHERIT}_configure_common "$@"
|
||||
}
|
||||
|
||||
#
|
||||
# EBUILD FUNCTIONS
|
||||
#
|
||||
|
||||
# @FUNCTION: mysql-v2_pkg_setup
|
||||
# @DESCRIPTION:
|
||||
# Perform some basic tests and tasks during pkg_setup phase:
|
||||
# die if FEATURES="test", USE="-minimal" and not using FEATURES="userpriv"
|
||||
# check for conflicting use flags
|
||||
# create new user and group for mysql
|
||||
# warn about deprecated features
|
||||
mysql-v2_pkg_setup() {
|
||||
|
||||
if has test ${FEATURES} ; then
|
||||
if ! use minimal ; then
|
||||
if ! has userpriv ${FEATURES} ; then
|
||||
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check for USE flag problems in pkg_setup
|
||||
if ! mysql_version_is_at_least "5.2" && use debug ; then
|
||||
# Also in package.use.mask
|
||||
die "Bug #344885: Upstream has broken USE=debug for 5.1 series >=5.1.51"
|
||||
fi
|
||||
|
||||
# This should come after all of the die statements
|
||||
enewgroup mysql 60 || die "problem adding 'mysql' group"
|
||||
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
|
||||
|
||||
if use cluster && [[ "${PN}" != "mysql-cluster" ]]; then
|
||||
ewarn "Upstream has noted that the NDB cluster support in the 5.0 and"
|
||||
ewarn "5.1 series should NOT be put into production. In the near"
|
||||
ewarn "future, it will be disabled from building."
|
||||
fi
|
||||
|
||||
if [[ ${PN} == "mysql-cluster" ]] ; then
|
||||
mysql_version_is_at_least "7.2.9" && java-pkg-opt-2_pkg_setup
|
||||
fi
|
||||
|
||||
if use_if_iuse tokudb && [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ; then
|
||||
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_src_unpack
|
||||
# @DESCRIPTION:
|
||||
# Unpack the source code
|
||||
mysql-v2_src_unpack() {
|
||||
|
||||
# Initialize the proper variables first
|
||||
mysql_init_vars
|
||||
|
||||
unpack ${A}
|
||||
# Grab the patches
|
||||
[[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git-r3_src_unpack
|
||||
|
||||
mv -f "${WORKDIR}/${MY_SOURCEDIR}" "${S}"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_src_prepare
|
||||
# @DESCRIPTION:
|
||||
# Apply patches to the source code and remove unneeded bundled libs.
|
||||
mysql-v2_src_prepare() {
|
||||
${BUILD_INHERIT}_src_prepare "$@"
|
||||
if [[ ${PN} == "mysql-cluster" ]] ; then
|
||||
mysql_version_is_at_least "7.2.9" && java-pkg-opt-2_src_prepare
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_src_configure
|
||||
# @DESCRIPTION:
|
||||
# Configure mysql to build the code for Gentoo respecting the use flags.
|
||||
mysql-v2_src_configure() {
|
||||
${BUILD_INHERIT}_src_configure "$@"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_src_compile
|
||||
# @DESCRIPTION:
|
||||
# Compile the mysql code.
|
||||
mysql-v2_src_compile() {
|
||||
${BUILD_INHERIT}_src_compile "$@"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_src_install
|
||||
# @DESCRIPTION:
|
||||
# Install mysql.
|
||||
mysql-v2_src_install() {
|
||||
${BUILD_INHERIT}_src_install "$@"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_pkg_preinst
|
||||
# @DESCRIPTION:
|
||||
# Create the user and groups for mysql - die if that fails.
|
||||
mysql-v2_pkg_preinst() {
|
||||
if [[ ${PN} == "mysql-cluster" ]] ; then
|
||||
mysql_version_is_at_least "7.2.9" && java-pkg-opt-2_pkg_preinst
|
||||
fi
|
||||
enewgroup mysql 60 || die "problem adding 'mysql' group"
|
||||
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_pkg_postinst
|
||||
# @DESCRIPTION:
|
||||
# Run post-installation tasks:
|
||||
# create the dir for logfiles if non-existant
|
||||
# touch the logfiles and secure them
|
||||
# install scripts
|
||||
# issue required steps for optional features
|
||||
# issue deprecation warnings
|
||||
mysql-v2_pkg_postinst() {
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Create log directory securely if it does not exist
|
||||
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
|
||||
|
||||
# Minimal builds don't have the MySQL server
|
||||
if ! use minimal ; then
|
||||
docinto "support-files"
|
||||
for script in \
|
||||
support-files/my-*.cnf \
|
||||
support-files/magic \
|
||||
support-files/ndb-config-2-node.ini
|
||||
do
|
||||
[[ -f "${script}" ]] \
|
||||
&& dodoc "${script}"
|
||||
done
|
||||
|
||||
docinto "scripts"
|
||||
for script in scripts/mysql* ; do
|
||||
if [[ -f "${script}" && "${script%.sh}" == "${script}" ]]; then
|
||||
dodoc "${script}"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
|
||||
if use_if_iuse pam ; then
|
||||
einfo
|
||||
elog "This install includes the PAM authentication plugin."
|
||||
elog "To activate and configure the PAM plugin, please read:"
|
||||
elog "https://kb.askmonty.org/en/pam-authentication-plugin/"
|
||||
einfo
|
||||
fi
|
||||
fi
|
||||
|
||||
einfo
|
||||
elog "You might want to run:"
|
||||
elog "\"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "if this is a new install."
|
||||
einfo
|
||||
|
||||
einfo
|
||||
elog "If you are upgrading major versions, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
|
||||
if [[ ${PN} == "mariadb-galera" ]] ; then
|
||||
einfo
|
||||
elog "Be sure to edit the my.cnf file to activate your cluster settings."
|
||||
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "The first time the cluster is activated, you should add"
|
||||
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
|
||||
elog "This option should then be removed for subsequent starts."
|
||||
einfo
|
||||
fi
|
||||
fi
|
||||
|
||||
if use_if_iuse pbxt ; then
|
||||
elog "Note: PBXT is now statically built when enabled."
|
||||
elog ""
|
||||
elog "If, you previously installed as a plugin and "
|
||||
elog "you cannot start the MySQL server,"
|
||||
elog "remove the ${MY_DATADIR}/mysql/plugin.* files, then"
|
||||
elog "use the MySQL upgrade script to restore the table"
|
||||
elog "or execute the following SQL command:"
|
||||
elog " CREATE TABLE IF NOT EXISTS plugin ("
|
||||
elog " name char(64) binary DEFAULT '' NOT NULL,"
|
||||
elog " dl char(128) DEFAULT '' NOT NULL,"
|
||||
elog " PRIMARY KEY (name)"
|
||||
elog " ) CHARACTER SET utf8 COLLATE utf8_bin;"
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_getopt
|
||||
# @DESCRIPTION:
|
||||
# Use my_print_defaults to extract specific config options
|
||||
mysql-v2_getopt() {
|
||||
local mypd="${EROOT}"/usr/bin/my_print_defaults
|
||||
section="$1"
|
||||
flag="--${2}="
|
||||
"${mypd}" $section | sed -n "/^${flag}/p"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_getoptval
|
||||
# @DESCRIPTION:
|
||||
# Use my_print_defaults to extract specific config options
|
||||
mysql-v2_getoptval() {
|
||||
local mypd="${EROOT}"/usr/bin/my_print_defaults
|
||||
section="$1"
|
||||
flag="--${2}="
|
||||
"${mypd}" $section | sed -n "/^${flag}/s,${flag},,gp"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_pkg_config
|
||||
# @DESCRIPTION:
|
||||
# Configure mysql environment.
|
||||
mysql-v2_pkg_config() {
|
||||
|
||||
local old_MY_DATADIR="${MY_DATADIR}"
|
||||
local old_HOME="${HOME}"
|
||||
# my_print_defaults needs to read stuff in $HOME/.my.cnf
|
||||
export HOME=${EPREFIX}/root
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
[[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR"
|
||||
|
||||
if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then
|
||||
die "Minimal builds do NOT include the MySQL server"
|
||||
fi
|
||||
|
||||
if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then
|
||||
local MY_DATADIR_s="${ROOT}/${MY_DATADIR}"
|
||||
MY_DATADIR_s="${MY_DATADIR_s%%/}"
|
||||
local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}"
|
||||
old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}"
|
||||
|
||||
if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist"
|
||||
ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}"
|
||||
else
|
||||
elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}"
|
||||
mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \
|
||||
|| die "Moving MY_DATADIR failed"
|
||||
fi
|
||||
else
|
||||
ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist"
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Attempting to use ${MY_DATADIR_s}"
|
||||
else
|
||||
eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist"
|
||||
die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
local pwd1="a"
|
||||
local pwd2="b"
|
||||
local maxtry=15
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
MYSQL_ROOT_PASSWORD="$(mysql-v2_getoptval 'client mysql' password)"
|
||||
fi
|
||||
MYSQL_TMPDIR="$(mysql-v2_getoptval mysqld tmpdir)"
|
||||
# These are dir+prefix
|
||||
MYSQL_RELAY_LOG="$(mysql-v2_getoptval mysqld relay-log)"
|
||||
MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*}
|
||||
MYSQL_LOG_BIN="$(mysql-v2_getoptval mysqld log-bin)"
|
||||
MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*}
|
||||
|
||||
if [[ ! -d "${ROOT}"/$MYSQL_TMPDIR ]]; then
|
||||
einfo "Creating MySQL tmpdir $MYSQL_TMPDIR"
|
||||
install -d -m 770 -o mysql -g mysql "${ROOT}"/$MYSQL_TMPDIR
|
||||
fi
|
||||
if [[ ! -d "${ROOT}"/$MYSQL_LOG_BIN ]]; then
|
||||
einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN"
|
||||
install -d -m 770 -o mysql -g mysql "${ROOT}"/$MYSQL_LOG_BIN
|
||||
fi
|
||||
if [[ ! -d "${EROOT}"/$MYSQL_RELAY_LOG ]]; then
|
||||
einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}"/$MYSQL_RELAY_LOG
|
||||
fi
|
||||
|
||||
if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then
|
||||
ewarn "You have already a MySQL database in place."
|
||||
ewarn "(${ROOT}/${MY_DATADIR}/*)"
|
||||
ewarn "Please rename or delete it if you wish to replace it."
|
||||
die "MySQL database already exists!"
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
|
||||
einfo "Please provide a password for the mysql 'root' user now, in the"
|
||||
einfo "MYSQL_ROOT_PASSWORD env var or through the ${HOME}/.my.cnf file."
|
||||
ewarn "Avoid [\"'\\_%] characters in the password"
|
||||
read -rsp " >" pwd1 ; echo
|
||||
|
||||
einfo "Retype the password"
|
||||
read -rsp " >" pwd2 ; echo
|
||||
|
||||
if [[ "x$pwd1" != "x$pwd2" ]] ; then
|
||||
die "Passwords are not the same"
|
||||
fi
|
||||
MYSQL_ROOT_PASSWORD="${pwd1}"
|
||||
unset pwd1 pwd2
|
||||
fi
|
||||
|
||||
local options
|
||||
local sqltmp="$(emktemp)"
|
||||
|
||||
# Fix bug 446200. Don't reference host my.cnf, needs to come first,
|
||||
# see http://bugs.mysql.com/bug.php?id=31312
|
||||
use prefix && options="${options} --defaults-file=${MY_SYSCONFDIR}/my.cnf"
|
||||
|
||||
local help_tables="${ROOT}${MY_SHAREDSTATEDIR}/fill_help_tables.sql"
|
||||
[[ -r "${help_tables}" ]] \
|
||||
&& cp "${help_tables}" "${TMPDIR}/fill_help_tables.sql" \
|
||||
|| touch "${TMPDIR}/fill_help_tables.sql"
|
||||
help_tables="${TMPDIR}/fill_help_tables.sql"
|
||||
|
||||
# Figure out which options we need to disable to do the setup
|
||||
helpfile="${TMPDIR}/mysqld-help"
|
||||
${EROOT}/usr/sbin/mysqld --verbose --help >"${helpfile}" 2>/dev/null
|
||||
for opt in grant-tables host-cache name-resolve networking slave-start \
|
||||
federated ssl log-bin relay-log slow-query-log external-locking \
|
||||
ndbcluster log-slave-updates wsrep-on \
|
||||
; do
|
||||
optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}"
|
||||
egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}"
|
||||
done
|
||||
# But some options changed names
|
||||
egrep -sq external-locking "${helpfile}" && \
|
||||
options="${options/skip-locking/skip-external-locking}"
|
||||
|
||||
# MySQL 5.6+ needs InnoDB
|
||||
if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] ; then
|
||||
mysql_version_is_at_least "5.6" || options="${options} --loose-skip-innodb"
|
||||
fi
|
||||
|
||||
einfo "Creating the mysql database and setting proper permissions on it ..."
|
||||
|
||||
# Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it
|
||||
PID_DIR="${EROOT}/var/run/mysqld"
|
||||
if [[ ! -d "${PID_DIR}" ]]; then
|
||||
install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory"
|
||||
fi
|
||||
|
||||
if [[ ! -d "${MY_DATADIR}" ]]; then
|
||||
install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory"
|
||||
fi
|
||||
|
||||
pushd "${TMPDIR}" &>/dev/null || die
|
||||
#cmd="'${EROOT}/usr/share/mysql/scripts/mysql_install_db' '--basedir=${EPREFIX}/usr' ${options}"
|
||||
cmd=${EROOT}usr/share/mysql/scripts/mysql_install_db
|
||||
[[ -f ${cmd} ]] || cmd=${EROOT}usr/bin/mysql_install_db
|
||||
cmd="'$cmd' '--basedir=${EPREFIX}/usr' ${options} '--datadir=${ROOT}/${MY_DATADIR}' '--tmpdir=${ROOT}/${MYSQL_TMPDIR}'"
|
||||
einfo "Command: $cmd"
|
||||
su -s /bin/sh -c "${cmd}" mysql \
|
||||
>"${TMPDIR}"/mysql_install_db.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2
|
||||
die "Failed to run mysql_install_db. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log"
|
||||
fi
|
||||
popd &>/dev/null || die
|
||||
[[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \
|
||||
|| die "MySQL databases not installed"
|
||||
|
||||
# Filling timezones, see
|
||||
# http://dev.mysql.com/doc/mysql/en/time-zone-support.html
|
||||
"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
|
||||
|
||||
if [[ -r "${help_tables}" ]] ; then
|
||||
cat "${help_tables}" >> "${sqltmp}"
|
||||
fi
|
||||
|
||||
local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock"
|
||||
local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid"
|
||||
local mysqld="${EROOT}/usr/sbin/mysqld \
|
||||
${options} \
|
||||
$(use prefix || echo --user=mysql) \
|
||||
--log-warnings=0 \
|
||||
--basedir=${EROOT}/usr \
|
||||
--datadir=${ROOT}/${MY_DATADIR} \
|
||||
--max_allowed_packet=8M \
|
||||
--net_buffer_length=16K \
|
||||
--default-storage-engine=MyISAM \
|
||||
--socket=${socket} \
|
||||
--pid-file=${pidfile}
|
||||
--tmpdir=${ROOT}/${MYSQL_TMPDIR}"
|
||||
#einfo "About to start mysqld: ${mysqld}"
|
||||
ebegin "Starting mysqld"
|
||||
einfo "Command ${mysqld}"
|
||||
${mysqld} &
|
||||
rc=$?
|
||||
while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do
|
||||
maxtry=$((${maxtry}-1))
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
eend $rc
|
||||
|
||||
if ! [[ -S "${socket}" ]]; then
|
||||
die "Completely failed to start up mysqld with: ${mysqld}"
|
||||
fi
|
||||
|
||||
ebegin "Setting root password"
|
||||
# Do this from memory, as we don't want clear text passwords in temp files
|
||||
local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
--socket=${socket} \
|
||||
-hlocalhost \
|
||||
-e "${sql}"
|
||||
eend $?
|
||||
|
||||
ebegin "Loading \"zoneinfo\", this step may require a few seconds"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
--socket=${socket} \
|
||||
-hlocalhost \
|
||||
-uroot \
|
||||
--password="${MYSQL_ROOT_PASSWORD}" \
|
||||
mysql < "${sqltmp}"
|
||||
rc=$?
|
||||
eend $?
|
||||
[[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!"
|
||||
|
||||
# Stop the server and cleanup
|
||||
einfo "Stopping the server ..."
|
||||
kill $(< "${pidfile}" )
|
||||
rm -f "${sqltmp}"
|
||||
wait %1
|
||||
einfo "Done"
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql-v2_pkg_postrm
|
||||
# @DESCRIPTION:
|
||||
# Remove mysql symlinks.
|
||||
mysql-v2_pkg_postrm() {
|
||||
|
||||
: # mysql_lib_symlinks "${ED}"
|
||||
}
|
@ -1,320 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# DEPRECATED
|
||||
# Recent versions have begun deprecating this eclass.
|
||||
# Do not use it in new series.
|
||||
|
||||
# @ECLASS: mysql_fx.eclass
|
||||
# @MAINTAINER:
|
||||
# - MySQL Team <mysql-bugs@gentoo.org>
|
||||
# - Luca Longinotti <chtekk@gentoo.org>
|
||||
# @AUTHOR: Francesco Riosa (Retired) <vivo@gentoo.org>
|
||||
# @BLURB: This eclass provides some helper functions for mysql ebuilds
|
||||
# @DESCRIPTION:
|
||||
# This eclass providers helpers to build mysql servers including patching
|
||||
# from an index and initializing certain variables as part of the build.
|
||||
|
||||
inherit multilib
|
||||
|
||||
# @FUNCTION: stripdots
|
||||
# @DESCRIPTION:
|
||||
# Helper function, version (integer) may have sections separated by dots
|
||||
# for readability.
|
||||
stripdots() {
|
||||
local dotver=${1:-"0"}
|
||||
local v=""
|
||||
local ret=0
|
||||
if [[ "${dotver/./}" != "${dotver}" ]] ; then
|
||||
# dotted version number
|
||||
for i in 1000000 10000 100 1 ; do
|
||||
v=${dotver%%\.*}
|
||||
# remove leading zeroes
|
||||
while [[ ${#v} -gt 1 ]] && [[ ${v:0:1} == "0" ]] ; do v=${v#0} ; done
|
||||
# increment integer version number
|
||||
ret=$(( ${v} * ${i} + ${ret} ))
|
||||
if [[ "${dotver}" == "${dotver/\.}" ]] ; then
|
||||
dotver=0
|
||||
else
|
||||
dotver=${dotver#*\.}
|
||||
fi
|
||||
done
|
||||
echo "${ret}"
|
||||
else
|
||||
# already an integer
|
||||
v=${dotver}
|
||||
while [[ ${#v} -gt 1 ]] && [[ ${v:0:1} == "0" ]] ; do v=${v#0} ; done
|
||||
echo "${v}"
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql_check_version_range
|
||||
# @DESCRIPTION:
|
||||
# Check if a version number falls inside a given range.
|
||||
# The range includes the extremes and must be specified as
|
||||
# "low_version to high_version" i.e. "4.1.2 to 5.1.99.99".
|
||||
# Returns true if inside the range.
|
||||
mysql_check_version_range() {
|
||||
local lbound="${1%% to *}" ; lbound=$(stripdots "${lbound}")
|
||||
local rbound="${1#* to }" ; rbound=$(stripdots "${rbound}")
|
||||
local my_ver="${2:-"${MYSQL_VERSION_ID}"}"
|
||||
[[ ${lbound} -le ${my_ver} ]] && [[ ${my_ver} -le ${rbound} ]] && return 0
|
||||
return 1
|
||||
}
|
||||
|
||||
# @FUNCTION: _mysql_test_patch_ver_pn
|
||||
# @INTERNAL
|
||||
# @DESCRIPTION:
|
||||
# True if at least one applicable range is found for the patch.
|
||||
_mysql_test_patch_ver_pn() {
|
||||
local allelements=", version, package name"
|
||||
# So that it fails the directory test if none of them exist
|
||||
local filesdir="/dev/null"
|
||||
for d in "${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" \
|
||||
"${WORKDIR}/mysql-extras" ; do
|
||||
if [ -d "${d}" ]; then
|
||||
filesdir="${d}"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
[[ -d "${filesdir}" ]] || die "Source dir must be a directory"
|
||||
local flags=$1 pname=$2
|
||||
if [[ $(( $flags & $(( 1 + 4 + 16 )) )) -eq 21 ]] ; then
|
||||
einfo "using '${pname}'"
|
||||
ln -sf "${filesdir}/${pname}" "${EPATCH_SOURCE}" || die "Couldn't move ${pname}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
[[ $(( $flags & $(( 2 + 4 )) )) -gt 0 ]] \
|
||||
&& allelements="${allelements//", version"}"
|
||||
|
||||
[[ $(( $flags & $(( 8 + 16 )) )) -gt 0 ]] \
|
||||
&& allelements="${allelements//", package name"}"
|
||||
|
||||
[[ -n "${allelements}" ]] && [[ "${flags}" -gt 0 ]] \
|
||||
&& ewarn "QA notice: ${allelements} missing in ${pname} patch"
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql_mv_patches
|
||||
# @DESCRIPTION:
|
||||
# Parse a "index_file" looking for patches to apply to the
|
||||
# current MySQL version.
|
||||
# If the patch applies, print its description.
|
||||
#
|
||||
mysql_mv_patches() {
|
||||
# So that it fails the directory test if none of them exist
|
||||
local filesdir="/dev/null"
|
||||
if [[ -z "${1}" ]]; then
|
||||
for d in "${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" \
|
||||
"${WORKDIR}/mysql-extras" ; do
|
||||
if [ -d "${d}" ]; then
|
||||
filesdir="${d}"
|
||||
break
|
||||
fi
|
||||
done
|
||||
[[ -d "${filesdir}" ]] || die "No patches directory found!"
|
||||
fi
|
||||
|
||||
for i in "$1" "${filesdir}/0000_index.txt" "${filesdir}/000_index.txt" ; do
|
||||
if [ -n "$i" -a -f "$i" ]; then
|
||||
local index_file="$i"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
local my_ver="${2:-"${MYSQL_VERSION_ID}"}"
|
||||
local my_test_fx=${3:-"_mysql_test_patch_ver_pn"}
|
||||
_mysql_mv_patches "${index_file}" "${my_ver}" "${my_test_fx}"
|
||||
}
|
||||
|
||||
# @FUNCTION: _mysql_mv_patches
|
||||
# @INTERNAL
|
||||
_mysql_mv_patches() {
|
||||
local index_file="${1}"
|
||||
local my_ver="${2}"
|
||||
local my_test_fx="${3}"
|
||||
local dsc ndsc=0 i
|
||||
dsc=( )
|
||||
|
||||
# Values for flags are (2^x):
|
||||
# 1 - one patch found
|
||||
# 2 - at least one version range is wrong
|
||||
# 4 - at least one version range is ok
|
||||
# 8 - at least one ${PN} did not match
|
||||
# 16 - at least one ${PN} has been matched
|
||||
local flags=0 pname=""
|
||||
while read row ; do
|
||||
case "${row}" in
|
||||
@patch\ *)
|
||||
[[ -n "${pname}" ]] \
|
||||
&& ${my_test_fx} ${flags} "${pname}" \
|
||||
&& for (( i=0 ; $i < $ndsc ; i++ )) ; do einfo "> ${dsc[$i]}" ; done
|
||||
flags=1 ; ndsc=0 ; dsc=( )
|
||||
pname=${row#"@patch "}
|
||||
;;
|
||||
@ver\ *)
|
||||
if mysql_check_version_range "${row#"@ver "}" "${my_ver}" ; then
|
||||
flags=$(( ${flags} | 4 ))
|
||||
else
|
||||
flags=$(( ${flags} | 2 ))
|
||||
fi
|
||||
;;
|
||||
@pn\ *)
|
||||
if [[ ${row#"@pn "} == "${PN}" ]] ; then
|
||||
flags=$(( ${flags} | 16 ))
|
||||
else
|
||||
flags=$(( ${flags} | 8 ))
|
||||
fi
|
||||
;;
|
||||
# @use\ *) ;;
|
||||
@@\ *)
|
||||
dsc[$ndsc]="${row#"@@ "}"
|
||||
(( ++ndsc ))
|
||||
;;
|
||||
esac
|
||||
done < "${index_file}"
|
||||
|
||||
${my_test_fx} ${flags} "${pname}" \
|
||||
&& for (( i=0 ; $i < $ndsc ; i++ )) ; do einfo "> ${dsc[$i]}" ; done
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql_version_is_at_least
|
||||
# @DESCRIPTION:
|
||||
# Is $2 (defaults to $MYSQL_VERSION_ID) at least version $1?
|
||||
# (nice) idea from versionator.eclass
|
||||
#
|
||||
mysql_version_is_at_least() {
|
||||
local want_s=$(stripdots "$1") have_s=$(stripdots "${2:-${MYSQL_VERSION_ID}}")
|
||||
[[ -z "${want_s}" ]] && die "mysql_version_is_at_least missing value to check"
|
||||
[[ ${want_s} -le ${have_s} ]] && return 0 || return 1
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql_lib_symlinks
|
||||
# @DESCRIPTION:
|
||||
# To be called on the live filesystem, reassigning symlinks of each MySQL
|
||||
# library to the best version available. (Obsolete)
|
||||
#
|
||||
mysql_lib_symlinks() {
|
||||
|
||||
local d dirlist maxdots libname libnameln libsuffix reldir
|
||||
libsuffix=$(get_libname)
|
||||
|
||||
einfo "libsuffix = ${libsuffix}"
|
||||
einfo "Updating MySQL libraries symlinks"
|
||||
|
||||
reldir="${1}"
|
||||
pushd "${reldir}/usr/$(get_libdir)" &> /dev/null
|
||||
|
||||
# dirlist must contain the less significative directory left
|
||||
dirlist="mysql"
|
||||
|
||||
# waste some time in removing and recreating symlinks
|
||||
for d in $dirlist ; do
|
||||
for libname in $( find "${d}" -mindepth 1 -maxdepth 1 -name "*${libsuffix}*" -and -not -type "l" 2>/dev/null ) ; do
|
||||
# maxdot is a limit versus infinite loop
|
||||
maxdots=0
|
||||
libnameln=${libname##*/}
|
||||
# loop in version of the library to link it, similar to how
|
||||
# libtool works
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# macho: libname.x.y.z.dylib
|
||||
local libbasename=${libnameln%%.*} # libname
|
||||
local libver=${libnameln#${libbasename}} # .x.y.z.dylib
|
||||
libver=${libver%${libsuffix}} # .x.y.z
|
||||
while [[ -n ${libver} ]] && [[ ${maxdots} -lt 6 ]] ; do
|
||||
libnameln="${libbasename}${libver}${libsuffix}"
|
||||
rm -f "${libnameln}"
|
||||
ln -s "${libname}" "${libnameln}"
|
||||
(( ++maxdots ))
|
||||
libver=${libver%.*}
|
||||
done
|
||||
libnameln="${libbasename}${libsuffix}"
|
||||
rm -f "${libnameln}"
|
||||
ln -s "${libname}" "${libnameln}"
|
||||
else
|
||||
# elf: libname.so.x.y.z
|
||||
while [[ ${libnameln:0-3} != '${libsuffix}' ]] && [[ ${maxdots} -lt 6 ]] ; do
|
||||
rm -f "${libnameln}"
|
||||
ln -s "${libname}" "${libnameln}"
|
||||
(( ++maxdots ))
|
||||
libnameln="${libnameln%.*}"
|
||||
done
|
||||
rm -f "${libnameln}"
|
||||
ln -s "${libname}" "${libnameln}"
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
popd &> /dev/null
|
||||
}
|
||||
|
||||
# @FUNCTION: mysql_init_vars
|
||||
# @DESCRIPTION:
|
||||
# void mysql_init_vars()
|
||||
# Initialize global variables
|
||||
# 2005-11-19 <vivo@gentoo.org>
|
||||
mysql_init_vars() {
|
||||
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mysql"}
|
||||
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
|
||||
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
|
||||
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
|
||||
MY_INCLUDEDIR=${MY_INCLUDEDIR="${EPREFIX}/usr/include/mysql"}
|
||||
MY_LIBDIR=${MY_LIBDIR="${EPREFIX}/usr/$(get_libdir)/mysql"}
|
||||
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=""
|
||||
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
|
||||
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
|
||||
| sed -e 's/.*=\s*//' \
|
||||
| tail -n1`
|
||||
fi
|
||||
fi
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR="${MY_LOCALSTATEDIR}"
|
||||
einfo "Using default MY_DATADIR"
|
||||
fi
|
||||
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
|
||||
|
||||
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
|
||||
if [[ -e "${MY_DATADIR}" ]] ; then
|
||||
# If you get this and you're wondering about it, see bug #207636
|
||||
elog "MySQL datadir found in ${MY_DATADIR}"
|
||||
elog "A new one will not be created."
|
||||
PREVIOUS_DATADIR="yes"
|
||||
else
|
||||
PREVIOUS_DATADIR="no"
|
||||
fi
|
||||
export PREVIOUS_DATADIR
|
||||
fi
|
||||
else
|
||||
if [[ ${EBUILD_PHASE} == "config" ]]; then
|
||||
local new_MY_DATADIR
|
||||
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
|
||||
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
|
||||
ewarn "MySQL MY_DATADIR has changed"
|
||||
ewarn "from ${MY_DATADIR}"
|
||||
ewarn "to ${new_MY_DATADIR}"
|
||||
MY_DATADIR="${new_MY_DATADIR}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "${MY_SOURCEDIR:-unset}" == "unset" ]; then
|
||||
MY_SOURCEDIR=${SERVER_URI##*/}
|
||||
MY_SOURCEDIR=${MY_SOURCEDIR%.tar*}
|
||||
fi
|
||||
|
||||
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
|
||||
export MY_LIBDIR MY_LOCALSTATEDIR MY_LOGDIR
|
||||
export MY_INCLUDEDIR MY_DATADIR MY_SOURCEDIR
|
||||
}
|
@ -1,22 +1,23 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: office-ext-r1.eclass
|
||||
# @MAINTAINER:
|
||||
# The office team <openoffice@gentoo.org>
|
||||
# The office team <office@gentoo.org>
|
||||
# @AUTHOR:
|
||||
# Tomáš Chvátal <scarabeus@gentoo.org>
|
||||
# @SUPPORTED_EAPIS: 5 6
|
||||
# @SUPPORTED_EAPIS: 5 6 7
|
||||
# @BLURB: Eclass for installing libreoffice/openoffice extensions
|
||||
# @DESCRIPTION:
|
||||
# Eclass for easing maintenance of libreoffice/openoffice extensions.
|
||||
|
||||
case "${EAPI:-0}" in
|
||||
5|6) OEXT_EXPORTED_FUNCTIONS="src_unpack src_install pkg_postinst pkg_prerm" ;;
|
||||
5|6) inherit eutils multilib ;;
|
||||
7) ;;
|
||||
*) die "EAPI=${EAPI} is not supported" ;;
|
||||
esac
|
||||
|
||||
inherit eutils multilib
|
||||
OEXT_EXPORTED_FUNCTIONS="src_unpack src_install pkg_postinst pkg_prerm"
|
||||
|
||||
# @ECLASS-VARIABLE: OFFICE_REQ_USE
|
||||
# @DESCRIPTION:
|
||||
@ -183,7 +184,7 @@ office-ext-r1_add_extension() {
|
||||
"-env:JFW_PLUGIN_DO_NOT_CHECK_ACCESSIBILITY=1"
|
||||
eend $?
|
||||
${UNOPKG_BINARY} list --shared > /dev/null
|
||||
rm -rf "${tmpdir}"
|
||||
rm -r "${tmpdir}" || dir "failed to clean up"
|
||||
}
|
||||
|
||||
# @FUNCTION: office-ext-r1_remove_extension
|
||||
@ -202,7 +203,7 @@ office-ext-r1_remove_extension() {
|
||||
"-env:JFW_PLUGIN_DO_NOT_CHECK_ACCESSIBILITY=1"
|
||||
eend $?
|
||||
${UNOPKG_BINARY} list --shared > /dev/null
|
||||
rm -rf "${tmpdir}"
|
||||
rm -r "${tmpdir}" || dir "failed to clean up"
|
||||
}
|
||||
|
||||
# @FUNCTION: office-ext-r1_pkg_postinst
|
||||
|
@ -13,8 +13,8 @@
|
||||
# src_install for opam-based packages.
|
||||
|
||||
case ${EAPI:-0} in
|
||||
0|1|2|3|4) die "You need at least EAPI-5 to use opam.eclass";;
|
||||
*) ;;
|
||||
5|6|7) ;;
|
||||
*) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
|
||||
esac
|
||||
|
||||
RDEPEND=">=dev-lang/ocaml-4:="
|
||||
@ -30,10 +30,10 @@ opam-install() {
|
||||
local pkg
|
||||
for pkg ; do
|
||||
opam-installer -i \
|
||||
--prefix="${ED}usr" \
|
||||
--libdir="${D}$(ocamlc -where)" \
|
||||
--docdir="${ED}usr/share/doc/${PF}" \
|
||||
--mandir="${ED}usr/share/man" \
|
||||
--prefix="${ED%/}/usr" \
|
||||
--libdir="${D%/}/$(ocamlc -where)" \
|
||||
--docdir="${ED%/}/usr/share/doc/${PF}" \
|
||||
--mandir="${ED%/}/usr/share/man" \
|
||||
"${pkg}.install" || die
|
||||
done
|
||||
}
|
||||
@ -42,9 +42,9 @@ opam_src_install() {
|
||||
local pkg="${1:-${PN}}"
|
||||
opam-install "${pkg}"
|
||||
# Handle opam putting doc in a subdir
|
||||
if [ -d "${ED}usr/share/doc/${PF}/${pkg}" ] ; then
|
||||
mv "${ED}usr/share/doc/${PF}/${pkg}/"* "${ED}usr/share/doc/${PF}/" || die
|
||||
rmdir "${ED}usr/share/doc/${PF}/${pkg}" || die
|
||||
if [ -d "${ED%/}/usr/share/doc/${PF}/${pkg}" ] ; then
|
||||
mv "${ED%/}/usr/share/doc/${PF}/${pkg}/"* "${ED%/}/usr/share/doc/${PF}/" || die
|
||||
rmdir "${ED%/}/usr/share/doc/${PF}/${pkg}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user