parent
e764ce8f09
commit
af56ec5630
@ -0,0 +1,146 @@
|
||||
This fixes builds on uClibc and musl. See
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=544756
|
||||
|
||||
This patch is a slight modification of uptream commits:
|
||||
http://www.sudo.ws/repos/sudo/rev/86eb67f3c41a
|
||||
http://www.sudo.ws/repos/sudo/rev/e0794f05e95c
|
||||
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/getopt_long.c sudo-1.8.12/lib/util/getopt_long.c
|
||||
--- sudo-1.8.12.orig/lib/util/getopt_long.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/getopt_long.c 2015-04-10 19:21:20.337032782 +0000
|
||||
@@ -52,6 +52,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/mksiglist.c sudo-1.8.12/lib/util/mksiglist.c
|
||||
--- sudo-1.8.12.orig/lib/util/mksiglist.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/mksiglist.c 2015-04-10 19:22:38.719856268 +0000
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "mksiglist.h"
|
||||
|
||||
printf("#include <config.h>\n");
|
||||
+ printf("#include <sys/types.h>\n");
|
||||
printf("#include <signal.h>\n");
|
||||
printf("#include \"sudo_compat.h\"\n\n");
|
||||
printf("const char *const sudo_sys_siglist[NSIG] = {\n");
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/mksigname.c sudo-1.8.12/lib/util/mksigname.c
|
||||
--- sudo-1.8.12.orig/lib/util/mksigname.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/mksigname.c 2015-04-10 19:22:10.738491394 +0000
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "mksigname.h"
|
||||
|
||||
printf("#include <config.h>\n");
|
||||
+ printf("#include <sys/types.h>\n");
|
||||
printf("#include <signal.h>\n");
|
||||
printf("#include \"sudo_compat.h\"\n\n");
|
||||
printf("const char *const sudo_sys_signame[NSIG] = {\n");
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/regress/fnmatch/fnm_test.c sudo-1.8.12/lib/util/regress/fnmatch/fnm_test.c
|
||||
--- sudo-1.8.12.orig/lib/util/regress/fnmatch/fnm_test.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/regress/fnmatch/fnm_test.c 2015-04-10 19:21:20.340032928 +0000
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef HAVE_STRING_H
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/regress/glob/globtest.c sudo-1.8.12/lib/util/regress/glob/globtest.c
|
||||
--- sudo-1.8.12.orig/lib/util/regress/glob/globtest.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/regress/glob/globtest.c 2015-04-10 19:21:20.341032977 +0000
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef HAVE_STRING_H
|
||||
diff -Naur sudo-1.8.12.orig/lib/util/sha2.c sudo-1.8.12/lib/util/sha2.c
|
||||
--- sudo-1.8.12.orig/lib/util/sha2.c 2015-02-09 18:40:09.000000000 +0000
|
||||
+++ sudo-1.8.12/lib/util/sha2.c 2015-04-10 19:21:20.342033026 +0000
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- * Copyright (c) 2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
+ * Copyright (c) 2013-2015 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
diff -Naur sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_base64.c sudo-1.8.12/plugins/sudoers/regress/parser/check_base64.c
|
||||
--- sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_base64.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/plugins/sudoers/regress/parser/check_base64.c 2015-04-10 19:21:20.342033026 +0000
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- * Copyright (c) 2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
+ * Copyright (c) 2013-2015 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
diff -Naur sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_digest.c sudo-1.8.12/plugins/sudoers/regress/parser/check_digest.c
|
||||
--- sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_digest.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/plugins/sudoers/regress/parser/check_digest.c 2015-04-10 19:21:20.343033075 +0000
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- * Copyright (c) 2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
+ * Copyright (c) 2013-2015 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
diff -Naur sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_hexchar.c sudo-1.8.12/plugins/sudoers/regress/parser/check_hexchar.c
|
||||
--- sudo-1.8.12.orig/plugins/sudoers/regress/parser/check_hexchar.c 2015-02-09 18:40:10.000000000 +0000
|
||||
+++ sudo-1.8.12/plugins/sudoers/regress/parser/check_hexchar.c 2015-04-10 19:21:20.344033124 +0000
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- * Copyright (c) 2014 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
+ * Copyright (c) 2014-2015 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
+#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
diff -Naur sudo-1.8.12.orig/plugins/sudoers/solaris_audit.c sudo-1.8.12/plugins/sudoers/solaris_audit.c
|
||||
--- sudo-1.8.12.orig/plugins/sudoers/solaris_audit.c 2015-02-09 18:53:54.000000000 +0000
|
||||
+++ sudo-1.8.12/plugins/sudoers/solaris_audit.c 2015-04-10 19:21:20.345033172 +0000
|
||||
@@ -15,6 +15,8 @@
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
+
|
||||
+#include <sys/types.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
@ -1,2 +1,3 @@
|
||||
DIST dpkg_1.17.23.tar.xz 4386124 SHA256 90c4af92fc248a7542cf6db1141d69b042130abd82781943b3c2608e78f860b5 SHA512 b0ebb6d072135f8eb0504084aab38d1f7366dd2bbf4a28a66f7fda5777236f56eb14dd43f8b5cd5ab8dd5d467e48b398221a271c2cb52360d09c7b7cec0e531a WHIRLPOOL cda6fab0c05e12a077a1c7c66883c85646b9f45ece209925947583a4f452f54750253249e21c2b650c13e57c4bfbb82caf807ab00a9163dd1db4bc289c874a04
|
||||
DIST dpkg_1.17.24.tar.xz 4388276 SHA256 afd60233ef090aa5a4d9e181b8986d1f5deb23a3428a2309b6b4ec448d539eac SHA512 4ec8e55f765cd6718f9ea76ac4d0ba37d007a94a06a9ce91a5958feb4641c93dca4b5da8de2e7ddd0775e7e0a00ac3d9f11445489249f724edee6bc9c3a31332 WHIRLPOOL 37113575147e9f8030b0845353596a6e193370cc0b13b785a5a37d08762c27afae857f554ed4da09c4aa1146b6002533f72da7b8ab681ca32292bbc0b83cc3a8
|
||||
DIST dpkg_1.17.25.tar.xz 4407792 SHA256 07019d38ae98fb107c79dbb3690cfadff877f153b8c4970e3a30d2e59aa66baa SHA512 6a4b45c0f59cd11fc104d954ab790dd7e11e650cd6dde303a664023a04bf6fbc49c878eaf00e27dd7f9bf5e79a92b3a5f5923d003942436758a3027364a0b7c7 WHIRLPOOL 6ed2d8a645787a83f431803214cce9b1c7516c4083ffe651deb7c2f8b641b85d3a17271030286155a985dfd0046fbd584d2d750ab8954e8e5af74085d7651bd2
|
||||
|
@ -0,0 +1,98 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/dpkg/dpkg-1.17.25.ebuild,v 1.2 2015/04/10 19:54:04 jer Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit eutils multilib autotools toolchain-funcs
|
||||
|
||||
DESCRIPTION="Package maintenance system for Debian"
|
||||
HOMEPAGE="http://packages.qa.debian.org/dpkg"
|
||||
SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-solaris ~x86-solaris"
|
||||
IUSE="+bzip2 +lzma nls selinux test unicode +update-alternatives +zlib"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-lang/perl-5.6.0:=
|
||||
dev-perl/TimeDate
|
||||
>=sys-libs/ncurses-5.2-r7
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
lzma? ( app-arch/xz-utils )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
zlib? ( >=sys-libs/zlib-1.1.4 )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
nls? (
|
||||
app-text/po4a
|
||||
>=sys-devel/gettext-0.18.2
|
||||
)
|
||||
test? (
|
||||
dev-perl/DateTime-Format-DateParse
|
||||
dev-perl/IO-String
|
||||
dev-perl/Test-Pod
|
||||
virtual/perl-Test-Harness
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( ChangeLog THANKS TODO )
|
||||
|
||||
src_prepare() {
|
||||
# do not expect Debian's gzip --rsyncable extension
|
||||
epatch "${FILESDIR}"/${PN}-1.17.0-gzip-rsyncable.patch
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-1.17.1-flags.patch
|
||||
|
||||
# Force the use of the running bash for get-version (this file is never
|
||||
# installed, so no need to worry about hardcoding a temporary bash)
|
||||
sed -i -e '1c\#!'"${BASH}" get-version || die
|
||||
|
||||
if [[ ${CHOST} == mips64*-linux-gnu ]] ; then
|
||||
# Debian targets use custom full tuples. Map the default one
|
||||
# based on the ABI we're using.
|
||||
local abi
|
||||
if [[ ${ABI} == "n64" ]] ; then
|
||||
abi="mips64"
|
||||
else
|
||||
abi="mipsn32"
|
||||
fi
|
||||
printf "gnu-linux-mips64 ${abi}\ngnu-linux-mips64el ${abi}el\n" >> triplettable
|
||||
fi
|
||||
|
||||
use nls && strip-linguas -i po
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
econf \
|
||||
$(use_enable nls) \
|
||||
$(use_enable unicode) \
|
||||
$(use_enable update-alternatives) \
|
||||
$(use_with bzip2 bz2) \
|
||||
$(use_with lzma liblzma) \
|
||||
$(use_with selinux) \
|
||||
$(use_with zlib) \
|
||||
--disable-compiler-warnings \
|
||||
--disable-dselect \
|
||||
--disable-silent-rules \
|
||||
--disable-start-stop-daemon \
|
||||
--localstatedir="${EPREFIX}"/var
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake AR=$(tc-getAR)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
keepdir /usr/$(get_libdir)/db/methods/{mnt,floppy,disk}
|
||||
keepdir /usr/$(get_libdir)/db/{alternatives,info,methods,parts,updates}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
From c3216513bf12cdeec154b6430a50ef6dfd271ee6 Mon Sep 17 00:00:00 2001
|
||||
From: Kristian Fiskerstrand <kf@sumptuouscapital.com>
|
||||
Date: Sun, 12 Apr 2015 01:11:07 +0200
|
||||
Subject: [PATCH] dirmngr: Fix segfault in ldap engine
|
||||
|
||||
(ks-engine-ldap.c) Fix segfault caused by missing check whether uri is
|
||||
initialized
|
||||
---
|
||||
dirmngr/ks-engine-ldap.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dirmngr/ks-engine-ldap.c b/dirmngr/ks-engine-ldap.c
|
||||
index aefd12a..4497025 100644
|
||||
--- a/dirmngr/ks-engine-ldap.c
|
||||
+++ b/dirmngr/ks-engine-ldap.c
|
||||
@@ -306,7 +306,9 @@ ks_ldap_help (ctrl_t ctrl, parsed_uri_t uri)
|
||||
"Supported methods: search, get, put\n";
|
||||
gpg_error_t err;
|
||||
|
||||
- if (strcmp (uri->scheme, "ldap") == 0
|
||||
+ if(!uri)
|
||||
+ err = ks_print_help (ctrl, " ldap");
|
||||
+ else if (strcmp (uri->scheme, "ldap") == 0
|
||||
|| strcmp (uri->scheme, "ldaps") == 0
|
||||
|| strcmp (uri->scheme, "ldapi") == 0)
|
||||
err = ks_print_help (ctrl, data);
|
||||
--
|
||||
2.3.0
|
||||
|
@ -1,6 +1,3 @@
|
||||
DIST emacs-24.4-patches-4.tar.xz 4652 SHA256 8b97fe775ed120df42e6f3afbe3ce503c0fedd8957caa759649323ac340f2922 SHA512 b8f8aea92472b5c074fc4cb2198b329e7b0496a70ba04d76eea4f420e398f3882b89d848020750659f60828217ea3155f4d53078edc8dc715b2946b8a239157a WHIRLPOOL e5e92ce3fba0e62ba3135e89ab8de9b6196f9a342048dbe679e06c3530a305311a1b300b72abdee50416d989cb55ca053ea1e0b259e63cc56260bfd58d43894a
|
||||
DIST emacs-24.4.90.tar.xz 39752368 SHA256 cec2204ec0134dfac9987dde3aff95e4a02538d4ce63e8d7c55b6a409aa04b36 SHA512 c7fe2ab40b1a28a97342753afb7fd5c24751ad51a144c723c6c1be517b81006b4641f1f4e833b8424ac00107992934f4e4520dd7aa92074e44ab98a148a17eed WHIRLPOOL b20c133381617f15ee2babca36164a104f18da0f38ae310db4cbc539fa988832a4b7d78acc0e023e4b8c92a877decbce44d45028c8b8ecee708c092dfe27e39d
|
||||
DIST emacs-24.4.91.tar.xz 39755240 SHA256 497631aafc470ba4b4c1a9f407319a3144d8dc11eb24b7b755a66d9f1f3b5add SHA512 2c885297591992583a6263babcb167563af0a6c1d0920d2e4b3fc9caa9888a55d9394e92f25bec717844a88294f48f9aafb385bba594a2da3ccff48a6bb8d555 WHIRLPOOL 1b7465d07565c636611b606ca84da56ddc9a0865bf5333c5793ebe12462c024a9b889e5f9763230fb37c076633917e99650bf28ed290ca5a26dd28f225d8a0e4
|
||||
DIST emacs-25.0.50_pre20150131.tar.xz 24719944 SHA256 fa21415c14d724c6cbd92ea8b76bfbc157757baf1446492b5f72062ff0017076 SHA512 85629851ba93d25050e0590b8c00ea9417e2c6839d306276ec3f02ce4d6bba14fe407f32eb07dcc2d42c79fade0678e9e5c098cf1562831a0a715373629a9d40 WHIRLPOOL e58589ac54577800e971232e814212b2954c93c42d701c137283590833420680968f71b46c6e087c4b3d900f96fb1c99edc6420ffbd336740e9b079e01e9ef4a
|
||||
DIST emacs-25.0.50_pre20150228.tar.xz 24749116 SHA256 8e442cbb27e0b39aee9ebcd981512870a7030ecdd4f7941c3ea43dfbb0635635 SHA512 a9f3f3fe5bb2d662c06317c630af40c48b47b33f5cfdbc2a3fa592ac27cb9b9e1c91524326def931b931fc4a35056bac45b7836e24e550088965783dad2c3188 WHIRLPOOL 9349f8f94873a2addc75af295852434a6609bc88f2acb9ef45b24947a8d5f2b058b2e3a0d461eb2ce34816b4895225fdbd939c4ed366608949ca13c354a74185
|
||||
DIST emacs-25.0.50_pre20150331.tar.xz 24800328 SHA256 b6aea078e1bc8453ce9242d30b5ab1167c72961f0f3a6a3472bae8cde8dfa193 SHA512 9f169ab06597a0fcfdc3854f42ea48adcfe6de7fb43dd2d3af24dae1ccf7bb8ff0df78ebe256a59089152ee95549170d854a90d2b0040e6518de3072cb833482 WHIRLPOOL d75319210586c40117527b5f091d52904397739d56888744e61ffd703a6465bd04dae9632b9e80b2692c4446aa27ade34a9509a523e038b76581dfa8dbb24084
|
||||
|
@ -1,364 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-24.4.90-r1.ebuild,v 1.3 2015/03/31 17:25:58 ulm Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://git.sv.gnu.org/emacs.git"
|
||||
EGIT_BRANCH="emacs-24"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
else
|
||||
SRC_URI="http://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
|
||||
mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz
|
||||
http://dev.gentoo.org/~ulm/emacs/emacs-24.4-patches-4.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="http://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="24"
|
||||
IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
net-libs/liblockfile
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gfile? ( >=dev-libs/glib-2.28.6 )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gpm? ( sys-libs/gpm )
|
||||
hesiod? ( net-dns/hesiod )
|
||||
kerberos? ( virtual/krb5 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk3? ( x11-libs/gtk+:3 )
|
||||
!gtk3? ( x11-libs/gtk+:2 )
|
||||
)
|
||||
!gtk? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
Xaw3d? ( x11-libs/libXaw3d )
|
||||
!Xaw3d? ( athena? ( x11-libs/libXaw ) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )
|
||||
pax_kernel? (
|
||||
sys-apps/attr
|
||||
sys-apps/paxctl
|
||||
)"
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
epatch "${WORKDIR}"/patch/04_all_games-sgid.patch
|
||||
epatch_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
# Save version information in the Emacs binary. It will be available
|
||||
# in variable "system-configuration-options".
|
||||
myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
myconf+=" EGIT_BRANCH=${EGIT_BRANCH} EGIT_VERSION=${EGIT_VERSION}"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--with-gameuser=":gamestat" \
|
||||
--without-compress-install \
|
||||
--with-file-notification=$(usev gfile || usev inotify || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gpm) \
|
||||
$(use_with hesiod) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with selinux) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
|
||||
emake
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{applications,icons}
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
|
||||
local pvr
|
||||
for pvr in ${REPLACING_VERSIONS}; do
|
||||
[[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
|
||||
done
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,364 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-24.4.91.ebuild,v 1.2 2015/03/31 17:25:58 ulm Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://git.sv.gnu.org/emacs.git"
|
||||
EGIT_BRANCH="emacs-24"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
else
|
||||
SRC_URI="http://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
|
||||
mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz
|
||||
http://dev.gentoo.org/~ulm/emacs/emacs-24.4-patches-4.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="http://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="24"
|
||||
IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
net-libs/liblockfile
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gfile? ( >=dev-libs/glib-2.28.6 )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gpm? ( sys-libs/gpm )
|
||||
hesiod? ( net-dns/hesiod )
|
||||
kerberos? ( virtual/krb5 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk3? ( x11-libs/gtk+:3 )
|
||||
!gtk3? ( x11-libs/gtk+:2 )
|
||||
)
|
||||
!gtk? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
Xaw3d? ( x11-libs/libXaw3d )
|
||||
!Xaw3d? ( athena? ( x11-libs/libXaw ) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )
|
||||
pax_kernel? (
|
||||
sys-apps/attr
|
||||
sys-apps/paxctl
|
||||
)"
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
epatch "${WORKDIR}"/patch/04_all_games-sgid.patch
|
||||
epatch_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
# Save version information in the Emacs binary. It will be available
|
||||
# in variable "system-configuration-options".
|
||||
myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
myconf+=" EGIT_BRANCH=${EGIT_BRANCH} EGIT_VERSION=${EGIT_VERSION}"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--with-gameuser=":gamestat" \
|
||||
--without-compress-install \
|
||||
--with-file-notification=$(usev gfile || usev inotify || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gpm) \
|
||||
$(use_with hesiod) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with selinux) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
|
||||
emake
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{applications,icons}
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
|
||||
local pvr
|
||||
for pvr in ${REPLACING_VERSIONS}; do
|
||||
[[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
|
||||
done
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,339 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-24.5_rc1.ebuild,v 1.2 2015/03/31 17:22:41 ulm Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="http://www.gnu.org/software/emacs/"
|
||||
SRC_URI="mirror://gnu-alpha/emacs/pretest/${P/_/-}.tar.xz
|
||||
http://dev.gentoo.org/~ulm/emacs/${PN}-24.4-patches-4.tar.xz"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="24"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
net-libs/liblockfile
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gfile? ( >=dev-libs/glib-2.28.6 )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gpm? ( sys-libs/gpm )
|
||||
hesiod? ( net-dns/hesiod )
|
||||
kerberos? ( virtual/krb5 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk3? ( x11-libs/gtk+:3 )
|
||||
!gtk3? ( x11-libs/gtk+:2 )
|
||||
)
|
||||
!gtk? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
Xaw3d? ( x11-libs/libXaw3d )
|
||||
!Xaw3d? ( athena? ( x11-libs/libXaw ) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )
|
||||
pax_kernel? (
|
||||
sys-apps/attr
|
||||
sys-apps/paxctl
|
||||
)"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
!<app-editors/emacs-vcs-${PV}"
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
|
||||
src_prepare() {
|
||||
#EPATCH_SUFFIX=patch epatch
|
||||
epatch "${WORKDIR}"/patch/04_all_games-sgid.patch
|
||||
epatch_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
# Save version information in the Emacs binary. It will be available
|
||||
# in variable "system-configuration-options".
|
||||
myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--with-gameuser=":gamestat" \
|
||||
--without-compress-install \
|
||||
--with-file-notification=$(usev gfile || usev inotify || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gpm) \
|
||||
$(use_with hesiod) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with selinux) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
|
||||
emake
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{applications,icons}
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
|
||||
local pvr
|
||||
for pvr in ${REPLACING_VERSIONS}; do
|
||||
[[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
|
||||
done
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,338 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-24.5_rc3-r1.ebuild,v 1.1 2015/04/09 23:36:08 ulm Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="http://www.gnu.org/software/emacs/"
|
||||
SRC_URI="mirror://gnu-alpha/emacs/pretest/${P/_/-}.tar.xz
|
||||
http://dev.gentoo.org/~ulm/emacs/${P%_*}-patches-1.tar.xz"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="24"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
net-libs/liblockfile
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gfile? ( >=dev-libs/glib-2.28.6 )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gpm? ( sys-libs/gpm )
|
||||
hesiod? ( net-dns/hesiod )
|
||||
kerberos? ( virtual/krb5 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk3? ( x11-libs/gtk+:3 )
|
||||
!gtk3? ( x11-libs/gtk+:2 )
|
||||
)
|
||||
!gtk? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
Xaw3d? ( x11-libs/libXaw3d )
|
||||
!Xaw3d? ( athena? ( x11-libs/libXaw ) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )
|
||||
pax_kernel? (
|
||||
sys-apps/attr
|
||||
sys-apps/paxctl
|
||||
)"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
!<app-editors/emacs-vcs-${PV}"
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
|
||||
src_prepare() {
|
||||
EPATCH_SUFFIX=patch epatch
|
||||
epatch_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
# Save version information in the Emacs binary. It will be available
|
||||
# in variable "system-configuration-options".
|
||||
myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--with-gameuser=":gamestat" \
|
||||
--without-compress-install \
|
||||
--with-file-notification=$(usev gfile || usev inotify || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gpm) \
|
||||
$(use_with hesiod) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with selinux) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
|
||||
emake
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{applications,icons}
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
|
||||
local pvr
|
||||
for pvr in ${REPLACING_VERSIONS}; do
|
||||
[[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
|
||||
done
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
DIST NeXT_XEmacs.tar.gz 39571 SHA256 35a0d988fd4ee801572639a99798571aa9fad140ddbed1455565ae9d5e0086c7 SHA512 611ddbbf5be3d2274e7f76be7f8200c6c7f3cba917efcc24e73685aa5f61c94237e6e48ce66f2d59ee4b74862e686f3ea7a29cf006717d5d0674db24d243d566 WHIRLPOOL d47aafa6fe7a11de94196dffb752c683722b8ead23979a7f4344c61964ebcd052a4f0ad6b9ab42a5d41f5551c0a543f46af59656fc8a79340257626272c1faae
|
||||
DIST xemacs-21.4.22.tar.gz 8357931 SHA256 87fb7633106625935105e821eb8fe65e521a3de44d45fe864109779c3a8e4bd1 SHA512 7ddd91f8d1a1b9f6d984a5bfddd98705dd6f7e3d6b4f81c1e03d971c93e33bff09b641bc2ad0a0d9d2e44170063550ad0399f3e28237dd34b8ad6200d8b197e8 WHIRLPOOL f1d313aa2dee7f4238190b90c10dc951a31302563a8a098e69ed740e85f428ac360b363e44f1e618f2d97782b5532846df290e9f79f11abdc7648a1e380cb44e
|
||||
DIST xemacs-21.4.24.tar.gz 8543879 SHA256 9016a51496d4978cf3dba75000a8e38bfc8cb4ca3a3f3e71371aa19259f26cd5 SHA512 b7a88d5a4a9f74f74c2067ed60f7ea87ac8ccad5d9c2c1033ecf07f540250191f8fa5f9e6d23d9fedd0f2ab1eb5ea6c29a7665a310ec512d85e2e4f337447213 WHIRLPOOL 469d52341833037e22cebeb6b554435c81b3f5749f64d86ddf31c3990dfc08a57f49fab7e868ab8c2009d1cae665f4fd731813f25c942d5aafd287ad7736a049
|
||||
DIST xemacs-21.5.31.tar.gz 15802193 SHA256 d59f90b7e72621376a23daa484f1929945d0527350a10989fd086bde9d0a997d SHA512 17c385459edffc063d43537dae5b2883d2d7481e7f7596d02c9859ecb9dd4ee48921647b389ed979d65ede2745b647c9b196c9ef0873e6d526d21262f04b7f41 WHIRLPOOL b2a1741af341f260671e1c8479f47c30113b515b240d86b41b6449abde96be896371d3f6b038ab72a96c422f84704de0a41e403a16c9ca2a4861e590e65b1f59
|
||||
DIST xemacs-21.5.33.tar.gz 15781151 SHA256 448c76aa32cd5c84257027846f01b75a5e4f1e9db3278f95e68ff23d59fb8f94 SHA512 75358b5cf2a012d23b95eb918e0ba1abf254db51d979d370f407b67871c6d09e2d59f59fe1acd46149933913222935e2c12be72cdf0314109c568f9f14438151 WHIRLPOOL 29d6a19d8cacc243afd3c21ed96cfabfa956531692e8ce4a454b958d32b08bb3eac47f52ada872ccfdb41082514145c602cc7ed81443bece7529365ba089f454
|
||||
DIST xemacs-21.5.34.tar.gz 15816932 SHA256 33cc54a6a9a45224a64b6c57c8138b5a5f0f1be368951a6d9ec8c0aec5993ee5 SHA512 b61d88fe530a77b88c2ed0cecd6597ed3c265450bc61f7c6823920f774b2d566ef6fc18a6c33928d846d08d465617d4ccd3c4656606ec8634127a683abbc929a WHIRLPOOL 733aabc45309ff4172ab77492dd85e71f156722f2e06d9a185c0a4260b9fbea607ff8a41dc43fc009cb8cdf3f05d4523778610a501f27a4917ab43cea03c6209
|
||||
|
@ -0,0 +1,237 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/xemacs-21.4.24.ebuild,v 1.1 2015/04/11 00:44:43 matsl Exp $
|
||||
|
||||
# Note: xemacs currently does not work with a hardened profile. If you
|
||||
# want to use xemacs on a hardened profile then compile with the
|
||||
# -nopie flag in CFLAGS or help fix bug #75028.
|
||||
|
||||
EAPI="5"
|
||||
|
||||
WANT_AUTOCONF="2.1"
|
||||
inherit autotools eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="highly customizable open source text editor and application development system"
|
||||
HOMEPAGE="http://www.xemacs.org/"
|
||||
SRC_URI="http://ftp.xemacs.org/xemacs-21.4/${P}.tar.gz
|
||||
http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
|
||||
IUSE="eolconv gif gpm pop postgres ldap xface nas dnd X jpeg tiff png mule motif freewnn canna xim athena neXt Xaw3d gdbm berkdb"
|
||||
|
||||
X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps"
|
||||
|
||||
RDEPEND="
|
||||
berkdb? ( sys-libs/db )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.3 )
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=dev-libs/openssl-0.9.6
|
||||
>=media-libs/audiofile-0.2.3
|
||||
gpm? ( >=sys-libs/gpm-1.19.6 )
|
||||
postgres? ( dev-db/postgresql )
|
||||
ldap? ( net-nds/openldap )
|
||||
nas? ( media-libs/nas )
|
||||
X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) )
|
||||
dnd? ( x11-libs/dnd )
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
athena? ( x11-libs/libXaw )
|
||||
Xaw3d? ( x11-libs/libXaw3d )
|
||||
neXt? ( x11-libs/neXtaw )
|
||||
xface? ( media-libs/compface )
|
||||
tiff? ( media-libs/tiff )
|
||||
png? ( >=media-libs/libpng-1.2 )
|
||||
jpeg? ( virtual/jpeg )
|
||||
canna? ( app-i18n/canna )
|
||||
!amd64? ( freewnn? ( app-i18n/freewnn ) )
|
||||
>=sys-libs/ncurses-5.2
|
||||
>=app-eselect/eselect-emacs-1.15"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
PDEPEND="app-xemacs/xemacs-base
|
||||
mule? ( app-xemacs/mule-base )"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${P}.tar.gz
|
||||
use neXt && unpack NeXT_XEmacs.tar.gz
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# see bug 58350, 102540 and 143580
|
||||
epatch "${FILESDIR}"/xemacs-21.4.19-db.patch
|
||||
|
||||
# Some binaries and man pages are installed under suffixed names
|
||||
# to avoid collions with their GNU Emacs counterparts (see below).
|
||||
# Fix internal filename references.
|
||||
sed -i -e 's/exec gnuclient/&-xemacs/' lib-src/gnudoit || die
|
||||
sed -i -e '/^\.so/s/etags/&-xemacs/' etc/ctags.1 || die
|
||||
sed -i -e '/^\.so/s/gnuserv/&-xemacs/' etc/gnu{client,doit,attach}.1 || die
|
||||
|
||||
# Run autoconf. XEmacs tries to be smart by providing a stub
|
||||
# configure.ac file for autoconf 2.59 but this throws our
|
||||
# autotools eclass so it must be removed first.
|
||||
rm "${S}"/configure.ac || die
|
||||
eautoconf
|
||||
|
||||
use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=""
|
||||
|
||||
if use X; then
|
||||
|
||||
myconf="${myconf} --with-widgets=athena"
|
||||
myconf="${myconf} --with-dialogs=athena"
|
||||
myconf="${myconf} --with-menubars=lucid"
|
||||
myconf="${myconf} --with-scrollbars=lucid"
|
||||
if use motif ; then
|
||||
myconf="--with-widgets=motif"
|
||||
myconf="${myconf} --with-dialogs=motif"
|
||||
myconf="${myconf} --with-scrollbars=motif"
|
||||
myconf="${myconf} --with-menubars=lucid"
|
||||
fi
|
||||
if use athena ; then
|
||||
myconf="--with-scrollbars=athena"
|
||||
fi
|
||||
|
||||
if use Xaw3d; then
|
||||
myconf="${myconf} --with-athena=3d"
|
||||
elif use neXt; then
|
||||
myconf="${myconf} --with-athena=next"
|
||||
else
|
||||
myconf="${myconf} --with-athena=xaw"
|
||||
fi
|
||||
|
||||
use dnd && myconf="${myconf} --with-dragndrop --with-offix"
|
||||
|
||||
myconf="${myconf} $(use_with tiff ) $(use_with png )"
|
||||
myconf="${myconf} $(use_with jpeg ) $(use_with xface )"
|
||||
else
|
||||
myconf="${myconf}
|
||||
--without-x
|
||||
--without-xpm
|
||||
--without-dragndrop
|
||||
--with-gif=no"
|
||||
fi
|
||||
|
||||
if use mule ; then
|
||||
myconf="${myconf} --with-mule"
|
||||
|
||||
if use xim ; then
|
||||
if use motif ; then
|
||||
myconf="${myconf} --with-xim=motif"
|
||||
else
|
||||
myconf="${myconf} --with-xim=xlib"
|
||||
fi
|
||||
else
|
||||
myconf="${myconf} --with-xim=no"
|
||||
fi
|
||||
|
||||
myconf="${myconf} $(use_with canna ) $(use_with freewnn wnn )"
|
||||
fi
|
||||
|
||||
# This determines the type of sounds we are playing
|
||||
local soundconf="native"
|
||||
|
||||
# This determines how these sounds should be played
|
||||
use nas && soundconf="${soundconf},nas"
|
||||
|
||||
myconf="${myconf} --with-sound=${soundconf}"
|
||||
|
||||
if use gdbm || use berkdb ; then
|
||||
use gdbm && mydb="gdbm"
|
||||
|
||||
use berkdb && mydb="${mydb},berkdb"
|
||||
|
||||
myconf="${myconf} --with-database=${mydb}"
|
||||
else
|
||||
myconf="${myconf} --without-database"
|
||||
fi
|
||||
|
||||
# fixes #21264, this should be fixed in 21.4.21 and has been fixed
|
||||
# in 21.5 for sure. Now that 21.4.21 is out there is no real
|
||||
# evidence that this indeed got fixed, so keep these exceptions
|
||||
# for now.
|
||||
use alpha && myconf="${myconf} --with-system-malloc"
|
||||
use ppc64 && myconf="${myconf} --with-system-malloc"
|
||||
use ia64 && myconf="${myconf} --with-system-malloc"
|
||||
|
||||
# Enabling modules will cause segfaults outside the XEmacs build directory
|
||||
use ia64 && myconf="${myconf} --without-modules"
|
||||
|
||||
einfo "${myconf}"
|
||||
|
||||
# Don't use econf because it uses options which this configure
|
||||
# script does not understand (like --host).
|
||||
./configure ${myconf} ${EXTRA_ECONF} \
|
||||
$(use_with gif ) \
|
||||
$(use_with gpm ) \
|
||||
$(use_with postgres postgresql ) \
|
||||
$(use_with ldap ) \
|
||||
$(use_with eolconv file-coding ) \
|
||||
$(use_with pop ) \
|
||||
--compiler=$(tc-getCC) \
|
||||
--prefix=/usr \
|
||||
--with-ncurses \
|
||||
--with-msw=no \
|
||||
--mail-locking=flock \
|
||||
--with-site-lisp=yes \
|
||||
--with-site-modules=yes \
|
||||
|| die "The configure script failed to run properly"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake prefix="${D}"/usr \
|
||||
mandir="${D}"/usr/share/man/man1 \
|
||||
infodir="${D}"/usr/share/info \
|
||||
install gzip-el || die "emake install failed"
|
||||
|
||||
# Rename some applications installed in bin so that it is clear
|
||||
# which application installed them and so that conflicting
|
||||
# packages (emacs) can't clobber the actual applications.
|
||||
# Addresses bug #62991.
|
||||
for i in b2m ctags etags rcs-checkin gnuclient gnudoit gnuattach; do
|
||||
mv "${D}"/usr/bin/${i} "${D}"/usr/bin/${i}-xemacs || die "mv ${i} failed"
|
||||
done
|
||||
|
||||
# rename man pages
|
||||
for i in ctags etags gnuserv gnuclient gnudoit gnuattach; do
|
||||
mv "${D}"/usr/share/man/man1/${i}{,-xemacs}.1 || die "mv ${i}.1 failed"
|
||||
done
|
||||
|
||||
# install base packages directories
|
||||
dodir /usr/lib/xemacs/xemacs-packages/
|
||||
dodir /usr/lib/xemacs/site-packages/
|
||||
dodir /usr/lib/xemacs/site-modules/
|
||||
dodir /usr/lib/xemacs/site-lisp/
|
||||
|
||||
if use mule;
|
||||
then
|
||||
dodir /usr/lib/xemacs/mule-packages
|
||||
fi
|
||||
|
||||
# remove extraneous info files
|
||||
cd "${D}"/usr/share/info
|
||||
rm -f dir info.info texinfo* termcap* standards*
|
||||
|
||||
cd "${S}"
|
||||
dodoc BUGS CHANGES-* ChangeLog GETTING* INSTALL PROBLEMS README*
|
||||
dodoc "${FILESDIR}"/README.Gentoo
|
||||
|
||||
newicon "${S}"/etc/${PN}-icon.xpm ${PN}.xpm
|
||||
|
||||
domenu "${FILESDIR}"/${PN}.desktop
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect emacs update ifunset
|
||||
eselect gnuclient update ifunset
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect emacs update ifunset
|
||||
eselect gnuclient update ifunset
|
||||
}
|
@ -1 +1 @@
|
||||
DIST rustc-1.0.0-alpha-src.tar.gz 21344613 SHA256 3a2285726e839fc57ad49ed8907a50bab2d29d8f898e2d5a02f620a0477fc25c SHA512 7285f1a90e75b31d4455a025a93fbdc590203e0875e3c1845df99e20d92a880573dff8ccb9d0ab4e85f64208a4eb46f5f71dd0c7def8e3d589021b90714d7b06 WHIRLPOOL 827b18b363ccde654499b616937df76daaf8b43bf76af2ac438006c3f0d71540df41d1cd109f58822627c9aea1be9f106ced3ff82630e965fce62f82bbceae75
|
||||
DIST rust-mode-1_beta20150411.tar.gz 18155 SHA256 ac29e082fa09a98f864213553685bd085fe48ba3ec871032ef3cec19b2388c3a SHA512 fc9fe74ba4924cf54664f37c5a88d86b38e17e4ad5e0d4d924afd7f3c8428764dece81cfbe40397460685859f34c3eb841b2c83aef8f34526f4ed3f065cc504e WHIRLPOOL a4ba69d96701bc48049bb16513b71a836cd2faf197f346d6c4f7fadcb18cf9dc4143e6f82e965d6875c3913f16cda3a4cce2dc83821885a0fa2e4bcfb5ce74a1
|
||||
|
@ -1,21 +1,17 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emacs/rust-mode/rust-mode-1.0.0_alpha.ebuild,v 1.1 2015/02/10 11:57:51 jauhien Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emacs/rust-mode/rust-mode-1_beta20150411.ebuild,v 1.1 2015/04/11 20:55:34 jauhien Exp $
|
||||
|
||||
EAPI="5"
|
||||
EAPI=5
|
||||
|
||||
inherit elisp
|
||||
|
||||
MY_PV="rustc-1.0.0-alpha"
|
||||
|
||||
DESCRIPTION="A major emacs mode for editing Rust source code"
|
||||
HOMEPAGE="http://www.rust-lang.org/"
|
||||
SRC_URI="http://static.rust-lang.org/dist/${MY_PV}-src.tar.gz"
|
||||
SRC_URI="http://dev.gentoo.org/~jauhien/distfiles/${P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
S="${WORKDIR}/${MY_PV}/src/etc/emacs"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
@ -1,3 +1,3 @@
|
||||
DIST docker-compose-1.1.0.tar.gz 47478 SHA256 7df1fe408d6b150a56148a6947f70c24d29616bbe0e24ba7390ed41d2596cb1e SHA512 969ffc5343da39baff1995b2fb02818da211e6ce5df41efc4f178dd5208b2d6caee8e59909bd1e4845f8a95038b40490f663690ba46a44f1092c3b98dc6a5e49 WHIRLPOOL 1ba208cd08ac8c8cc9290805dc57076118fc6d5c25a9474a8d1b1ea45c35f2be4d9c8688c1b2d89dbfeff89ba421711fc408fe14f1b58b07010fb88c76a9f600
|
||||
DIST docker-compose-1.1.0_rc2.tar.gz 46737 SHA256 7da03a3456a2628ba727d74b207fb62941d3395d1007bf2c230e81ac792e56ac SHA512 8ae4780479fa030328623cf04fdce122801b1957017899b70c93bb74a3ad11b4a8a70c2cb3f0b0f0db0c8c47e56a736fd6b892cfd8a8561c252235d7c2ac5797 WHIRLPOOL 62207db65d28710c2820f4f3b2390c42d7dba187cd210e93a5f8be5a01305000bf6739abb40439fd649c2f823cc39812da110e99f0461b2b3e1d5d565a71c187
|
||||
DIST docker-compose-1.2.0_rc3.tar.gz 57366 SHA256 1d95191aebc31fd25b770217688407628390b5e5f09b1fd1a4e01ee0dc5fedeb SHA512 8a240648ecdb0bcb6e21ab5d217f8b7ad788732aa1648f8b6ce62db398562970fe4902e3ec9eeb528d9366195ab2d33d908b77c7d03f97322fe14a821b50d8f2 WHIRLPOOL 0776a5f1fd3fd157757910686e34b348991c17cfa0128118d09648dc42e79c97481a2e2be927ff3edebb76d0a6e66706eb9124aba840ba679d67705625c8a5f6
|
||||
DIST docker-compose-1.2.0_rc4.tar.gz 57629 SHA256 f164816b1c0349e602dfc251fc6ec674e7218a90979e5c8a7d38bf7eb061fc40 SHA512 1ae1ce6ab67615a5ca274507cdf3a782c98d379c7aa4de76917d2a1df00990dcb4210d14364a3bdb7744a56a8ac38127b41f4d91766d5c7de4f3eaefc7fb2558 WHIRLPOOL b5456e4d488054d4dec71cd2c1a720546f6bab58126ba598d3858cba666d86e42c0657431ec41fecca9b2c810a6e37ca1eeb6f5fbfc4ecdddd6ff55c491c1ced
|
||||
|
@ -0,0 +1,241 @@
|
||||
From a2bebfd6e09d285aa793cae3fb0fc3a39a9fee6e Mon Sep 17 00:00:00 2001
|
||||
From: "Daniel P. Berrange" <berrange@redhat.com>
|
||||
Date: Mon, 23 Mar 2015 22:58:21 +0000
|
||||
Subject: [PATCH] CVE-2015-1779: incrementally decode websocket frames
|
||||
|
||||
The logic for decoding websocket frames wants to fully
|
||||
decode the frame header and payload, before allowing the
|
||||
VNC server to see any of the payload data. There is no
|
||||
size limit on websocket payloads, so this allows a
|
||||
malicious network client to consume 2^64 bytes in memory
|
||||
in QEMU. It can trigger this denial of service before
|
||||
the VNC server even performs any authentication.
|
||||
|
||||
The fix is to decode the header, and then incrementally
|
||||
decode the payload data as it is needed. With this fix
|
||||
the websocket decoder will allow at most 4k of data to
|
||||
be buffered before decoding and processing payload.
|
||||
|
||||
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
||||
|
||||
[ kraxel: fix frequent spurious disconnects, suggested by Peter Maydell ]
|
||||
|
||||
@@ -361,7 +361,7 @@ int vncws_decode_frame_payload(Buffer *input,
|
||||
- *payload_size = input->offset;
|
||||
+ *payload_size = *payload_remain;
|
||||
|
||||
[ kraxel: fix 32bit build ]
|
||||
|
||||
@@ -306,7 +306,7 @@ struct VncState
|
||||
- uint64_t ws_payload_remain;
|
||||
+ size_t ws_payload_remain;
|
||||
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
ui/vnc-ws.c | 105 ++++++++++++++++++++++++++++++++++++++++--------------------
|
||||
ui/vnc-ws.h | 9 ++++--
|
||||
ui/vnc.h | 2 ++
|
||||
3 files changed, 80 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/ui/vnc-ws.c b/ui/vnc-ws.c
|
||||
index 85dbb7e..0b7de4e 100644
|
||||
--- a/ui/vnc-ws.c
|
||||
+++ b/ui/vnc-ws.c
|
||||
@@ -107,7 +107,7 @@ long vnc_client_read_ws(VncState *vs)
|
||||
{
|
||||
int ret, err;
|
||||
uint8_t *payload;
|
||||
- size_t payload_size, frame_size;
|
||||
+ size_t payload_size, header_size;
|
||||
VNC_DEBUG("Read websocket %p size %zd offset %zd\n", vs->ws_input.buffer,
|
||||
vs->ws_input.capacity, vs->ws_input.offset);
|
||||
buffer_reserve(&vs->ws_input, 4096);
|
||||
@@ -117,18 +117,39 @@ long vnc_client_read_ws(VncState *vs)
|
||||
}
|
||||
vs->ws_input.offset += ret;
|
||||
|
||||
- /* make sure that nothing is left in the ws_input buffer */
|
||||
+ ret = 0;
|
||||
+ /* consume as much of ws_input buffer as possible */
|
||||
do {
|
||||
- err = vncws_decode_frame(&vs->ws_input, &payload,
|
||||
- &payload_size, &frame_size);
|
||||
- if (err <= 0) {
|
||||
- return err;
|
||||
+ if (vs->ws_payload_remain == 0) {
|
||||
+ err = vncws_decode_frame_header(&vs->ws_input,
|
||||
+ &header_size,
|
||||
+ &vs->ws_payload_remain,
|
||||
+ &vs->ws_payload_mask);
|
||||
+ if (err <= 0) {
|
||||
+ return err;
|
||||
+ }
|
||||
+
|
||||
+ buffer_advance(&vs->ws_input, header_size);
|
||||
}
|
||||
+ if (vs->ws_payload_remain != 0) {
|
||||
+ err = vncws_decode_frame_payload(&vs->ws_input,
|
||||
+ &vs->ws_payload_remain,
|
||||
+ &vs->ws_payload_mask,
|
||||
+ &payload,
|
||||
+ &payload_size);
|
||||
+ if (err < 0) {
|
||||
+ return err;
|
||||
+ }
|
||||
+ if (err == 0) {
|
||||
+ return ret;
|
||||
+ }
|
||||
+ ret += err;
|
||||
|
||||
- buffer_reserve(&vs->input, payload_size);
|
||||
- buffer_append(&vs->input, payload, payload_size);
|
||||
+ buffer_reserve(&vs->input, payload_size);
|
||||
+ buffer_append(&vs->input, payload, payload_size);
|
||||
|
||||
- buffer_advance(&vs->ws_input, frame_size);
|
||||
+ buffer_advance(&vs->ws_input, payload_size);
|
||||
+ }
|
||||
} while (vs->ws_input.offset > 0);
|
||||
|
||||
return ret;
|
||||
@@ -265,15 +286,14 @@ void vncws_encode_frame(Buffer *output, const void *payload,
|
||||
buffer_append(output, payload, payload_size);
|
||||
}
|
||||
|
||||
-int vncws_decode_frame(Buffer *input, uint8_t **payload,
|
||||
- size_t *payload_size, size_t *frame_size)
|
||||
+int vncws_decode_frame_header(Buffer *input,
|
||||
+ size_t *header_size,
|
||||
+ size_t *payload_remain,
|
||||
+ WsMask *payload_mask)
|
||||
{
|
||||
unsigned char opcode = 0, fin = 0, has_mask = 0;
|
||||
- size_t header_size = 0;
|
||||
- uint32_t *payload32;
|
||||
+ size_t payload_len;
|
||||
WsHeader *header = (WsHeader *)input->buffer;
|
||||
- WsMask mask;
|
||||
- int i;
|
||||
|
||||
if (input->offset < WS_HEAD_MIN_LEN + 4) {
|
||||
/* header not complete */
|
||||
@@ -283,7 +303,7 @@ int vncws_decode_frame(Buffer *input, uint8_t **payload,
|
||||
fin = (header->b0 & 0x80) >> 7;
|
||||
opcode = header->b0 & 0x0f;
|
||||
has_mask = (header->b1 & 0x80) >> 7;
|
||||
- *payload_size = header->b1 & 0x7f;
|
||||
+ payload_len = header->b1 & 0x7f;
|
||||
|
||||
if (opcode == WS_OPCODE_CLOSE) {
|
||||
/* disconnect */
|
||||
@@ -300,40 +320,57 @@ int vncws_decode_frame(Buffer *input, uint8_t **payload,
|
||||
return -2;
|
||||
}
|
||||
|
||||
- if (*payload_size < 126) {
|
||||
- header_size = 6;
|
||||
- mask = header->u.m;
|
||||
- } else if (*payload_size == 126 && input->offset >= 8) {
|
||||
- *payload_size = be16_to_cpu(header->u.s16.l16);
|
||||
- header_size = 8;
|
||||
- mask = header->u.s16.m16;
|
||||
- } else if (*payload_size == 127 && input->offset >= 14) {
|
||||
- *payload_size = be64_to_cpu(header->u.s64.l64);
|
||||
- header_size = 14;
|
||||
- mask = header->u.s64.m64;
|
||||
+ if (payload_len < 126) {
|
||||
+ *payload_remain = payload_len;
|
||||
+ *header_size = 6;
|
||||
+ *payload_mask = header->u.m;
|
||||
+ } else if (payload_len == 126 && input->offset >= 8) {
|
||||
+ *payload_remain = be16_to_cpu(header->u.s16.l16);
|
||||
+ *header_size = 8;
|
||||
+ *payload_mask = header->u.s16.m16;
|
||||
+ } else if (payload_len == 127 && input->offset >= 14) {
|
||||
+ *payload_remain = be64_to_cpu(header->u.s64.l64);
|
||||
+ *header_size = 14;
|
||||
+ *payload_mask = header->u.s64.m64;
|
||||
} else {
|
||||
/* header not complete */
|
||||
return 0;
|
||||
}
|
||||
|
||||
- *frame_size = header_size + *payload_size;
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+int vncws_decode_frame_payload(Buffer *input,
|
||||
+ size_t *payload_remain, WsMask *payload_mask,
|
||||
+ uint8_t **payload, size_t *payload_size)
|
||||
+{
|
||||
+ size_t i;
|
||||
+ uint32_t *payload32;
|
||||
|
||||
- if (input->offset < *frame_size) {
|
||||
- /* frame not complete */
|
||||
+ *payload = input->buffer;
|
||||
+ /* If we aren't at the end of the payload, then drop
|
||||
+ * off the last bytes, so we're always multiple of 4
|
||||
+ * for purpose of unmasking, except at end of payload
|
||||
+ */
|
||||
+ if (input->offset < *payload_remain) {
|
||||
+ *payload_size = input->offset - (input->offset % 4);
|
||||
+ } else {
|
||||
+ *payload_size = *payload_remain;
|
||||
+ }
|
||||
+ if (*payload_size == 0) {
|
||||
return 0;
|
||||
}
|
||||
-
|
||||
- *payload = input->buffer + header_size;
|
||||
+ *payload_remain -= *payload_size;
|
||||
|
||||
/* unmask frame */
|
||||
/* process 1 frame (32 bit op) */
|
||||
payload32 = (uint32_t *)(*payload);
|
||||
for (i = 0; i < *payload_size / 4; i++) {
|
||||
- payload32[i] ^= mask.u;
|
||||
+ payload32[i] ^= payload_mask->u;
|
||||
}
|
||||
/* process the remaining bytes (if any) */
|
||||
for (i *= 4; i < *payload_size; i++) {
|
||||
- (*payload)[i] ^= mask.c[i % 4];
|
||||
+ (*payload)[i] ^= payload_mask->c[i % 4];
|
||||
}
|
||||
|
||||
return 1;
|
||||
diff --git a/ui/vnc-ws.h b/ui/vnc-ws.h
|
||||
index ef229b7..14d4230 100644
|
||||
--- a/ui/vnc-ws.h
|
||||
+++ b/ui/vnc-ws.h
|
||||
@@ -83,7 +83,12 @@ long vnc_client_read_ws(VncState *vs);
|
||||
void vncws_process_handshake(VncState *vs, uint8_t *line, size_t size);
|
||||
void vncws_encode_frame(Buffer *output, const void *payload,
|
||||
const size_t payload_size);
|
||||
-int vncws_decode_frame(Buffer *input, uint8_t **payload,
|
||||
- size_t *payload_size, size_t *frame_size);
|
||||
+int vncws_decode_frame_header(Buffer *input,
|
||||
+ size_t *header_size,
|
||||
+ size_t *payload_remain,
|
||||
+ WsMask *payload_mask);
|
||||
+int vncws_decode_frame_payload(Buffer *input,
|
||||
+ size_t *payload_remain, WsMask *payload_mask,
|
||||
+ uint8_t **payload, size_t *payload_size);
|
||||
|
||||
#endif /* __QEMU_UI_VNC_WS_H */
|
||||
diff --git a/ui/vnc.h b/ui/vnc.h
|
||||
index e19ac39..3f7c6a9 100644
|
||||
--- a/ui/vnc.h
|
||||
+++ b/ui/vnc.h
|
||||
@@ -306,6 +306,8 @@ struct VncState
|
||||
#ifdef CONFIG_VNC_WS
|
||||
Buffer ws_input;
|
||||
Buffer ws_output;
|
||||
+ size_t ws_payload_remain;
|
||||
+ WsMask ws_payload_mask;
|
||||
#endif
|
||||
/* current output mode information */
|
||||
VncWritePixels *write_pixels;
|
||||
--
|
||||
2.3.5
|
||||
|
@ -0,0 +1,58 @@
|
||||
From 2cdb5e142fb93e875fa53c52864ef5eb8d5d8b41 Mon Sep 17 00:00:00 2001
|
||||
From: "Daniel P. Berrange" <berrange@redhat.com>
|
||||
Date: Mon, 23 Mar 2015 22:58:22 +0000
|
||||
Subject: [PATCH] CVE-2015-1779: limit size of HTTP headers from websockets
|
||||
clients
|
||||
|
||||
The VNC server websockets decoder will read and buffer data from
|
||||
websockets clients until it sees the end of the HTTP headers,
|
||||
as indicated by \r\n\r\n. In theory this allows a malicious to
|
||||
trick QEMU into consuming an arbitrary amount of RAM. In practice,
|
||||
because QEMU runs g_strstr_len() across the buffered header data,
|
||||
it will spend increasingly long burning CPU time searching for
|
||||
the substring match and less & less time reading data. So while
|
||||
this does cause arbitrary memory growth, the bigger problem is
|
||||
that QEMU will be burning 100% of available CPU time.
|
||||
|
||||
A novnc websockets client typically sends headers of around
|
||||
512 bytes in length. As such it is reasonable to place a 4096
|
||||
byte limit on the amount of data buffered while searching for
|
||||
the end of HTTP headers.
|
||||
|
||||
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
ui/vnc-ws.c | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/ui/vnc-ws.c b/ui/vnc-ws.c
|
||||
index 0b7de4e..62eb97f 100644
|
||||
--- a/ui/vnc-ws.c
|
||||
+++ b/ui/vnc-ws.c
|
||||
@@ -81,8 +81,11 @@ void vncws_handshake_read(void *opaque)
|
||||
VncState *vs = opaque;
|
||||
uint8_t *handshake_end;
|
||||
long ret;
|
||||
- buffer_reserve(&vs->ws_input, 4096);
|
||||
- ret = vnc_client_read_buf(vs, buffer_end(&vs->ws_input), 4096);
|
||||
+ /* Typical HTTP headers from novnc are 512 bytes, so limiting
|
||||
+ * total header size to 4096 is easily enough. */
|
||||
+ size_t want = 4096 - vs->ws_input.offset;
|
||||
+ buffer_reserve(&vs->ws_input, want);
|
||||
+ ret = vnc_client_read_buf(vs, buffer_end(&vs->ws_input), want);
|
||||
|
||||
if (!ret) {
|
||||
if (vs->csock == -1) {
|
||||
@@ -99,6 +102,9 @@ void vncws_handshake_read(void *opaque)
|
||||
vncws_process_handshake(vs, vs->ws_input.buffer, vs->ws_input.offset);
|
||||
buffer_advance(&vs->ws_input, handshake_end - vs->ws_input.buffer +
|
||||
strlen(WS_HANDSHAKE_END));
|
||||
+ } else if (vs->ws_input.offset >= 4096) {
|
||||
+ VNC_DEBUG("End of headers not found in first 4096 bytes\n");
|
||||
+ vnc_client_error(vs);
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.3.5
|
||||
|
@ -0,0 +1,603 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-2.2.1-r1.ebuild,v 1.1 2015/04/12 00:29:22 vapier Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
|
||||
user udev fcaps readme.gentoo pax-utils
|
||||
|
||||
BACKPORTS=
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="git://git.qemu.org/qemu.git"
|
||||
inherit git-2
|
||||
SRC_URI=""
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
|
||||
${BACKPORTS:+
|
||||
http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
IUSE="accessibility +aio alsa bluetooth +caps +curl debug +fdt glusterfs \
|
||||
gtk infiniband iscsi +jpeg \
|
||||
kernel_linux kernel_FreeBSD lzo ncurses nfs nls numa opengl +pin-upstream-blobs
|
||||
+png pulseaudio python \
|
||||
rbd sasl +seccomp sdl selinux smartcard snappy spice ssh static static-softmmu \
|
||||
static-user systemtap tci test +threads tls usb usbredir +uuid vde +vhost-net \
|
||||
virtfs +vnc xattr xen xfs"
|
||||
|
||||
COMMON_TARGETS="aarch64 alpha arm cris i386 m68k microblaze microblazeel mips
|
||||
mips64 mips64el mipsel or32 ppc ppc64 s390x sh4 sh4eb sparc sparc64 unicore32
|
||||
x86_64"
|
||||
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb xtensa xtensaeb"
|
||||
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
|
||||
|
||||
use_targets="
|
||||
$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
"
|
||||
IUSE+=" ${use_targets}"
|
||||
|
||||
# Require at least one softmmu or user target.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="|| ( ${use_targets} )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
static? ( static-softmmu static-user )
|
||||
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk )
|
||||
virtfs? ( xattr )"
|
||||
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the extranl library.
|
||||
COMMON_LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.4.0[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
infiniband? ( sys-infiniband/librdmacm:=[static-libs(+)] )
|
||||
jpeg? ( virtual/jpeg:=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
ncurses? ( sys-libs/ncurses[static-libs(+)] )
|
||||
nfs? ( >=net-fs/libnfs-1.9.3[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
rbd? ( sys-cluster/ceph[static-libs(+)] )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy[static-libs(+)] )
|
||||
spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
|
||||
ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
|
||||
tls? ( net-libs/gnutls[static-libs(+)] )
|
||||
usb? ( >=dev-libs/libusb-1.0.18[static-libs(+)] )
|
||||
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
|
||||
USER_LIB_DEPEND="${COMMON_LIB_DEPEND}"
|
||||
X86_FIRMWARE_DEPEND="
|
||||
>=sys-firmware/ipxe-1.0.0_p20130624
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-1.7.5
|
||||
~sys-firmware/sgabios-0.1_pre8
|
||||
~sys-firmware/vgabios-0.7a
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
sys-firmware/seabios
|
||||
sys-firmware/sgabios
|
||||
sys-firmware/vgabios
|
||||
)"
|
||||
CDEPEND="!static-softmmu? ( ${SOFTMMU_LIB_DEPEND//\[static-libs(+)]} )
|
||||
!static-user? ( ${USER_LIB_DEPEND//\[static-libs(+)]} )
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
accessibility? ( app-accessibility/brltty )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/vte:2.90
|
||||
)
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
opengl? ( virtual/opengl )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
sdl? ( media-libs/libsdl[X] )
|
||||
smartcard? ( dev-libs/nss !app-emulation/libcacard )
|
||||
spice? ( >=app-emulation/spice-protocol-0.12.3 )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6 )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xen? ( app-emulation/xen-tools )"
|
||||
DEPEND="${CDEPEND}
|
||||
dev-lang/perl
|
||||
=dev-lang/python-2*
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
static-softmmu? ( ${SOFTMMU_LIB_DEPEND} )
|
||||
static-user? ( ${USER_LIB_DEPEND} )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-qemu )
|
||||
"
|
||||
|
||||
STRIP_MASK="/usr/share/qemu/palcode-clipper"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or32
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure
|
||||
you have the kernel module loaded before running kvm. The easiest way to
|
||||
ensure that the kernel module is loaded is to load it on boot.\n
|
||||
For AMD CPUs the module is called 'kvm-amd'\n
|
||||
For Intel CPUs the module is called 'kvm-intel'\n
|
||||
Please review /etc/conf.d/modules for how to load these\n\n
|
||||
Make sure your user is in the 'kvm' group\n
|
||||
Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
|
||||
|
||||
qemu_support_kvm() {
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \
|
||||
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
|
||||
use qemu_softmmu_targets_s390x; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL"
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup kvm 78
|
||||
python_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Alter target makefiles to accept CFLAGS set via flag-o
|
||||
sed -i -r \
|
||||
-e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \
|
||||
Makefile Makefile.target || die
|
||||
|
||||
# Cheap hack to disable gettext .mo generation.
|
||||
use nls || rm -f po/*.po
|
||||
|
||||
epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-1779-1.patch #544328
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-1779-2.patch #544328
|
||||
[[ -n ${BACKPORTS} ]] && \
|
||||
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
|
||||
epatch
|
||||
|
||||
# Fix ld and objcopy being called directly
|
||||
tc-export AR LD OBJCOPY
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
epatch_user
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir=$2
|
||||
local static_flag="static-${buildtype}"
|
||||
|
||||
# audio options
|
||||
local audio_opts="oss"
|
||||
use alsa && audio_opts="alsa,${audio_opts}"
|
||||
use sdl && audio_opts="sdl,${audio_opts}"
|
||||
use pulseaudio && audio_opts="pa,${audio_opts}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--disable-bsd-user
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
--disable-werror
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
--enable-docs
|
||||
$(use_enable tci tcg-interpreter)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets as the default configure
|
||||
# options will autoprobe and try to link in a bunch of unused junk.
|
||||
conf_softmmu() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_softmmu accessibility brlapi)
|
||||
$(conf_softmmu aio linux-aio)
|
||||
$(conf_softmmu bluetooth bluez)
|
||||
$(conf_softmmu caps cap-ng)
|
||||
$(conf_softmmu curl)
|
||||
$(conf_softmmu fdt)
|
||||
$(conf_softmmu glusterfs)
|
||||
$(conf_softmmu gtk)
|
||||
$(conf_softmmu infiniband rdma)
|
||||
$(conf_softmmu iscsi libiscsi)
|
||||
$(conf_softmmu jpeg vnc-jpeg)
|
||||
$(conf_softmmu kernel_linux kvm)
|
||||
$(conf_softmmu lzo)
|
||||
$(conf_softmmu ncurses curses)
|
||||
$(conf_softmmu nfs libnfs)
|
||||
$(conf_softmmu numa)
|
||||
$(conf_softmmu opengl glx)
|
||||
$(conf_softmmu png vnc-png)
|
||||
$(conf_softmmu rbd)
|
||||
$(conf_softmmu sasl vnc-sasl)
|
||||
$(conf_softmmu sdl)
|
||||
$(conf_softmmu seccomp)
|
||||
$(conf_softmmu smartcard smartcard-nss)
|
||||
$(conf_softmmu snappy)
|
||||
$(conf_softmmu spice)
|
||||
$(conf_softmmu ssh libssh2)
|
||||
$(conf_softmmu tls quorum)
|
||||
$(conf_softmmu tls vnc-tls)
|
||||
$(conf_softmmu tls vnc-ws)
|
||||
$(conf_softmmu usb libusb)
|
||||
$(conf_softmmu usbredir usb-redir)
|
||||
$(conf_softmmu uuid)
|
||||
$(conf_softmmu vde)
|
||||
$(conf_softmmu vhost-net)
|
||||
$(conf_softmmu virtfs)
|
||||
$(conf_softmmu vnc)
|
||||
$(conf_softmmu xen)
|
||||
$(conf_softmmu xen xen-pci-passthrough)
|
||||
$(conf_softmmu xfs xfsctl)
|
||||
)
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--target-list="${user_targets}"
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
;;
|
||||
softmmu)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--target-list="${softmmu_targets}"
|
||||
--with-system-pixman
|
||||
--audio-drv-list="${audio_opts}"
|
||||
)
|
||||
use gtk && conf_opts+=( --with-gtkabi=3.0 )
|
||||
;;
|
||||
esac
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
gcc-specs-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
einfo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
|
||||
# FreeBSD's kernel does not support QEMU assigning/grabbing
|
||||
# host USB devices yet
|
||||
use kernel_FreeBSD && \
|
||||
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_export_best
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && \
|
||||
einfo "Building the following softmmu targets: ${softmmu_targets}"
|
||||
|
||||
[[ -n ${user_targets} ]] && \
|
||||
einfo "Building the following user targets: ${user_targets}"
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
mkdir "${S}/softmmu-build"
|
||||
qemu_src_configure "softmmu" "${S}/softmmu-build"
|
||||
fi
|
||||
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
mkdir "${S}/user-build"
|
||||
qemu_src_configure "user" "${S}/user-build"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake -j1 check
|
||||
emake -j1 check-report.html
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/scripts/qmp/qmp.py"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/kvm_stat"
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets
|
||||
newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dohtml check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_dorules "${FILESDIR}"/65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark m "${softmmu_bins[@]}" "${user_bins[@]}"
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
# Remove the docdir placed qmp-commands.txt
|
||||
mv "${ED}/usr/share/doc/${PF}/html/qmp-commands.txt" "${S}/docs/qmp/"
|
||||
|
||||
cd "${S}"
|
||||
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
dodoc docs/qmp/*.txt
|
||||
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the vgabios packaged one
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
qemu_support_kvm && readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if qemu_support_kvm; then
|
||||
readme.gentoo_print_elog
|
||||
ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
|
||||
ewarn "save states has been removed starting with the 1.6.2 release"
|
||||
ewarn
|
||||
ewarn "It is recommended that you migrate any VMs that may be running"
|
||||
ewarn "on qemu-kvm to a host with a newer qemu and regenerate"
|
||||
ewarn "any saved states with a newer qemu."
|
||||
ewarn
|
||||
ewarn "qemu-kvm was the primary qemu provider in Gentoo through 1.2.x"
|
||||
|
||||
if use x86 || use amd64; then
|
||||
ewarn
|
||||
ewarn "The /usr/bin/kvm and /usr/bin/qemu-kvm wrappers are no longer"
|
||||
ewarn "installed. In order to use kvm acceleration, pass the flag"
|
||||
ewarn "-enable-kvm when running your system target."
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
|
||||
if use virtfs && [ -n "${softmmu_targets}" ]; then
|
||||
local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
|
||||
fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version sys-firmware/seabios[binary]; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/vgabios)"
|
||||
}
|
@ -1 +1 @@
|
||||
DIST carbon-c-relay-0.37.tar.gz 52166 SHA256 02cd3477a074391337c0b73719f302f0a4cef34ed9f056bd2f9cc5aae74b1afd SHA512 fdec92c9669236ceff8f683d3d69f0afbc96a9acc1491256288c54a304ee4378a3f7f263215282dc1a4d7798c7a8e8c333c22055ddb41ce95a72590e2c2c039c WHIRLPOOL 4ab2b19deb0e3f2892ae3bac756c3cb5c5742cd424994416510a2e9b8470e9c5712a47bd2fe58a668518c24e69ccddf89df572dca59dc043c0f45116c09760dc
|
||||
DIST carbon-c-relay-0.39.tar.gz 55308 SHA256 694cfb291981fda58930af09bd1563a20ca8e40839d8bdbda5b8403774cf391d SHA512 b7797f969bf3431f883a5e8288b748494a9c9d8448c7bcde6642b538e20c6fe99acc296ba7bc940739c53619ee672a46ff787c66d75900f45a057f2660da0e5f WHIRLPOOL 8e1b8646b720f2db3f1a556f57975c9556e4a0d3b36479b6ad58607abe0d9f2629ef7275def4ef6a9dc4b73268376fa07c78b8dac3bd5b8bd90ff70dd706f4cf
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/carbon-c-relay/carbon-c-relay-0.37.ebuild,v 1.1 2014/12/22 15:15:40 grobian Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/carbon-c-relay/carbon-c-relay-0.39.ebuild,v 1.1 2015/04/11 05:49:24 grobian Exp $
|
||||
|
||||
EAPI=5
|
||||
|
@ -1,36 +1,12 @@
|
||||
DIST amd64-debug-libreoffice-4.3.5.2-r1.tar.xz 1333845804 SHA256 0d347c48dd1b4e921fd05f420efbaf4b3d366f0f0b2e880dd0509c5c432e25b5 SHA512 e6b98c1c55ae688577f4f08e5a8e52106ecc462ad10de52efd2cc90bdf40703123fc1cb87989ea622d407f599a6a436c8aa742917bd170b4d80a14b3c304a23c WHIRLPOOL 29346f11c96e18245fa26a5f23f32afb359c9e6c9f82c3f5e931568779c2a3007e64fe7c613eba17a19c9117f2200cd31e44c82c75df44c34246d499712aa6a3
|
||||
DIST amd64-debug-libreoffice-4.3.5.2.tar.xz 1333834908 SHA256 bd905ac5162ad6248c48c95ffe50a1ab6da74271d999d9ddc39dd6bba4c20737 SHA512 8962fd0d653ef294d69dff64403c127daf7499c050fcbf1bf83b4a2cfc0d7fb0c38eb865c901a692bfe68454d6ae9206e4eff29778d94affb5ffe59a2b80af48 WHIRLPOOL 99bd5e26d23374010a8522d8156e4c3c901b0e3c76cde7ce5eba77338a2c39c13fa9b455e494fa9efaa895965b13661a69bf9b218879ae7a7c4192d2e4d065df
|
||||
DIST amd64-debug-libreoffice-4.4.1.2.tar.xz 1415014996 SHA256 ae2ed9ef00fb529c0c8f297a81ea3edb5e54fb911ab2fc19554a47b6f266116e SHA512 965164c5599f31d0ef7245d8b0b1b60d07dbb425f25bc8badb63e4c8a738988d5b677f0ae5316ccba694e9953b535842662660aaa4f66ff0fc3b15c93e5ee9da WHIRLPOOL b51dac8e2325f381893bf4be118a42d14b8ff964bbfc1d4249a9229682123264d18040edd8d996e2d4474e93079ff091a22ffdde2def2691244ee2220335015a
|
||||
DIST amd64-debug-libreoffice-gnome-4.3.5.2-r1.xd3 71866789 SHA256 93541d44ef82ed1de1e036e0b8117850400bfa6e6de64605d081bf90c2017d2d SHA512 eb93d673e7268b246b22429151ad118e6317feb6719489c4fb72fffe7580a702b58a021de9b7b73855ac5cf676ad7456b15fda34f5ef4d53da090f4f3b6e3ee0 WHIRLPOOL e23a64890815a5c38decdffe1678739314caf7396fe473594e39c552bf83ba580cebac9ffc3068458f966f06497a47dd7f09d8e572302c014dcec6bff9026cc1
|
||||
DIST amd64-debug-libreoffice-gnome-4.3.5.2.xd3 97260424 SHA256 f42e71336476cb8a3d67ef4af15eadefe7e054e7bfc578d72ce04a8bb4a726d0 SHA512 02ad53fb4627b4457e59e21f21d7682c0c152f637471f4d3e7296dba044fd63513d39c06c1dfd46d6067d0c7862b1b702df1253f82cf0e1a0f383d9ee435ed96 WHIRLPOOL 95ca689d87d49d844e84f8daacf363adbf8aaae662daed20c8839b1127bd7c52946c37b266651f9bcca0f85eec38d38283110a1c1007218f4a37cc9a24af7e9b
|
||||
DIST amd64-debug-libreoffice-gnome-4.4.1.2.xd3 6511227 SHA256 7387837d55d3230574c2978e775c91750c844e593ab0c4638483f666eec10cc7 SHA512 9508dd198d45b97fa316ab3c7a71ac6f498b27f8aca29fe54312e89480ed1b4c6b7cd724807964239781275d5f841e61f9145073b8615f666d183ab19de82b0b WHIRLPOOL 6c8837f64ed9d236a4f636d867de9352ac6e21e758e160a21bea790fad5ecdee346539ee8d4fc6bd5562e7a6ee8e3d94976433cd7d5516d54ed16fc55646928c
|
||||
DIST amd64-debug-libreoffice-gnome-java-4.3.5.2-r1.xd3 476901770 SHA256 dd8c319597394d764883c1e4336877109003b143bf4ab1b71607864de24bf2c1 SHA512 17728e2909750c03ce7b63097e2e29f379668d4eef566da9bcba3ad90cec0502a650da9fd5fef8745e53263ab8d0cf65b2df05cd51192767f6e7c21a62082b35 WHIRLPOOL 9641324ec13a5efc127dcbf01dfaffb10c1938c383e8dc6dde2b5c8619332cfcffff8c11dd6db8bfe5b5a4ab223c2b45ea5e288b46b9cdd068200a5bac129375
|
||||
DIST amd64-debug-libreoffice-gnome-java-4.3.5.2.xd3 476209474 SHA256 ae56ed760fbe033424be7bfeda9a7350d550ff300da8bb0c171b8c52e51cc257 SHA512 ff18bafa73f0cf05397386588a28d14fb56c62dfc228ecdabd307a5ad8de779553e502b295a76e0694a811bf5990a4f825c94b771f34c613d9fb1c06b1aa880d WHIRLPOOL ebfaf71e2b73222cb8793128365af60ca05b251111734f0f154d5d90129bd3c7d95f1d1f23736c078650158e18907e4f51dbd84efd33fe437123f8213f13200b
|
||||
DIST amd64-debug-libreoffice-gnome-java-4.4.1.2.xd3 656027505 SHA256 8734639ff4efbecc199d8897d6ed6cd056cb206fb382a14b57e34a01993a45d8 SHA512 2bd993fdede0799ae3dff122568a696eca5f8263f1fb1a3a6b9796d8979aa2d386269513d5bfbfc33caca240e9e32a8decb64ee2c5a4b4152a871df8dda6785c WHIRLPOOL 39f6c5d6fae7031f7a37d533626d722e3e9a851ed78b228aec99ac91fe75e1250909d43907c4bd9bad445b41115509e18d8305eec2ca6e512a59f043bef85d26
|
||||
DIST amd64-debug-libreoffice-java-4.3.5.2-r1.xd3 492620005 SHA256 9c57a29892bd7775ab95f5e6af6167734a7f7f120d11a6841f55c5b893e61dd9 SHA512 fb28b8507f735fbf2b069a717eb34dbb1c6219fff421aa1b4165d6ddaae1e9badf1ee15f32fd067166e9764f2a9bd4a6678f0fe3cae9ff4c0ba2beee5c4916ce WHIRLPOOL 8ffa3fbf38e8ecc367df5b0778c106bf40d081920793316643dc6c4918c1a2c93b69bc40945c8cd172af0c481a0009d58f20f9911eb1cea0a4518fa183f1fe87
|
||||
DIST amd64-debug-libreoffice-java-4.3.5.2.xd3 467659502 SHA256 dc98a5352f0c3ac9212b2a491370ca9b46c248dd98bb384eb4b180002696f618 SHA512 7497aa50f4ffe5943b5930317af990a98645c713f42a9a6e8323d5047ce01f4ce656a14259b171a28c4ffaaca9bf272a6635a37d00be2e4c4d74028f2453d832 WHIRLPOOL 767bfbe3f74af3ce6e2974c8f6be58ea5ec58e3077875ee320da3dfad4c0ed99d6dc8af4208ac4077e8e8b059850a292fb96253aa78e1560eb4a1a3d1a9b678b
|
||||
DIST amd64-debug-libreoffice-java-4.4.1.2.xd3 652648893 SHA256 3495a3a76fb6b84267a7f185d9ab8841311145dec03110b4a0eafdbd203bae26 SHA512 9f02a873f6f3df0e8c01ef28539651ff441e51193829615649301aea802a081e80561b593e085893771665b443d909f485912d1213a569cbb65b9a7a4fd65ec4 WHIRLPOOL af38489048ff11cab3fea9c10236ffa74f02c013a4d84a3b8a6fc9362c7cd3ea2d7959cfb87c3847a6495861a3ce7408d1dfa2078c605627d7047c9ff3e2fbc4
|
||||
DIST amd64-debug-libreoffice-kde-4.3.5.2-r1.xd3 148639655 SHA256 6a7943a33396c18e18965c1f67458c1af7ae9fb935d1c160bf8b6bc929c7e955 SHA512 8e20a1c119c1fabe6fa4333f602a5d02903d97b6d92fa29e002c968ec3f672cfef8a55a21ec68bd698ef8a38f9663eb296de5d2383e6d6417a830361b14556f6 WHIRLPOOL 19c076776ae971e90452a23a565b625ba08a804dda9e697aac4f2e4df28be0a56c3761b50084b70a18902a8b21a014c2eadfd64e0097c66f48de7526a0993f4d
|
||||
DIST amd64-debug-libreoffice-kde-4.3.5.2.xd3 148672285 SHA256 95985994bfc1f81a35dc4608df0fe71a1f51e7b5f0969e62b39a00d4e41998e5 SHA512 26088fce9c2f4c3f8acd5cf85836710f27610c2f5aa8604b7718ae23443bed61520f86a14a2adaa43f12aecd23967647c71492760098f1e0052ddc6c302b6815 WHIRLPOOL 3cfdad98451d9c97469e37f9c37395ac0266fd85e0f4f3df3d7991df4bdad7d100f0ebd2ad3b1264d4df9b25296b1a9a3984ac24ccec12e31638d7f86c174fd9
|
||||
DIST amd64-debug-libreoffice-kde-4.4.1.2.xd3 385293658 SHA256 3f4857c38ad86521b01c752506ae3edbde4a72fb714e11783ea72d1113561575 SHA512 1ed21dd2cc57f1045c7d7c55500d68e8fc516bd510c94ccca099fc6f1dfa3417cc471156caeed2fef7ba3a0e9abbe29053158db1ff8b7d70724a7e169d967a19 WHIRLPOOL 0d93cf64437bc4210a3d8acc2d52821ba1b8c782273e8e67f5a68a9e57585e5cccf5fdb8664875d685b4d50348d2849e997a75d055e1f09e1e2e584b5e6ad84c
|
||||
DIST amd64-debug-libreoffice-kde-java-4.3.5.2-r1.xd3 468146449 SHA256 785aaf55772ce406d4b6b6974ac99d455db229407c3da4fdc9d7b0acbf8aa88d SHA512 8fcada3d85fef0d02358b9ca569730d04209d5c83497876085e877687ad2e6f3cd2f595719c1bdc83a6eff016543e233b1fa76f96901ba9a275b2530416d9ba2 WHIRLPOOL e8cd162a059f2ed3bb7b860c07b72d91db828922d137ebcc8a387960919417402a77e32073d144d26a66b4c627a567b4a88f7553731c1d9fe8a131cdbb60a1b1
|
||||
DIST amd64-debug-libreoffice-kde-java-4.3.5.2.xd3 469574659 SHA256 c12d1f56dbab148e4331c23dd3a09c620f914e531dc965e65322312524f48292 SHA512 76884f74b465500ec351ffab47163193c40a292fd2d6066f5f1cd1a85b75c72cff66a9f1371a6dfc7ba1c1c98b20a7913596993f921197f05a31f567b15d52dd WHIRLPOOL cb7e95ac534250977540cdd7401a0a1a2e3bb3917f689d723b0942438701cb51d17dc2ece2e7fb655d8ded4eea030374d20e36c22f893b18b7bdfe1c3af4290c
|
||||
DIST amd64-debug-libreoffice-kde-java-4.4.1.2.xd3 654592642 SHA256 70a3ac78d4898a524d2d8c2646140cc27061eb19a6bfb70a86f2a85457b67ec7 SHA512 affbf45165e077ce9c3a1b0e621d7ca697e33e16d94c060250d041101c7104a208ae6e7f0d6b0ea1567cc759236a1ffc1a1c7877fd5542c8d3bfc12400df7d0d WHIRLPOOL a2078a249082bdc9f4ff8c69e5d18b31f49546b117e01fd6250363327ac71f5b4f029abbd21da58b1f8b40e3451f546ee7d47ffcc6ed7bdff0fd1f06ee47bc82
|
||||
DIST x86-debug-libreoffice-4.3.5.2-r1.tar.xz 1316474096 SHA256 37295ab9defead5b3f31ef2aa7ec9417149eaaab6752c3d7529ab052454a5519 SHA512 e896bc9ca5bd3c5e5095da62c3267430c4ab1ceedf1bceedc4f8e4d8b32d2ea07bb94f4589b46d93a707b07ac4d6cca6a6097dbfce12578f0655adc7b93254c0 WHIRLPOOL bcd9dd72f7666386cfad72b063c87ab33729e844145336918c1361c8984d014e4ec40ce8e7c38f128cc1c8ff127b94e527c0940e75258c620efa01a23ba1b23c
|
||||
DIST x86-debug-libreoffice-4.3.5.2.tar.xz 1316490272 SHA256 58b42568a501557108646ea38203a04a33643e6afb28befaaa33e7b68804f76d SHA512 12d80fc2806d9cb32cdbbb5de9cd9ae5b70214da29b9fcf149a4eaa1fa1efd900c356c2bdf5511b536f0b70d28cafc73a695b4942cd50aa4e69ceba06fd18d4d WHIRLPOOL 88430f186bf22138f989efd259d34726b3dd5b274d2012808ca551b71ff492e24e8c13c4f5c52b6beb6c7b721fc25f5b5b4e59f66a8f5ccb0ff3847b8355f75e
|
||||
DIST x86-debug-libreoffice-4.4.1.2.tar.xz 1398181172 SHA256 51691a5d331fb4b9bd2826b3adeb187c53be0c785f129e3ac51b1ce6da4a09a5 SHA512 a70b108a2f4f667134cd0c16f67414f13faf1ef8020b23d707fd04c58cb3f4ca88a4909bca97f65df884bbe4180be1a7922eea7944a46cc5f4946e9b444149d6 WHIRLPOOL fa02a636a3f980d1c306475aa2e7962d3d88f5679b821e6b214be899408bd6033d6628a5d491e8cdfc50cb4f92e82c7857e2e93ef1a30dd5f152c779221e16b8
|
||||
DIST x86-debug-libreoffice-gnome-4.3.5.2-r1.xd3 68861284 SHA256 13be3b570053ef8049a631ddc33e93b5c07be9999a2ee199fd44d589d5a34868 SHA512 10092de4623eb2f9a9d46e24a31507a8260f367e5ec698f927576cc8a528b5e48bd85f1e9e07a3352ff5d82165c19fb79aed4592e1822a898146a8b7689dc137 WHIRLPOOL 1dd541e333612641d272b16dcf0934172edf3861c7bc7b6058438ba2ae7900c0808f80b790c9f4a017d26091ddbc3779bda5fd02d9fc458e3d07eecdfe3d7bf9
|
||||
DIST x86-debug-libreoffice-gnome-4.3.5.2.xd3 95328742 SHA256 32a83e09074277eebc4d68bb50bc17c2535bbf4559483966864263b7c92e27fc SHA512 efa29ff6734a18d56c28158a8b8bb9a451b59847e3d1d817acb2e7dd5b4ffde62effe17ea16e40041acbb746aa9597264015175d8975bb0f4f131378bf2260e4 WHIRLPOOL f75cdd22f392ec5f1237b50e63d8104bb98221eca751b51baec9ac44ddff7833f17b02efc3a0d4766db07a8ad348adacb55a8a3ecd849b61beeda44dd3b47ce3
|
||||
DIST x86-debug-libreoffice-gnome-4.4.1.2.xd3 6437322 SHA256 df8a3facbda9c0f6e5685d21bb5f7445dad7b28ec69f00cce9772797ac2c73e8 SHA512 4a0178faa2b8ea42694c1885325180b815b8eb3ea5de4cb406294a2f0b672ec6675da31dbb65cc725d0befbaf9dda25a07efd05d4ccc60e0b84519bc4ccd18fa WHIRLPOOL 16f01236ff3f1f88b60253232fb5e437ec5ca681c56a5165265adf70e7d60553131d5aee61b41031f9ae7f5e0581d7e58b74c98868735e87b44527c642eedc70
|
||||
DIST x86-debug-libreoffice-gnome-java-4.3.5.2-r1.xd3 476648473 SHA256 6f18cb9a26005064a55f23477add953fe8a2e5177a3e771df8d846496ce3234c SHA512 8c488ca25d1db2aad59ac0eff33727d5e3ed5d83b0fbb989856b94d76265e6a4f1e73900a9b359a74446f09573efe940273ec19053581c7fad4a30384b17d227 WHIRLPOOL 4053a87700a1896339c30cc3cbc993a826ad216c10d6521b285c38b4e5cf0ae012b50707b2fca0a608b5d7e92354363a2555cc88ad917b46d0afe70a34d873f2
|
||||
DIST x86-debug-libreoffice-gnome-java-4.3.5.2.xd3 450873694 SHA256 8cd67faa454f23f41cc6c030258b4e6a75df4948b72f797c541330cf22927a50 SHA512 6a88c24c635aeadc92daa032190393d6dd6d145312b6d54110bd1aeec9a4c01dc105b4326829e8c7811488e55bbe65fa302847b8ccb135e6f1e67bb0c2242d96 WHIRLPOOL 62676db4923c3ca64425cbe9075fc5e0dab4386db04336cae3c19c5581af82e762ee34dd2019dac0c6855b13ee285c5902de4e37f761ad18ac7f129882d1d9c3
|
||||
DIST x86-debug-libreoffice-gnome-java-4.4.1.2.xd3 638871922 SHA256 aeb5671959852921e7cec2dd981fdd106ef3f69993dfb5b73b0571bf02d37886 SHA512 ba970b51faed1a577d85f3069c8367a1305bdbdfb060040968b72ee4f6387b3e243e40f8c4237f8f4d6f9e0d809070e135f5fe6ec8c4b60fc3d2e3c21c720266 WHIRLPOOL 050be18b2e050f9d667f9166d754d503df187fb1d654b00e04f7b7d544fd88597f18522f5646439935be4a1ae5b9f3a711db79b17e915e7246c5fcf549cbea76
|
||||
DIST x86-debug-libreoffice-java-4.3.5.2-r1.xd3 448964724 SHA256 00e7f5c623a13b4b9097e08ff3b2619991db9c8651ce11cd6b8d4d935e213bb9 SHA512 7eb80f1b86e1ed09814681ca72547549eb008a27f3a54e2ca6d298dc8e331bbb0f05f3080d22ff37ccde5bc2b6902978a0b06a6104f08fdf59ad4488cc85fd8a WHIRLPOOL e90bd385d1c6a563c8fe002269f4d2d8e1d2d2660936159b44593694b83be54992f54ceddc0afbd6d56a17eb85141a1bfca0ab03781396b18808348f1cf9596c
|
||||
DIST x86-debug-libreoffice-java-4.3.5.2.xd3 451370716 SHA256 0374ac6990550b68acc150cc4e848129eab3779573b3afaaa1c6f66623eac59b SHA512 970dfae58eca78ec4374ae46ddb6addc09d3917411f380173d3adf63b85f9d832c6052f3ebe56a4d879e5ccde00b3ea4bcaea8316e3b108ecdf94aa0dc70590c WHIRLPOOL b7b4664e13ebf9c968ec7919b082d5f616949aac7383e967061120d3bc91004094524d81af4039c096fe360867794306058dfe88f74fe485b1c2252ef22546ec
|
||||
DIST x86-debug-libreoffice-java-4.4.1.2.xd3 635336316 SHA256 80cc6167b544df5c0312adeef9a76e1b0d947570756f49b1c38e3c1b5cd0cf4a SHA512 ef030c23ed3571546e848cb9b987e1168a754d90c4a73f3b72132aa6c4a6c8870171f6da1aa8caae5c199a0d44381df64c6c019675f7be7b9f66d1eb92ffe5e7 WHIRLPOOL d20a4ceb94b4256cc30d8ffd2dc3c11fb32f6b694332573d0c79141d6cc56ab0bd4538623db72440abda8b0ccfb7714a3c798b4a5813dec80d6cccbf70515db3
|
||||
DIST x86-debug-libreoffice-kde-4.3.5.2-r1.xd3 148385353 SHA256 309a9ab62bd3a199ad7894f731c2a19771c3f3a3022879a44e6252412af76dfd SHA512 71a7d734beda2a39d6fe37e7f6e91778a69b2702cee7372547ee124ab55453e82e241626c6a6e871dfec3da0c49ab3c9fff21616e393fc90a7db78b65d471921 WHIRLPOOL 0923e40aadc42fc5314deee875a23338a922228831a1ea569827b485a2ebc9eab536915664f5e4054cc5571f23d7259e5ab0307489c99b8db9ac94e88e4b47b7
|
||||
DIST x86-debug-libreoffice-kde-4.3.5.2.xd3 123519657 SHA256 cc48b9a758cdeda0f771a0d084649111fc631debcfa7dec15ad7c292622fa4f1 SHA512 ac792cd5718da6197abf026a9063d98614121ebcab7c84195e2ee08c126e991ad30f801eb855c479a2cc12e7a6718b75352e9fea2a6bf936b725efe87bc60918 WHIRLPOOL cb0d221160994de5c9e72d03cf4f5de7631cd16979a2e58e0de97f484aa4966ff3d366936a82159daf22c6b264c5f03c51093dbb01a55a40363cc15d95646eb0
|
||||
DIST x86-debug-libreoffice-kde-4.4.1.2.xd3 380068933 SHA256 e0fc6c48e3809c5c859f964245bda3a7839a38e0c67a2379a5355c94bb890ec4 SHA512 79bbfbfecc5ff87226f6fedc6477c55e9c273f18a378730eb320899b95a5a328a96073f010a3abd94cff2f43d3c44384a3bfcee430ba1642d5cf5a3eea049e45 WHIRLPOOL 6af0fe287affe1b73c23cfd0efe9d89227db37e7796723f1911bbd9f5b0cf19e3111162a43ba1715ae135699ec3c809d534d3eb36d61ac49796d576f6f84084f
|
||||
DIST x86-debug-libreoffice-kde-java-4.3.5.2-r1.xd3 450780101 SHA256 c870cdf99d898455f3eb89ac6e60ed42614f29f67af3150221fa078568412391 SHA512 31237fa19222c1ffae0b10339526a789855640dcf76a86e4a5e31e7a4924d8a7d69b387d06ae307c75357da959842eda6271fa8e01d4d9ee0d3d000ecbd618a4 WHIRLPOOL ebb5da0c058dd77ab37e9aac3972445581bf4694f7ea88e11b97158e0f906c67d3910ddaf861c274dff7a95ec58d8d24b7af57911733ede024ba19115d64a422
|
||||
DIST x86-debug-libreoffice-kde-java-4.3.5.2.xd3 450513180 SHA256 0a70a99aa2482558335e3d53099c850c0d7ec0dd3ca4ed2c735345c82eff2745 SHA512 d345490b72c138f00816389c1e90a345d59076ee27d4c259b03fa7437958e6f24a76a464183361832b3bbc5fff9613d57b634c1ae3e058b6f7ab344bb1101163 WHIRLPOOL 708127ed64522243475d723a9537bb0da7754ddd705f0c6afb18e19f4a4fd63cbdebc13ee685dc619faa68b651068c7c6dd93f67fcc495f294c94473d7b06876
|
||||
DIST x86-debug-libreoffice-kde-java-4.4.1.2.xd3 637330424 SHA256 1ab784fd7dfbab5e221f693d8d1e4719b1d7f2048d3a561a4d1f6851c3e23a4e SHA512 4c9ead8dd165530bf5e36756c72fa184b00b3ea3c813e9eeb70e15bfeac52703445ac98e1d455b6117cf4608378974d989000533e5af2d89960350b1241b50fc WHIRLPOOL a91b90be52fd782891821b5a981eadba7f8a290f54372eda05f2fdf41c5a51f5d42b298468a0462d3fe42c694bf0e0e471137f25c47ad118fa266b74e5c41baa
|
||||
|
@ -1,86 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-bin-debug/libreoffice-bin-debug-4.3.5.2-r1.ebuild,v 1.2 2015/04/04 21:03:18 zlogene Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
BASE_PACKAGENAME="debug"
|
||||
BASE_AMD64_URI="http://packages.gentooexperimental.org/packages/amd64-libreoffice/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="http://packages.gentooexperimental.org/packages/x86-libreoffice/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package, debug info"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 ~x86"
|
||||
|
||||
RDEPEND="=app-office/${PN/-debug}-${PVR}[gnome=,java=,kde=]"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/ || die
|
||||
}
|
@ -1,86 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-bin-debug/libreoffice-bin-debug-4.3.5.2.ebuild,v 1.3 2015/02/15 14:58:24 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
BASE_PACKAGENAME="debug"
|
||||
BASE_AMD64_URI="http://packages.gentooexperimental.org/packages/amd64-libreoffice/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="http://packages.gentooexperimental.org/packages/x86-libreoffice/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package, debug info"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
RDEPEND="=app-office/${PN/-debug}-${PVR}[gnome=,java=,kde=]"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/ || die
|
||||
}
|
@ -1,36 +1,12 @@
|
||||
DIST amd64-bin-libreoffice-4.3.5.2-r1.tar.xz 72894408 SHA256 069ff55034a95fa16a0fa2af4a696a026143df5ea9f7b58932f3907f6b432586 SHA512 dbc453e616b4923eebe4edc2aaa6a37496e9cae2ffde83a4dc9fcb1a52a55feda1667af59a012e9c7cc92effe4af24092010791d0300b53d67904b83dad125ba WHIRLPOOL d1a796aff17490e1c908ae35b0f7ae877b0d2d0027064f4068b568e7dac640f4f760f00b3244f6624aa7eaa25076de4c9df5ffa47c4f696f0f085232f6ba2411
|
||||
DIST amd64-bin-libreoffice-4.3.5.2.tar.xz 72904516 SHA256 00f388f68686cb3dd6b2e4f945d50279b66e05c02d45dcfe5e4b27c1b0885134 SHA512 f92fd2b0324646ccb0b6d419b3c0b2855ae3c10bdb0712b382ade95ed2d88f41cefd41a5b8cb497ea06b537efcdf5bcb0b52a7e7eb33415d2c67d1c39b949d08 WHIRLPOOL e87c045e5570019982fd2bf5c8e227d28c4f990bbcba01f6e34d44db5080d31807c0d87a0e14056290a5be11f013d46c4b48f9afc04fe328d2d0efd51cc0cb77
|
||||
DIST amd64-bin-libreoffice-4.4.1.2.tar.xz 71650512 SHA256 cce00b9aca658614c44875615b6bfa0eafb81eabb041571ed475485ff21a71b2 SHA512 617c717ef4ce1dacbed7afcf6e8883e38a0913c7accb4e088c2a094151f6d22057fcc86644a71912f721bbf9e49badd0b6b324156613dc189f3fbf725ef0eb50 WHIRLPOOL ed88dd4fb93d99010057a1f31a968238bf34e4b6db918c25cd4a5e56553c1abd728a76f5bc080a553fe6fca36c2ac67ddd5899a2c8bad2348189ac75ccc39eae
|
||||
DIST amd64-bin-libreoffice-gnome-4.3.5.2-r1.xd3 1164196 SHA256 c65f8fa38b621a7bd4dc03a86f8e5f5e3b4718505fb138cea4d9f8a9b8abd5f4 SHA512 1fd7cf4dd55b9e98179741976092d251fbbca806d28055b7ccf4eeeca5c521dd63226a8d802741bfc3a62c5a42a9896a850958cba92d3e948cdb2805e968c588 WHIRLPOOL 940e9a38d700e713ed74f1164f59e1a0e7cae09ad9e2c21df3b38434258f117859c5e0772a661913f877e38b4f39f24c35150aa0b07daad07e556f6dfda8af9d
|
||||
DIST amd64-bin-libreoffice-gnome-4.3.5.2.xd3 1653007 SHA256 7580c3feb4c89f131607b6cdb9b5128e0f275e5ecab24bd373c72c8651b08e5f SHA512 9aaf66a347999841d86acd6c95b4ece2287ef98517f16783ba12212fcf3e49e28da8aa868412f7628a76aff9d386397ac6fb4220dafbe6f867c59cb56ccfb633 WHIRLPOOL d06f07fed87a2508385633f8dd2accda89414f2a385ec2ad4f550cea65c7dcc95a97dfdac9e6c0f5e7950c2185abc6a67eaf72c035ecc74849de7d9ccec3bac3
|
||||
DIST amd64-bin-libreoffice-gnome-4.4.1.2.xd3 425674 SHA256 685038e133021a6a6475770fbe2ea89b269c678a5864cf23201967fa3bdc22fd SHA512 6a0efa77c058678706b20b94f163c79dd9cc3b1bbf408cceca86999aa3ecebee87b6bc376edc50545b408b325d03c52679fdf5af32be90bec25f958fbc94d15f WHIRLPOOL 9033c480713aa54a7c25907ffb63c3af740f2408995ced6b524e8e4e581d5487b9edcfc3ee8aa1e0c2d0c40465365bc3430b5f2f13d5bafe6f5f618539e79f51
|
||||
DIST amd64-bin-libreoffice-gnome-java-4.3.5.2-r1.xd3 13969212 SHA256 baa224e817d8af80c43d1eeaf202e0ddd3dddc0a2a0f82a4b658789314ab3b86 SHA512 21b04d1b21ad7c03001e8bac72e9fe150ddee298f568264cd94866fd50eb197161b049999ad19f5f3acd0b78daee58e997bd4c66843b3d062b7d8dd2192ca456 WHIRLPOOL 5f0535a2a9b36b995b93f32188bdfd863cc4b38e199a8a8acf1b6f2f776c43ae723a7f944e7fcb978202f8ef1680f5422511075e682341bc954c13d0f92df784
|
||||
DIST amd64-bin-libreoffice-gnome-java-4.3.5.2.xd3 14061152 SHA256 33275ba2ad779018950b84daf99b6e7aa355d50ab07c4be9f5699ea10ee07936 SHA512 9c7c37fe5d44ed53976e3278de9af214d300314ddf9186c3a384ce12ab09122ea347f9b05f0fc38f6c2c7d2ba183b1a1b807f69b11b91c5c1ac3e3ab410c8212 WHIRLPOOL 801dea549aaa484c15c041942a3420e80f1cb18c5266aa26a9bf948c91e0ac9c321b6bfb9743f9cd39cb380eab47adafb4c84aedbe8c2e22e19cebed9959e29c
|
||||
DIST amd64-bin-libreoffice-gnome-java-4.4.1.2.xd3 23857861 SHA256 4b9c1837d71941608bea5f2173e05adfa5e7f9f61a0dd1fc858efee874767f29 SHA512 d033d459a05554cacefc5aafdd0e134b1956768f10e42c9ca3a14859398daa1399964dbb84f666c0ec0f3ba7ee50b0628e668d0de2edaf87b9c9a346d2bb40dd WHIRLPOOL 57768ff4a91ad361096bd5305a7b521567498101d34597e87e93cba8ab1f250c79d0185d1b47ca2cebe816f9d33df746ea6dcf25f71c1ffb2bbfb7c3b24cbc36
|
||||
DIST amd64-bin-libreoffice-java-4.3.5.2-r1.xd3 14039798 SHA256 09bf3b27e201eb02aff6f0aa2d11fd5b4455242fefae532f68b29fd7e6e2fc58 SHA512 57692ade18a2d58937a942aeb94a0fda7bc2cd72e5d19678a3e78d2ee17d4ff637b29239ef160b32c9bac052acd8222fb1c823c89e09b5b4a91aa27eef4f672c WHIRLPOOL 1f7926bdbdcc13f857eddd78657fcac38b260395a3e2cc1b3cfe1f9087ce0abdd2f82cace063f8fae9cfed2d5eac3aff65842702f8383020b71d5237fe85c980
|
||||
DIST amd64-bin-libreoffice-java-4.3.5.2.xd3 13818388 SHA256 76ac57715afb0156be82226c0ac1dcfb02038ab4b5e7218c5f801e04b92d73b1 SHA512 cc2b002a7ac0d9c7dd08c1bc54ac8b1fdf38ec429591fac204bb33a08f0ae8a0affeb6205177870fe6d791a0ac7ca6bef9293c934e20c1a54c05da9acd95d554 WHIRLPOOL 6017c48c7bc4db4ecf5c904bb222ea9c1b7900ba9cc95796b5b9a98d75336b26366b49079ad1867009753e186b9c39c85d620d7049c02310ddb081b756011634
|
||||
DIST amd64-bin-libreoffice-java-4.4.1.2.xd3 23501021 SHA256 25993ce0879d6b45fdccd306d4775348f29be2c31126dcd2c6f7d912ad0b7095 SHA512 18e0ed309b761abedc79f1713169be8aa3a86cb8aab357deaf4897970ef011b41d4e8d01f003291ff7746bd6c0f86eff7176103e98f5fcc6014c022a45248347 WHIRLPOOL 52911b15e56cd6dd6c2b4efbd4e4422134754dbdb530f7b9fca7af703b716e4f5471f8cc5169ef38a9e9b3ff5ee5dd46a27ae9376ef9aa1bf382abaf9c55fc65
|
||||
DIST amd64-bin-libreoffice-kde-4.3.5.2-r1.xd3 2049363 SHA256 0d3fcd134d1aa83dffab8773c1f2633aba52fa1f384bfdd56f2fa72f8bd81d63 SHA512 3848cbaa74fa6c738fd3088d973885b2e9780a2e7731706ac1678655871d14ad8c0b4dd4d8a938a227af24ea745daf72bd41722d3d1c4bd9dac5ad741280e981 WHIRLPOOL 1f09762673f8765940ed489bcd06456318a68a892323af4b75ce922a6ba6437a669a05b31ad50d31ded0e9332f156e763edd588c825ac368704c5541777ce493
|
||||
DIST amd64-bin-libreoffice-kde-4.3.5.2.xd3 2233921 SHA256 2ee47f37b926c56b9633216f0a8e2547537ce85a4505feec3c343b6320a96ac4 SHA512 985848698ef24e220a98ba3660f6d49c88fd147b3b4f5febbe7082d9118daa614790f0efc29231002c5dfbc26718ab2715a1ab575865b092acf8bdeba06df4e0 WHIRLPOOL fe0ed773b90ee6abec82604f0465d40cde3f2a6cf6e7aef0ab9ce3fbb04e26a701312d7e3976e2f64343cff8987393e288a759279ba0fbc103bb279f0ba786d2
|
||||
DIST amd64-bin-libreoffice-kde-4.4.1.2.xd3 7420940 SHA256 852bd95429e8cb571ca2eec1a1d45a613bded680323053e596a5b8e50bd07c82 SHA512 41d62a84ec6c0d74fcab9de4924a487d74c8ed38b695c1e786b3d9c838771936cba0b1c9b79bc3d169d871448f0eaae58cbc644b03f3bdadb7b184022d04b70a WHIRLPOOL 6d17daddc80806fec48db9e9d33eec13d2f11b54f21452050d2cc00e032a0e20e9441a3e1f5695da9a5da4fe137ba769c78fdc28c7a97db20e47ef8eb4483ebb
|
||||
DIST amd64-bin-libreoffice-kde-java-4.3.5.2-r1.xd3 13960007 SHA256 bea4e9d60ec79aec812c7a7cc1833d2036b1937545d06ed741a99ab8dd0ec031 SHA512 3c0e177f07fa41316ffa8ab0f1bd3fa6779b6b36ba93df1e07a4a688fabe8a618c8e1c88279d4be9acc092f5ca9e56c1f0aee57e4bacc7e62364050c09c1be2a WHIRLPOOL 3d14986cb8c0a07d1d8c243e493dfd94bd8f956a83e94012b905d677bb591174dc4f810171e6767aa983ab5a7625348221151180c62c205dd977d50cb71607b2
|
||||
DIST amd64-bin-libreoffice-kde-java-4.3.5.2.xd3 13995178 SHA256 6d07cd3cabfe631c0d0aa9d5d80d1fb7fceef499b7467b4c7c23c63c065e9a75 SHA512 e02770c36aa7e545bf85b58ffaea5e52009efcdc44e978f31972acd45c2ba9d9d72f385512a2ddca4ee3d02aee450f7e4535d7b88854f082573e39c03035805a WHIRLPOOL af92e5b2b5e51c96448b9f6b839e9ee5e50d56fbe6f0417f0b60d982b422bcf80b1c6014e95dc1d7795a3ee4074d7d7ad208947f3f9f471b58304c529636f13e
|
||||
DIST amd64-bin-libreoffice-kde-java-4.4.1.2.xd3 23618565 SHA256 df79c72a2906429e62264103c582b469184b754db592bc19fb5671769c01c8b8 SHA512 37e9a4a5e9d1b377ef2973934d51f4516ecb61e65faa94c8dd417d4c958c259234affba31df71825dd0a15305d90c742f2c752f9190e29837d4fa2fb9dfbebbf WHIRLPOOL 4c1d7dc5ce53aa48389d14f7918a2ed76a10001cff17eb9e4c38e696ffbb1a5bdd2b844055732ac18d0eefe3030a9d07780b38c780bc669d9b6ccc4d897f1eff
|
||||
DIST x86-bin-libreoffice-4.3.5.2-r1.tar.xz 71325056 SHA256 0b3a719c5aa14b343d09c9e856b61b11a96be038f06adb6289188ae636580d85 SHA512 4f5a1c6b58b09c0836a2ae110cdd1307e88effa10626ee788f1ad1414442d0b0b236aed0a6b9d7505d0f02712982b134cd756bd383bb2dafb49579922dab0a18 WHIRLPOOL 22238fc4df0c48f4b0156c2336ff2e4e997b2b5bcef1e052f1c06a43547cae5835945110a17239ea1eb38ad46851afe2ea241ef626d8bea3cf2bd9929c96d773
|
||||
DIST x86-bin-libreoffice-4.3.5.2.tar.xz 71320516 SHA256 221b765eac1ade056d3cc8188cd7f05f427bf37231ca17e427bd44540490539f SHA512 13dbd72b7ff5d48f9d408061ab845c24417bf6787f5555e4ffe0237a82e86d99c074d372094dba05e0c4409f0a3d22eb8f0cfcd7f9993b6613662e07f7b99358 WHIRLPOOL 1b69993bfdd0df3423354426d7364151ecdb2a060a182946a41f6d4113f9384fa22623c934b03012bee4d668816fe54c38a19243067dff5a7f86dafba0554ec3
|
||||
DIST x86-bin-libreoffice-4.4.1.2.tar.xz 70082492 SHA256 a5bada5ad45fa92fe8be518ad44f36182eaab4d7c3a421b06a669aec055195aa SHA512 7eb3934ceca365b2254e764c77cf57899561143d9431e08eb10d2019c9887123b040f37534dd92366c4e86ed8d0500d0acbe217f0b283824aaae17b97433305f WHIRLPOOL fd5c62f234db086f965cecaf144e0628e3490eaf4cc516f0463ffed9afe5cbf770122b0e1bb41d6fe4667683e49b52f9c369c007206c96c651871a91514621a2
|
||||
DIST x86-bin-libreoffice-gnome-4.3.5.2-r1.xd3 893443 SHA256 ab420a738993f310474893e38d6afa0e21fe6dbda7e4fc8a0d9dec7c46a185f2 SHA512 d062b4e67efb720347227653076be37147071aa535c79110b7461676e0f3d5a8d774dab3fe901bc87f890b7fb4116cd07171939e2578c4052a8809547fa94170 WHIRLPOOL 9a5c4ccb56f9e69c47ca8c6ccd0f0df077281dea6eb48d80c8bd5c41414f9e6a425af1a3a89bc0ba89f779d89cb2bcdaa42a046de5d095bd486f8337cab50ade
|
||||
DIST x86-bin-libreoffice-gnome-4.3.5.2.xd3 1353554 SHA256 7467946dac4041b03ce66afb3820f26fe94b0102e0ee38587d6281a813fa83df SHA512 ad4e26d4f3d9a108dca30041afb4856996e7f50d6e912afbee97b1152d8e847e955d01d14dc35188971cb0a7d0250a4c8639c439164b2a4792a1ab729a697ec6 WHIRLPOOL c6b46024fefe731c95cc905fa3d4ff446af2c8c262681407f9f8ddec433f1803c31ba5ca4ae259bcf40af8576664dbf876286302f654c86ef4ba767460219ed9
|
||||
DIST x86-bin-libreoffice-gnome-4.4.1.2.xd3 390016 SHA256 5c1312c9f2c7a6f52746de590a3921683b1eee60c4f9efc2e794333347677c26 SHA512 3eef91abc8210bfe9ea2acea6bcc42fae2da242900bf623689461e90e638bbf05ec08cb2690c801d79a25af5a6869a026a9ac1cbc9e70b4a68010225cc4d4c12 WHIRLPOOL e1d64e2e472120c6cc93202f83a7b8a612867b0a8e34f2c98703278697805e03edac42d6cfd1fb5312bd45a2e9235bb55e68d8605872d2deaf0d75a81b1b9a30
|
||||
DIST x86-bin-libreoffice-gnome-java-4.3.5.2-r1.xd3 13046432 SHA256 edeb5038e88028d9c27d809a14723a4ca8487ade9130f326591d1d3a9e1e14a0 SHA512 0ee6d25e7a18b4c91a74c8236ce04f329f5ec79afa0fac857250f2ade974413b3065216e58dfe14dda814081a4c780dd40197229917116a75cd5f1534fd42839 WHIRLPOOL 2130698e4aa1c1c0f21e21027757601fae2703e53a589c7bc2573a03dd3e1320c6071631d647d942d7e4c30839dd59aee77a138e2f2997a96742463ee46a9b55
|
||||
DIST x86-bin-libreoffice-gnome-java-4.3.5.2.xd3 12832084 SHA256 c87915c1246954f5d39d3a474c8aa136d0befbd7c07463b4ce08aee65963bb3f SHA512 955577950c02c0cefe7da6beb04a2e13a9062b295d8cc6691276e335a198feb19b78d834469c03a6d2b560966ae1f0946070e6da86178f85a7a0226b6a50a08c WHIRLPOOL 92a7fbad4ea7501a69d074afd7de49dafce5e869155aea91132c85559e78597cf628dec8fd432573567d119bc0aa60142265a0aadf4eb09d30c29642970fb98c
|
||||
DIST x86-bin-libreoffice-gnome-java-4.4.1.2.xd3 22896722 SHA256 ae38e9eda7dc1ff89419499b92c2c11d2ca1bc894a7823e94974faebe98573e2 SHA512 60efe57b3366b904dfcfd7c6e177566e14d0b13abc9012c026d5968eebdcfbd0dfe527a9a2fc6d91aafbc2aacd8da94c95d2cbecaaedfcb7dfcb9e0d5a2028c1 WHIRLPOOL 8e5339d5406badeb3df9b33694a6883d47abd0ec25517928994a37a94614c8769d5dc6c395bedc96eb26266f1c4cabda33e2f9a5cce5cbb46e4c50e0acfbc53e
|
||||
DIST x86-bin-libreoffice-java-4.3.5.2-r1.xd3 12498757 SHA256 e28af291b8b555c429f2bd2329b84ed69e8287afbc5af271e91a370b3108fc24 SHA512 a666fe6a8327dc4e76aef2de6c1e75dc7ef5720660729556b9b37e3b88d2a61151ee34751160fb1834f3ba0ba4864f75c20f30029fd163c1ce8f52dfe492d1d5 WHIRLPOOL 6f4c983ae8cdaf50657cf41e42e2584a13a2c34ddba3b35522a4aa5c688239a9611d1e51c0c00f5ecc1cce5dad0169c04ad1c000391882107ce5a1825f0618ea
|
||||
DIST x86-bin-libreoffice-java-4.3.5.2.xd3 12253010 SHA256 5813ac978a93ae31d5745c3e2dda59640e9c0f6259178274824f009e89ddd705 SHA512 7cfefbe4711c2a4ce75c9d6e88f61a318d6b40ba2d5bdcb51b79def7324461e91f291ca52d9ec7d5ef6ee1c4bac47b9819d81cb2c7c820ead7737330507ab85b WHIRLPOOL 1491ddf32dac0fd66b196ee51132ffc1248342fff5c454a605a374408b71be0b50d4af4eb619576b00cdc06cc8de69a401b7a5b6a7288c930992128514912065
|
||||
DIST x86-bin-libreoffice-java-4.4.1.2.xd3 20601544 SHA256 bcd5cc7cfc44da913a55a8f13d6f9021ad701e4bf14fcc97bcc317e33ad00ac8 SHA512 bd9161109751ba4572aaadee8bbe678fd98f49931d88e7110c12949e24928d8c5ca99582db1b810c8061adcdd2b8a5c1f5ce3ce2c29767d77c357bf0a1e0cf05 WHIRLPOOL b39707089a2435466b44ed538cbbea605bd79406d5c14e8791ae1c4b3b7e33cefe19fd6c1c1911a803c0a2c7ac68ddd339a0e3cbb4bf5a9b13f2f1c3d22d2407
|
||||
DIST x86-bin-libreoffice-kde-4.3.5.2-r1.xd3 2032147 SHA256 19b07086e8e42b573330d277170987c750c2c8f1948a8ed67359dc94b97a98c4 SHA512 54bdeabf727210728e595d39631a317d0baba3fd0efc6f0e6aa0a4586fd254fdf050ad3b08f35ad23e0e9e121288a42d71a855e54087a1df5f7ace1fea449467 WHIRLPOOL d44a7860fe34c08edace30f1f602d85b189a39600af38553148850e52fc5def76f80c781ac6e111fcc9849ffaed42f8044d27d8e51b60d022ac53a7313d5fa4b
|
||||
DIST x86-bin-libreoffice-kde-4.3.5.2.xd3 1742499 SHA256 52de1da123f833f9a9786c0844b732910d8a63367d6b3bdcbdd6b4b58b2d6964 SHA512 a3d4b8c487fff1d6e1f0af2ec2bc31d7465dc3f2a1a2c3901fe79d55212d533c5100dc57fef03a1e9c3d3ff4de6772dd20599d68c9ace3c13775f34f44ad1d65 WHIRLPOOL e393e21d81714251ba2997429e1e13b242241bc3dc79d990b8a647c8b4aff4099c98668a4439dd9793433520da5ceb2347ae9b02a188a3ee6b4e8645625cac4e
|
||||
DIST x86-bin-libreoffice-kde-4.4.1.2.xd3 4415074 SHA256 5aec17705a5f88e8bb7f57b4d270d5df4c93316bef087035ebd9f4525e2833ea SHA512 bf1a7fd0040011045bcdcd98ae86b549da93ceee7aa276fd88ce20a21e038534b3a03bb31134d433d9bf7d70b094af2f9759f7fcaac02db4e6ca050f9e3a3f0b WHIRLPOOL fc5b8c48d00432bb5e873def7ffea7ad28276e23cf8ab96ff4286c95b9af7211a1187b7e4510886ecbb140118f788fab1db33e89e90b2a324a9dc11fd53e7bbd
|
||||
DIST x86-bin-libreoffice-kde-java-4.3.5.2-r1.xd3 12534979 SHA256 0b3573ffbf306cc1a49232c4b91855731d0218ec3035f5e5d0fc4cffa57c2575 SHA512 def8e97f74d54acc5c051fa55879616d4dab6acc9ad14e4227a79338917a17930a5dec25cc1d668189c48eb6967eccb7b39ee8d48dec2a204f89e359bcfffc26 WHIRLPOOL def0c3902d4d16988d0ee5aa87468b9c97327236b4e1c0acff280ea0b94c1d9f5e2b4647890ce22bdb4e4ead7960cab57e054e34ad3ea94381538ea76e423283
|
||||
DIST x86-bin-libreoffice-kde-java-4.3.5.2.xd3 12629003 SHA256 97e095d36267bdb4c62768a8b9ad3ef2c814a0055bdf61746251d665d19f403f SHA512 7274601ec92c893b4553cd5bc5b48aab602ffbc4a9d59a79003b4cd9ed0b461305ea1b767c2207765f1ca3fa88d74c56f4a9489ef66e8545e803d7e73347ddc9 WHIRLPOOL 4681dadb90f2efc2017c88e6307c5c45eaa2a11ecface3b101722fbbee14eb7f567c91cbb3b0706c828b1a95244add3e88c4580183221a55a5449668076fdaa2
|
||||
DIST x86-bin-libreoffice-kde-java-4.4.1.2.xd3 20688876 SHA256 9e9dfba4fbac04e618f6b5fce8be6c8cfa5a8c5169b4d7c31a59bc1a2f49e493 SHA512 cc093a79997bbc9035d6fbbe630d196c9d7e078b731b3b54ade62e3ed59d65b2cad3760e7ccbe3aa3946d4d3eb49d8c5143166aceda1fc894578529c8d284716 WHIRLPOOL 088054290682bacc73b97f1f439ffa037597a54500d16a1e2459e2eedec37abd5c1f70c6391f927f35ea54bb1ec035db202deb863dda0c9187283982072e3975
|
||||
|
@ -1,233 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-bin/libreoffice-bin-4.3.5.2-r1.ebuild,v 1.3 2015/04/04 21:02:30 zlogene Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
BASE_PACKAGENAME="bin"
|
||||
BASE_AMD64_URI="http://packages.gentooexperimental.org/packages/amd64-libreoffice/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="http://packages.gentooexperimental.org/packages/x86-libreoffice/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
inherit kde4-base java-pkg-opt-2 python-single-r1 pax-utils prefix versionator
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 ~x86"
|
||||
|
||||
BIN_COMMON_DEPEND="
|
||||
=app-text/libexttextcat-3.4*
|
||||
=app-text/libmwaw-0.3*
|
||||
app-text/poppler:0/51
|
||||
dev-libs/boost:0/1.55.0
|
||||
dev-libs/icu:0/54a
|
||||
=media-gfx/graphite2-1.2*
|
||||
media-libs/glew:0/1.10
|
||||
media-libs/harfbuzz:0/0.9.18[icu]
|
||||
media-libs/libpng:0/16
|
||||
>=sys-libs/glibc-2.19-r1
|
||||
virtual/jpeg:62
|
||||
kde? ( >=kde-base/kdelibs-4.14.3-r1:4 >=dev-qt/qtcore-4.8.5-r2:4 >=dev-qt/qtgui-4.8.5-r3:4 )
|
||||
"
|
||||
|
||||
# PLEASE place any restrictions that are specific to the binary builds
|
||||
# into the BIN_COMMON_DEPEND block above.
|
||||
# All dependencies below this point should remain identical to those in
|
||||
# the source ebuilds.
|
||||
|
||||
COMMON_DEPEND="
|
||||
${BIN_COMMON_DEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
dev-cpp/libcmis:0.4
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.46:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
net-print/cups
|
||||
>=dev-libs/dbus-glib-0.92
|
||||
gnome? ( gnome-extra/evolution-data-server )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
"
|
||||
|
||||
PDEPEND="
|
||||
=app-office/libreoffice-l10n-${PV}*
|
||||
"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
# only one flavor at a time
|
||||
REQUIRED_USE="kde? ( !gnome ) gnome? ( !kde )"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
pkg_pretend() {
|
||||
[[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -le 4 ]] ) \
|
||||
&& die "Sorry, but gcc-4.4 and earlier won't work for libreoffice-bin package (see bug #387515)."
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
kde4-base_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cp "${FILESDIR}"/50-${PN} "${T}"
|
||||
eprefixify "${T}"/50-${PN}
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/
|
||||
|
||||
# prevent revdep-rebuild from attempting to rebuild all the time
|
||||
insinto /etc/revdep-rebuild && doins "${T}/50-${PN}"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1,233 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-bin/libreoffice-bin-4.3.5.2.ebuild,v 1.6 2015/04/02 18:25:35 mr_bones_ Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
BASE_PACKAGENAME="bin"
|
||||
BASE_AMD64_URI="http://packages.gentooexperimental.org/packages/amd64-libreoffice/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="http://packages.gentooexperimental.org/packages/x86-libreoffice/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
inherit kde4-base java-pkg-opt-2 python-single-r1 pax-utils prefix versionator
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
BIN_COMMON_DEPEND="
|
||||
=app-text/libexttextcat-3.4*
|
||||
=app-text/libmwaw-0.3*
|
||||
app-text/poppler:0/46
|
||||
dev-libs/boost:0/1.55.0
|
||||
dev-libs/icu:0/54a
|
||||
=media-gfx/graphite2-1.2*
|
||||
media-libs/glew:0/1.10
|
||||
media-libs/harfbuzz:0/0.9.18[icu]
|
||||
media-libs/libpng:0/16
|
||||
>=sys-libs/glibc-2.19-r1
|
||||
virtual/jpeg:62
|
||||
kde? ( >=kde-base/kdelibs-4.14.3-r1:4 >=dev-qt/qtcore-4.8.5-r2:4 >=dev-qt/qtgui-4.8.5-r3:4 )
|
||||
"
|
||||
|
||||
# PLEASE place any restrictions that are specific to the binary builds
|
||||
# into the BIN_COMMON_DEPEND block above.
|
||||
# All dependencies below this point should remain identical to those in
|
||||
# the source ebuilds.
|
||||
|
||||
COMMON_DEPEND="
|
||||
${BIN_COMMON_DEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
dev-cpp/libcmis:0.4
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.46:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
net-print/cups
|
||||
>=dev-libs/dbus-glib-0.92
|
||||
gnome? ( gnome-extra/evolution-data-server )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
"
|
||||
|
||||
PDEPEND="
|
||||
=app-office/libreoffice-l10n-${PV}*
|
||||
"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
# only one flavor at a time
|
||||
REQUIRED_USE="kde? ( !gnome ) gnome? ( !kde )"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
pkg_pretend() {
|
||||
[[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -le 4 ]] ) \
|
||||
&& die "Sorry, but gcc-4.4 and earlier won't work for libreoffice-bin package (see bug #387515)."
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
kde4-base_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [ -n "${patchname}" ]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cp "${FILESDIR}"/50-${PN} "${T}"
|
||||
eprefixify "${T}"/50-${PN}
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/
|
||||
|
||||
# prevent revdep-rebuild from attempting to rebuild all the time
|
||||
insinto /etc/revdep-rebuild && doins "${T}/50-${PN}"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${EPREFIX}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1,90 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-l10n/libreoffice-l10n-4.3.5.2.ebuild,v 1.4 2015/03/08 15:57:21 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit rpm eutils multilib versionator
|
||||
|
||||
MY_PV=$(get_version_component_range 1-3)
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
BASE_SRC_URI="http://downloadarchive.documentfoundation.org/${PN/-l10n/}/old/${MY_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~ppc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
LANGUAGES_HELP=" am ast bg bn_IN bn bo bs ca_valencia ca cs da de dz el en_GB en en_ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko mk nb ne nl nn om pl pt_BR pt ru si sk sl sq sv tg tr ug uk vi zh_CN zh_TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af ar as be br brx cy dgo fa ga gd kk kmr_Latn kn kok ks lb lo lt lv mai ml mn mni mr my nr nso oc or pa_IN ro rw sa_IN sat sd sid sr_Latn sr ss st sw_TZ ta te th tn ts tt uz ve xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack=""
|
||||
[[ ${lang} == en ]] && lang2=${lang/en/en_US} || lang2=${lang}
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_helppack_${lang2/_/-}.tar.gz )"
|
||||
SRC_URI+=" linguas_${lang}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
langpack=""
|
||||
[[ ${lang} == en ]] \
|
||||
|| langpack="${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_langpack_${lang/_/-}.tar.gz"
|
||||
[[ -z ${langpack} ]] || SRC_URI+=" linguas_${lang}? ( ${langpack} )"
|
||||
IUSE+=" linguas_${lang}"
|
||||
done
|
||||
unset lang helppack langpack lang2
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir i
|
||||
local ooextused=()
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled; paludis support
|
||||
use_if_iuse linguas_${lang} || continue
|
||||
|
||||
dir=${lang/_/-}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang} != en ]]; then
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
rm -rf "${S}/${rpmdir}/"*dict*.rpm
|
||||
rpm_unpack "./${rpmdir}/"*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
[[ ${lang} == en ]] && dir="en-US"
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
rpm_unpack ./"${rpmdir}/"*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() { :; }
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(get_version_component_range 1-2)/
|
||||
# Condition required for people that do not install anything eg no linguas
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in the l10n for some weird reason
|
||||
rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/
|
||||
}
|
@ -1,90 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-l10n/libreoffice-l10n-4.3.6.2.ebuild,v 1.1 2015/02/21 01:00:38 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit rpm eutils multilib versionator
|
||||
|
||||
MY_PV=$(get_version_component_range 1-3)
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
BASE_SRC_URI="http://download.documentfoundation.org/${PN/-l10n/}/stable/${MY_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
LANGUAGES_HELP=" am ast bg bn_IN bn bo bs ca_valencia ca cs da de dz el en_GB en en_ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko mk nb ne nl nn om pl pt_BR pt ru si sk sl sq sv tg tr ug uk vi zh_CN zh_TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af ar as be br brx cy dgo fa ga gd kk kmr_Latn kn kok ks lb lo lt lv mai ml mn mni mr my nr nso oc or pa_IN ro rw sa_IN sat sd sid sr_Latn sr ss st sw_TZ ta te th tn ts tt uz ve xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack=""
|
||||
[[ ${lang} == en ]] && lang2=${lang/en/en_US} || lang2=${lang}
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_helppack_${lang2/_/-}.tar.gz )"
|
||||
SRC_URI+=" linguas_${lang}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
langpack=""
|
||||
[[ ${lang} == en ]] \
|
||||
|| langpack="${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_langpack_${lang/_/-}.tar.gz"
|
||||
[[ -z ${langpack} ]] || SRC_URI+=" linguas_${lang}? ( ${langpack} )"
|
||||
IUSE+=" linguas_${lang}"
|
||||
done
|
||||
unset lang helppack langpack lang2
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir i
|
||||
local ooextused=()
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled; paludis support
|
||||
use_if_iuse linguas_${lang} || continue
|
||||
|
||||
dir=${lang/_/-}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang} != en ]]; then
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
rm -rf "${S}/${rpmdir}/"*dict*.rpm
|
||||
rpm_unpack "./${rpmdir}/"*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
[[ ${lang} == en ]] && dir="en-US"
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
rpm_unpack ./"${rpmdir}/"*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() { :; }
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(get_version_component_range 1-2)/
|
||||
# Condition required for people that do not install anything eg no linguas
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in the l10n for some weird reason
|
||||
rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/
|
||||
}
|
@ -1,90 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice-l10n/libreoffice-l10n-4.4.0.3.ebuild,v 1.2 2015/02/15 19:51:14 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit rpm eutils multilib versionator
|
||||
|
||||
MY_PV=$(get_version_component_range 1-3)
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
BASE_SRC_URI="http://download.documentfoundation.org/${PN/-l10n/}/stable/${MY_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
LANGUAGES_HELP=" am ast bg bn_IN bn bo bs ca_valencia ca cs da de dz el en_GB en en_ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko mk nb ne nl nn om pl pt_BR pt ru si sk sl sq sv tg tr ug uk vi zh_CN zh_TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af ar as be br brx cy dgo fa ga gd kk kmr_Latn kn kok ks lb lo lt lv mai ml mn mni mr my nr nso oc or pa_IN ro rw sa_IN sat sd sid sr_Latn sr ss st sw_TZ ta te th tn ts tt uz ve xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack=""
|
||||
[[ ${lang} == en ]] && lang2=${lang/en/en_US} || lang2=${lang}
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_helppack_${lang2/_/-}.tar.gz )"
|
||||
SRC_URI+=" linguas_${lang}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
langpack=""
|
||||
[[ ${lang} == en ]] \
|
||||
|| langpack="${BASE_SRC_URI}/x86/LibreOffice_${MY_PV}_Linux_x86_rpm_langpack_${lang/_/-}.tar.gz"
|
||||
[[ -z ${langpack} ]] || SRC_URI+=" linguas_${lang}? ( ${langpack} )"
|
||||
IUSE+=" linguas_${lang}"
|
||||
done
|
||||
unset lang helppack langpack lang2
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir i
|
||||
local ooextused=()
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled; paludis support
|
||||
use_if_iuse linguas_${lang} || continue
|
||||
|
||||
dir=${lang/_/-}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang} != en ]]; then
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
rm -rf "${S}/${rpmdir}/"*dict*.rpm
|
||||
rpm_unpack "./${rpmdir}/"*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
[[ ${lang} == en ]] && dir="en-US"
|
||||
rpmdir="LibreOffice_${PV}_Linux_x86_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: \"${rpmdir}\""
|
||||
rpm_unpack ./"${rpmdir}/"*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() { :; }
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(get_version_component_range 1-2)/
|
||||
# Condition required for people that do not install anything eg no linguas
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in the l10n for some weird reason
|
||||
rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
diff --git a/desktop/scripts/soffice.sh b/desktop/scripts/soffice.sh
|
||||
index a259bf6..672fa23 100755
|
||||
--- a/desktop/scripts/soffice.sh
|
||||
+++ b/desktop/scripts/soffice.sh
|
||||
@@ -129,6 +129,9 @@ if echo "$checks" | grep -q "cc" ; then
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
+PYTHONPATH=$sd_prog${PYTHONPATH+:$PYTHONPATH}
|
||||
+export PYTHONPATH
|
||||
+
|
||||
case "`uname -s`" in
|
||||
NetBSD|OpenBSD|FreeBSD|DragonFly)
|
||||
# this is a temporary hack until we can live with the default search paths
|
||||
diff --git a/pyuno/source/module/uno.py b/pyuno/source/module/uno.py
|
||||
index 4ff2606..6a05eed 100644
|
||||
--- a/pyuno/source/module/uno.py
|
||||
+++ b/pyuno/source/module/uno.py
|
||||
@@ -16,8 +16,12 @@
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
||||
#
|
||||
+import os
|
||||
import sys
|
||||
|
||||
+sys.path.append('%eprefix%/usr/%libdir%/libreoffice/program')
|
||||
+if getattr(os.environ, 'URE_BOOTSTRAP', None) is None:
|
||||
+ os.environ['URE_BOOTSTRAP'] = "vnd.sun.star.pathname:%eprefix%/usr/%libdir%/libreoffice/program/fundamentalrc"
|
||||
import pyuno
|
||||
|
||||
try:
|
||||
diff --git a/scripting/source/pyprov/officehelper.py b/scripting/source/pyprov/officehelper.py
|
||||
index 99d3b03..704edab 100755
|
||||
--- a/scripting/source/pyprov/officehelper.py
|
||||
+++ b/scripting/source/pyprov/officehelper.py
|
||||
@@ -44,7 +44,7 @@ def bootstrap():
|
||||
if "UNO_PATH" in os.environ:
|
||||
sOffice = os.environ["UNO_PATH"]
|
||||
else:
|
||||
- sOffice = "" # lets hope for the best
|
||||
+ sOffice = "%eprefix%/usr/%libdir%/libreoffice/program"
|
||||
sOffice = os.path.join(sOffice, "soffice")
|
||||
if platform.startswith("win"):
|
||||
sOffice += ".exe"
|
@ -1,74 +0,0 @@
|
||||
From 95f60222e75486336b6569afa8f34d60b51c94ad Mon Sep 17 00:00:00 2001
|
||||
From: Jan-Marek Glogowski <glogow@fbihome.de>
|
||||
Date: Thu, 21 Nov 2013 12:40:57 +0100
|
||||
Subject: [PATCH] fdo#67011: Run Display::Yield through KDEXLib::Yield.
|
||||
|
||||
Drag'n'Drop is handled in a second thread, which tries to "yield
|
||||
the display" while the main Qt thread probably is already
|
||||
yielding. Both need the YieldMutex, which freezes the application
|
||||
until the D'n'D thread times out.
|
||||
|
||||
Trying to yield the display throught the application yield
|
||||
results in a recursive loop.
|
||||
|
||||
So this catches and breaks the recursion, but just inside the Qt
|
||||
thread, so other processes can "yield on the display", instead
|
||||
of simply disabling the Display::Yield.
|
||||
|
||||
Change-Id: Ifba91aa89fe5b0a89cc94820935dc996a065112f
|
||||
Reviewed-on: https://gerrit.libreoffice.org/6750
|
||||
Tested-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
||||
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
||||
---
|
||||
vcl/unx/kde4/KDESalDisplay.cxx | 22 ++++++++++++++++------
|
||||
1 file changed, 16 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/vcl/unx/kde4/KDESalDisplay.cxx b/vcl/unx/kde4/KDESalDisplay.cxx
|
||||
index 21440fc..ee330e7 100644
|
||||
--- a/vcl/unx/kde4/KDESalDisplay.cxx
|
||||
+++ b/vcl/unx/kde4/KDESalDisplay.cxx
|
||||
@@ -25,6 +25,8 @@
|
||||
#include <assert.h>
|
||||
#include <unx/saldata.hxx>
|
||||
|
||||
+#include <qthread.h>
|
||||
+
|
||||
SalKDEDisplay* SalKDEDisplay::selfptr = NULL;
|
||||
|
||||
SalKDEDisplay::SalKDEDisplay( Display* pDisp )
|
||||
@@ -48,18 +50,26 @@ SalKDEDisplay::~SalKDEDisplay()
|
||||
|
||||
void SalKDEDisplay::Yield()
|
||||
{
|
||||
- if( DispatchInternalEvent() )
|
||||
+ // We yield the display throught the main Qt thread.
|
||||
+ // Actually this Yield may call the Display::Yield, which results in an
|
||||
+ // unlimited cycle.
|
||||
+ static bool break_cyclic_yield_recursion = false;
|
||||
+ bool is_qt_gui_thread = ( qApp->thread() == QThread::currentThread() );
|
||||
+
|
||||
+ if( DispatchInternalEvent() || break_cyclic_yield_recursion )
|
||||
return;
|
||||
|
||||
+ if( is_qt_gui_thread )
|
||||
+ break_cyclic_yield_recursion = true;
|
||||
+
|
||||
DBG_ASSERT( static_cast<SalYieldMutex*>(GetSalData()->m_pInstance->GetYieldMutex())->GetThreadId() ==
|
||||
osl::Thread::getCurrentIdentifier(),
|
||||
"will crash soon since solar mutex not locked in SalKDEDisplay::Yield" );
|
||||
|
||||
- XEvent event;
|
||||
- XNextEvent( pDisp_, &event );
|
||||
- if( checkDirectInputEvent( &event ))
|
||||
- return;
|
||||
- qApp->x11ProcessEvent( &event );
|
||||
+ static_cast<KDEXLib*>(GetXLib())->Yield( true, false );
|
||||
+
|
||||
+ if( is_qt_gui_thread )
|
||||
+ break_cyclic_yield_recursion = false;
|
||||
}
|
||||
|
||||
// HACK: When using Qt event loop, input methods (japanese, etc.) will get broken because
|
||||
--
|
||||
1.8.5.1
|
||||
|
@ -1,141 +0,0 @@
|
||||
Minor modification for libreoffice-4.1: in line 137, reset Q_EMIT to
|
||||
emit... dilfridge@gentoo.org
|
||||
|
||||
From 13a34f4c6307d1bd2443cbf3fbd83bfdd8cdbafb Mon Sep 17 00:00:00 2001
|
||||
From: Jan-Marek Glogowski <glogow@fbihome.de>
|
||||
Date: Fri, 15 Nov 2013 13:42:15 +0000
|
||||
Subject: Rewrite Qt4 based nested yield mutex locking.
|
||||
|
||||
The Qt event loop may start a nested event loop, when checking for
|
||||
clipboard and Drag'n'Drop events.
|
||||
|
||||
Previously this was handled by running this nested yield loop
|
||||
inside the main glib loop using
|
||||
qApp->clipboard()->property( "useEventLoopWhenWaiting" );
|
||||
|
||||
But this results in nested paint events which crash LO:
|
||||
QWidget::repaint: Recursive repaint detected
|
||||
|
||||
To prevend yield mutex deadlocks, check for nested event loops
|
||||
and always release the yield lock before starting the nested Yield
|
||||
event loop.
|
||||
|
||||
This fixes fdo#69002.
|
||||
|
||||
Change-Id: I7e827abd3489783053ec7123372742a32555875d
|
||||
Reviewed-on: https://gerrit.libreoffice.org/6685
|
||||
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
||||
Reviewed-by: Thorsten Behrens <thb@documentfoundation.org>
|
||||
Tested-by: Thorsten Behrens <thb@documentfoundation.org>
|
||||
---
|
||||
diff --git a/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
|
||||
index ee4a6e3..cb20be4 100644
|
||||
--- a/vcl/unx/kde4/KDE4FilePicker.cxx
|
||||
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
|
||||
@@ -58,6 +58,8 @@
|
||||
|
||||
#undef Region
|
||||
|
||||
+#include "generic/geninst.h"
|
||||
+
|
||||
using namespace ::com::sun::star;
|
||||
using namespace ::com::sun::star::ui::dialogs;
|
||||
using namespace ::com::sun::star::ui::dialogs::TemplateDescription;
|
||||
@@ -253,28 +255,16 @@ sal_Int16 SAL_CALL KDE4FilePicker::execute()
|
||||
_dialog->setFilter(_filter);
|
||||
_dialog->filterWidget()->setEditable(false);
|
||||
|
||||
- // At this point, SolarMutex is held. Opening the KDE file dialog here
|
||||
- // can lead to QClipboard asking for clipboard contents. If LO core
|
||||
- // is the owner of the clipboard content, this will block for 5 seconds
|
||||
- // and timeout, since the clipboard thread will not be able to acquire
|
||||
- // SolarMutex and thus won't be able to respond. If the event loops
|
||||
- // are properly integrated and QClipboard can use a nested event loop
|
||||
- // (see the KDE VCL plug), then this won't happen, but otherwise
|
||||
- // simply release the SolarMutex here. The KDE file dialog does not
|
||||
- // call back to the core, so this should be safe (and if it does,
|
||||
- // SolarMutex will need to be re-acquired).
|
||||
- long mutexrelease = 0;
|
||||
- if( !qApp->clipboard()->property( "useEventLoopWhenWaiting" ).toBool())
|
||||
- mutexrelease = Application::ReleaseSolarMutex();
|
||||
- //block and wait for user input
|
||||
+ // We're entering a nested loop.
|
||||
+ // Release the yield mutex to prevent deadlocks.
|
||||
int result = _dialog->exec();
|
||||
+
|
||||
// HACK: KFileDialog uses KConfig("kdeglobals") for saving some settings
|
||||
// (such as the auto-extension flag), but that doesn't update KGlobal::config()
|
||||
// (which is probably a KDE bug), so force reading the new configuration,
|
||||
// otherwise the next opening of the dialog would use the old settings.
|
||||
KGlobal::config()->reparseConfiguration();
|
||||
- if( !qApp->clipboard()->property( "useEventLoopWhenWaiting" ).toBool())
|
||||
- Application::AcquireSolarMutex( mutexrelease );
|
||||
+
|
||||
if( result == KFileDialog::Accepted)
|
||||
return ExecutableDialogResults::OK;
|
||||
|
||||
diff --git a/vcl/unx/kde4/KDEXLib.cxx b/vcl/unx/kde4/KDEXLib.cxx
|
||||
index 8e0eb67..67d7a4d 100644
|
||||
--- a/vcl/unx/kde4/KDEXLib.cxx
|
||||
+++ b/vcl/unx/kde4/KDEXLib.cxx
|
||||
@@ -225,9 +225,6 @@ void KDEXLib::setupEventLoop()
|
||||
eventLoopType = GlibEventLoop;
|
||||
old_gpoll = g_main_context_get_poll_func( NULL );
|
||||
g_main_context_set_poll_func( NULL, gpoll_wrapper );
|
||||
- // set QClipboard to use event loop, otherwise the main thread will hold
|
||||
- // SolarMutex locked, which will prevent the clipboard thread from answering
|
||||
- m_pApplication->clipboard()->setProperty( "useEventLoopWhenWaiting", true );
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
@@ -244,9 +241,6 @@ void KDEXLib::setupEventLoop()
|
||||
eventLoopType = QtUnixEventLoop;
|
||||
QInternal::callFunction( QInternal::GetUnixSelectFunction, reinterpret_cast< void** >( &qt_select ));
|
||||
QInternal::callFunction( QInternal::SetUnixSelectFunction, reinterpret_cast< void** >( lo_select ));
|
||||
- // set QClipboard to use event loop, otherwise the main thread will hold
|
||||
- // SolarMutex locked, which will prevent the clipboard thread from answering
|
||||
- m_pApplication->clipboard()->setProperty( "useEventLoopWhenWaiting", true );
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
@@ -300,6 +294,9 @@ void KDEXLib::socketNotifierActivated( int fd )
|
||||
|
||||
void KDEXLib::Yield( bool bWait, bool bHandleAllCurrentEvents )
|
||||
{
|
||||
+ // Nested yield loop counter.
|
||||
+ static int loop_depth = 0;
|
||||
+
|
||||
if( eventLoopType == LibreOfficeEventLoop )
|
||||
{
|
||||
if( qApp->thread() == QThread::currentThread())
|
||||
@@ -310,13 +307,24 @@ void KDEXLib::Yield( bool bWait, bool bHandleAllCurrentEvents )
|
||||
}
|
||||
return SalXLib::Yield( bWait, bHandleAllCurrentEvents );
|
||||
}
|
||||
+
|
||||
// if we are the main thread (which is where the event processing is done),
|
||||
// good, just do it
|
||||
- if( qApp->thread() == QThread::currentThread())
|
||||
+ if( qApp->thread() == QThread::currentThread()) {
|
||||
+ // Release the yield lock before entering a nested loop.
|
||||
+ if (loop_depth > 0)
|
||||
+ SalYieldMutexReleaser aReleaser;
|
||||
+ loop_depth++;
|
||||
processYield( bWait, bHandleAllCurrentEvents );
|
||||
- else
|
||||
- { // if this deadlocks, event processing needs to go into a separate thread
|
||||
- // or some other solution needs to be found
|
||||
+ loop_depth--;
|
||||
+ }
|
||||
+ else {
|
||||
+ // we were called from another thread;
|
||||
+ // release the yield lock to prevent deadlock.
|
||||
+ SalYieldMutexReleaser aReleaser;
|
||||
+
|
||||
+ // if this deadlocks, event processing needs to go into a separate
|
||||
+ // thread or some other solution needs to be found
|
||||
emit processYieldSignal( bWait, bHandleAllCurrentEvents );
|
||||
}
|
||||
}
|
||||
--
|
||||
cgit v0.9.0.2-2-gbebe
|
@ -1,60 +0,0 @@
|
||||
--- libreoffice-4.1.4.2.orig/configure.ac 2013-12-10 17:11:21.000000000 +0100
|
||||
+++ libreoffice-4.1.4.2/configure.ac 2014-01-25 12:15:02.000000000 +0100
|
||||
@@ -7965,39 +7965,32 @@
|
||||
AC_MSG_RESULT([external])
|
||||
SYSTEM_CURL=YES
|
||||
|
||||
- curl_version=""
|
||||
- if test "$cross_compiling" = "yes"; then
|
||||
- dnl At least the OBS mingw32-libcurl-devel package
|
||||
- dnl comes with a proper .pc file
|
||||
- PKG_CHECK_MODULES(CURL, libcurl,, [:])
|
||||
- if test -n "$CURL_PKG_ERRORS"; then
|
||||
- AC_MSG_RESULT([no])
|
||||
- else
|
||||
- curl_version=`$PKG_CONFIG --modversion libcurl`
|
||||
- fi
|
||||
- fi
|
||||
- if test -z "$curl_version"; then
|
||||
+ AC_MSG_CHECKING([whether libcurl is >= 7.13.1])
|
||||
+
|
||||
+ # First try PKGCONFIG and then fall back
|
||||
+ PKG_CHECK_MODULES(CURL, libcurl >= 7.13.1,, [:])
|
||||
+
|
||||
+ if test -n "$CURL_PKG_ERRORS"; then
|
||||
AC_PATH_PROG(CURLCONFIG, curl-config)
|
||||
if test -z "$CURLCONFIG"; then
|
||||
- AC_MSG_ERROR([install the libcurl development package])
|
||||
+ AC_MSG_ERROR([curl developement files not found])
|
||||
fi
|
||||
CURL_LIBS=`$CURLCONFIG --libs`
|
||||
CURL_CFLAGS=`$CURLCONFIG --cflags`
|
||||
curl_version=`$CURLCONFIG --version | $SED -e 's/^libcurl //'`
|
||||
- fi
|
||||
|
||||
- AC_MSG_CHECKING([whether libcurl is >= 7.13.1])
|
||||
+ case $curl_version in
|
||||
+ dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
+ dnl so they need to be doubled to end up in the configure script
|
||||
+ 7.13.1|7.1[[4-9]].*|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
+ ;;
|
||||
+ *)
|
||||
+ AC_MSG_ERROR([no, you have $curl_version])
|
||||
+ ;;
|
||||
+ esac
|
||||
+ fi
|
||||
|
||||
- case $curl_version in
|
||||
- dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
- dnl so they need to be doubled to end up in the configure script
|
||||
- 7.13.1|7.1[[4-9]].*|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
- AC_MSG_RESULT([yes, you have $curl_version])
|
||||
- ;;
|
||||
- *)
|
||||
- AC_MSG_ERROR([no, you have $curl_version])
|
||||
- ;;
|
||||
- esac
|
||||
+ AC_MSG_RESULT([yes])
|
||||
|
||||
libo_MINGW_CHECK_DLL([libcurl])
|
||||
libo_MINGW_TRY_DLL([libintl])
|
@ -1,60 +0,0 @@
|
||||
--- a/configure.ac 2014-01-27 22:35:34.000000000 +0100
|
||||
+++ b/configure.ac 2014-02-02 23:27:50.911033565 +0100
|
||||
@@ -8606,39 +8606,31 @@
|
||||
AC_MSG_RESULT([external])
|
||||
SYSTEM_CURL=YES
|
||||
|
||||
- curl_version=""
|
||||
- if test "$cross_compiling" = "yes"; then
|
||||
- dnl At least the OBS mingw32-libcurl-devel package
|
||||
- dnl comes with a proper .pc file
|
||||
- PKG_CHECK_MODULES(CURL, libcurl,, [:])
|
||||
- if test -n "$CURL_PKG_ERRORS"; then
|
||||
- AC_MSG_RESULT([no])
|
||||
- else
|
||||
- curl_version=`$PKG_CONFIG --modversion libcurl`
|
||||
- fi
|
||||
- fi
|
||||
- if test -z "$curl_version"; then
|
||||
+ AC_MSG_CHECKING([whether libcurl is >= 7.13.1])
|
||||
+
|
||||
+ # First try PKGCONFIG and then fall back
|
||||
+ PKG_CHECK_MODULES(CURL, libcurl >= 7.13.1,, [:])
|
||||
+
|
||||
+ if test -n "$CURL_PKG_ERRORS"; then
|
||||
AC_PATH_PROG(CURLCONFIG, curl-config)
|
||||
if test -z "$CURLCONFIG"; then
|
||||
- AC_MSG_ERROR([install the libcurl development package])
|
||||
+ AC_MSG_ERROR([curl development files not found])
|
||||
fi
|
||||
CURL_LIBS=`$CURLCONFIG --libs`
|
||||
CURL_CFLAGS=$("$CURLCONFIG" --cflags | sed -e "s/-I/${ISYSTEM?}/g")
|
||||
curl_version=`$CURLCONFIG --version | $SED -e 's/^libcurl //'`
|
||||
- fi
|
||||
-
|
||||
- AC_MSG_CHECKING([whether libcurl is >= 7.13.1])
|
||||
|
||||
- case $curl_version in
|
||||
- dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
- dnl so they need to be doubled to end up in the configure script
|
||||
- 7.13.1|7.1[[4-9]].*|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
- AC_MSG_RESULT([yes, you have $curl_version])
|
||||
- ;;
|
||||
- *)
|
||||
- AC_MSG_ERROR([no, you have $curl_version])
|
||||
- ;;
|
||||
- esac
|
||||
+ case $curl_version in
|
||||
+ dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
+ dnl so they need to be doubled to end up in the configure script
|
||||
+ 7.13.1|7.1[[4-9]].*|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
+ ;;
|
||||
+ *)
|
||||
+ AC_MSG_ERROR([no, you have $curl_version])
|
||||
+ ;;
|
||||
+ esac
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([yes])
|
||||
|
||||
libo_MINGW_CHECK_DLL([libcurl])
|
||||
libo_MINGW_TRY_DLL([libintl])
|
@ -1,71 +0,0 @@
|
||||
From 71f2aff7a56cef4e133abad3c2e447c76c5ee1fe Mon Sep 17 00:00:00 2001
|
||||
From: Luboš Luňák <l.lunak@collabora.com>
|
||||
Date: Tue, 25 Mar 2014 11:20:16 +0000
|
||||
Subject: prevent KDE/Qt from interfering with the session manager
|
||||
|
||||
I occassionally get lockups in IceProcessMessages() called from QtCore,
|
||||
I'm actually not exactly sure why, as theoretically two connections
|
||||
from one app shouldn't be a problem, but since LO does its own
|
||||
session handling, there's no need to the KDE/Qt code to be involved,
|
||||
so prevent it from connecting to the session manager altogether.
|
||||
|
||||
Change-Id: Iebe20d4cb5403e5fea8bd5d8c1f69b62d1c2907b
|
||||
---
|
||||
diff --git a/vcl/unx/kde4/KDEXLib.cxx b/vcl/unx/kde4/KDEXLib.cxx
|
||||
index 820d39a..e4900a7 100644
|
||||
--- a/vcl/unx/kde4/KDEXLib.cxx
|
||||
+++ b/vcl/unx/kde4/KDEXLib.cxx
|
||||
@@ -166,8 +166,23 @@ void KDEXLib::Init()
|
||||
|
||||
KCmdLineArgs::init( m_nFakeCmdLineArgs, m_pAppCmdLineArgs, kAboutData );
|
||||
|
||||
+ // LO does its own session management, so prevent KDE/Qt from interfering
|
||||
+ // (QApplication::disableSessionManagement(false) wouldn't quite do,
|
||||
+ // since that still actually connects to the session manager, it just
|
||||
+ // won't save the application data on session shutdown).
|
||||
+ char* session_manager = NULL;
|
||||
+ if( getenv( "SESSION_MANAGER" ) != NULL )
|
||||
+ {
|
||||
+ session_manager = strdup( getenv( "SESSION_MANAGER" ));
|
||||
+ unsetenv( "SESSION_MANAGER" );
|
||||
+ }
|
||||
m_pApplication = new VCLKDEApplication();
|
||||
- kapp->disableSessionManagement();
|
||||
+ if( session_manager != NULL )
|
||||
+ {
|
||||
+ setenv( "SESSION_MANAGER", session_manager, 1 );
|
||||
+ free( session_manager );
|
||||
+ }
|
||||
+
|
||||
KApplication::setQuitOnLastWindowClosed(false);
|
||||
|
||||
#if KDE_HAVE_GLIB
|
||||
diff --git a/vcl/unx/kde4/VCLKDEApplication.hxx b/vcl/unx/kde4/VCLKDEApplication.hxx
|
||||
index 412ee34..4ce0b2c 100644
|
||||
--- a/vcl/unx/kde4/VCLKDEApplication.hxx
|
||||
+++ b/vcl/unx/kde4/VCLKDEApplication.hxx
|
||||
@@ -21,22 +21,14 @@
|
||||
|
||||
#define Region QtXRegion
|
||||
|
||||
-#include <QSessionManager>
|
||||
-
|
||||
#include <kapplication.h>
|
||||
|
||||
#undef Region
|
||||
|
||||
-/* #i59042# override KApplications method for session management
|
||||
- * since it will interfere badly with our own.
|
||||
- */
|
||||
class VCLKDEApplication : public KApplication
|
||||
{
|
||||
public:
|
||||
VCLKDEApplication();
|
||||
-
|
||||
- virtual void commitData(QSessionManager&) {};
|
||||
-
|
||||
virtual bool x11EventFilter(XEvent* event);
|
||||
};
|
||||
|
||||
--
|
||||
cgit v0.9.0.2-2-gbebe
|
@ -1,19 +0,0 @@
|
||||
--- a/vcl/unx/kde4/KDEXLib.cxx 2014-04-08 13:46:25.000000000 +0200
|
||||
+++ b/vcl/unx/kde4/KDEXLib.cxx 2014-04-14 07:17:30.000000000 +0200
|
||||
@@ -67,13 +67,9 @@
|
||||
eventLoopType( LibreOfficeEventLoop ),
|
||||
m_bYieldFrozen( false )
|
||||
{
|
||||
- // the timers created here means they belong to the main thread.
|
||||
- // As the timeoutTimer runs the LO event queue, which may block on a dialog,
|
||||
- // the timer has to use a Qt::QueuedConnection, otherwise the nested event
|
||||
- // loop will detect the blocking timer and drop it from the polling
|
||||
- // freezing LO X11 processing.
|
||||
- connect( &timeoutTimer, SIGNAL( timeout()), this, SLOT( timeoutActivated()), Qt::QueuedConnection );
|
||||
- connect( &userEventTimer, SIGNAL( timeout()), this, SLOT( userEventActivated()), Qt::QueuedConnection );
|
||||
+ // the timers created here means they belong to the main thread
|
||||
+ connect( &timeoutTimer, SIGNAL( timeout()), this, SLOT( timeoutActivated()));
|
||||
+ connect( &userEventTimer, SIGNAL( timeout()), this, SLOT( userEventActivated()));
|
||||
|
||||
// QTimer::start() can be called only in its (here main) thread, so this will
|
||||
// forward between threads if needed
|
@ -1,52 +0,0 @@
|
||||
From a96a0ae362070d8e99587c6d658c1e11895c717c Mon Sep 17 00:00:00 2001
|
||||
From: "Andreas K. Huettel (dilfridge)" <dilfridge@gentoo.org>
|
||||
Date: Thu, 18 Sep 2014 22:43:35 +0200
|
||||
Subject: [PATCH] type conversion fixes for jpeg-9 compatibility
|
||||
|
||||
backport of 867aa217e6bcb543ea61c61f10088042d632bd07 from libreoffice-4-3 branch
|
||||
---
|
||||
vcl/source/filter/jpeg/JpegReader.cxx | 6 +++---
|
||||
vcl/source/filter/jpeg/JpegWriter.cxx | 2 +-
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/vcl/source/filter/jpeg/JpegReader.cxx b/vcl/source/filter/jpeg/JpegReader.cxx
|
||||
index 89f9028..9014d00 100644
|
||||
--- a/vcl/source/filter/jpeg/JpegReader.cxx
|
||||
+++ b/vcl/source/filter/jpeg/JpegReader.cxx
|
||||
@@ -71,7 +71,7 @@ extern "C" void init_source (j_decompress_ptr cinfo)
|
||||
* but we don't clear the input buffer.
|
||||
* This is correct behavior for reading a series of images from one source.
|
||||
*/
|
||||
- source->start_of_file = sal_True;
|
||||
+ source->start_of_file = TRUE;
|
||||
}
|
||||
|
||||
long StreamRead( SvStream* pStream, void* pBuffer, long nBufferSize )
|
||||
@@ -119,9 +119,9 @@ extern "C" boolean fill_input_buffer (j_decompress_ptr cinfo)
|
||||
|
||||
source->pub.next_input_byte = source->buffer;
|
||||
source->pub.bytes_in_buffer = nbytes;
|
||||
- source->start_of_file = sal_False;
|
||||
+ source->start_of_file = FALSE;
|
||||
|
||||
- return sal_True;
|
||||
+ return TRUE;
|
||||
}
|
||||
|
||||
extern "C" void skip_input_data (j_decompress_ptr cinfo, long numberOfBytes)
|
||||
diff --git a/vcl/source/filter/jpeg/JpegWriter.cxx b/vcl/source/filter/jpeg/JpegWriter.cxx
|
||||
index 102eb4d..ba2f788 100644
|
||||
--- a/vcl/source/filter/jpeg/JpegWriter.cxx
|
||||
+++ b/vcl/source/filter/jpeg/JpegWriter.cxx
|
||||
@@ -86,7 +86,7 @@ extern "C" boolean empty_output_buffer (j_compress_ptr cinfo)
|
||||
destination->pub.next_output_byte = destination->buffer;
|
||||
destination->pub.free_in_buffer = BUFFER_SIZE;
|
||||
|
||||
- return sal_True;
|
||||
+ return TRUE;
|
||||
}
|
||||
|
||||
extern "C" void term_destination (j_compress_ptr cinfo)
|
||||
--
|
||||
2.1.0
|
||||
|
@ -1,187 +0,0 @@
|
||||
Backport of 45dfbdca6a9afba1a6aef21623ec025ded635a4d from LO master
|
||||
by Mark Wright, gienah@gentoo.org
|
||||
|
||||
|
||||
--- libreoffice-4.2.6.3-orig/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-09-14 22:25:51.323259895 +1000
|
||||
@@ -402,11 +402,12 @@
|
||||
::basegfx::computeSetDifference( aUncoveredAreas,
|
||||
rUpdateArea.maTotalBounds,
|
||||
::basegfx::B2DRange( rDestRect ) );
|
||||
+ SurfaceSharedPtr surface(mpOwningSpriteCanvas->getBufferSurface());
|
||||
::std::for_each( aUncoveredAreas.begin(),
|
||||
aUncoveredAreas.end(),
|
||||
::boost::bind( &repaintBackground,
|
||||
boost::cref(pCompositingCairo),
|
||||
- boost::cref(mpOwningSpriteCanvas->getBufferSurface()),
|
||||
+ boost::cref(surface),
|
||||
_1 ) );
|
||||
|
||||
cairo_rectangle( pWindowCairo.get(), 0, 0, rSize.getX(), rSize.getY() );
|
||||
--- libreoffice-4.2.6.3-orig/canvas/source/vcl/spritecanvashelper.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/canvas/source/vcl/spritecanvashelper.cxx 2014-09-14 22:25:51.323721613 +1000
|
||||
@@ -573,12 +573,12 @@
|
||||
|
||||
// repaint all affected sprites on top of background into
|
||||
// VDev.
|
||||
+ ::basegfx::B2DPoint outPos( ::vcl::unotools::b2DPointFromPoint(aOutputPosition) );
|
||||
::std::for_each( rSortedUpdateSprites.begin(),
|
||||
rSortedUpdateSprites.end(),
|
||||
::boost::bind( &spriteRedrawStub2,
|
||||
::boost::ref( maVDev.get() ),
|
||||
- ::boost::cref(
|
||||
- ::vcl::unotools::b2DPointFromPoint(aOutputPosition)),
|
||||
+ ::boost::cref( outPos ),
|
||||
_1 ) );
|
||||
|
||||
// flush to screen
|
||||
--- libreoffice-4.2.6.3-orig/dbaccess/source/ui/tabledesign/TableController.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/dbaccess/source/ui/tabledesign/TableController.cxx 2014-09-14 22:28:42.327186979 +1000
|
||||
@@ -1393,7 +1393,8 @@
|
||||
setEditable( xMeta.is() && !xMeta->isReadOnly() && (isAlterAllowed() || isDropAllowed() || isAddAllowed()) );
|
||||
if(!isEditable())
|
||||
{
|
||||
- ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( sal_True )));
|
||||
+ sal_Bool t( sal_True );
|
||||
+ ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( t )));
|
||||
}
|
||||
m_bNew = sal_False;
|
||||
// be notified when the table is in disposing
|
||||
--- libreoffice-4.2.6.3-orig/oox/source/drawingml/table/tablecell.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/oox/source/drawingml/table/tablecell.cxx 2014-09-14 22:25:51.325066244 +1000
|
||||
@@ -117,9 +117,9 @@
|
||||
if (rTableStylePart.getTextColor().isUsed())
|
||||
aTextCharProps.maCharColor = rTableStylePart.getTextColor();
|
||||
if( rTableStylePart.getTextBoldStyle().is_initialized() )
|
||||
- aTextCharProps.moBold = rTableStylePart.getTextBoldStyle();
|
||||
+ aTextCharProps.moBold = *rTableStylePart.getTextBoldStyle();
|
||||
if( rTableStylePart.getTextItalicStyle().is_initialized() )
|
||||
- aTextCharProps.moItalic = rTableStylePart.getTextItalicStyle();
|
||||
+ aTextCharProps.moItalic = *rTableStylePart.getTextItalicStyle();
|
||||
}
|
||||
|
||||
void applyTableCellProperties( const Reference < ::com::sun::star::table::XCell >& rxCell, const TableCell& rTableCell )
|
||||
--- libreoffice-4.2.6.3-orig/reportdesign/source/core/api/ReportDefinition.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/reportdesign/source/core/api/ReportDefinition.cxx 2014-09-14 22:25:51.326473733 +1000
|
||||
@@ -1623,8 +1623,9 @@
|
||||
m_pImpl->m_pObjectContainer->SwitchPersistence(m_pImpl->m_xStorage);
|
||||
}
|
||||
// notify our container listeners
|
||||
+ OWeakObject *weakObjectThis = static_cast<OWeakObject*>(this);
|
||||
m_pImpl->m_aStorageChangeListeners.forEach<document::XStorageChangeListener>(
|
||||
- ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(static_cast<OWeakObject*>(this)),boost::cref(_xStorage)));
|
||||
+ ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(weakObjectThis),boost::cref(_xStorage)));
|
||||
}
|
||||
// -----------------------------------------------------------------------------
|
||||
uno::Reference< embed::XStorage > SAL_CALL OReportDefinition::getDocumentStorage( ) throw (io::IOException, uno::Exception, uno::RuntimeException)
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/activities/activitybase.hxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/activities/activitybase.hxx 2014-09-14 22:25:51.326839852 +1000
|
||||
@@ -111,7 +111,7 @@
|
||||
ShapeAttributeLayerSharedPtr getShapeAttributeLayer() const
|
||||
{ return mpAttributeLayer; }
|
||||
|
||||
- bool isRepeatCountValid() const { return maRepeats; }
|
||||
+ bool isRepeatCountValid() const { return bool(maRepeats); }
|
||||
double getRepeatCount() const { return *maRepeats; }
|
||||
bool isAutoReverse() const { return mbAutoReverse; }
|
||||
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-09-14 22:25:51.327321898 +1000
|
||||
@@ -398,11 +398,12 @@
|
||||
{
|
||||
// new sprite pos, transformation might have changed:
|
||||
maSpriteRectangle = calcSpriteRectangle( maViews.front().first );
|
||||
+ ::basegfx::B2DPoint rectMin( maSpriteRectangle.getMinimum() );
|
||||
|
||||
// reposition sprites
|
||||
for_each_sprite( boost::bind( &cppcanvas::Sprite::move,
|
||||
_1,
|
||||
- boost::cref(maSpriteRectangle.getMinimum())) );
|
||||
+ boost::cref( rectMin )) );
|
||||
|
||||
// sprites changed, need screen update
|
||||
mrScreenUpdater.notifyUpdate();
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/shapes/appletshape.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/shapes/appletshape.cxx 2014-09-14 22:25:51.327829537 +1000
|
||||
@@ -148,12 +148,13 @@
|
||||
void AppletShape::implViewsChanged()
|
||||
{
|
||||
// resize all ViewShapes
|
||||
+ ::basegfx::B2DRectangle bounds( AppletShape::getBounds() );
|
||||
::std::for_each( maViewAppletShapes.begin(),
|
||||
maViewAppletShapes.end(),
|
||||
::boost::bind(
|
||||
&ViewAppletShape::resize,
|
||||
_1,
|
||||
- ::boost::cref( AppletShape::getBounds())) );
|
||||
+ ::boost::cref( bounds )) );
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
@@ -252,11 +253,12 @@
|
||||
|
||||
bool AppletShape::implStartIntrinsicAnimation()
|
||||
{
|
||||
+ ::basegfx::B2DRectangle bounds( getBounds() );
|
||||
::std::for_each( maViewAppletShapes.begin(),
|
||||
maViewAppletShapes.end(),
|
||||
::boost::bind( &ViewAppletShape::startApplet,
|
||||
_1,
|
||||
- ::boost::cref( getBounds() )));
|
||||
+ ::boost::cref( bounds )));
|
||||
mbIsPlaying = true;
|
||||
|
||||
return true;
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/shapes/drawshape.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/shapes/drawshape.cxx 2014-09-14 22:25:51.328463497 +1000
|
||||
@@ -168,6 +168,7 @@
|
||||
}
|
||||
|
||||
// redraw all view shapes, by calling their update() method
|
||||
+ ViewShape::RenderArgs renderArgs( getViewRenderArgs() );
|
||||
if( ::std::count_if( maViewShapes.begin(),
|
||||
maViewShapes.end(),
|
||||
::boost::bind<bool>(
|
||||
@@ -178,8 +179,7 @@
|
||||
// the extra mem_fn. WTF.
|
||||
_1,
|
||||
::boost::cref( mpCurrMtf ),
|
||||
- ::boost::cref(
|
||||
- getViewRenderArgs() ),
|
||||
+ ::boost::cref( renderArgs ),
|
||||
nUpdateFlags,
|
||||
isVisible() ) )
|
||||
!= static_cast<ViewShapeVector::difference_type>(maViewShapes.size()) )
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/shapes/mediashape.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/shapes/mediashape.cxx 2014-09-14 22:25:51.328874055 +1000
|
||||
@@ -125,12 +125,13 @@
|
||||
void MediaShape::implViewsChanged()
|
||||
{
|
||||
// resize all ViewShapes
|
||||
+ ::basegfx::B2DRectangle bounds( getBounds() );
|
||||
::std::for_each( maViewMediaShapes.begin(),
|
||||
maViewMediaShapes.end(),
|
||||
::boost::bind(
|
||||
&ViewMediaShape::resize,
|
||||
_1,
|
||||
- ::boost::cref( getBounds())) );
|
||||
+ ::boost::cref( bounds )) );
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
--- libreoffice-4.2.6.3-orig/slideshow/source/engine/unoviewcontainer.cxx 2014-08-23 00:22:41.000000000 +1000
|
||||
+++ libreoffice-4.2.6.3/slideshow/source/engine/unoviewcontainer.cxx 2014-09-14 22:25:51.329303003 +1000
|
||||
@@ -45,11 +45,12 @@
|
||||
const UnoViewVector::iterator aEnd( maViews.end() );
|
||||
|
||||
// already added?
|
||||
+ uno::Reference<presentation::XSlideShowView> xView (rView->getUnoView());
|
||||
if( ::std::find_if( maViews.begin(),
|
||||
aEnd,
|
||||
::boost::bind(
|
||||
::std::equal_to< uno::Reference< presentation::XSlideShowView > >(),
|
||||
- ::boost::cref( rView->getUnoView() ),
|
||||
+ ::boost::cref( xView ),
|
||||
::boost::bind(
|
||||
&UnoView::getUnoView,
|
||||
_1 ) ) ) != aEnd )
|
@ -1,228 +0,0 @@
|
||||
From 6d239ee19a4b1d9068fbd04b5a692c859142f613 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolnai=20Tam=C3=A1s?= <tamas.zolnai@collabora.com>
|
||||
Date: Fri, 29 Aug 2014 14:14:31 +0200
|
||||
Subject: [PATCH] Handle collada libraries seperately: --disable-collada
|
||||
|
||||
Depends on gltf support.
|
||||
|
||||
(cherry picked from commit 191f0944fd8fc30493eda58c7adfdfa0b538f507)
|
||||
|
||||
Conflicts:
|
||||
config_host.mk.in
|
||||
sd/source/ui/func/fuinsert.cxx
|
||||
|
||||
Change-Id: Ief0452da3d03b0ddbca45272e5f5cd268691aeca
|
||||
Reviewed-on: https://gerrit.libreoffice.org/11193
|
||||
Tested-by: Rene Engelhard <rene@debian.org>
|
||||
Reviewed-by: Rene Engelhard <rene@debian.org>
|
||||
---
|
||||
RepositoryExternal.mk | 6 +++++-
|
||||
avmedia/Library_avmedia.mk | 5 +----
|
||||
avmedia/source/framework/modeltools.cxx | 9 ++++++---
|
||||
config_host.mk.in | 1 +
|
||||
config_host/config_features.h.in | 5 +++++
|
||||
configure.ac | 23 +++++++++++++++++++----
|
||||
include/avmedia/modeltools.hxx | 4 ++++
|
||||
sd/source/ui/func/fuinsert.cxx | 9 +++++++++
|
||||
8 files changed, 50 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
|
||||
index b42dce2..cd99108 100644
|
||||
--- a/RepositoryExternal.mk
|
||||
+++ b/RepositoryExternal.mk
|
||||
@@ -3324,6 +3324,8 @@ endef
|
||||
|
||||
endif # SYSTEN_LIBGLTF
|
||||
|
||||
+ifeq ($(ENABLE_COLLADA),TRUE)
|
||||
+
|
||||
define gb_LinkTarget__use_opencollada_parser
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
|
||||
@@ -3354,7 +3356,9 @@ $(call gb_LinkTarget_use_static_libraries,$(1),\
|
||||
)
|
||||
endef
|
||||
|
||||
-endif
|
||||
+endif # ENABLE_COLLADA
|
||||
+
|
||||
+endif # ENABLE_GLTF
|
||||
|
||||
### Jars ############################################################
|
||||
|
||||
diff --git a/avmedia/Library_avmedia.mk b/avmedia/Library_avmedia.mk
|
||||
index 184c66c..7cc08fa 100644
|
||||
--- a/avmedia/Library_avmedia.mk
|
||||
+++ b/avmedia/Library_avmedia.mk
|
||||
@@ -52,7 +52,7 @@ $(eval $(call gb_Library_add_exception_objects,avmedia,\
|
||||
))
|
||||
endif
|
||||
|
||||
-ifneq (,$(filter COLLADA2GLTF,$(BUILD_TYPE)))
|
||||
+ifeq ($(ENABLE_COLLADA),TRUE)
|
||||
$(eval $(call gb_Library_set_warnings_not_errors,avmedia))
|
||||
|
||||
ifeq ($(OS),LINUX)
|
||||
@@ -68,9 +68,6 @@ $(eval $(call gb_Library_use_externals,avmedia,\
|
||||
png \
|
||||
))
|
||||
|
||||
-$(eval $(call gb_Library_add_defs,avmedia,\
|
||||
- -DENABLE_COLLADA2GLTF \
|
||||
-))
|
||||
endif
|
||||
|
||||
$(eval $(call gb_Library_add_exception_objects,avmedia,\
|
||||
diff --git a/avmedia/source/framework/modeltools.cxx b/avmedia/source/framework/modeltools.cxx
|
||||
index 6119cb7..8c4251e 100644
|
||||
--- a/avmedia/source/framework/modeltools.cxx
|
||||
+++ b/avmedia/source/framework/modeltools.cxx
|
||||
@@ -29,7 +29,9 @@
|
||||
#include <boost/foreach.hpp>
|
||||
#include <boost/optional.hpp>
|
||||
|
||||
-#ifdef ENABLE_COLLADA2GLTF
|
||||
+#include <config_features.h>
|
||||
+
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
#include <COLLADA2GLTFWriter.h>
|
||||
#include <GLTFAsset.h>
|
||||
#endif
|
||||
@@ -42,7 +44,7 @@ using namespace boost::property_tree;
|
||||
|
||||
namespace avmedia {
|
||||
|
||||
-#ifdef ENABLE_COLLADA2GLTF
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
|
||||
static void lcl_UnzipKmz(const OUString& rSourceURL, const OUString& rOutputFolderURL, OUString& o_rDaeFileURL)
|
||||
{
|
||||
@@ -242,7 +244,8 @@ bool Embed3DModel( const uno::Reference<frame::XModel>& xModel,
|
||||
const OUString& rSourceURL, OUString& o_rEmbeddedURL)
|
||||
{
|
||||
OUString sSource = rSourceURL;
|
||||
-#ifdef ENABLE_COLLADA2GLTF
|
||||
+
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
if( !rSourceURL.endsWithIgnoreAsciiCase(".json") )
|
||||
KmzDae2Gltf(rSourceURL, sSource);
|
||||
#endif
|
||||
diff --git a/config_host.mk.in b/config_host.mk.in
|
||||
index aec0fa5..36a6866 100644
|
||||
--- a/config_host.mk.in
|
||||
+++ b/config_host.mk.in
|
||||
@@ -109,6 +109,7 @@ export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
|
||||
export ENABLE_CHART_TESTS=@ENABLE_CHART_TESTS@
|
||||
export ENABLE_CMIS=@ENABLE_CMIS@
|
||||
export ENABLE_COINMP=@ENABLE_COINMP@
|
||||
+export ENABLE_COLLADA=@ENABLE_COLLADA@
|
||||
export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
|
||||
export ENABLE_CUPS=@ENABLE_CUPS@
|
||||
export ENABLE_CURL=@ENABLE_CURL@
|
||||
diff --git a/config_host/config_features.h.in b/config_host/config_features.h.in
|
||||
index 3fd1da5..f87ee27 100644
|
||||
--- a/config_host/config_features.h.in
|
||||
+++ b/config_host/config_features.h.in
|
||||
@@ -142,4 +142,9 @@
|
||||
*/
|
||||
#define HAVE_FEATURE_GLTF 0
|
||||
|
||||
+/*
|
||||
+ * Whether we have COLLADA support.
|
||||
+ */
|
||||
+#define HAVE_FEATURE_COLLADA 0
|
||||
+
|
||||
#endif
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 63e067b..b6e8124 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1395,6 +1395,10 @@ AC_ARG_ENABLE(gltf,
|
||||
AS_HELP_STRING([--disable-gltf],
|
||||
[Determines whether to build libraries related to glTF 3D model rendering.]))
|
||||
|
||||
+AC_ARG_ENABLE(collada,
|
||||
+ AS_HELP_STRING([--disable-collada],
|
||||
+ [Disable collada support (Rendering 3D models stored in *.dae and *.kmz format).]))
|
||||
+
|
||||
dnl ===================================================================
|
||||
dnl Optional Packages (--with/without-)
|
||||
dnl ===================================================================
|
||||
@@ -10572,10 +10576,6 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
|
||||
else
|
||||
BUILD_TYPE="$BUILD_TYPE LIBGLTF"
|
||||
fi
|
||||
- # otherwise build fails in collada2gltf external because of std::shared_ptr
|
||||
- if test "$have_std_shared_ptr" = "yes"; then
|
||||
- BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
|
||||
- fi
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
@@ -10584,6 +10584,21 @@ AC_SUBST(SYSTEM_LIBGLTF)
|
||||
AC_SUBST(LIBGLTF_CFLAGS)
|
||||
AC_SUBST(LIBGLTF_LIBS)
|
||||
|
||||
+dnl ===================================================================
|
||||
+dnl Check whether to enable COLLADA support
|
||||
+dnl ===================================================================
|
||||
+AC_MSG_CHECKING([whether to enable COLLADA support])
|
||||
+ENABLE_COLLADA=
|
||||
+if test "$enable_collada" != "no" -a "$ENABLE_GLTF" = "TRUE" -a "$have_std_shared_ptr" = "yes"; then
|
||||
+ AC_MSG_RESULT([yes])
|
||||
+ ENABLE_COLLADA=TRUE
|
||||
+ AC_DEFINE(HAVE_FEATURE_COLLADA,1)
|
||||
+ BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
|
||||
+else
|
||||
+ AC_MSG_RESULT([no])
|
||||
+fi
|
||||
+AC_SUBST(ENABLE_COLLADA)
|
||||
+
|
||||
# pdf import?
|
||||
AC_MSG_CHECKING([whether to build the PDF import feature])
|
||||
ENABLE_PDFIMPORT=
|
||||
diff --git a/include/avmedia/modeltools.hxx b/include/avmedia/modeltools.hxx
|
||||
index ed2de44..526b240 100644
|
||||
--- a/include/avmedia/modeltools.hxx
|
||||
+++ b/include/avmedia/modeltools.hxx
|
||||
@@ -11,9 +11,13 @@
|
||||
#include <com/sun/star/frame/XModel.hpp>
|
||||
#include <avmedia/avmediadllapi.h>
|
||||
|
||||
+#include <config_features.h>
|
||||
+
|
||||
namespace avmedia {
|
||||
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
bool KmzDae2Gltf(const OUString& rSourceURL, OUString& o_rOutput);
|
||||
+#endif
|
||||
|
||||
bool AVMEDIA_DLLPUBLIC Embed3DModel(
|
||||
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel>& xModel,
|
||||
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
|
||||
index cd03700..9c1c4ad 100644
|
||||
--- a/sd/source/ui/func/fuinsert.cxx
|
||||
+++ b/sd/source/ui/func/fuinsert.cxx
|
||||
@@ -789,10 +789,19 @@ void FuInsert3DModel::DoExecute( SfxRequest& )
|
||||
sfx2::FileDialogHelper aDlg( ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
|
||||
aDlg.SetTitle( "Insert 3D Model" );
|
||||
+
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
aDlg.AddFilter( "All supported formats", "*.json;*.dae;*.kmz" );
|
||||
+#else
|
||||
+ aDlg.AddFilter( "All supported formats", "*.json" );
|
||||
+#endif
|
||||
+
|
||||
aDlg.AddFilter( "JSON - GL Transmission Format", "*.json" );
|
||||
+
|
||||
+#if HAVE_FEATURE_COLLADA
|
||||
aDlg.AddFilter( "DAE - COLLADA", "*.dae" );
|
||||
aDlg.AddFilter( "KMZ - Keyhole Markup language Zipped", "*.kmz" );
|
||||
+#endif
|
||||
|
||||
OUString sURL;
|
||||
if( aDlg.Execute() == ERRCODE_NONE )
|
||||
--
|
||||
2.1.0
|
||||
|
@ -1,98 +0,0 @@
|
||||
From d85f513934bb5735a2c0c343fbe7dc2b9c11af3e Mon Sep 17 00:00:00 2001
|
||||
From: Rene Engelhard <rene@debian.org>
|
||||
Date: Wed, 6 Aug 2014 00:03:21 +0200
|
||||
Subject: [PATCH] implement --with-system-coinmp
|
||||
|
||||
Change-Id: I02928097f049e8f3cbefbc872b570b2d2b072658
|
||||
---
|
||||
RepositoryExternal.mk | 15 +++++++++++++++
|
||||
config_host.mk.in | 3 +++
|
||||
configure.ac | 16 ++++++++++++++--
|
||||
3 files changed, 32 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
|
||||
index a9c9e53..1961829 100644
|
||||
--- a/RepositoryExternal.mk
|
||||
+++ b/RepositoryExternal.mk
|
||||
@@ -2250,6 +2250,8 @@ endif # ENABLE_LPSOLVE
|
||||
|
||||
ifneq ($(ENABLE_COINMP),)
|
||||
|
||||
+ifneq ($(SYSTEM_COINMP),TRUE)
|
||||
+
|
||||
define gb_LinkTarget__use_coinmp
|
||||
$(call gb_LinkTarget_use_package,$(1),coinmp)
|
||||
ifeq ($(COM),MSC)
|
||||
@@ -2279,6 +2281,19 @@ $(eval $(call gb_Helper_register_packages_for_install,ooo,\
|
||||
coinmp \
|
||||
))
|
||||
|
||||
+else # SYSTEM_COINMP
|
||||
+
|
||||
+define gb_LinkTarget__use_coinmp
|
||||
+$(call gb_LinkTarget_set_include,$(1),\
|
||||
+ $$(INCLUDE) \
|
||||
+ $(COINMP_CFLAGS) \
|
||||
+)
|
||||
+$(call gb_LinkTarget_add_libs,$(1),$(COINMP_LIBS))
|
||||
+
|
||||
+endef
|
||||
+
|
||||
+endif
|
||||
+
|
||||
else
|
||||
|
||||
gb_LinkTarget__use_coinmp :=
|
||||
diff --git a/config_host.mk.in b/config_host.mk.in
|
||||
--- a/config_host.mk.in
|
||||
+++ b/config_host.mk.in
|
||||
@@ -109,6 +109,9 @@ export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
|
||||
export ENABLE_CHART_TESTS=@ENABLE_CHART_TESTS@
|
||||
export ENABLE_CMIS=@ENABLE_CMIS@
|
||||
export ENABLE_COINMP=@ENABLE_COINMP@
|
||||
+export SYSTEM_COINMP=@SYSTEM_COINMP@
|
||||
+export COINMP_CFLAGS=@COINMP_CFLAGS@
|
||||
+export COINMP_LIBS=@COINMP_LIBS@
|
||||
export ENABLE_COLLADA=@ENABLE_COLLADA@
|
||||
export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
|
||||
export ENABLE_CUPS=@ENABLE_CUPS@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index e91773f..3aadd12 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1867,6 +1867,11 @@ AC_ARG_WITH(system-lpsolve,
|
||||
[Use lpsolve already on system.]),,
|
||||
[with_system_lpsolve="$with_system_libs"])
|
||||
|
||||
+AC_ARG_WITH(system-coinmp,
|
||||
+ AS_HELP_STRING([--with-system-coinmp],
|
||||
+ [Use CoinMP already on system.]),,
|
||||
+ [with_system_coinmp="$with_system_libs"])
|
||||
+
|
||||
AC_ARG_WITH(system-liblangtag,
|
||||
AS_HELP_STRING([--with-system-liblangtag],
|
||||
[Use liblangtag library already on system.]),,
|
||||
@@ -9661,12 +9666,19 @@ AC_MSG_CHECKING([whether to build with CoinMP])
|
||||
if test "$enable_coinmp" != "no"; then
|
||||
ENABLE_COINMP=TRUE
|
||||
AC_MSG_RESULT([yes])
|
||||
- # Should we check for system CoinMP ? How to do that ?
|
||||
- BUILD_TYPE="$BUILD_TYPE COINMP"
|
||||
+ if test "$with_system_coinmp" = "yes"; then
|
||||
+ SYSTEM_COINMP=TRUE
|
||||
+ PKG_CHECK_MODULES( COINMP, coinmp )
|
||||
+ else
|
||||
+ BUILD_TYPE="$BUILD_TYPE COINMP"
|
||||
+ fi
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_SUBST(ENABLE_COINMP)
|
||||
+AC_SUBST(SYSTEM_COINMP)
|
||||
+AC_SUBST(COINMP_CFLAGS)
|
||||
+AC_SUBST(COINMP_LIBS)
|
||||
|
||||
ENABLE_LPSOLVE=
|
||||
AC_MSG_CHECKING([whether to build with lpsolve])
|
||||
--
|
||||
1.7.1
|
@ -1,157 +0,0 @@
|
||||
From 2378f45d70c9ce4a093fd6b09216c1cd4563ebe2 Mon Sep 17 00:00:00 2001
|
||||
From: Rene Engelhard <rene@debian.org>
|
||||
Date: Tue, 5 Aug 2014 20:05:35 +0200
|
||||
Subject: [PATCH] implement --with-system-gltf
|
||||
|
||||
Change-Id: Ic842006b28f8043bcbbaa81ab5a20e15aa52ac82
|
||||
(cherry picked from commit 97bda8e081fd746e9ef743b165b5bf621fc21fbb)
|
||||
---
|
||||
RepositoryExternal.mk | 18 ++++++++++++++++++
|
||||
avmedia/source/opengl/oglframegrabber.hxx | 4 ++++
|
||||
avmedia/source/opengl/oglplayer.hxx | 4 ++++
|
||||
avmedia/source/opengl/oglwindow.hxx | 4 ++++
|
||||
config_host.mk.in | 3 +++
|
||||
configure.ac | 15 ++++++++++++++-
|
||||
6 files changed, 47 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
|
||||
index ff50598..b42dce2 100644
|
||||
--- a/RepositoryExternal.mk
|
||||
+++ b/RepositoryExternal.mk
|
||||
@@ -3281,6 +3281,8 @@ endif # DESKTOP
|
||||
|
||||
ifeq ($(ENABLE_GLTF),TRUE)
|
||||
|
||||
+ifneq ($(SYSTEM_LIBGLTF),TRUE)
|
||||
+
|
||||
define gb_LinkTarget__use_libgltf
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(call gb_UnpackedTarball_get_dir,libgltf)/inc \
|
||||
@@ -3306,6 +3308,22 @@ $(call gb_ExternalProject_use_external_project,$(1),libgltf)
|
||||
|
||||
endef
|
||||
|
||||
+else # SYSTEM_LIBGLTF
|
||||
+
|
||||
+define gb_LinkTarget__use_libgltf
|
||||
+$(call gb_LinkTarget_set_include,$(1),\
|
||||
+ $$(INCLUDE) \
|
||||
+ $(LIBGLTF_CFLAGS) \
|
||||
+)
|
||||
+$(call gb_LinkTarget_add_libs,$(1),$(LIBGLTF_LIBS))
|
||||
+$(call gb_LinkTarget_add_defs,$(1),\
|
||||
+ -DSYSTEM_LIBGLTF \
|
||||
+)
|
||||
+
|
||||
+endef
|
||||
+
|
||||
+endif # SYSTEN_LIBGLTF
|
||||
+
|
||||
define gb_LinkTarget__use_opencollada_parser
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
|
||||
diff --git a/avmedia/source/opengl/oglframegrabber.hxx b/avmedia/source/opengl/oglframegrabber.hxx
|
||||
index 5beb15b..0d38224 100644
|
||||
--- a/avmedia/source/opengl/oglframegrabber.hxx
|
||||
+++ b/avmedia/source/opengl/oglframegrabber.hxx
|
||||
@@ -14,7 +14,11 @@
|
||||
#include <com/sun/star/lang/XServiceInfo.hpp>
|
||||
#include <com/sun/star/media/XFrameGrabber.hpp>
|
||||
|
||||
+#ifdef SYSTEM_LIBGLTF
|
||||
+#include <libgltf/libgltf.h>
|
||||
+#else
|
||||
#include <libgltf.h>
|
||||
+#endif
|
||||
|
||||
namespace avmedia { namespace ogl {
|
||||
|
||||
diff --git a/avmedia/source/opengl/oglplayer.hxx b/avmedia/source/opengl/oglplayer.hxx
|
||||
index 03ad515..52aa395 100644
|
||||
--- a/avmedia/source/opengl/oglplayer.hxx
|
||||
+++ b/avmedia/source/opengl/oglplayer.hxx
|
||||
@@ -14,7 +14,11 @@
|
||||
#include <cppuhelper/basemutex.hxx>
|
||||
#include <com/sun/star/lang/XServiceInfo.hpp>
|
||||
#include <com/sun/star/media/XPlayer.hpp>
|
||||
+#ifdef SYSTEM_LIBGLTF
|
||||
+#include <libgltf/libgltf.h>
|
||||
+#else
|
||||
#include <libgltf.h>
|
||||
+#endif
|
||||
#include <vcl/opengl/OpenGLContext.hxx>
|
||||
#include <vcl/timer.hxx>
|
||||
|
||||
diff --git a/avmedia/source/opengl/oglwindow.hxx b/avmedia/source/opengl/oglwindow.hxx
|
||||
index a68f667..ae86083 100644
|
||||
--- a/avmedia/source/opengl/oglwindow.hxx
|
||||
+++ b/avmedia/source/opengl/oglwindow.hxx
|
||||
@@ -17,7 +17,11 @@
|
||||
#include <com/sun/star/media/XPlayerWindow.hpp>
|
||||
#include <com/sun/star/media/ZoomLevel.hpp>
|
||||
|
||||
+#ifdef SYSTEM_LIBGLTF
|
||||
+#include <libgltf/libgltf.h>
|
||||
+#else
|
||||
#include <libgltf.h>
|
||||
+#endif
|
||||
#include <vcl/opengl/OpenGLContext.hxx>
|
||||
#include <vcl/syschild.hxx>
|
||||
|
||||
diff --git a/config_host.mk.in b/config_host.mk.in
|
||||
index b7e5b6c..aec0fa5 100644
|
||||
--- a/config_host.mk.in
|
||||
+++ b/config_host.mk.in
|
||||
@@ -127,6 +127,9 @@ export ENABLE_GRAPHITE=@ENABLE_GRAPHITE@
|
||||
export ENABLE_ORCUS=@ENABLE_ORCUS@
|
||||
export ENABLE_HARFBUZZ=@ENABLE_HARFBUZZ@
|
||||
export ENABLE_GLTF=@ENABLE_GLTF@
|
||||
+export SYSTEM_LIBGLTF=@SYSTEM_LIBGLTF@
|
||||
+export LIBGLTF_CFLAGS=@LIBGLTF_CFLAGS@
|
||||
+export LIBGLTF_LIBS=@LIBGLTF_LIBS@
|
||||
export ENABLE_GSTREAMER=@ENABLE_GSTREAMER@
|
||||
export ENABLE_GSTREAMER_0_10=@ENABLE_GSTREAMER_0_10@
|
||||
export ENABLE_GTK3=@ENABLE_GTK3@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 02791ca..63e067b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1552,6 +1552,11 @@ AC_ARG_WITH(system-jpeg,
|
||||
[Use jpeg already on system.]),,
|
||||
[with_system_jpeg=auto])
|
||||
|
||||
+AC_ARG_WITH(system-libgltf,
|
||||
+ AS_HELP_STRING([--with-system-libgltf],
|
||||
+ [Use libgltf already on system.]),,
|
||||
+ [with_system_libgltf=auto])
|
||||
+
|
||||
AC_ARG_WITH(system-clucene,
|
||||
AS_HELP_STRING([--with-system-clucene],
|
||||
[Use clucene already on system.]),,
|
||||
@@ -10561,7 +10566,12 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
|
||||
ENABLE_GLTF=TRUE
|
||||
AC_MSG_RESULT([yes])
|
||||
AC_DEFINE(HAVE_FEATURE_GLTF,1)
|
||||
- BUILD_TYPE="$BUILD_TYPE LIBGLTF"
|
||||
+ if test "$with_system_libgltf" = "yes"; then
|
||||
+ SYSTEM_LIBGLTF=TRUE
|
||||
+ PKG_CHECK_MODULES( LIBGLTF, libgltf-0.0 )
|
||||
+ else
|
||||
+ BUILD_TYPE="$BUILD_TYPE LIBGLTF"
|
||||
+ fi
|
||||
# otherwise build fails in collada2gltf external because of std::shared_ptr
|
||||
if test "$have_std_shared_ptr" = "yes"; then
|
||||
BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
|
||||
@@ -10570,6 +10580,9 @@ else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_SUBST(ENABLE_GLTF)
|
||||
+AC_SUBST(SYSTEM_LIBGLTF)
|
||||
+AC_SUBST(LIBGLTF_CFLAGS)
|
||||
+AC_SUBST(LIBGLTF_LIBS)
|
||||
|
||||
# pdf import?
|
||||
AC_MSG_CHECKING([whether to build the PDF import feature])
|
||||
--
|
||||
2.1.0
|
||||
|
@ -1,400 +0,0 @@
|
||||
From d431986bd49081581e86444af124d1d2ce90a407 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolnai=20Tam=C3=A1s?= <tamas.zolnai@collabora.com>
|
||||
Date: Fri, 29 Aug 2014 22:41:26 +0200
|
||||
Subject: [PATCH] Upgrade libgltf to 0.0.1
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
News in this version:
|
||||
- Solve some limitations of walkthrough mode (fdo#81425)
|
||||
- Multisampling (better rendering quality, mainly at the edges)
|
||||
- Better error handling (no crash in case of invalid input file)
|
||||
|
||||
Reviewed-on: https://gerrit.libreoffice.org/11179
|
||||
Reviewed-by: Zolnai Tamás <tamas.zolnai@collabora.com>
|
||||
Tested-by: Zolnai Tamás <tamas.zolnai@collabora.com>
|
||||
|
||||
Conflicts:
|
||||
download.lst
|
||||
external/libgltf/UnpackedTarball_libgltf.mk
|
||||
external/libgltf/pathces/append_shader_version.patch
|
||||
external/libgltf/pathces/missing_include.patch
|
||||
vcl/source/opengl/OpenGLContext.cxx
|
||||
|
||||
Change-Id: I46fdf56b00476614487fbcc04178e43e33a01794
|
||||
Reviewed-on: https://gerrit.libreoffice.org/11194
|
||||
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
||||
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
||||
---
|
||||
RepositoryExternal.mk | 8 -----
|
||||
avmedia/source/opengl/oglframegrabber.hxx | 4 ---
|
||||
avmedia/source/opengl/oglplayer.cxx | 16 ++++++++--
|
||||
avmedia/source/opengl/oglplayer.hxx | 6 ++--
|
||||
avmedia/source/opengl/oglwindow.cxx | 36 +++++++++++----------
|
||||
avmedia/source/opengl/oglwindow.hxx | 6 +---
|
||||
configure.ac | 2 +-
|
||||
download.lst | 4 +--
|
||||
external/libgltf/ExternalProject_libgltf.mk | 2 ++
|
||||
external/libgltf/UnpackedTarball_libgltf.mk | 2 --
|
||||
.../libgltf/pathces/append_shader_version.patch | 37 ----------------------
|
||||
external/libgltf/pathces/missing_include.patch | 11 -------
|
||||
include/vcl/opengl/OpenGLContext.hxx | 2 ++
|
||||
vcl/source/opengl/OpenGLContext.cxx | 5 +++
|
||||
14 files changed, 48 insertions(+), 93 deletions(-)
|
||||
delete mode 100644 external/libgltf/pathces/append_shader_version.patch
|
||||
delete mode 100644 external/libgltf/pathces/missing_include.patch
|
||||
|
||||
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
|
||||
index cd99108..f194fcb 100644
|
||||
--- a/RepositoryExternal.mk
|
||||
+++ b/RepositoryExternal.mk
|
||||
@@ -3303,11 +3303,6 @@ $(call gb_LinkTarget_use_external_project,$(1),libgltf)
|
||||
|
||||
endef
|
||||
|
||||
-define gb_ExternalProject__use_libgltf
|
||||
-$(call gb_ExternalProject_use_external_project,$(1),libgltf)
|
||||
-
|
||||
-endef
|
||||
-
|
||||
else # SYSTEM_LIBGLTF
|
||||
|
||||
define gb_LinkTarget__use_libgltf
|
||||
@@ -3316,9 +3311,6 @@ $(call gb_LinkTarget_set_include,$(1),\
|
||||
$(LIBGLTF_CFLAGS) \
|
||||
)
|
||||
$(call gb_LinkTarget_add_libs,$(1),$(LIBGLTF_LIBS))
|
||||
-$(call gb_LinkTarget_add_defs,$(1),\
|
||||
- -DSYSTEM_LIBGLTF \
|
||||
-)
|
||||
|
||||
endef
|
||||
|
||||
diff --git a/avmedia/source/opengl/oglframegrabber.hxx b/avmedia/source/opengl/oglframegrabber.hxx
|
||||
index 0d38224..5beb15b 100644
|
||||
--- a/avmedia/source/opengl/oglframegrabber.hxx
|
||||
+++ b/avmedia/source/opengl/oglframegrabber.hxx
|
||||
@@ -14,11 +14,7 @@
|
||||
#include <com/sun/star/lang/XServiceInfo.hpp>
|
||||
#include <com/sun/star/media/XFrameGrabber.hpp>
|
||||
|
||||
-#ifdef SYSTEM_LIBGLTF
|
||||
-#include <libgltf/libgltf.h>
|
||||
-#else
|
||||
#include <libgltf.h>
|
||||
-#endif
|
||||
|
||||
namespace avmedia { namespace ogl {
|
||||
|
||||
diff --git a/avmedia/source/opengl/oglplayer.cxx b/avmedia/source/opengl/oglplayer.cxx
|
||||
index a052dc9..d2e600b 100644
|
||||
--- a/avmedia/source/opengl/oglplayer.cxx
|
||||
+++ b/avmedia/source/opengl/oglplayer.cxx
|
||||
@@ -269,6 +269,12 @@ uno::Reference< media::XPlayerWindow > SAL_CALL OGLPlayer::createPlayerWindow( c
|
||||
return uno::Reference< media::XPlayerWindow >();
|
||||
}
|
||||
|
||||
+ if( !m_aContext.supportMultiSampling() )
|
||||
+ {
|
||||
+ SAL_WARN("avmedia.opengl", "Context does not support multisampling!");
|
||||
+ return uno::Reference< media::XPlayerWindow >();
|
||||
+ }
|
||||
+
|
||||
if( !lcl_CheckOpenGLRequirements() )
|
||||
{
|
||||
SAL_WARN("avmedia.opengl", "Your platform does not have the minimal OpenGL requiremenets!");
|
||||
@@ -287,7 +293,7 @@ uno::Reference< media::XPlayerWindow > SAL_CALL OGLPlayer::createPlayerWindow( c
|
||||
releaseInputFiles();
|
||||
if( nRet != 0 )
|
||||
{
|
||||
- SAL_WARN("avmedia.opengl", "Error occured while parsing *.json file! Error code: " << nRet);
|
||||
+ SAL_WARN("avmedia.opengl", "Error occured while setting up the scene! Error code: " << nRet);
|
||||
return uno::Reference< media::XPlayerWindow >();
|
||||
}
|
||||
// The background color is white by default, but we need to separate the
|
||||
@@ -309,6 +315,12 @@ uno::Reference< media::XFrameGrabber > SAL_CALL OGLPlayer::createFrameGrabber()
|
||||
return uno::Reference< media::XFrameGrabber >();
|
||||
}
|
||||
|
||||
+ if( !m_aContext.supportMultiSampling() )
|
||||
+ {
|
||||
+ SAL_WARN("avmedia.opengl", "Context does not support multisampling!");
|
||||
+ return uno::Reference< media::XFrameGrabber >();
|
||||
+ }
|
||||
+
|
||||
if( !lcl_CheckOpenGLRequirements() )
|
||||
{
|
||||
SAL_WARN("avmedia.opengl", "Your platform does not have the minimal OpenGL requiremenets!");
|
||||
@@ -324,7 +336,7 @@ uno::Reference< media::XFrameGrabber > SAL_CALL OGLPlayer::createFrameGrabber()
|
||||
releaseInputFiles();
|
||||
if( nRet != 0 )
|
||||
{
|
||||
- SAL_WARN("avmedia.opengl", "Error occured while parsing *.json file! Error code: " << nRet);
|
||||
+ SAL_WARN("avmedia.opengl", "Error occured while setting up the scene! Error code: " << nRet);
|
||||
return uno::Reference< media::XFrameGrabber >();
|
||||
}
|
||||
glClearColor(0.5f, 0.5f, 0.5f, 0.5f);
|
||||
diff --git a/avmedia/source/opengl/oglplayer.hxx b/avmedia/source/opengl/oglplayer.hxx
|
||||
index 52aa395..465ed6b 100644
|
||||
--- a/avmedia/source/opengl/oglplayer.hxx
|
||||
+++ b/avmedia/source/opengl/oglplayer.hxx
|
||||
@@ -14,11 +14,9 @@
|
||||
#include <cppuhelper/basemutex.hxx>
|
||||
#include <com/sun/star/lang/XServiceInfo.hpp>
|
||||
#include <com/sun/star/media/XPlayer.hpp>
|
||||
-#ifdef SYSTEM_LIBGLTF
|
||||
-#include <libgltf/libgltf.h>
|
||||
-#else
|
||||
+
|
||||
#include <libgltf.h>
|
||||
-#endif
|
||||
+
|
||||
#include <vcl/opengl/OpenGLContext.hxx>
|
||||
#include <vcl/timer.hxx>
|
||||
|
||||
diff --git a/avmedia/source/opengl/oglwindow.cxx b/avmedia/source/opengl/oglwindow.cxx
|
||||
index a770ff5..1092483 100644
|
||||
--- a/avmedia/source/opengl/oglwindow.cxx
|
||||
+++ b/avmedia/source/opengl/oglwindow.cxx
|
||||
@@ -23,7 +23,6 @@ OGLWindow::OGLWindow( glTFHandle& rHandle, OpenGLContext& rContext, Window& rEve
|
||||
, meZoomLevel( media::ZoomLevel_ORIGINAL )
|
||||
, m_aLastMousePos(Point(0,0))
|
||||
, m_bIsOrbitMode( false )
|
||||
- , m_fCameraDistance(0.0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -267,15 +266,15 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
|
||||
glm::vec3 vMove = vView-vEye;
|
||||
vMove = glm::normalize(vMove);
|
||||
vMove *= 25.0f;
|
||||
- glm::vec3 vStrafe = glm::cross(vView-vEye, vUp);
|
||||
+ glm::vec3 vStrafe = glm::cross(vMove, vUp);
|
||||
vStrafe = glm::normalize(vStrafe);
|
||||
vStrafe *= 25.0f;
|
||||
- glm::vec3 vMup = glm::cross(vView-vEye,glm::vec3(1.0f,0.0f,0.0f) );
|
||||
- vMup = glm::normalize(vMup);
|
||||
- vMup *= 25.0f;
|
||||
+ glm::vec3 vMup = vUp * 25.0f;
|
||||
|
||||
if( !m_bIsOrbitMode )
|
||||
{
|
||||
+ if(nCode == KEY_E)vMoveBy += vMup*(0.0005f*fModelSize);
|
||||
+ if(nCode == KEY_Q)vMoveBy -= vMup*(0.0005f*fModelSize);
|
||||
if(nCode == KEY_W)vMoveBy += vMove*(0.0005f*fModelSize);
|
||||
if(nCode == KEY_S)vMoveBy -= vMove*(0.0005f*fModelSize);
|
||||
if(nCode == KEY_A)vMoveBy -= vStrafe*(0.0005f*fModelSize);
|
||||
@@ -283,15 +282,24 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
|
||||
}
|
||||
else
|
||||
{
|
||||
- if(nCode == KEY_E)vMoveBy += vMove*(0.0005f*fModelSize);
|
||||
- if(nCode == KEY_Q)vMoveBy -= vMove*(0.0005f*fModelSize);
|
||||
+ bool bZoomIn = false;
|
||||
+ bool bZoomOut = false;
|
||||
+ if(nCode == KEY_E)
|
||||
+ {
|
||||
+ vMoveBy += vMove*(0.0005f*fModelSize);
|
||||
+ bZoomIn = true;
|
||||
+ }
|
||||
+ if(nCode == KEY_Q)
|
||||
+ {
|
||||
+ vMoveBy -= vMove*(0.0005f*fModelSize);
|
||||
+ bZoomOut = true;
|
||||
+ }
|
||||
|
||||
// Limit zooming in orbit mode
|
||||
- m_fCameraDistance += vMoveBy.z;
|
||||
- if ((m_fCameraDistance < 0.5 * fModelSize && vMoveBy.z < 0.0 ) ||
|
||||
- (m_fCameraDistance > 2 * fModelSize && vMoveBy.z > 0.0 ))
|
||||
+ float fCameraDistFromModelGlobe = glm::length(vEye + vMoveBy - vView) - fModelSize / 2.0f;
|
||||
+ if ((fCameraDistFromModelGlobe < 0.5 * fModelSize && bZoomIn ) ||
|
||||
+ (fCameraDistFromModelGlobe > 2 * fModelSize && bZoomOut ))
|
||||
{
|
||||
- m_fCameraDistance -= vMoveBy.z;
|
||||
vMoveBy = glm::vec3(0.0);
|
||||
}
|
||||
}
|
||||
@@ -333,12 +341,6 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
|
||||
{
|
||||
gltf_orbit_mode_start(&m_rHandle);
|
||||
m_bIsOrbitMode = true;
|
||||
- // Set default camera distance
|
||||
- glm::vec3 vEye;
|
||||
- glm::vec3 vView;
|
||||
- glm::vec3 vUp;
|
||||
- gltf_get_camera_pos(&m_rHandle, &vEye,&vView,&vUp);
|
||||
- m_fCameraDistance = vEye.z - gltf_get_model_center_pos(&m_rHandle)->z - (gltf_get_model_size(&m_rHandle)/2.0);
|
||||
}
|
||||
}
|
||||
else if(nCode == KEY_F)
|
||||
diff --git a/avmedia/source/opengl/oglwindow.hxx b/avmedia/source/opengl/oglwindow.hxx
|
||||
index ae86083..8b15813 100644
|
||||
--- a/avmedia/source/opengl/oglwindow.hxx
|
||||
+++ b/avmedia/source/opengl/oglwindow.hxx
|
||||
@@ -17,11 +17,8 @@
|
||||
#include <com/sun/star/media/XPlayerWindow.hpp>
|
||||
#include <com/sun/star/media/ZoomLevel.hpp>
|
||||
|
||||
-#ifdef SYSTEM_LIBGLTF
|
||||
-#include <libgltf/libgltf.h>
|
||||
-#else
|
||||
#include <libgltf.h>
|
||||
-#endif
|
||||
+
|
||||
#include <vcl/opengl/OpenGLContext.hxx>
|
||||
#include <vcl/syschild.hxx>
|
||||
|
||||
@@ -77,7 +74,6 @@ private:
|
||||
com::sun::star::media::ZoomLevel meZoomLevel;
|
||||
Point m_aLastMousePos;
|
||||
bool m_bIsOrbitMode;
|
||||
- double m_fCameraDistance;
|
||||
};
|
||||
|
||||
} // namespace ogl
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index b6e8124..9cd589b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -10572,7 +10572,7 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
|
||||
AC_DEFINE(HAVE_FEATURE_GLTF,1)
|
||||
if test "$with_system_libgltf" = "yes"; then
|
||||
SYSTEM_LIBGLTF=TRUE
|
||||
- PKG_CHECK_MODULES( LIBGLTF, libgltf-0.0 )
|
||||
+ PKG_CHECK_MODULES( LIBGLTF, [libgltf-0.0 >= 0.0.1] )
|
||||
else
|
||||
BUILD_TYPE="$BUILD_TYPE LIBGLTF"
|
||||
fi
|
||||
diff --git a/download.lst b/download.lst
|
||||
index bc2b383..f413a57 100644
|
||||
--- a/download.lst
|
||||
+++ b/download.lst
|
||||
@@ -87,8 +87,8 @@ export LIBATOMIC_OPS_TARBALL := libatomic_ops-7_2d.zip
|
||||
export LIBEOT_MD5SUM := aa24f5dd2a2992f4a116aa72af817548
|
||||
export LIBEOT_TARBALL := libeot-0.01.tar.bz2
|
||||
export LIBEXTTEXTCAT_TARBALL := ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2
|
||||
-export LIBGLTF_MD5SUM := ca5436e916bfe70694adfe2607782786
|
||||
-export LIBGLTF_TARBALL := libgltf-0.0.0.tar.bz2
|
||||
+export LIBGLTF_MD5SUM := 03821c9c827e647fb5fedb12496e0067
|
||||
+export LIBGLTF_TARBALL := libgltf-0.0.1.tar.bz2
|
||||
export LIBLANGTAG_TARBALL := 36271d3fa0d9dec1632029b6d7aac925-liblangtag-0.5.1.tar.bz2
|
||||
export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
|
||||
export LIBXML_TARBALL := 9c0cfef285d5c4a5c80d00904ddab380-libxml2-2.9.1.tar.gz
|
||||
diff --git a/external/libgltf/ExternalProject_libgltf.mk b/external/libgltf/ExternalProject_libgltf.mk
|
||||
index 548487b..62e25a3 100644
|
||||
--- a/external/libgltf/ExternalProject_libgltf.mk
|
||||
+++ b/external/libgltf/ExternalProject_libgltf.mk
|
||||
@@ -63,6 +63,8 @@ $(call gb_ExternalProject_get_state_target,libgltf,build) :
|
||||
export CPPFLAGS='$(libgltf_CPPFLAGS)' \
|
||||
&& export PKG_CONFIG="" \
|
||||
&& ./configure \
|
||||
+ --disable-shared \
|
||||
+ --enable-static \
|
||||
--with-pic \
|
||||
--disable-debug \
|
||||
--disable-werror \
|
||||
diff --git a/external/libgltf/UnpackedTarball_libgltf.mk b/external/libgltf/UnpackedTarball_libgltf.mk
|
||||
index 42c821b..176c1d1 100644
|
||||
--- a/external/libgltf/UnpackedTarball_libgltf.mk
|
||||
+++ b/external/libgltf/UnpackedTarball_libgltf.mk
|
||||
@@ -16,8 +16,6 @@ $(eval $(call gb_UnpackedTarball_set_patchflags,libgltf,--binary))
|
||||
$(eval $(call gb_UnpackedTarball_set_patchlevel,libgltf,1))
|
||||
|
||||
$(eval $(call gb_UnpackedTarball_add_patches,libgltf,\
|
||||
- external/libgltf/pathces/missing_include.patch \
|
||||
- external/libgltf/pathces/append_shader_version.patch \
|
||||
))
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
diff --git a/external/libgltf/pathces/append_shader_version.patch b/external/libgltf/pathces/append_shader_version.patch
|
||||
deleted file mode 100644
|
||||
index 27f0cc6..0000000
|
||||
--- a/external/libgltf/pathces/append_shader_version.patch
|
||||
+++ /dev/null
|
||||
@@ -1,37 +0,0 @@
|
||||
-diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp
|
||||
---- libgltf.org/src/Shaders.cpp 2014-08-18 09:19:48.323955939 +0200
|
||||
-+++ libgltf/src/Shaders.cpp 2014-08-18 09:20:46.711953465 +0200
|
||||
-@@ -11,6 +11,7 @@
|
||||
-
|
||||
- #include <GL/glew.h>
|
||||
- #include <cstdio>
|
||||
-+#include <cstring>
|
||||
-
|
||||
- namespace libgltf
|
||||
- {
|
||||
-@@ -166,7 +167,24 @@
|
||||
- unsigned int shaderId)
|
||||
- {
|
||||
- GLint iGLSize = iSize;
|
||||
-- glShaderSource(shaderId, 1, &pShader, &iGLSize);
|
||||
-+ if( strstr(pShader,"#version") == 0 )
|
||||
-+ {
|
||||
-+ const GLchar* aSources[] = {
|
||||
-+ "#version 130\n",
|
||||
-+ pShader,
|
||||
-+ };
|
||||
-+
|
||||
-+ const GLint aSizes[] = {
|
||||
-+ strlen("#version 130\n"),
|
||||
-+ iGLSize,
|
||||
-+ };
|
||||
-+
|
||||
-+ glShaderSource(shaderId, 2, &aSources[0], &aSizes[0]);
|
||||
-+ }
|
||||
-+ else
|
||||
-+ {
|
||||
-+ glShaderSource(shaderId, 1, &pShader, &iGLSize);
|
||||
-+ }
|
||||
- glCompileShader(shaderId);
|
||||
- int iStatus = 0;
|
||||
- glGetShaderiv(shaderId, GL_COMPILE_STATUS, &iStatus);
|
||||
diff --git a/external/libgltf/pathces/missing_include.patch b/external/libgltf/pathces/missing_include.patch
|
||||
deleted file mode 100644
|
||||
index 8b05224..0000000
|
||||
--- a/external/libgltf/pathces/missing_include.patch
|
||||
+++ /dev/null
|
||||
@@ -1,11 +0,0 @@
|
||||
-diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp
|
||||
---- libgltf.org/src/Shaders.cpp 2014-08-05 11:40:30.387537876 +0200
|
||||
-+++ libgltf/src/Shaders.cpp 2014-08-05 11:41:13.887536123 +0200
|
||||
-@@ -10,6 +10,7 @@
|
||||
- #include "Shaders.h"
|
||||
-
|
||||
- #include <GL/glew.h>
|
||||
-+#include <cstdio>
|
||||
-
|
||||
- namespace libgltf
|
||||
- {
|
||||
diff --git a/include/vcl/opengl/OpenGLContext.hxx b/include/vcl/opengl/OpenGLContext.hxx
|
||||
index 8a7eb55..f1e0bd2 100644
|
||||
--- a/include/vcl/opengl/OpenGLContext.hxx
|
||||
+++ b/include/vcl/opengl/OpenGLContext.hxx
|
||||
@@ -166,6 +166,8 @@ public:
|
||||
return mbInitialized;
|
||||
}
|
||||
|
||||
+ bool supportMultiSampling() const;
|
||||
+
|
||||
static SystemWindowData generateWinData(Window* pParent);
|
||||
private:
|
||||
SAL_DLLPRIVATE bool initWindow();
|
||||
diff --git a/vcl/source/opengl/OpenGLContext.cxx b/vcl/source/opengl/OpenGLContext.cxx
|
||||
index 974f913..338edc3 100644
|
||||
--- a/vcl/source/opengl/OpenGLContext.cxx
|
||||
+++ b/vcl/source/opengl/OpenGLContext.cxx
|
||||
@@ -833,4 +833,9 @@ void OpenGLContext::show()
|
||||
m_pWindow->Show();
|
||||
}
|
||||
|
||||
+bool OpenGLContext::supportMultiSampling() const
|
||||
+{
|
||||
+ return m_aGLWin.bMultiSampleSupported;
|
||||
+}
|
||||
+
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|
||||
--
|
||||
2.1.0
|
||||
|
@ -1,187 +0,0 @@
|
||||
Backport of 45dfbdca6a9afba1a6aef21623ec025ded635a4d from LO master
|
||||
by Mark Wright, gienah@gentoo.org
|
||||
|
||||
|
||||
--- libreoffice-4.3.1.2-orig/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-09-20 15:09:49.269841950 +1000
|
||||
@@ -402,11 +402,12 @@
|
||||
::basegfx::computeSetDifference( aUncoveredAreas,
|
||||
rUpdateArea.maTotalBounds,
|
||||
::basegfx::B2DRange( rDestRect ) );
|
||||
+ SurfaceSharedPtr surface(mpOwningSpriteCanvas->getBufferSurface());
|
||||
::std::for_each( aUncoveredAreas.begin(),
|
||||
aUncoveredAreas.end(),
|
||||
::boost::bind( &repaintBackground,
|
||||
boost::cref(pCompositingCairo),
|
||||
- boost::cref(mpOwningSpriteCanvas->getBufferSurface()),
|
||||
+ boost::cref(surface),
|
||||
_1 ) );
|
||||
|
||||
cairo_rectangle( pWindowCairo.get(), 0, 0, rSize.getX(), rSize.getY() );
|
||||
--- libreoffice-4.3.1.2-orig/canvas/source/vcl/spritecanvashelper.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/canvas/source/vcl/spritecanvashelper.cxx 2014-09-20 15:09:49.270404983 +1000
|
||||
@@ -573,12 +573,12 @@
|
||||
|
||||
// repaint all affected sprites on top of background into
|
||||
// VDev.
|
||||
+ ::basegfx::B2DPoint outPos( ::vcl::unotools::b2DPointFromPoint(aOutputPosition) );
|
||||
::std::for_each( rSortedUpdateSprites.begin(),
|
||||
rSortedUpdateSprites.end(),
|
||||
::boost::bind( &spriteRedrawStub2,
|
||||
::boost::ref( maVDev.get() ),
|
||||
- ::boost::cref(
|
||||
- ::vcl::unotools::b2DPointFromPoint(aOutputPosition)),
|
||||
+ ::boost::cref( outPos ),
|
||||
_1 ) );
|
||||
|
||||
// flush to screen
|
||||
--- libreoffice-4.3.1.2-orig/dbaccess/source/ui/tabledesign/TableController.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/dbaccess/source/ui/tabledesign/TableController.cxx 2014-09-20 15:12:36.829360633 +1000
|
||||
@@ -1392,7 +1392,8 @@
|
||||
setEditable( xMeta.is() && !xMeta->isReadOnly() && (isAlterAllowed() || isDropAllowed() || isAddAllowed()) );
|
||||
if(!isEditable())
|
||||
{
|
||||
- ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( sal_True )));
|
||||
+ sal_Bool t( sal_True );
|
||||
+ ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( t )));
|
||||
}
|
||||
m_bNew = false;
|
||||
// be notified when the table is in disposing
|
||||
--- libreoffice-4.3.1.2-orig/oox/source/drawingml/table/tablecell.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/oox/source/drawingml/table/tablecell.cxx 2014-09-20 15:09:49.272005355 +1000
|
||||
@@ -117,9 +117,9 @@
|
||||
if (rTableStylePart.getTextColor().isUsed())
|
||||
aTextCharProps.maCharColor = rTableStylePart.getTextColor();
|
||||
if( rTableStylePart.getTextBoldStyle().is_initialized() )
|
||||
- aTextCharProps.moBold = rTableStylePart.getTextBoldStyle();
|
||||
+ aTextCharProps.moBold = *rTableStylePart.getTextBoldStyle();
|
||||
if( rTableStylePart.getTextItalicStyle().is_initialized() )
|
||||
- aTextCharProps.moItalic = rTableStylePart.getTextItalicStyle();
|
||||
+ aTextCharProps.moItalic = *rTableStylePart.getTextItalicStyle();
|
||||
}
|
||||
|
||||
void applyTableCellProperties( const Reference < ::com::sun::star::table::XCell >& rxCell, const TableCell& rTableCell )
|
||||
--- libreoffice-4.3.1.2-orig/reportdesign/source/core/api/ReportDefinition.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/reportdesign/source/core/api/ReportDefinition.cxx 2014-09-20 15:09:49.273376564 +1000
|
||||
@@ -1612,8 +1612,9 @@
|
||||
m_pImpl->m_pObjectContainer->SwitchPersistence(m_pImpl->m_xStorage);
|
||||
}
|
||||
// notify our container listeners
|
||||
+ OWeakObject *weakObjectThis = static_cast<OWeakObject*>(this);
|
||||
m_pImpl->m_aStorageChangeListeners.forEach<document::XStorageChangeListener>(
|
||||
- ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(static_cast<OWeakObject*>(this)),boost::cref(_xStorage)));
|
||||
+ ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(weakObjectThis),boost::cref(_xStorage)));
|
||||
}
|
||||
|
||||
uno::Reference< embed::XStorage > SAL_CALL OReportDefinition::getDocumentStorage( ) throw (io::IOException, uno::Exception, uno::RuntimeException, std::exception)
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/activities/activitybase.hxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/activities/activitybase.hxx 2014-09-20 15:09:49.273965661 +1000
|
||||
@@ -111,7 +111,7 @@
|
||||
ShapeAttributeLayerSharedPtr getShapeAttributeLayer() const
|
||||
{ return mpAttributeLayer; }
|
||||
|
||||
- bool isRepeatCountValid() const { return maRepeats; }
|
||||
+ bool isRepeatCountValid() const { return bool(maRepeats); }
|
||||
double getRepeatCount() const { return *maRepeats; }
|
||||
bool isAutoReverse() const { return mbAutoReverse; }
|
||||
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-09-20 15:09:49.274529920 +1000
|
||||
@@ -400,11 +400,12 @@
|
||||
{
|
||||
// new sprite pos, transformation might have changed:
|
||||
maSpriteRectangle = calcSpriteRectangle( maViews.front().first );
|
||||
+ ::basegfx::B2DPoint rectMin( maSpriteRectangle.getMinimum() );
|
||||
|
||||
// reposition sprites
|
||||
for_each_sprite( boost::bind( &cppcanvas::Sprite::move,
|
||||
_1,
|
||||
- boost::cref(maSpriteRectangle.getMinimum())) );
|
||||
+ boost::cref( rectMin )) );
|
||||
|
||||
// sprites changed, need screen update
|
||||
mrScreenUpdater.notifyUpdate();
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/appletshape.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/appletshape.cxx 2014-09-20 15:09:49.275052955 +1000
|
||||
@@ -148,12 +148,13 @@
|
||||
void AppletShape::implViewsChanged()
|
||||
{
|
||||
// resize all ViewShapes
|
||||
+ ::basegfx::B2DRectangle bounds( AppletShape::getBounds() );
|
||||
::std::for_each( maViewAppletShapes.begin(),
|
||||
maViewAppletShapes.end(),
|
||||
::boost::bind(
|
||||
&ViewAppletShape::resize,
|
||||
_1,
|
||||
- ::boost::cref( AppletShape::getBounds())) );
|
||||
+ ::boost::cref( bounds )) );
|
||||
}
|
||||
|
||||
|
||||
@@ -252,11 +253,12 @@
|
||||
|
||||
bool AppletShape::implStartIntrinsicAnimation()
|
||||
{
|
||||
+ ::basegfx::B2DRectangle bounds( getBounds() );
|
||||
::std::for_each( maViewAppletShapes.begin(),
|
||||
maViewAppletShapes.end(),
|
||||
::boost::bind( &ViewAppletShape::startApplet,
|
||||
_1,
|
||||
- ::boost::cref( getBounds() )));
|
||||
+ ::boost::cref( bounds )));
|
||||
mbIsPlaying = true;
|
||||
|
||||
return true;
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/drawshape.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/drawshape.cxx 2014-09-20 15:09:49.275701062 +1000
|
||||
@@ -168,6 +168,7 @@
|
||||
}
|
||||
|
||||
// redraw all view shapes, by calling their update() method
|
||||
+ ViewShape::RenderArgs renderArgs( getViewRenderArgs() );
|
||||
if( ::std::count_if( maViewShapes.begin(),
|
||||
maViewShapes.end(),
|
||||
::boost::bind<bool>(
|
||||
@@ -178,8 +179,7 @@
|
||||
// the extra mem_fn. WTF.
|
||||
_1,
|
||||
::boost::cref( mpCurrMtf ),
|
||||
- ::boost::cref(
|
||||
- getViewRenderArgs() ),
|
||||
+ ::boost::cref( renderArgs ),
|
||||
nUpdateFlags,
|
||||
isVisible() ) )
|
||||
!= static_cast<ViewShapeVector::difference_type>(maViewShapes.size()) )
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/mediashape.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/mediashape.cxx 2014-09-20 15:09:49.276133048 +1000
|
||||
@@ -125,12 +125,13 @@
|
||||
void MediaShape::implViewsChanged()
|
||||
{
|
||||
// resize all ViewShapes
|
||||
+ ::basegfx::B2DRectangle bounds( getBounds() );
|
||||
::std::for_each( maViewMediaShapes.begin(),
|
||||
maViewMediaShapes.end(),
|
||||
::boost::bind(
|
||||
&ViewMediaShape::resize,
|
||||
_1,
|
||||
- ::boost::cref( getBounds())) );
|
||||
+ ::boost::cref( bounds )) );
|
||||
}
|
||||
|
||||
|
||||
--- libreoffice-4.3.1.2-orig/slideshow/source/engine/unoviewcontainer.cxx 2014-08-26 14:07:49.000000000 +1000
|
||||
+++ libreoffice-4.3.1.2/slideshow/source/engine/unoviewcontainer.cxx 2014-09-20 15:09:49.276489737 +1000
|
||||
@@ -45,11 +45,12 @@
|
||||
const UnoViewVector::iterator aEnd( maViews.end() );
|
||||
|
||||
// already added?
|
||||
+ uno::Reference<presentation::XSlideShowView> xView (rView->getUnoView());
|
||||
if( ::std::find_if( maViews.begin(),
|
||||
aEnd,
|
||||
::boost::bind(
|
||||
::std::equal_to< uno::Reference< presentation::XSlideShowView > >(),
|
||||
- ::boost::cref( rView->getUnoView() ),
|
||||
+ ::boost::cref( xView ),
|
||||
::boost::bind(
|
||||
&UnoView::getUnoView,
|
||||
_1 ) ) ) != aEnd )
|
@ -1,57 +0,0 @@
|
||||
Merged upstream commits for bug 523822:
|
||||
|
||||
a2d4bd6864e108a11d6ca2b69de5ebce265102dc "Refactor DPI settings validity check"
|
||||
1964870db4ad1e4334e8fc5050795469dc1fb05e "[PATCH] Fallback DPI detection on X11"
|
||||
|
||||
diff -u b/vcl/unx/generic/app/saldisp.cxx b/vcl/unx/generic/app/saldisp.cxx
|
||||
--- b/vcl/unx/generic/app/saldisp.cxx
|
||||
+++ b/vcl/unx/generic/app/saldisp.cxx
|
||||
@@ -120,6 +120,12 @@
|
||||
return nBits;
|
||||
}
|
||||
|
||||
+// check if the resolution is sane
|
||||
+static bool sal_ValidDPI(long nDPI)
|
||||
+{
|
||||
+ return (nDPI >= 50) && (nDPI <= 500);
|
||||
+}
|
||||
+
|
||||
static bool sal_GetVisualInfo( Display *pDisplay, XID nVID, XVisualInfo &rVI )
|
||||
{
|
||||
int nInfos;
|
||||
@@ -555,7 +561,7 @@
|
||||
const OString aValStr( pValStr );
|
||||
const long nDPI = (long) aValStr.toDouble();
|
||||
// guard against insane resolution
|
||||
- if( (nDPI >= 50) && (nDPI <= 500) )
|
||||
+ if( sal_ValidDPI(nDPI) )
|
||||
{
|
||||
aResolution_ = Pair( nDPI, nDPI );
|
||||
bExactResolution = true;
|
||||
@@ -569,7 +575,25 @@
|
||||
}
|
||||
if( bExactResolution == false )
|
||||
{
|
||||
- aResolution_ = Pair( 96, 96 );
|
||||
+ /* if Xft.dpi is not set, try and find the DPI from the
|
||||
+ * reported screen sizes and resolution. If there are multiple
|
||||
+ * screens, just fall back to the default 96x96
|
||||
+ */
|
||||
+ long xDPI = 96;
|
||||
+ long yDPI = 96;
|
||||
+ if (m_aScreens.size() == 1) {
|
||||
+ xDPI = (long)round(DisplayWidth(pDisp_, 0)*25.4/DisplayWidthMM(pDisp_, 0));
|
||||
+ yDPI = (long)round(DisplayHeight(pDisp_, 0)*25.4/DisplayHeightMM(pDisp_, 0));
|
||||
+ // if either is invalid set it equal to the other
|
||||
+ if (!sal_ValidDPI(xDPI) && sal_ValidDPI(yDPI))
|
||||
+ xDPI = yDPI;
|
||||
+ if (!sal_ValidDPI(yDPI) && sal_ValidDPI(xDPI))
|
||||
+ yDPI = xDPI;
|
||||
+ // if both are invalid, reset them to the default
|
||||
+ if (!sal_ValidDPI(xDPI) && !sal_ValidDPI(yDPI))
|
||||
+ xDPI = yDPI = 96;
|
||||
+ }
|
||||
+ aResolution_ = Pair( xDPI, yDPI );
|
||||
}
|
||||
|
||||
nMaxRequestSize_ = XExtendedMaxRequestSize( pDisp_ ) * 4;
|
@ -1,62 +0,0 @@
|
||||
From e04b8afe7aef5db535311630834bc25316433dae Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tomas.chvatal@gmail.com>
|
||||
Date: Mon, 3 Nov 2014 10:01:52 +0100
|
||||
Subject: [PATCH] Detect KDE5 and fallback to KDE4UI there
|
||||
|
||||
Change-Id: I8da53d7b81d28b0051be96c0c4ee0a29d8ed8360
|
||||
Reviewed-on: https://gerrit.libreoffice.org/12209
|
||||
Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com>
|
||||
Tested-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com>
|
||||
---
|
||||
vcl/unx/generic/desktopdetect/desktopdetector.cxx | 21 +++++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
|
||||
diff --git a/vcl/unx/generic/desktopdetect/desktopdetector.cxx b/vcl/unx/generic/desktopdetect/desktopdetector.cxx
|
||||
index 163d48e..e1f253d 100644
|
||||
--- a/vcl/unx/generic/desktopdetect/desktopdetector.cxx
|
||||
+++ b/vcl/unx/generic/desktopdetect/desktopdetector.cxx
|
||||
@@ -272,6 +272,23 @@ static bool is_kde4_desktop( Display* pDisplay )
|
||||
return false;
|
||||
}
|
||||
|
||||
+static bool is_kde5_desktop( Display* pDisplay )
|
||||
+{
|
||||
+ if ( NULL != getenv( "KDE_FULL_SESSION" ) )
|
||||
+ {
|
||||
+ OUString aVer( "5" );
|
||||
+
|
||||
+ const char *pVer = getenv( "KDE_SESSION_VERSION" );
|
||||
+ if ( pVer && aVer.equalsIgnoreAsciiCaseAscii( pVer ) )
|
||||
+ return true;
|
||||
+ }
|
||||
+
|
||||
+ if ( KDEVersion( pDisplay ) == 5 )
|
||||
+ return true;
|
||||
+
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
extern "C"
|
||||
{
|
||||
|
||||
@@ -285,6 +302,8 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment()
|
||||
|
||||
if ( aOver.equalsIgnoreAsciiCase( "tde" ) )
|
||||
return DESKTOP_TDE;
|
||||
+ if ( aOver.equalsIgnoreAsciiCase( "kde5" ) )
|
||||
+ return DESKTOP_KDE4;
|
||||
if ( aOver.equalsIgnoreAsciiCase( "kde4" ) )
|
||||
return DESKTOP_KDE4;
|
||||
if ( aOver.equalsIgnoreAsciiCase( "gnome" ) )
|
||||
@@ -371,6 +390,8 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment()
|
||||
|
||||
// these guys can be slower, with X property fetches,
|
||||
// round-trips etc. and so are done later.
|
||||
+ else if ( is_kde5_desktop( pDisplay ) )
|
||||
+ ret = DESKTOP_KDE4;
|
||||
else if ( is_kde4_desktop( pDisplay ) )
|
||||
ret = DESKTOP_KDE4;
|
||||
else if ( is_gnome_desktop( pDisplay ) )
|
||||
--
|
||||
2.2.1
|
||||
|
@ -1,41 +0,0 @@
|
||||
From ec8beb2fa279b8d7b1efbd9f5414895b17dfbe8b Mon Sep 17 00:00:00 2001
|
||||
From: Katarina Behrens <bubli@bubli.org>
|
||||
Date: Fri, 5 Sep 2014 14:11:15 +0200
|
||||
Subject: [PATCH] fdo#82681: return IsUserDefined w/o negation
|
||||
|
||||
when the predicate is called StyleSheetIsUserDefinedPredicate
|
||||
|
||||
Returning negation thereof somewhere, somehow, corrupts one of
|
||||
SfxItem pools. Thus, invalid read happens and crashes Impress
|
||||
and Draw.
|
||||
|
||||
Now the loop in SdStyleSheetPool::UpdateStdNames does nothing
|
||||
(it iterates through user-defined styles, but its body does
|
||||
something for non-user-defined styles), so more investigation
|
||||
here is needed.
|
||||
|
||||
This is partial revert of commit 3440766f0ad43454287a874b5fd34b6f2af6bdf1
|
||||
|
||||
Change-Id: I06f0da320c49674dac2adf43b7c374babbdadb57
|
||||
(cherry picked from commit a784c33fd48eeb3394dc63610e384cf866233093)
|
||||
Signed-off-by: Andras Timar <andras.timar@collabora.com>
|
||||
---
|
||||
sd/source/core/stlpool.cxx | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx
|
||||
index 17ca4f0..c98dff7 100644
|
||||
--- a/sd/source/core/stlpool.cxx
|
||||
+++ b/sd/source/core/stlpool.cxx
|
||||
@@ -943,7 +943,7 @@ struct StyleSheetIsUserDefinedPredicate : svl::StyleSheetPredicate
|
||||
|
||||
bool Check(const SfxStyleSheetBase& sheet) SAL_OVERRIDE
|
||||
{
|
||||
- return !sheet.IsUserDefined();
|
||||
+ return sheet.IsUserDefined();
|
||||
}
|
||||
};
|
||||
}
|
||||
--
|
||||
2.2.1
|
||||
|
@ -1,157 +0,0 @@
|
||||
From f24c60870531689d95c056037e48cd29ad1d17bb Mon Sep 17 00:00:00 2001
|
||||
From: David Tardon <dtardon@redhat.com>
|
||||
Date: Mon, 20 Oct 2014 14:21:22 +0200
|
||||
Subject: [PATCH] allow to build with system opencollada
|
||||
|
||||
Change-Id: I6101099c57d429987e06bca0652c843f4a94f8cc
|
||||
---
|
||||
Makefile.fetch | 2 +-
|
||||
RepositoryExternal.mk | 16 ++++++++++++++++
|
||||
config_host.mk.in | 4 +++-
|
||||
configure.ac | 35 +++++++++++++++++++++++++++++++++++
|
||||
external/Module_external.mk | 2 +-
|
||||
5 files changed, 56 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/Makefile.fetch b/Makefile.fetch
|
||||
index e8ccf5b..18b12be 100644
|
||||
--- a/Makefile.fetch
|
||||
+++ b/Makefile.fetch
|
||||
@@ -184,7 +184,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_host.mk $(SRCDIR)/download.lst $(SRCDIR)
|
||||
$(call fetch_Optional,NSS,NSS_TARBALL) \
|
||||
$(call fetch_Optional_pack,NUMBERTEXT_EXTENSION_PACK) \
|
||||
$(call fetch_Optional,ODFGEN,ODFGEN_TARBALL) \
|
||||
- $(call fetch_Optional,COLLADA2GLTF,OPENCOLLADA_TARBALL) \
|
||||
+ $(call fetch_Optional,OPENCOLLADA,OPENCOLLADA_TARBALL) \
|
||||
$(call fetch_Optional,OPENLDAP,OPENLDAP_TARBALL) \
|
||||
$(call fetch_Optional,OPENSSL,OPENSSL_TARBALL) \
|
||||
$(call fetch_Optional,ORCUS,ORCUS_TARBALL) \
|
||||
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
|
||||
index 5277aea..911dab1 100644
|
||||
--- a/RepositoryExternal.mk
|
||||
+++ b/RepositoryExternal.mk
|
||||
@@ -3371,6 +3371,20 @@ endif # SYSTEN_LIBGLTF
|
||||
|
||||
ifeq ($(ENABLE_COLLADA),TRUE)
|
||||
|
||||
+ifeq ($(SYSTEM_OPENCOLLADA),TRUE)
|
||||
+
|
||||
+define gb_LinkTarget__use_opencollada_parser
|
||||
+$(call gb_LinkTarget_set_include,$(1),\
|
||||
+ $$(INCLUDE) \
|
||||
+ $(OPENCOLLADA_CFLAGS) \
|
||||
+)
|
||||
+
|
||||
+$(call gb_LinkTarget_add_libs,$(1),$(OPENCOLLADA_LIBS))
|
||||
+
|
||||
+endef
|
||||
+
|
||||
+else # !SYSTEM_OPENCOLLADA
|
||||
+
|
||||
define gb_LinkTarget__use_opencollada_parser
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
|
||||
@@ -3385,6 +3399,8 @@ $(call gb_LinkTarget_use_static_libraries,$(1),\
|
||||
)
|
||||
endef
|
||||
|
||||
+endif # SYSTEM_OPENCOLLADA
|
||||
+
|
||||
define gb_LinkTarget__use_collada2gltf
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(call gb_UnpackedTarball_get_dir,collada2gltf) \
|
||||
diff --git a/config_host.mk.in b/config_host.mk.in
|
||||
index 0fefbb0..738c80c 100644
|
||||
--- a/config_host.mk.in
|
||||
+++ b/config_host.mk.in
|
||||
@@ -431,7 +431,8 @@ export OOOP_SAMPLES_PACK=@OOOP_SAMPLES_PACK@
|
||||
export OOOP_TEMPLATES_PACK=@OOOP_TEMPLATES_PACK@
|
||||
export OOO_JUNIT_JAR=@OOO_JUNIT_JAR@
|
||||
export OOO_VENDOR=@OOO_VENDOR@
|
||||
-export OPENSSL_CFLAGS=$(gb_SPACE)@OPENSSL_CFLAGS@
|
||||
+export OPENCOLLADA_CFLAGS=$(gb_SPACE)@OPENCOLLADA_CFLAGS@
|
||||
+export OPENCOLLADA_LIBS=$(gb_SPACE)@OPENCOLLADA_LIBS@
|
||||
export OPENSSL_LIBS=$(gb_SPACE)@OPENSSL_LIBS@
|
||||
export ORCUS_CFLAGS=$(gb_SPACE)@ORCUS_CFLAGS@
|
||||
export ORCUS_LIBS=$(gb_SPACE)@ORCUS_LIBS@
|
||||
@@ -558,6 +559,7 @@ export SYSTEM_NPAPI_HEADERS=@SYSTEM_NPAPI_HEADERS@
|
||||
export SYSTEM_NSS=@SYSTEM_NSS@
|
||||
export SYSTEM_ODBC_HEADERS=@SYSTEM_ODBC_HEADERS@
|
||||
export SYSTEM_ODFGEN=@SYSTEM_ODFGEN@
|
||||
+export SYSTEM_OPENCOLLADA=@SYSTEM_OPENCOLLADA@
|
||||
export SYSTEM_OPENLDAP=@SYSTEM_OPENLDAP@
|
||||
export SYSTEM_OPENSSL=@SYSTEM_OPENSSL@
|
||||
export SYSTEM_PAGEMAKER=@SYSTEM_PAGEMAKER@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 17feb1a..5d2198b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1641,6 +1641,11 @@ AC_ARG_WITH(system-ucpp,
|
||||
[Use ucpp already on system.]),,
|
||||
[])
|
||||
|
||||
+AC_ARG_WITH(system-opencollada,
|
||||
+ AS_HELP_STRING([--with-system-opencollada],
|
||||
+ [Use openCOLLADA already on system.]),,
|
||||
+ [with_system_opencollada=no])
|
||||
+
|
||||
AC_ARG_WITH(system-openldap,
|
||||
AS_HELP_STRING([--with-system-openldap],
|
||||
[Use the OpenLDAP LDAP SDK already on system.]),,
|
||||
@@ -10342,11 +10347,41 @@ if test "$enable_collada" != "no" -a "$ENABLE_GLTF" = "TRUE"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
ENABLE_COLLADA=TRUE
|
||||
AC_DEFINE(HAVE_FEATURE_COLLADA,1)
|
||||
+ AC_MSG_CHECKING([which OPENCOLLADA to use])
|
||||
+ if test "$with_system_opencollada" = "yes"; then
|
||||
+ AC_MSG_RESULT([external])
|
||||
+ SYSTEM_OPENCOLLADA=TRUE
|
||||
+ AS_IF([test -n "$OPENCOLLADA_CFLAGS"],[],[AC_MSG_ERROR([export OPENCOLLADA_CFLAGS])])
|
||||
+ AS_IF([test -n "$OPENCOLLADA_LIBS"],[],[AC_MSG_ERROR([export OPENCOLLADA_LIBS])])
|
||||
+ AC_LANG_PUSH([C++])
|
||||
+ save_CXXFLAGS=$CXXFLAGS
|
||||
+ save_CPPFLAGS=$CPPFLAGS
|
||||
+ CXXFLAGS="$CXXFLAGS $OPENCOLLADA_CFLAGS"
|
||||
+ CPPFLAGS="$CPPFLAGS $OPENCOLLADA_CFLAGS"
|
||||
+ AC_CHECK_HEADERS(
|
||||
+ COLLADABU.h \
|
||||
+ COLLADAFW.h \
|
||||
+ COLLADASaxFWLLoader.h \
|
||||
+ GeneratedSaxParser.h,
|
||||
+ [],
|
||||
+ [AC_MSG_ERROR([openCOLLADA headers not found. Install openCOLLADA])],
|
||||
+ [])
|
||||
+ CXXFLAGS=$save_CXXFLAGS
|
||||
+ CPPFLAGS=$save_CPPFLAGS
|
||||
+ AC_LANG_POP([C++])
|
||||
+ OPENCOLLADA_CFLAGS=$(printf '%s' "$OPENCOLLADA_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
|
||||
+ else
|
||||
+ AC_MSG_RESULT([internal])
|
||||
+ BUILD_TYPE="$BUILD_TYPE OPENCOLLADA"
|
||||
+ fi
|
||||
BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_SUBST(ENABLE_COLLADA)
|
||||
+AC_SUBST([OPENCOLLADA_CFLAGS])
|
||||
+AC_SUBST([OPENCOLLADA_LIBS])
|
||||
+AC_SUBST([SYSTEM_OPENCOLLADA])
|
||||
|
||||
# pdf import?
|
||||
AC_MSG_CHECKING([whether to build the PDF import feature])
|
||||
diff --git a/external/Module_external.mk b/external/Module_external.mk
|
||||
index c95ea20..688e335 100644
|
||||
--- a/external/Module_external.mk
|
||||
+++ b/external/Module_external.mk
|
||||
@@ -75,7 +75,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
|
||||
$(call gb_Helper_optional,NEON,neon) \
|
||||
$(call gb_Helper_optional,NSS,nss) \
|
||||
$(call gb_Helper_optional,ODFGEN,libodfgen) \
|
||||
- $(call gb_Helper_optional,COLLADA2GLTF,opencollada) \
|
||||
+ $(call gb_Helper_optional,OPENCOLLADA,opencollada) \
|
||||
$(call gb_Helper_optional,OPENLDAP,openldap) \
|
||||
$(call gb_Helper_optional,OPENSSL,openssl) \
|
||||
$(call gb_Helper_optional,ORCUS,liborcus) \
|
||||
--
|
||||
2.2.1
|
||||
|
@ -1,70 +0,0 @@
|
||||
From c1727287731dd0bd19ce36f58c1ce29a2a8603b3 Mon Sep 17 00:00:00 2001
|
||||
From: Tomas Chvatal <tomas.chvatal@gmail.com>
|
||||
Date: Sat, 25 Jan 2014 11:44:27 +0100
|
||||
Subject: [PATCH] Use pkgconfig to detect curl first, then fallback to curl-config.
|
||||
|
||||
Change-Id: I3666c4d0298a76062a24ad8ae1c319f3480a9290
|
||||
---
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 93c39d3..fb51308 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -8661,39 +8661,31 @@
|
||||
AC_MSG_RESULT([external])
|
||||
SYSTEM_CURL=YES
|
||||
|
||||
- curl_version=""
|
||||
- if test "$cross_compiling" = "yes"; then
|
||||
- dnl At least the OBS mingw32-libcurl-devel package
|
||||
- dnl comes with a proper .pc file
|
||||
- PKG_CHECK_MODULES(CURL, libcurl,, [:])
|
||||
- if test -n "$CURL_PKG_ERRORS"; then
|
||||
- AC_MSG_RESULT([no])
|
||||
- else
|
||||
- curl_version=`$PKG_CONFIG --modversion libcurl`
|
||||
- fi
|
||||
- fi
|
||||
- if test -z "$curl_version"; then
|
||||
+ AC_MSG_CHECKING([whether libcurl is >= 7.19.4])
|
||||
+
|
||||
+ # First try PKGCONFIG and then fall back
|
||||
+ PKG_CHECK_MODULES(CURL, libcurl >= 7.19.4,, [:])
|
||||
+
|
||||
+ if test -n "$CURL_PKG_ERRORS"; then
|
||||
AC_PATH_PROG(CURLCONFIG, curl-config)
|
||||
if test -z "$CURLCONFIG"; then
|
||||
- AC_MSG_ERROR([install the libcurl development package])
|
||||
+ AC_MSG_ERROR([curl developement files not found])
|
||||
fi
|
||||
CURL_LIBS=`$CURLCONFIG --libs`
|
||||
CURL_CFLAGS=$("$CURLCONFIG" --cflags | sed -e "s/-I/${ISYSTEM?}/g")
|
||||
curl_version=`$CURLCONFIG --version | $SED -e 's/^libcurl //'`
|
||||
+
|
||||
+ case $curl_version in
|
||||
+ dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
+ dnl so they need to be doubled to end up in the configure script
|
||||
+ 7.19.4|7.19.[[5-9]]|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
+ ;;
|
||||
+ *)
|
||||
+ AC_MSG_ERROR([no, you have $curl_version])
|
||||
+ ;;
|
||||
+ esac
|
||||
fi
|
||||
-
|
||||
- AC_MSG_CHECKING([whether libcurl is >= 7.19.4])
|
||||
-
|
||||
- case $curl_version in
|
||||
- dnl brackets doubled below because Autoconf uses them as m4 quote characters,
|
||||
- dnl so they need to be doubled to end up in the configure script
|
||||
- 7.19.4|7.19.[[5-9]]|7.[[2-9]]?.*|7.???.*|[[8-9]].*|[[1-9]][[0-9]].*)
|
||||
- AC_MSG_RESULT([yes, you have $curl_version])
|
||||
- ;;
|
||||
- *)
|
||||
- AC_MSG_ERROR([no, you have $curl_version])
|
||||
- ;;
|
||||
- esac
|
||||
+ AC_MSG_RESULT([yes])
|
||||
|
||||
libo_MINGW_CHECK_DLL([libcurl])
|
||||
libo_MINGW_TRY_DLL([libintl])
|
@ -1,622 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice/libreoffice-4.3.5.2.ebuild,v 1.6 2015/02/22 10:16:33 mgorny Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
QT_MINIMAL="4.7.4"
|
||||
KDE_SCM="git"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make
|
||||
# everyone happy.
|
||||
DEV_URI="
|
||||
http://dev-builds.libreoffice.org/pre-releases/src
|
||||
http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
|
||||
http://download.documentfoundation.org/libreoffice/old/${PV}/
|
||||
"
|
||||
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
|
||||
ADDONS_URI="http://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-2"
|
||||
inherit base autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic nsplugins ${SCM_ECLASS}
|
||||
unset SCM_ECLASS
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs
|
||||
# Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
MODULES="core help"
|
||||
# Only release has the tarballs
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
for mod in ${MODULES}; do
|
||||
if [[ ${mod} == core ]]; then
|
||||
SRC_URI+=" ${i}/${P}.tar.xz"
|
||||
else
|
||||
SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
|
||||
fi
|
||||
done
|
||||
unset mod
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/OpenCOLLADA-master-6509aa13af.tar.bz2 )"
|
||||
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
|
||||
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
|
||||
SRC_URI+=" ${ADDONS_SRC}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset EXT_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
|
||||
+gtk gtk3 jemalloc kde mysql odk opengl postgres telepathy test vlc"
|
||||
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
# Unpackaged separate extensions:
|
||||
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
|
||||
# hunart: only on ooo extensions -> fubared download path somewhere on sf
|
||||
# numbertext, typo, validator, watch-window: ^^
|
||||
# oooblogger: no homepage or anything
|
||||
# Extensions that need extra work:
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
IUSE+=" libreoffice_extensions_${lo_xt}"
|
||||
done
|
||||
unset lo_xt
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
[[ ${PV} == *9999* ]] || \
|
||||
KEYWORDS="amd64 ~arm x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
# FIXME: collada? ( media-libs/opencollada )
|
||||
# how to configure system-collada?
|
||||
COMMON_DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
dev-cpp/libcmis:0.4
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.46:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( >=dev-libs/dbus-glib-0.92 )
|
||||
eds? ( gnome-extra/evolution-data-server )
|
||||
firebird? ( >=dev-db/firebird-2.5 )
|
||||
gltf? ( media-libs/libgltf )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
gtk? (
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
gtk3? ( >=x11-libs/gtk+-3.2:3 )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
|
||||
libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
|
||||
libreoffice_extensions_wiki-publisher? (
|
||||
dev-java/commons-codec:0
|
||||
dev-java/commons-httpclient:3
|
||||
dev-java/commons-lang:2.1
|
||||
dev-java/commons-logging:0
|
||||
dev-java/tomcat-servlet-api:3.0
|
||||
)
|
||||
mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
postgres? ( >=dev-db/postgresql-9.0[kerberos] )
|
||||
telepathy? (
|
||||
dev-libs/glib:2
|
||||
>=net-libs/telepathy-glib-0.18.0
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
vlc? ( media-video/vlc )
|
||||
"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
PDEPEND="~app-office/libreoffice-l10n-${PV}"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
PDEPEND="!app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
>=dev-libs/libxml2-2.7.8
|
||||
dev-libs/libxslt
|
||||
dev-perl/Archive-Zip
|
||||
dev-util/cppunit
|
||||
>=dev-util/gperf-3
|
||||
dev-util/intltool
|
||||
>=dev-util/mdds-0.10.3:=
|
||||
media-libs/glm
|
||||
net-misc/npapi-sdk
|
||||
>=sys-apps/findutils-4.4.2
|
||||
sys-devel/bison
|
||||
sys-apps/coreutils
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
>=sys-devel/make-3.82
|
||||
sys-devel/ucpp
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
x11-proto/randrproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto
|
||||
java? (
|
||||
>=virtual/jdk-1.6
|
||||
>=dev-java/ant-core-1.7
|
||||
)
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
test? ( dev-util/cppunit )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-3.7-system-pyuno.patch"
|
||||
|
||||
# from 4.3 branch
|
||||
"${FILESDIR}/${PN}-4.3.5.2-return-IsUserDefined-w-o-negation.patch" # bug 524770
|
||||
|
||||
# from 4.4 branch
|
||||
"${FILESDIR}/${PN}-4.3.1.2-implement--with-system-coinmp.patch"
|
||||
"${FILESDIR}/${PN}-4.3.4.1-boost-1.56.0.patch" # bug 522178
|
||||
"${FILESDIR}/${PN}-4.3.5.2-system-opencollada.patch"
|
||||
"${FILESDIR}/${PN}-4.3.5.2-detect-KDE5-fallback-to-KDE4UI.patch"
|
||||
|
||||
# from master branch
|
||||
|
||||
# submitted
|
||||
"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
|
||||
)
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
bluetooth? ( dbus )
|
||||
collada? ( gltf )
|
||||
gnome? ( gtk )
|
||||
eds? ( gnome )
|
||||
telepathy? ( gtk )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
CHECKREQS_MEMORY="512M"
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
|
||||
pkg_pretend() {
|
||||
local pgslot
|
||||
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
check-reqs_pkg_pretend
|
||||
|
||||
if [[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
|
||||
; then
|
||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
||||
die "Too old gcc found."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure pg version but we have to be sure the pg is installed (first
|
||||
# install on clean system)
|
||||
if use postgres && has_version dev-db/postgresql; then
|
||||
pgslot=$(postgresql-config show)
|
||||
if [[ ${pgslot//.} < 90 ]] ; then
|
||||
eerror "PostgreSQL slot must be set to 9.0 or higher."
|
||||
eerror " postgresql-config set 9.0"
|
||||
die "PostgreSQL slot is not set to 9.0 or higher."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
kde4-base_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local mod mod2 dest tmplfile tmplname mypv
|
||||
|
||||
[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
|
||||
use branding && unpack "${BRANDING}"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
unpack "${P}.tar.xz"
|
||||
for mod in ${MODULES}; do
|
||||
[[ ${mod} == core ]] && continue
|
||||
unpack "${PN}-${mod}-${PV}.tar.xz"
|
||||
done
|
||||
else
|
||||
for mod in ${MODULES}; do
|
||||
mypv=${PV/.9999}
|
||||
[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
|
||||
EGIT_PROJECT="${PN}/${mod}"
|
||||
EGIT_SOURCEDIR="${WORKDIR}/${P}"
|
||||
[[ ${mod} != core ]] && EGIT_SOURCEDIR="${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
|
||||
EGIT_NOUNPACK="true"
|
||||
git-2_src_unpack
|
||||
if [[ ${mod} != core ]]; then
|
||||
mod2=${mod}
|
||||
# mapping does not match on help
|
||||
[[ ${mod} == help ]] && mod2="helpcontent2"
|
||||
mkdir -p "${S}/${mod2}/" || die
|
||||
mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
|
||||
rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
fi
|
||||
done
|
||||
unset EGIT_PROJECT EGIT_SOURCEDIR EGIT_REPO_URI EGIT_BRANCH
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python 2.7 enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
# patchset
|
||||
if [[ -n ${PATCHSET} ]]; then
|
||||
EPATCH_FORCE="yes" \
|
||||
EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
epatch
|
||||
fi
|
||||
|
||||
base_src_prepare
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# system pyuno mess
|
||||
sed \
|
||||
-e "s:%eprefix%:${EPREFIX}:g" \
|
||||
-e "s:%libdir%:$(get_libdir):g" \
|
||||
-i pyuno/source/module/uno.py \
|
||||
-i scripting/source/pyprov/officehelper.py || die
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e 's#all : build unitcheck#all : build#g' \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
|
||||
-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
|
||||
Makefile.in || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local java_opts
|
||||
local internal_libs
|
||||
local lo_ext
|
||||
local ext_opts
|
||||
local jbs=$(sed -ne 's/.*\(-j[[:space:]]*\|--jobs=\)\([[:digit:]]\+\).*/\2/;T;p' <<< "${MAKEOPTS}")
|
||||
|
||||
# recheck that there is some value in jobs
|
||||
[[ -z ${jbs} ]] && jbs="1"
|
||||
|
||||
# sane: just sane.h header that is used for scan in writer, not
|
||||
# linked or anything else, worthless to depend on
|
||||
# vigra: just uses templates from there
|
||||
# it is serious pain in the ass for packaging
|
||||
# should be replaced by boost::gil if someone interested
|
||||
internal_libs+="
|
||||
--without-system-sane
|
||||
--without-system-vigra
|
||||
"
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
|
||||
else
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
java_opts="
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
|
||||
--with-jvm-path="${EPREFIX}/usr/lib/"
|
||||
"
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
|
||||
|
||||
if use libreoffice_extensions_wiki-publisher; then
|
||||
java_opts+="
|
||||
--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
|
||||
--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
|
||||
--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
|
||||
--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
|
||||
--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-graphite: disabling causes build breakages
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --disable-gnome-vfs: old gnome virtual fs support
|
||||
# --disable-kdeab: kde3 adressbook
|
||||
# --disable-kde: kde3 support
|
||||
# --disable-systray: quickstarter does not actually work at all so do not
|
||||
# promote it
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
# FIXME: $(use_with collada system-opencollada)
|
||||
econf \
|
||||
--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
|
||||
--with-system-headers \
|
||||
--with-system-libs \
|
||||
--with-system-jars \
|
||||
--with-system-dicts \
|
||||
--enable-cairo-canvas \
|
||||
--enable-graphite \
|
||||
--enable-largefile \
|
||||
--enable-neon \
|
||||
--enable-python=system \
|
||||
--enable-randr \
|
||||
--enable-randr-link \
|
||||
--enable-release-build \
|
||||
--disable-hardlink-deliver \
|
||||
--disable-ccache \
|
||||
--disable-crashdump \
|
||||
--disable-dependency-tracking \
|
||||
--disable-epm \
|
||||
--disable-fetch-external \
|
||||
--disable-gnome-vfs \
|
||||
--disable-gstreamer-0-10 \
|
||||
--disable-mergelibs \
|
||||
--disable-report-builder \
|
||||
--disable-kdeab \
|
||||
--disable-kde \
|
||||
--disable-online-update \
|
||||
--disable-systray \
|
||||
--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
|
||||
--with-build-version="Gentoo official package" \
|
||||
--enable-extension-integration \
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-tar="${DISTDIR}" \
|
||||
--with-lang="" \
|
||||
--with-parallelism=${jbs} \
|
||||
--with-system-ucpp \
|
||||
--with-vendor="Gentoo Foundation" \
|
||||
--with-x \
|
||||
--without-fonts \
|
||||
--without-myspell-dicts \
|
||||
--without-help \
|
||||
--with-helppack-integration \
|
||||
--without-sun-templates \
|
||||
$(use_enable bluetooth sdremote-bluetooth) \
|
||||
$(use_enable coinmp) \
|
||||
$(use_enable collada) \
|
||||
$(use_enable cups) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable dbus) \
|
||||
$(use_enable eds evolution2) \
|
||||
$(use_enable firebird firebird-sdbc) \
|
||||
$(use_enable gltf) \
|
||||
$(use_enable gnome gconf) \
|
||||
$(use_enable gnome gio) \
|
||||
$(use_enable gnome lockdown) \
|
||||
$(use_enable gstreamer) \
|
||||
$(use_enable gtk) \
|
||||
$(use_enable gtk3) \
|
||||
$(use_enable kde kde4) \
|
||||
$(use_enable mysql ext-mariadb-connector) \
|
||||
$(use_enable odk) \
|
||||
$(use_enable opengl) \
|
||||
$(use_enable postgres postgresql-sdbc) \
|
||||
$(use_enable telepathy) \
|
||||
$(use_enable vlc) \
|
||||
$(use_with coinmp system-coinmp) \
|
||||
$(use_with gltf system-libgltf) \
|
||||
$(use_with java) \
|
||||
$(use_with mysql system-mysql-cppconn) \
|
||||
$(use_with odk doxygen) \
|
||||
${internal_libs} \
|
||||
${java_opts} \
|
||||
${ext_opts}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# hack for offlinehelp, this needs fixing upstream at some point
|
||||
# it is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
(
|
||||
grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
|
||||
source "${T}/config_host.mk" 2&> /dev/null
|
||||
|
||||
local path="${WORKDIR}/helpcontent2/source/auxiliary/"
|
||||
mkdir -p "${path}" || die
|
||||
|
||||
echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
|
||||
perl "${S}/helpcontent2/helpers/create_ilst.pl" \
|
||||
-dir=icon-themes/galaxy/res/helpimg \
|
||||
> "${path}/helpimg.ilst"
|
||||
[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
|
||||
)
|
||||
|
||||
local target
|
||||
use test && target="build" || target="build-nocheck"
|
||||
|
||||
# this is not a proper make script
|
||||
make ${target} || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
make unitcheck || die
|
||||
make slowcheck || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This is not Makefile so no buildserver
|
||||
make DESTDIR="${D}" distro-pack-install -o build -o check || die
|
||||
|
||||
# Fix bash completion placement
|
||||
newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
rm -rf "${ED}"/etc/ || die
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
|
||||
fi
|
||||
|
||||
# symlink the nsplugin to proper location
|
||||
# use gtk && inst_plugin /usr/$(get_libdir)/libreoffice/program/libnpsoplugin.so
|
||||
|
||||
# Hack for offlinehelp, this needs fixing upstream at some point.
|
||||
# It is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
insinto /usr/$(get_libdir)/libreoffice/help
|
||||
doins xmlhelp/util/*.xsl
|
||||
|
||||
# Remove desktop files for support to old installs that can't parse mime
|
||||
rm -rf "${ED}"/usr/share/mimelnk/
|
||||
|
||||
# FIXME: Hack add missing file
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
doins "${S}"/instdir/program/libsaxlo.so
|
||||
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1,623 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice/libreoffice-4.3.6.2.ebuild,v 1.2 2015/02/22 10:16:33 mgorny Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
QT_MINIMAL="4.7.4"
|
||||
KDE_SCM="git"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make
|
||||
# everyone happy.
|
||||
DEV_URI="
|
||||
http://dev-builds.libreoffice.org/pre-releases/src
|
||||
http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
|
||||
http://download.documentfoundation.org/libreoffice/old/${PV}/
|
||||
"
|
||||
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
|
||||
ADDONS_URI="http://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
|
||||
inherit base autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic nsplugins versionator ${SCM_ECLASS}
|
||||
unset SCM_ECLASS
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs
|
||||
# Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
MODULES="core help"
|
||||
# Only release has the tarballs
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
for mod in ${MODULES}; do
|
||||
if [[ ${mod} == core ]]; then
|
||||
SRC_URI+=" ${i}/${P}.tar.xz"
|
||||
else
|
||||
SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
|
||||
fi
|
||||
done
|
||||
unset mod
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/OpenCOLLADA-master-6509aa13af.tar.bz2 )"
|
||||
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
|
||||
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
|
||||
SRC_URI+=" ${ADDONS_SRC}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset EXT_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
|
||||
+gtk gtk3 jemalloc kde mysql odk opengl postgres telepathy test vlc"
|
||||
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
# Unpackaged separate extensions:
|
||||
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
|
||||
# hunart: only on ooo extensions -> fubared download path somewhere on sf
|
||||
# numbertext, typo, validator, watch-window: ^^
|
||||
# oooblogger: no homepage or anything
|
||||
# Extensions that need extra work:
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
IUSE+=" libreoffice_extensions_${lo_xt}"
|
||||
done
|
||||
unset lo_xt
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
[[ ${PV} == *9999* ]] || \
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
# FIXME: collada? ( media-libs/opencollada )
|
||||
# how to configure system-collada?
|
||||
COMMON_DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
=dev-cpp/libcmis-0.4*
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.46:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( >=dev-libs/dbus-glib-0.92 )
|
||||
eds? ( gnome-extra/evolution-data-server )
|
||||
firebird? ( >=dev-db/firebird-2.5 )
|
||||
gltf? ( media-libs/libgltf )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
gtk? (
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
gtk3? ( >=x11-libs/gtk+-3.2:3 )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
|
||||
libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
|
||||
libreoffice_extensions_wiki-publisher? (
|
||||
dev-java/commons-codec:0
|
||||
dev-java/commons-httpclient:3
|
||||
dev-java/commons-lang:2.1
|
||||
dev-java/commons-logging:0
|
||||
dev-java/tomcat-servlet-api:3.0
|
||||
)
|
||||
mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
postgres? ( >=dev-db/postgresql-9.0[kerberos] )
|
||||
telepathy? (
|
||||
dev-libs/glib:2
|
||||
>=net-libs/telepathy-glib-0.18.0
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
vlc? ( media-video/vlc )
|
||||
"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
PDEPEND="!app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
>=dev-libs/libxml2-2.7.8
|
||||
dev-libs/libxslt
|
||||
dev-perl/Archive-Zip
|
||||
dev-util/cppunit
|
||||
>=dev-util/gperf-3
|
||||
dev-util/intltool
|
||||
>=dev-util/mdds-0.10.3:=
|
||||
media-libs/glm
|
||||
net-misc/npapi-sdk
|
||||
>=sys-apps/findutils-4.4.2
|
||||
sys-devel/bison
|
||||
sys-apps/coreutils
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
>=sys-devel/make-3.82
|
||||
sys-devel/ucpp
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
x11-proto/randrproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto
|
||||
java? (
|
||||
>=virtual/jdk-1.6
|
||||
>=dev-java/ant-core-1.7
|
||||
)
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
test? ( dev-util/cppunit )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-3.7-system-pyuno.patch"
|
||||
|
||||
# from 4.4 branch
|
||||
"${FILESDIR}/${PN}-4.3.1.2-implement--with-system-coinmp.patch"
|
||||
"${FILESDIR}/${PN}-4.3.4.1-boost-1.56.0.patch" # bug 522178
|
||||
"${FILESDIR}/${PN}-4.3.5.2-system-opencollada.patch"
|
||||
"${FILESDIR}/${PN}-4.3.5.2-detect-KDE5-fallback-to-KDE4UI.patch"
|
||||
"${FILESDIR}/${PN}-4.3.5.2-DPI.patch"
|
||||
|
||||
# from master branch
|
||||
|
||||
# submitted
|
||||
"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
|
||||
)
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
bluetooth? ( dbus )
|
||||
collada? ( gltf )
|
||||
gnome? ( gtk )
|
||||
eds? ( gnome )
|
||||
telepathy? ( gtk )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
CHECKREQS_MEMORY="512M"
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
|
||||
pkg_pretend() {
|
||||
local pgslot
|
||||
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
check-reqs_pkg_pretend
|
||||
|
||||
if [[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
|
||||
; then
|
||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
||||
die "Too old gcc found."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure pg version but we have to be sure the pg is installed (first
|
||||
# install on clean system)
|
||||
if use postgres && has_version dev-db/postgresql; then
|
||||
pgslot=$(postgresql-config show)
|
||||
if [[ ${pgslot//.} < 90 ]] ; then
|
||||
eerror "PostgreSQL slot must be set to 9.0 or higher."
|
||||
eerror " postgresql-config set 9.0"
|
||||
die "PostgreSQL slot is not set to 9.0 or higher."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
kde4-base_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local mod mod2 dest tmplfile tmplname mypv
|
||||
|
||||
[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
|
||||
use branding && unpack "${BRANDING}"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
unpack "${P}.tar.xz"
|
||||
for mod in ${MODULES}; do
|
||||
[[ ${mod} == core ]] && continue
|
||||
unpack "${PN}-${mod}-${PV}.tar.xz"
|
||||
done
|
||||
else
|
||||
for mod in ${MODULES}; do
|
||||
mypv=${PV/.9999}
|
||||
[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
|
||||
[[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
|
||||
git-r3_src_unpack
|
||||
if [[ ${mod} != core ]]; then
|
||||
mod2=${mod}
|
||||
# mapping does not match on help
|
||||
[[ ${mod} == help ]] && mod2="helpcontent2"
|
||||
mkdir -p "${S}/${mod2}/" || die
|
||||
mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
|
||||
rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
fi
|
||||
done
|
||||
unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python 2.7 enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
# patchset
|
||||
if [[ -n ${PATCHSET} ]]; then
|
||||
EPATCH_FORCE="yes" \
|
||||
EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
epatch
|
||||
fi
|
||||
|
||||
base_src_prepare
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# system pyuno mess
|
||||
sed \
|
||||
-e "s:%eprefix%:${EPREFIX}:g" \
|
||||
-e "s:%libdir%:$(get_libdir):g" \
|
||||
-i pyuno/source/module/uno.py \
|
||||
-i scripting/source/pyprov/officehelper.py || die
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e 's#all : build unitcheck#all : build#g' \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
|
||||
-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
|
||||
Makefile.in || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local java_opts
|
||||
local internal_libs
|
||||
local lo_ext
|
||||
local ext_opts
|
||||
local jbs=$(sed -ne 's/.*\(-j[[:space:]]*\|--jobs=\)\([[:digit:]]\+\).*/\2/;T;p' <<< "${MAKEOPTS}")
|
||||
|
||||
# recheck that there is some value in jobs
|
||||
[[ -z ${jbs} ]] && jbs="1"
|
||||
|
||||
# sane: just sane.h header that is used for scan in writer, not
|
||||
# linked or anything else, worthless to depend on
|
||||
# vigra: just uses templates from there
|
||||
# it is serious pain in the ass for packaging
|
||||
# should be replaced by boost::gil if someone interested
|
||||
internal_libs+="
|
||||
--without-system-sane
|
||||
--without-system-vigra
|
||||
"
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
|
||||
else
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
java_opts="
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
|
||||
--with-jvm-path="${EPREFIX}/usr/lib/"
|
||||
"
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
|
||||
|
||||
if use libreoffice_extensions_wiki-publisher; then
|
||||
java_opts+="
|
||||
--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
|
||||
--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
|
||||
--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
|
||||
--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
|
||||
--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-graphite: disabling causes build breakages
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --disable-gnome-vfs: old gnome virtual fs support
|
||||
# --disable-kdeab: kde3 adressbook
|
||||
# --disable-kde: kde3 support
|
||||
# --disable-systray: quickstarter does not actually work at all so do not
|
||||
# promote it
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
# FIXME: $(use_with collada system-opencollada)
|
||||
econf \
|
||||
--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
|
||||
--with-system-headers \
|
||||
--with-system-libs \
|
||||
--with-system-jars \
|
||||
--with-system-dicts \
|
||||
--enable-cairo-canvas \
|
||||
--enable-graphite \
|
||||
--enable-largefile \
|
||||
--enable-neon \
|
||||
--enable-python=system \
|
||||
--enable-randr \
|
||||
--enable-randr-link \
|
||||
--enable-release-build \
|
||||
--disable-hardlink-deliver \
|
||||
--disable-ccache \
|
||||
--disable-crashdump \
|
||||
--disable-dependency-tracking \
|
||||
--disable-epm \
|
||||
--disable-fetch-external \
|
||||
--disable-gnome-vfs \
|
||||
--disable-gstreamer-0-10 \
|
||||
--disable-report-builder \
|
||||
--disable-kdeab \
|
||||
--disable-kde \
|
||||
--disable-mergelibs \
|
||||
--disable-online-update \
|
||||
--disable-systray \
|
||||
--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
|
||||
--with-build-version="Gentoo official package" \
|
||||
--enable-extension-integration \
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-tar="${DISTDIR}" \
|
||||
--with-lang="" \
|
||||
--with-parallelism=${jbs} \
|
||||
--with-system-ucpp \
|
||||
--with-vendor="Gentoo Foundation" \
|
||||
--with-x \
|
||||
--without-fonts \
|
||||
--without-myspell-dicts \
|
||||
--without-help \
|
||||
--with-helppack-integration \
|
||||
--without-sun-templates \
|
||||
$(use_enable bluetooth sdremote-bluetooth) \
|
||||
$(use_enable coinmp) \
|
||||
$(use_enable collada) \
|
||||
$(use_enable cups) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable dbus) \
|
||||
$(use_enable eds evolution2) \
|
||||
$(use_enable firebird firebird-sdbc) \
|
||||
$(use_enable gltf) \
|
||||
$(use_enable gnome gconf) \
|
||||
$(use_enable gnome gio) \
|
||||
$(use_enable gnome lockdown) \
|
||||
$(use_enable gstreamer) \
|
||||
$(use_enable gtk) \
|
||||
$(use_enable gtk3) \
|
||||
$(use_enable kde kde4) \
|
||||
$(use_enable mysql ext-mariadb-connector) \
|
||||
$(use_enable odk) \
|
||||
$(use_enable opengl) \
|
||||
$(use_enable postgres postgresql-sdbc) \
|
||||
$(use_enable telepathy) \
|
||||
$(use_enable vlc) \
|
||||
$(use_with coinmp system-coinmp) \
|
||||
$(use_with gltf system-libgltf) \
|
||||
$(use_with java) \
|
||||
$(use_with mysql system-mysql-cppconn) \
|
||||
$(use_with odk doxygen) \
|
||||
${internal_libs} \
|
||||
${java_opts} \
|
||||
${ext_opts}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# more and more LO stuff tries to use OpenGL, including tests during build
|
||||
# bug 501508, bug 540624 and probably more
|
||||
addpredict /dev/dri
|
||||
addpredict /dev/nvidiactl
|
||||
|
||||
# hack for offlinehelp, this needs fixing upstream at some point
|
||||
# it is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
(
|
||||
grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
|
||||
source "${T}/config_host.mk" 2&> /dev/null
|
||||
|
||||
local path="${WORKDIR}/helpcontent2/source/auxiliary/"
|
||||
mkdir -p "${path}" || die
|
||||
|
||||
echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
|
||||
perl "${S}/helpcontent2/helpers/create_ilst.pl" \
|
||||
-dir=icon-themes/galaxy/res/helpimg \
|
||||
> "${path}/helpimg.ilst"
|
||||
[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
|
||||
)
|
||||
|
||||
local target
|
||||
use test && target="build" || target="build-nocheck"
|
||||
|
||||
# this is not a proper make script
|
||||
make ${target} || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
make unitcheck || die
|
||||
make slowcheck || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This is not Makefile so no buildserver
|
||||
make DESTDIR="${D}" distro-pack-install -o build -o check || die
|
||||
|
||||
# Fix bash completion placement
|
||||
newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
rm -rf "${ED}"/etc/ || die
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
|
||||
fi
|
||||
|
||||
# symlink the nsplugin to proper location
|
||||
# use gtk && inst_plugin /usr/$(get_libdir)/libreoffice/program/libnpsoplugin.so
|
||||
|
||||
# Hack for offlinehelp, this needs fixing upstream at some point.
|
||||
# It is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
insinto /usr/$(get_libdir)/libreoffice/help
|
||||
doins xmlhelp/util/*.xsl
|
||||
|
||||
# Remove desktop files for support to old installs that can't parse mime
|
||||
rm -rf "${ED}"/usr/share/mimelnk/
|
||||
|
||||
# FIXME: Hack add missing file
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
doins "${S}"/instdir/program/libsaxlo.so
|
||||
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1,621 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice/libreoffice-4.3.9999.ebuild,v 1.19 2015/04/03 22:12:56 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
QT_MINIMAL="4.7.4"
|
||||
KDE_SCM="git"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make
|
||||
# everyone happy.
|
||||
DEV_URI="
|
||||
http://dev-builds.libreoffice.org/pre-releases/src
|
||||
http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
|
||||
http://download.documentfoundation.org/libreoffice/old/${PV}/
|
||||
"
|
||||
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
|
||||
ADDONS_URI="http://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
|
||||
inherit base autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic nsplugins versionator ${SCM_ECLASS}
|
||||
unset SCM_ECLASS
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs
|
||||
# Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
MODULES="core help"
|
||||
# Only release has the tarballs
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
for mod in ${MODULES}; do
|
||||
if [[ ${mod} == core ]]; then
|
||||
SRC_URI+=" ${i}/${P}.tar.xz"
|
||||
else
|
||||
SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
|
||||
fi
|
||||
done
|
||||
unset mod
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/OpenCOLLADA-master-6509aa13af.tar.bz2 )"
|
||||
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
|
||||
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
|
||||
SRC_URI+=" ${ADDONS_SRC}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset EXT_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
|
||||
+gtk gtk3 jemalloc kde mysql odk opengl postgres telepathy test vlc"
|
||||
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
# Unpackaged separate extensions:
|
||||
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
|
||||
# hunart: only on ooo extensions -> fubared download path somewhere on sf
|
||||
# numbertext, typo, validator, watch-window: ^^
|
||||
# oooblogger: no homepage or anything
|
||||
# Extensions that need extra work:
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
IUSE+=" libreoffice_extensions_${lo_xt}"
|
||||
done
|
||||
unset lo_xt
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
[[ ${PV} == *9999* ]] || \
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
# FIXME: collada? ( media-libs/opencollada )
|
||||
# how to configure system-collada?
|
||||
COMMON_DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
=dev-cpp/libcmis-0.4*
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.46:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( >=dev-libs/dbus-glib-0.92 )
|
||||
eds? ( gnome-extra/evolution-data-server )
|
||||
firebird? ( >=dev-db/firebird-2.5 )
|
||||
gltf? ( media-libs/libgltf )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
gtk? (
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
gtk3? ( >=x11-libs/gtk+-3.2:3 )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
|
||||
libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
|
||||
libreoffice_extensions_wiki-publisher? (
|
||||
dev-java/commons-codec:0
|
||||
dev-java/commons-httpclient:3
|
||||
dev-java/commons-lang:2.1
|
||||
dev-java/commons-logging:0
|
||||
dev-java/tomcat-servlet-api:3.0
|
||||
)
|
||||
mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
|
||||
telepathy? (
|
||||
dev-libs/glib:2
|
||||
>=net-libs/telepathy-glib-0.18.0
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
vlc? ( media-video/vlc )
|
||||
"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
PDEPEND="!app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
>=dev-libs/libxml2-2.7.8
|
||||
dev-libs/libxslt
|
||||
dev-perl/Archive-Zip
|
||||
dev-util/cppunit
|
||||
>=dev-util/gperf-3
|
||||
dev-util/intltool
|
||||
>=dev-util/mdds-0.10.3:=
|
||||
media-libs/glm
|
||||
net-misc/npapi-sdk
|
||||
>=sys-apps/findutils-4.4.2
|
||||
sys-devel/bison
|
||||
sys-apps/coreutils
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
>=sys-devel/make-3.82
|
||||
sys-devel/ucpp
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
x11-proto/randrproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto
|
||||
java? (
|
||||
>=virtual/jdk-1.6
|
||||
>=dev-java/ant-core-1.7
|
||||
)
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
test? ( dev-util/cppunit )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-3.7-system-pyuno.patch"
|
||||
|
||||
# from 4.4 branch
|
||||
"${FILESDIR}/${PN}-4.3.1.2-implement--with-system-coinmp.patch"
|
||||
"${FILESDIR}/${PN}-4.3.4.1-boost-1.56.0.patch" # bug 522178
|
||||
"${FILESDIR}/${PN}-4.3.5.2-system-opencollada.patch"
|
||||
"${FILESDIR}/${PN}-4.3.5.2-detect-KDE5-fallback-to-KDE4UI.patch"
|
||||
"${FILESDIR}/${PN}-4.3.5.2-DPI.patch"
|
||||
|
||||
# from master branch
|
||||
"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
|
||||
)
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
bluetooth? ( dbus )
|
||||
collada? ( gltf )
|
||||
gnome? ( gtk )
|
||||
eds? ( gnome )
|
||||
telepathy? ( gtk )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
CHECKREQS_MEMORY="512M"
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
|
||||
pkg_pretend() {
|
||||
local pgslot
|
||||
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
check-reqs_pkg_pretend
|
||||
|
||||
if [[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
|
||||
; then
|
||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
||||
die "Too old gcc found."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure pg version but we have to be sure the pg is installed (first
|
||||
# install on clean system)
|
||||
if use postgres && has_version dev-db/postgresql; then
|
||||
pgslot=$(postgresql-config show)
|
||||
if [[ ${pgslot//.} < 90 ]] ; then
|
||||
eerror "PostgreSQL slot must be set to 9.0 or higher."
|
||||
eerror " postgresql-config set 9.0"
|
||||
die "PostgreSQL slot is not set to 9.0 or higher."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
kde4-base_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local mod mod2 dest tmplfile tmplname mypv
|
||||
|
||||
[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
|
||||
use branding && unpack "${BRANDING}"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
unpack "${P}.tar.xz"
|
||||
for mod in ${MODULES}; do
|
||||
[[ ${mod} == core ]] && continue
|
||||
unpack "${PN}-${mod}-${PV}.tar.xz"
|
||||
done
|
||||
else
|
||||
for mod in ${MODULES}; do
|
||||
mypv=${PV/.9999}
|
||||
[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
|
||||
[[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
|
||||
git-r3_src_unpack
|
||||
if [[ ${mod} != core ]]; then
|
||||
mod2=${mod}
|
||||
# mapping does not match on help
|
||||
[[ ${mod} == help ]] && mod2="helpcontent2"
|
||||
mkdir -p "${S}/${mod2}/" || die
|
||||
mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
|
||||
rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
fi
|
||||
done
|
||||
unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python 2.7 enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
# patchset
|
||||
if [[ -n ${PATCHSET} ]]; then
|
||||
EPATCH_FORCE="yes" \
|
||||
EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
epatch
|
||||
fi
|
||||
|
||||
base_src_prepare
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# system pyuno mess
|
||||
sed \
|
||||
-e "s:%eprefix%:${EPREFIX}:g" \
|
||||
-e "s:%libdir%:$(get_libdir):g" \
|
||||
-i pyuno/source/module/uno.py \
|
||||
-i scripting/source/pyprov/officehelper.py || die
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e 's#all : build unitcheck#all : build#g' \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
|
||||
-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
|
||||
Makefile.in || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local java_opts
|
||||
local internal_libs
|
||||
local lo_ext
|
||||
local ext_opts
|
||||
local jbs=$(sed -ne 's/.*\(-j[[:space:]]*\|--jobs=\)\([[:digit:]]\+\).*/\2/;T;p' <<< "${MAKEOPTS}")
|
||||
|
||||
# recheck that there is some value in jobs
|
||||
[[ -z ${jbs} ]] && jbs="1"
|
||||
|
||||
# sane: just sane.h header that is used for scan in writer, not
|
||||
# linked or anything else, worthless to depend on
|
||||
# vigra: just uses templates from there
|
||||
# it is serious pain in the ass for packaging
|
||||
# should be replaced by boost::gil if someone interested
|
||||
internal_libs+="
|
||||
--without-system-sane
|
||||
--without-system-vigra
|
||||
"
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
|
||||
else
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
java_opts="
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
|
||||
--with-jvm-path="${EPREFIX}/usr/lib/"
|
||||
"
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
|
||||
|
||||
if use libreoffice_extensions_wiki-publisher; then
|
||||
java_opts+="
|
||||
--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
|
||||
--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
|
||||
--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
|
||||
--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
|
||||
--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-graphite: disabling causes build breakages
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --disable-gnome-vfs: old gnome virtual fs support
|
||||
# --disable-kdeab: kde3 adressbook
|
||||
# --disable-kde: kde3 support
|
||||
# --disable-systray: quickstarter does not actually work at all so do not
|
||||
# promote it
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
# FIXME: $(use_with collada system-opencollada)
|
||||
econf \
|
||||
--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
|
||||
--with-system-headers \
|
||||
--with-system-libs \
|
||||
--with-system-jars \
|
||||
--with-system-dicts \
|
||||
--enable-cairo-canvas \
|
||||
--enable-graphite \
|
||||
--enable-largefile \
|
||||
--enable-neon \
|
||||
--enable-python=system \
|
||||
--enable-randr \
|
||||
--enable-randr-link \
|
||||
--enable-release-build \
|
||||
--disable-hardlink-deliver \
|
||||
--disable-ccache \
|
||||
--disable-crashdump \
|
||||
--disable-dependency-tracking \
|
||||
--disable-epm \
|
||||
--disable-fetch-external \
|
||||
--disable-gnome-vfs \
|
||||
--disable-gstreamer-0-10 \
|
||||
--disable-report-builder \
|
||||
--disable-kdeab \
|
||||
--disable-kde \
|
||||
--disable-mergelibs \
|
||||
--disable-online-update \
|
||||
--disable-systray \
|
||||
--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
|
||||
--with-build-version="Gentoo official package" \
|
||||
--enable-extension-integration \
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-tar="${DISTDIR}" \
|
||||
--with-lang="" \
|
||||
--with-parallelism=${jbs} \
|
||||
--with-system-ucpp \
|
||||
--with-vendor="Gentoo Foundation" \
|
||||
--with-x \
|
||||
--without-fonts \
|
||||
--without-myspell-dicts \
|
||||
--without-help \
|
||||
--with-helppack-integration \
|
||||
--without-sun-templates \
|
||||
$(use_enable bluetooth sdremote-bluetooth) \
|
||||
$(use_enable coinmp) \
|
||||
$(use_enable collada) \
|
||||
$(use_enable cups) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable dbus) \
|
||||
$(use_enable eds evolution2) \
|
||||
$(use_enable firebird firebird-sdbc) \
|
||||
$(use_enable gltf) \
|
||||
$(use_enable gnome gconf) \
|
||||
$(use_enable gnome gio) \
|
||||
$(use_enable gnome lockdown) \
|
||||
$(use_enable gstreamer) \
|
||||
$(use_enable gtk) \
|
||||
$(use_enable gtk3) \
|
||||
$(use_enable kde kde4) \
|
||||
$(use_enable mysql ext-mariadb-connector) \
|
||||
$(use_enable odk) \
|
||||
$(use_enable opengl) \
|
||||
$(use_enable postgres postgresql-sdbc) \
|
||||
$(use_enable telepathy) \
|
||||
$(use_enable vlc) \
|
||||
$(use_with coinmp system-coinmp) \
|
||||
$(use_with gltf system-libgltf) \
|
||||
$(use_with java) \
|
||||
$(use_with mysql system-mysql-cppconn) \
|
||||
$(use_with odk doxygen) \
|
||||
${internal_libs} \
|
||||
${java_opts} \
|
||||
${ext_opts}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# more and more LO stuff tries to use OpenGL, including tests during build
|
||||
# bug 501508, bug 540624 and probably more
|
||||
addpredict /dev/dri
|
||||
addpredict /dev/nvidiactl
|
||||
|
||||
# hack for offlinehelp, this needs fixing upstream at some point
|
||||
# it is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
(
|
||||
grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
|
||||
source "${T}/config_host.mk" 2&> /dev/null
|
||||
|
||||
local path="${WORKDIR}/helpcontent2/source/auxiliary/"
|
||||
mkdir -p "${path}" || die
|
||||
|
||||
echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
|
||||
perl "${S}/helpcontent2/helpers/create_ilst.pl" \
|
||||
-dir=icon-themes/galaxy/res/helpimg \
|
||||
> "${path}/helpimg.ilst"
|
||||
[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
|
||||
)
|
||||
|
||||
local target
|
||||
use test && target="build" || target="build-nocheck"
|
||||
|
||||
# this is not a proper make script
|
||||
make ${target} || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
make unitcheck || die
|
||||
make slowcheck || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This is not Makefile so no buildserver
|
||||
make DESTDIR="${D}" distro-pack-install -o build -o check || die
|
||||
|
||||
# Fix bash completion placement
|
||||
newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
rm -rf "${ED}"/etc/ || die
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
|
||||
fi
|
||||
|
||||
# symlink the nsplugin to proper location
|
||||
# use gtk && inst_plugin /usr/$(get_libdir)/libreoffice/program/libnpsoplugin.so
|
||||
|
||||
# Hack for offlinehelp, this needs fixing upstream at some point.
|
||||
# It is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
insinto /usr/$(get_libdir)/libreoffice/help
|
||||
doins xmlhelp/util/*.xsl
|
||||
|
||||
# Remove desktop files for support to old installs that can't parse mime
|
||||
rm -rf "${ED}"/usr/share/mimelnk/
|
||||
|
||||
# FIXME: Hack add missing file
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
doins "${S}"/instdir/program/libsaxlo.so
|
||||
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1,613 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice/libreoffice-4.4.0.3.ebuild,v 1.4 2015/02/23 11:34:32 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KDE_REQUIRED="optional"
|
||||
QT_MINIMAL="4.7.4"
|
||||
KDE_SCM="git"
|
||||
CMAKE_REQUIRED="never"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
|
||||
PYTHON_REQ_USE="threads,xml"
|
||||
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make
|
||||
# everyone happy.
|
||||
DEV_URI="
|
||||
http://dev-builds.libreoffice.org/pre-releases/src
|
||||
http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
|
||||
http://download.documentfoundation.org/libreoffice/old/${PV}/
|
||||
"
|
||||
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
|
||||
ADDONS_URI="http://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-2"
|
||||
inherit base multiprocessing autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic ${SCM_ECLASS}
|
||||
unset SCM_ECLASS
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite"
|
||||
HOMEPAGE="http://www.libreoffice.org"
|
||||
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs
|
||||
# Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
MODULES="core help"
|
||||
# Only release has the tarballs
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
for mod in ${MODULES}; do
|
||||
if [[ ${mod} == core ]]; then
|
||||
SRC_URI+=" ${i}/${P}.tar.xz"
|
||||
else
|
||||
SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
|
||||
fi
|
||||
done
|
||||
unset mod
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
|
||||
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
|
||||
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
|
||||
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
|
||||
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
|
||||
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
|
||||
SRC_URI+=" ${ADDONS_SRC}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset EXT_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
|
||||
+gtk gtk3 jemalloc kde mysql odk postgres telepathy test vlc"
|
||||
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
# Unpackaged separate extensions:
|
||||
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
|
||||
# hunart: only on ooo extensions -> fubared download path somewhere on sf
|
||||
# numbertext, typo, validator, watch-window: ^^
|
||||
# oooblogger: no homepage or anything
|
||||
# Extensions that need extra work:
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
IUSE+=" libreoffice_extensions_${lo_xt}"
|
||||
done
|
||||
unset lo_xt
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
[[ ${PV} == *9999* ]] || \
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
COMMON_DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/zip
|
||||
app-arch/unzip
|
||||
>=app-text/hunspell-1.3.2-r3
|
||||
app-text/mythes
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libexttextcat-3.2
|
||||
>=app-text/libebook-0.1.1
|
||||
>=app-text/libetonyek-0.1.1
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.4
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.3.0
|
||||
>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
=dev-cpp/libcmis-0.5*
|
||||
dev-db/unixODBC
|
||||
>=dev-libs/boost-1.55:=
|
||||
dev-libs/expat
|
||||
>=dev-libs/hyphen-2.7.1
|
||||
>=dev-libs/icu-4.8.1.1:=
|
||||
>=dev-libs/liborcus-0.7.0
|
||||
>=dev-libs/librevenge-0.0.1
|
||||
>=dev-libs/nspr-4.8.8
|
||||
>=dev-libs/nss-3.12.9
|
||||
>=dev-lang/perl-5.0
|
||||
>=dev-libs/openssl-1.0.0d:0
|
||||
>=dev-libs/redland-1.0.16
|
||||
media-gfx/graphite2
|
||||
>=media-libs/fontconfig-2.8.0
|
||||
media-libs/freetype:2
|
||||
>=media-libs/glew-1.10
|
||||
>=media-libs/harfbuzz-0.9.18:=[icu(+)]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.4
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libvisio-0.1.0
|
||||
>=net-misc/curl-7.21.4
|
||||
net-libs/neon
|
||||
net-nds/openldap
|
||||
sci-mathematics/lpsolve
|
||||
virtual/jpeg:0
|
||||
>=x11-libs/cairo-1.10.0[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
collada? ( >=media-libs/opencollada-1.2.2_p20150207 )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( >=dev-libs/dbus-glib-0.92 )
|
||||
eds? ( gnome-extra/evolution-data-server )
|
||||
firebird? ( >=dev-db/firebird-2.5 )
|
||||
gltf? ( media-libs/libgltf )
|
||||
gnome? ( gnome-base/gconf:2 )
|
||||
gtk? (
|
||||
x11-libs/gdk-pixbuf[X]
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
gtk3? ( >=x11-libs/gtk+-3.2:3 )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
|
||||
libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
|
||||
libreoffice_extensions_wiki-publisher? (
|
||||
dev-java/commons-codec:0
|
||||
dev-java/commons-httpclient:3
|
||||
dev-java/commons-lang:2.1
|
||||
dev-java/commons-logging:0
|
||||
dev-java/tomcat-servlet-api:3.0
|
||||
)
|
||||
mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
|
||||
postgres? ( >=dev-db/postgresql-9.0[kerberos] )
|
||||
telepathy? (
|
||||
dev-libs/glib:2
|
||||
>=net-libs/telepathy-glib-0.18.0
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!<app-office/openoffice-bin-3.4.0-r1
|
||||
!app-office/openoffice
|
||||
media-fonts/libertine
|
||||
media-fonts/liberation-fonts
|
||||
media-fonts/urw-fonts
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
vlc? ( media-video/vlc )
|
||||
"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
PDEPEND="~app-office/libreoffice-l10n-${PV}"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
PDEPEND="!app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
>=dev-libs/libxml2-2.7.8
|
||||
dev-libs/libxslt
|
||||
dev-perl/Archive-Zip
|
||||
dev-util/cppunit
|
||||
>=dev-util/gperf-3
|
||||
dev-util/intltool
|
||||
>=dev-util/mdds-0.10.3:=
|
||||
media-libs/glm
|
||||
net-misc/npapi-sdk
|
||||
>=sys-apps/findutils-4.4.2
|
||||
sys-devel/bison
|
||||
sys-apps/coreutils
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
>=sys-devel/make-3.82
|
||||
sys-devel/ucpp
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
x11-proto/randrproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto
|
||||
java? (
|
||||
>=virtual/jdk-1.6
|
||||
>=dev-java/ant-core-1.7
|
||||
)
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
test? ( dev-util/cppunit )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-4.4-system-pyuno.patch"
|
||||
|
||||
# from 4.4 branch
|
||||
"${FILESDIR}/${PN}-4.4.0.3-gcc-4.9-Os-link-failure.patch" # bug 538348
|
||||
|
||||
# from master branch
|
||||
"${FILESDIR}/${PN}-4.4.0.3-telepathy-build-fix.patch"
|
||||
)
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
bluetooth? ( dbus )
|
||||
collada? ( gltf )
|
||||
gnome? ( gtk )
|
||||
eds? ( gnome )
|
||||
telepathy? ( gtk )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
CHECKREQS_MEMORY="512M"
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
|
||||
pkg_pretend() {
|
||||
local pgslot
|
||||
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
check-reqs_pkg_pretend
|
||||
|
||||
if [[ $(gcc-major-version) -lt 4 ]] || \
|
||||
( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
|
||||
; then
|
||||
eerror "Compilation with gcc older than 4.6 is not supported"
|
||||
die "Too old gcc found."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure pg version but we have to be sure the pg is installed (first
|
||||
# install on clean system)
|
||||
if use postgres && has_version dev-db/postgresql; then
|
||||
pgslot=$(postgresql-config show)
|
||||
if [[ ${pgslot//.} < 90 ]] ; then
|
||||
eerror "PostgreSQL slot must be set to 9.0 or higher."
|
||||
eerror " postgresql-config set 9.0"
|
||||
die "PostgreSQL slot is not set to 9.0 or higher."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
kde4-base_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local mod mod2 dest tmplfile tmplname mypv
|
||||
|
||||
[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
|
||||
use branding && unpack "${BRANDING}"
|
||||
|
||||
if [[ ${PV} != *9999* ]]; then
|
||||
unpack "${P}.tar.xz"
|
||||
for mod in ${MODULES}; do
|
||||
[[ ${mod} == core ]] && continue
|
||||
unpack "${PN}-${mod}-${PV}.tar.xz"
|
||||
done
|
||||
else
|
||||
for mod in ${MODULES}; do
|
||||
mypv=${PV/.9999}
|
||||
[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
|
||||
EGIT_PROJECT="${PN}/${mod}"
|
||||
EGIT_SOURCEDIR="${WORKDIR}/${P}"
|
||||
[[ ${mod} != core ]] && EGIT_SOURCEDIR="${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
|
||||
EGIT_NOUNPACK="true"
|
||||
git-2_src_unpack
|
||||
if [[ ${mod} != core ]]; then
|
||||
mod2=${mod}
|
||||
# mapping does not match on help
|
||||
[[ ${mod} == help ]] && mod2="helpcontent2"
|
||||
mkdir -p "${S}/${mod2}/" || die
|
||||
mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
|
||||
rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
|
||||
fi
|
||||
done
|
||||
unset EGIT_PROJECT EGIT_SOURCEDIR EGIT_REPO_URI EGIT_BRANCH
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python 2.7 enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
if use collada; then
|
||||
export OPENCOLLADA_CFLAGS="-I/usr/include/opencollada/COLLADABaseUtils -I/usr/include/opencollada/COLLADAFramework -I/usr/include/opencollada/COLLADASaxFrameworkLoader -I/usr/include/opencollada/GeneratedSaxParser"
|
||||
export OPENCOLLADA_LIBS="-L /usr/$(get_libdir)/opencollada -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser"
|
||||
fi
|
||||
|
||||
# patchset
|
||||
if [[ -n ${PATCHSET} ]]; then
|
||||
EPATCH_FORCE="yes" \
|
||||
EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
epatch
|
||||
fi
|
||||
|
||||
base_src_prepare
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# system pyuno mess
|
||||
sed \
|
||||
-e "s:%eprefix%:${EPREFIX}:g" \
|
||||
-e "s:%libdir%:$(get_libdir):g" \
|
||||
-i pyuno/source/module/uno.py \
|
||||
-i pyuno/source/officehelper.py || die
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e 's#all : build unitcheck#all : build#g' \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
|
||||
-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
|
||||
Makefile.in || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local java_opts
|
||||
local internal_libs
|
||||
local lo_ext
|
||||
local ext_opts
|
||||
|
||||
# sane: just sane.h header that is used for scan in writer, not
|
||||
# linked or anything else, worthless to depend on
|
||||
# vigra: just uses templates from there
|
||||
# it is serious pain in the ass for packaging
|
||||
# should be replaced by boost::gil if someone interested
|
||||
internal_libs+="
|
||||
--without-system-sane
|
||||
--without-system-vigra
|
||||
"
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
|
||||
else
|
||||
ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
java_opts="
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
|
||||
--with-jvm-path="${EPREFIX}/usr/lib/"
|
||||
"
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
|
||||
|
||||
if use libreoffice_extensions_wiki-publisher; then
|
||||
java_opts+="
|
||||
--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
|
||||
--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
|
||||
--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
|
||||
--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
|
||||
--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-graphite: disabling causes build breakages
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --disable-gnome-vfs: old gnome virtual fs support
|
||||
# --disable-kdeab: kde3 adressbook
|
||||
# --disable-kde: kde3 support
|
||||
# --disable-systray: quickstarter does not actually work at all so do not
|
||||
# promote it
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
econf \
|
||||
--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
|
||||
--with-system-headers \
|
||||
--with-system-libs \
|
||||
--with-system-jars \
|
||||
--with-system-dicts \
|
||||
--enable-cairo-canvas \
|
||||
--enable-graphite \
|
||||
--enable-largefile \
|
||||
--enable-mergelibs \
|
||||
--enable-neon \
|
||||
--enable-python=system \
|
||||
--enable-randr \
|
||||
--enable-randr-link \
|
||||
--enable-release-build \
|
||||
--disable-hardlink-deliver \
|
||||
--disable-ccache \
|
||||
--disable-crashdump \
|
||||
--disable-dependency-tracking \
|
||||
--disable-epm \
|
||||
--disable-fetch-external \
|
||||
--disable-gnome-vfs \
|
||||
--disable-gstreamer-0-10 \
|
||||
--disable-report-builder \
|
||||
--disable-kdeab \
|
||||
--disable-kde \
|
||||
--disable-online-update \
|
||||
--disable-systray \
|
||||
--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
|
||||
--with-build-version="Gentoo official package" \
|
||||
--enable-extension-integration \
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
|
||||
--with-external-tar="${DISTDIR}" \
|
||||
--with-lang="" \
|
||||
--with-parallelism=$(makeopts_jobs) \
|
||||
--with-system-ucpp \
|
||||
--with-vendor="Gentoo Foundation" \
|
||||
--with-x \
|
||||
--without-fonts \
|
||||
--without-myspell-dicts \
|
||||
--without-help \
|
||||
--with-helppack-integration \
|
||||
--without-sun-templates \
|
||||
$(use_enable bluetooth sdremote-bluetooth) \
|
||||
$(use_enable coinmp) \
|
||||
$(use_enable collada) \
|
||||
$(use_enable cups) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable dbus) \
|
||||
$(use_enable eds evolution2) \
|
||||
$(use_enable firebird firebird-sdbc) \
|
||||
$(use_enable gltf) \
|
||||
$(use_enable gnome gconf) \
|
||||
$(use_enable gnome gio) \
|
||||
$(use_enable gnome lockdown) \
|
||||
$(use_enable gstreamer gstreamer-1-0) \
|
||||
$(use_enable gtk) \
|
||||
$(use_enable gtk3) \
|
||||
$(use_enable kde kde4) \
|
||||
$(use_enable mysql ext-mariadb-connector) \
|
||||
$(use_enable odk) \
|
||||
$(use_enable postgres postgresql-sdbc) \
|
||||
$(use_enable telepathy) \
|
||||
$(use_enable vlc) \
|
||||
$(use_with coinmp system-coinmp) \
|
||||
$(use_with collada system-opencollada) \
|
||||
$(use_with gltf system-libgltf) \
|
||||
$(use_with java) \
|
||||
$(use_with mysql system-mysql-cppconn) \
|
||||
$(use_with odk doxygen) \
|
||||
${internal_libs} \
|
||||
${java_opts} \
|
||||
${ext_opts}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# more and more LO stuff tries to use OpenGL, including tests during build
|
||||
# bug 501508, bug 540624 and probably more
|
||||
addpredict /dev/dri
|
||||
addpredict /dev/nvidiactl
|
||||
|
||||
# hack for offlinehelp, this needs fixing upstream at some point
|
||||
# it is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
(
|
||||
grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
|
||||
source "${T}/config_host.mk" 2&> /dev/null
|
||||
|
||||
local path="${WORKDIR}/helpcontent2/source/auxiliary/"
|
||||
mkdir -p "${path}" || die
|
||||
|
||||
echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
|
||||
perl "${S}/helpcontent2/helpers/create_ilst.pl" \
|
||||
-dir=icon-themes/galaxy/res/helpimg \
|
||||
> "${path}/helpimg.ilst"
|
||||
[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
|
||||
)
|
||||
|
||||
local target
|
||||
use test && target="build" || target="build-nocheck"
|
||||
|
||||
# this is not a proper make script
|
||||
make ${target} || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
make unitcheck || die
|
||||
make slowcheck || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This is not Makefile so no buildserver
|
||||
make DESTDIR="${D}" distro-pack-install -o build -o check || die
|
||||
|
||||
# Fix bash completion placement
|
||||
newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
rm -rf "${ED}"/etc/ || die
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
|
||||
fi
|
||||
|
||||
# Hack for offlinehelp, this needs fixing upstream at some point.
|
||||
# It is broken because we send --without-help
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=46506
|
||||
insinto /usr/$(get_libdir)/libreoffice/help
|
||||
doins xmlhelp/util/*.xsl
|
||||
|
||||
# Remove desktop files for support to old installs that can't parse mime
|
||||
rm -rf "${ED}"/usr/share/mimelnk/
|
||||
|
||||
# FIXME: Hack add missing file
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
doins "${S}"/instdir/program/libsaxlo.so
|
||||
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
|
||||
pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Cache updates - all handled by kde eclass for all environments
|
||||
kde4-base_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
kde4-base_pkg_postinst
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
kde4-base_pkg_postrm
|
||||
}
|
@ -1 +1 @@
|
||||
DIST rustc-1.0.0-alpha-src.tar.gz 21344613 SHA256 3a2285726e839fc57ad49ed8907a50bab2d29d8f898e2d5a02f620a0477fc25c SHA512 7285f1a90e75b31d4455a025a93fbdc590203e0875e3c1845df99e20d92a880573dff8ccb9d0ab4e85f64208a4eb46f5f71dd0c7def8e3d589021b90714d7b06 WHIRLPOOL 827b18b363ccde654499b616937df76daaf8b43bf76af2ac438006c3f0d71540df41d1cd109f58822627c9aea1be9f106ced3ff82630e965fce62f82bbceae75
|
||||
DIST rust-zshcomp-1_beta20150411.tar.gz 4738 SHA256 b1ce0836aa12e9f176c1d710d5975e1b5025d14095b622aa9f417f34b1877538 SHA512 84231fba6abdc1117f05be16b32a641e2a2334873be28185f4b748bdc1cf664f70e3e5a761d9cc25a879bd7df4fb8f8fddb3114be355d8b91e3c2a0f49739f3c WHIRLPOOL 56b2918f2c24eb2753d8f3060582b2d55194832bbf0ba7ae5265ce801dda2049f29e4201197b02c5968e1e6b0f335c1106611a5f3f5cbaa1f3b00953dc2f1a50
|
||||
|
@ -1 +1 @@
|
||||
DIST rustc-1.0.0-alpha-src.tar.gz 21344613 SHA256 3a2285726e839fc57ad49ed8907a50bab2d29d8f898e2d5a02f620a0477fc25c SHA512 7285f1a90e75b31d4455a025a93fbdc590203e0875e3c1845df99e20d92a880573dff8ccb9d0ab4e85f64208a4eb46f5f71dd0c7def8e3d589021b90714d7b06 WHIRLPOOL 827b18b363ccde654499b616937df76daaf8b43bf76af2ac438006c3f0d71540df41d1cd109f58822627c9aea1be9f106ced3ff82630e965fce62f82bbceae75
|
||||
DIST rust-mode-vim-1_beta20150411.tar.gz 14834 SHA256 ae10727c14612905f489afea1146bac24a0ea6309a3a3fcf97a048dd1e156eb4 SHA512 f841768909203475a0cd3589a148d334001351fb23976ee28823a9dbde396d89a4f3c5ac07166420c8ddb64692dcc86b98b3afc3579171115a3a2af17b6aa449 WHIRLPOOL c95fc23f40608be817c7fc7467138efaa25a6b24427b79ab0de7daf84e5f32c4f2cd0db1377e2eaa0e40bf83cb765c86f6e04752b142b1779c194ceddc8b7d07
|
||||
|
@ -1,18 +1,18 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/rust-mode/rust-mode-1.0.0_alpha.ebuild,v 1.1 2015/02/10 11:59:52 jauhien Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/rust-mode/rust-mode-1_beta20150411.ebuild,v 1.1 2015/04/11 21:45:44 jauhien Exp $
|
||||
|
||||
EAPI="5"
|
||||
EAPI=5
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
MY_PV="rustc-1.0.0-alpha"
|
||||
MY_PN="${PN}-vim"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
DESCRIPTION="Rust mode for vim"
|
||||
HOMEPAGE="http://www.rust-lang.org/"
|
||||
SRC_URI="http://static.rust-lang.org/dist/${MY_PV}-src.tar.gz"
|
||||
SRC_URI="http://dev.gentoo.org/~jauhien/distfiles/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
S="${WORKDIR}/${MY_PV}/src/etc/vim"
|
||||
S="${WORKDIR}/${MY_P}"
|
@ -1,2 +1 @@
|
||||
DIST libcmis-0.4.1.tar.gz 637615 SHA256 7d52dcf2b5832d3663b18fbf40f0bdefb1e1a40cfb3cf01903301b0bf629395f SHA512 9898b05c345dcc62ffc4f995616f7fe9da34e6f395a4ccadc5cc005586726401593ad1d7df451c6a2756eb216b47bb2d709ac8a4df48546260bb70c762c0bc18 WHIRLPOOL c861930566fc9ff5adecfed4efbae31eb08598abc835b6113afea766f4d356d6ee82b7d523d4080ef728046455c3faf17c45b1592f6b5460a4fc1e6d96dbf27a
|
||||
DIST libcmis-0.5.0.tar.gz 738119 SHA256 a87e02913dee3ee659db5abf6d7dafcfcd85dd4b24bf4389d8d4afe8c8dcf9b6 SHA512 abfdf5654ef8763c9744587ba831acea93cc0ba7deaa8d807eed2e9077be848db0334430f7c2d6eecefeb90f520abbe81364a86790c0aa4363724816aec4793b WHIRLPOOL 03041a0eb4af8fb515082731c4737f7c153756073464785994c431f54b27130b8407459efb5bcb4a26689a0baa1f5014e48cfa334948fb7d90fe646d5f8f0a02
|
||||
|
@ -1,70 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libcmis/libcmis-0.4.1.ebuild,v 1.4 2014/12/28 21:28:58 dilfridge Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
EGIT_REPO_URI="git://gitorious.org/libcmis/libcmis.git"
|
||||
[[ ${PV} == 9999 ]] && SCM_ECLASS="git-2"
|
||||
inherit eutils alternatives autotools ${SCM_ECLASS}
|
||||
unset SCM_ECLASS
|
||||
|
||||
DESCRIPTION="C++ client library for the CMIS interface"
|
||||
HOMEPAGE="https://sourceforge.net/projects/libcmis/"
|
||||
[[ ${PV} == 9999 ]] || SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( GPL-2 LGPL-2 MPL-1.1 )"
|
||||
SLOT="0.4"
|
||||
|
||||
# Don't move KEYWORDS on the previous line or ekeyword won't work # 399061
|
||||
[[ ${PV} == 9999 ]] || \
|
||||
KEYWORDS="amd64 ~arm ~ppc x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
IUSE="static-libs man test"
|
||||
|
||||
RDEPEND="
|
||||
!dev-cpp/libcmis:0
|
||||
!dev-cpp/libcmis:0.2
|
||||
!dev-cpp/libcmis:0.3
|
||||
!dev-cpp/libcmis:0.5
|
||||
dev-libs/boost:=
|
||||
dev-libs/libxml2
|
||||
net-misc/curl
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
man? (
|
||||
app-text/docbook2X
|
||||
dev-libs/libxslt
|
||||
)
|
||||
test? ( dev-util/cppunit )
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
[[ ${PV} == 9999 ]] && eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--docdir="${EPREFIX}"/usr/share/doc/${PF} \
|
||||
--program-suffix=-${SLOT} \
|
||||
--disable-werror \
|
||||
$(use_with man) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable test tests) \
|
||||
--disable-long-tests \
|
||||
--enable-client
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
prune_libtool_files --all
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
|
||||
}
|
@ -1,4 +1,7 @@
|
||||
DIST mysql-5.5.42.tar.gz 21795431 SHA256 887b12676be4893fa833e4a585c6c8b0c0f18dee30ba7d22cfe860cd85bfc74a SHA512 d02ea8d5a3f0309c2bd17241c9feca81ef35acc2595bfcb134fe436cd6a3d9ddbac5daa71ac75d953518ec2dc5791f953663648f52727bb37cb378d6663f2e0a WHIRLPOOL 43accca23246c353d0ce4e8d0807c4f4f80ba00e2a1d08a97fec5e59abed1278c34c2cda010894af9f98e866aee2a33614c8bf4fe4b840d45ff1d88993a1ff9e
|
||||
DIST mysql-5.5.43.tar.gz 21784417 SHA256 43d3df79e5c839a2749deb6e056a4589e49c903e09034c18653ec56e6e4774cd SHA512 b14506ac45fa4c69a6b7bbf64b2c3e59516b1fca3e0cce97e9712c09abecbf50071a60fc09f3e009d8591bf0d7352f28479cd8cb5445008ee146735897878b52 WHIRLPOOL 93e77045f4c4b188db38912ec6709bfee1ee0e0b7bf4cadfbeede8aef701d1f0cbf238e02d82013ceabe13df952e4f08c75bd3ad7504790677dc5a5ec4844fea
|
||||
DIST mysql-5.6.22.tar.gz 33115516 SHA256 c4d2dfabb20a8e26e8437dff41f366520001eb031ffd77fbfcde70d0073fc9f6 SHA512 11b4a1b34ff4bb63d7cdbc1134947772b2c30715b1e3d3fba2ed9c5102f0bde14a708561b2d463014eca64f5fb415a54a0e1656d48f118b403e66d83b98f5b82 WHIRLPOOL a85db903ce1bc542ac87d832d2d0d84cd4c8a75f5feae435d0a9c5ce26f792b7d30c0113764315e8df0e74a899ee2c02233e3b193b42a98daf46ed52b5ccc9cd
|
||||
DIST mysql-5.6.23.tar.gz 33115859 SHA256 3bd21af06a9304e372daba41fa5612bb54ac1bc05a4349b3160d0cda972ac098 SHA512 ac648550934ac6ddcb0cbc93731c2d913288dff53ada665f161d14c46e16f2a8ad8d09106a2718e8412f859ea9cf038d04e4c6f5fbea6e4424f9373ddccf4da3 WHIRLPOOL ae315cc7a60408cc050a7941b3c16cf169554b5a67fe4ce23a9b183cb551168f2ec3817e28cf0aa24b619ddc1b638bd926cfcf9c2e0755b2acbf1b82548b2581
|
||||
DIST mysql-5.6.24.tar.gz 33178592 SHA256 37e27305b67d76883c5902dce59c89d596beee9dca7dbadd4a2e117f8101dfeb SHA512 cb4c27f67aad02e2120edb9dfaffa623d8ddb5861ee77055553c50cce76cbfe0a1e473e01cef3cf86b6362c719e1db18e69808a0e4e457f879a37297f14b9fd7 WHIRLPOOL 26e51a1c48d04c2f24f8914beb84bcd8122ecc569b922d001c05271c3b7dc3339652272e27169001c762356c6fffa9ba88a6ccd8b2235e41063b5948e1dd2011
|
||||
DIST mysql-extras-20150127-1351Z.tar.bz2 1494648 SHA256 74497659f1fb3b0cb620e38a911cf2e59a084149dd175199eb7cf4be18b4c328 SHA512 886e42697b3b0a90d8542bafaf3a7ccedf075f9f0065fec995bf58f645edff3a5d62f29be1cfa2e01d002d6382ee02279832cea8c21db6a774c2567c75ab6a35 WHIRLPOOL 9ddb5ccd914a6a6a19741ff93df78534d2273cf918f24af427c018b7c4f424a90d9f57f167633c48e2fa4102a4fae0873fd6dec7529839f229af855cbddf82d4
|
||||
DIST mysql-extras-20150410-1944Z.tar.bz2 1493690 SHA256 e327adf02be4c2bce5121f01d6b139309c72814b8c50a29559dfddee12a0b4e2 SHA512 e2e5345290134e597734514041e413f0633b8078bfddb8b8e7695468ce7341735b732d5bb602ab7aa9a4045d71571b73aac01a5d96687d4fbd380736f5ed650c WHIRLPOOL f65f294905fd1d04e2be79a803b658ed432338501665a75cbe0cc5b3af8abf0615f1f808465c3ca3c7e850b9277f451f5c77b518977f4bee8dc77d6089ff88fb
|
||||
|
@ -0,0 +1,126 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/mysql-5.5.43.ebuild,v 1.1 2015/04/10 19:54:15 grknight Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
MY_EXTRAS_VER="20150127-1351Z"
|
||||
MY_PV="${PV//_alpha_pre/-m}"
|
||||
MY_PV="${MY_PV//_/-}"
|
||||
|
||||
# Build type
|
||||
BUILD="cmake"
|
||||
|
||||
inherit toolchain-funcs mysql-v2
|
||||
# only to make repoman happy. it is really set in the eclass
|
||||
IUSE="$IUSE"
|
||||
|
||||
# Define the mysql-extras source
|
||||
EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/mysql-extras.git"
|
||||
|
||||
# REMEMBER: also update eclass/mysql*.eclass before committing!
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
|
||||
# When MY_EXTRAS is bumped, the index should be revised to exclude these.
|
||||
EPATCH_EXCLUDE=''
|
||||
|
||||
DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
|
||||
RDEPEND="${RDEPEND}"
|
||||
|
||||
# Please do not add a naive src_unpack to this ebuild
|
||||
# If you want to add a single patch, copy the ebuild to an overlay
|
||||
# and create your own mysql-extras tarball, looking at 000_index.txt
|
||||
|
||||
# Official test instructions:
|
||||
# USE='embedded extraengine perl ssl static-libs community' \
|
||||
# FEATURES='test userpriv -usersandbox' \
|
||||
# ebuild mysql-X.X.XX.ebuild \
|
||||
# digest clean package
|
||||
src_test() {
|
||||
|
||||
local TESTDIR="${BUILD_DIR}/mysql-test"
|
||||
local retstatus_unit
|
||||
local retstatus_tests
|
||||
|
||||
# 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 ! use "minimal" ; then
|
||||
|
||||
if [[ $UID -eq 0 ]]; then
|
||||
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
addpredict /this-dir-does-not-exist/t9.MYI
|
||||
|
||||
# Run CTest (test-units)
|
||||
cmake-utils_src_test
|
||||
retstatus_unit=$?
|
||||
[[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
|
||||
|
||||
# Ensure that parallel runs don't die
|
||||
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
|
||||
# Enable parallel testing, auto will try to detect number of cores
|
||||
# You may set this by hand.
|
||||
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
|
||||
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
|
||||
|
||||
# create directories because mysqladmin might right out of order
|
||||
mkdir -p "${T}"/var-tests{,/log}
|
||||
|
||||
# create symlink for the tests to find mysql_tzinfo_to_sql
|
||||
ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
|
||||
|
||||
# These are failing in MySQL 5.5 for now and are believed to be
|
||||
# false positives:
|
||||
#
|
||||
# main.information_schema, binlog.binlog_statement_insert_delayed,
|
||||
# main.mysqld--help-notwin
|
||||
# fails due to USE=-latin1 / utf8 default
|
||||
#
|
||||
# main.mysql_client_test:
|
||||
# segfaults at random under Portage only, suspect resource limits.
|
||||
#
|
||||
# main.mysqlhotcopy_archive main.mysqlhotcopy_myisam
|
||||
# fails due to bad cleanup of previous tests when run in parallel
|
||||
# The tool is deprecated anyway
|
||||
# Bug 532288
|
||||
|
||||
for t in main.mysql_client_test \
|
||||
binlog.binlog_statement_insert_delayed main.information_schema \
|
||||
main.mysqld--help-notwin main.mysqlhotcopy_archive main.mysqlhotcopy_myisam ; do
|
||||
mysql-v2_disable_test "$t" "False positives in Gentoo"
|
||||
done
|
||||
|
||||
# Run mysql tests
|
||||
pushd "${TESTDIR}"
|
||||
|
||||
# run mysql-test tests
|
||||
perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
|
||||
--testcase-timeout=30
|
||||
retstatus_tests=$?
|
||||
[[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
popd
|
||||
|
||||
# Cleanup is important for these testcases.
|
||||
pkill -9 -f "${S}/ndb" 2>/dev/null
|
||||
pkill -9 -f "${S}/sql" 2>/dev/null
|
||||
|
||||
failures=""
|
||||
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
|
||||
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
[[ -z "$failures" ]] || die "Test failures: $failures"
|
||||
einfo "Tests successfully completed"
|
||||
|
||||
else
|
||||
|
||||
einfo "Skipping server tests due to minimal build."
|
||||
fi
|
||||
}
|
@ -0,0 +1,153 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/mysql-5.6.24.ebuild,v 1.1 2015/04/10 19:54:15 grknight Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
MY_EXTRAS_VER="20150410-1944Z"
|
||||
MY_PV="${PV//_alpha_pre/-m}"
|
||||
MY_PV="${MY_PV//_/-}"
|
||||
|
||||
inherit toolchain-funcs mysql-multilib
|
||||
# only to make repoman happy. it is really set in the eclass
|
||||
IUSE="$IUSE"
|
||||
|
||||
# REMEMBER: also update eclass/mysql*.eclass before committing!
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
|
||||
# When MY_EXTRAS is bumped, the index should be revised to exclude these.
|
||||
EPATCH_EXCLUDE=''
|
||||
|
||||
DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
|
||||
RDEPEND="${RDEPEND}"
|
||||
|
||||
# Please do not add a naive src_unpack to this ebuild
|
||||
# If you want to add a single patch, copy the ebuild to an overlay
|
||||
# and create your own mysql-extras tarball, looking at 000_index.txt
|
||||
|
||||
# Official test instructions:
|
||||
# USE='embedded extraengine perl ssl static-libs community' \
|
||||
# FEATURES='test userpriv -usersandbox' \
|
||||
# ebuild mysql-X.X.XX.ebuild \
|
||||
# digest clean package
|
||||
multilib_src_test() {
|
||||
|
||||
if ! multilib_is_native_abi ; then
|
||||
einfo "Server tests not available on non-native abi".
|
||||
return 0;
|
||||
fi
|
||||
|
||||
local TESTDIR="${BUILD_DIR}/mysql-test"
|
||||
local retstatus_unit
|
||||
local retstatus_tests
|
||||
|
||||
# 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 ! use "minimal" ; then
|
||||
|
||||
if [[ $UID -eq 0 ]]; then
|
||||
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
addpredict /this-dir-does-not-exist/t9.MYI
|
||||
|
||||
# Run CTest (test-units)
|
||||
cmake-utils_src_test
|
||||
retstatus_unit=$?
|
||||
[[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
|
||||
|
||||
# Ensure that parallel runs don't die
|
||||
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
|
||||
# Enable parallel testing, auto will try to detect number of cores
|
||||
# You may set this by hand.
|
||||
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
|
||||
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
|
||||
|
||||
# create directories because mysqladmin might right out of order
|
||||
mkdir -p "${T}"/var-tests{,/log}
|
||||
|
||||
# create symlink for the tests to find mysql_tzinfo_to_sql
|
||||
ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
|
||||
|
||||
# These are failing in MySQL 5.5/5.6 for now and are believed to be
|
||||
# false positives:
|
||||
#
|
||||
# main.information_schema, binlog.binlog_statement_insert_delayed,
|
||||
# funcs_1.is_triggers funcs_1.is_tables_mysql,
|
||||
# funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
|
||||
# perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
|
||||
# mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
|
||||
# perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
|
||||
# fails due to USE=-latin1 / utf8 default
|
||||
#
|
||||
# main.mysql_client_test:
|
||||
# segfaults at random under Portage only, suspect resource limits.
|
||||
#
|
||||
# rpl.rpl_plugin_load
|
||||
# fails due to included file not listed in expected result
|
||||
# appears to be poor planning
|
||||
#
|
||||
# main.mysqlhotcopy_archive main.mysqlhotcopy_myisam
|
||||
# fails due to bad cleanup of previous tests when run in parallel
|
||||
# The tool is deprecated anyway
|
||||
# Bug 532288
|
||||
for t in \
|
||||
binlog.binlog_mysqlbinlog_filter \
|
||||
binlog.binlog_statement_insert_delayed \
|
||||
funcs_1.is_columns_mysql \
|
||||
funcs_1.is_tables_mysql \
|
||||
funcs_1.is_triggers \
|
||||
main.information_schema \
|
||||
main.mysql_client_test \
|
||||
main.mysqld--help-notwin \
|
||||
perfschema.binlog_edge_mix \
|
||||
perfschema.binlog_edge_stmt \
|
||||
rpl.rpl_plugin_load \
|
||||
main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
|
||||
; do
|
||||
mysql-multilib_disable_test "$t" "False positives in Gentoo"
|
||||
done
|
||||
|
||||
if ! use extraengine ; then
|
||||
# bug 401673, 530766
|
||||
for t in federated.federated_plugin ; do
|
||||
mysql-multilib_disable_test "$t" "Test $t requires USE=extraengine (Need federated engine)"
|
||||
done
|
||||
fi
|
||||
|
||||
# Run mysql tests
|
||||
pushd "${TESTDIR}"
|
||||
|
||||
# Set file limits higher so tests run
|
||||
ulimit -n 3000
|
||||
|
||||
# run mysql-test tests
|
||||
perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
|
||||
--suite-timeout=5000
|
||||
retstatus_tests=$?
|
||||
[[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
popd
|
||||
|
||||
# Cleanup is important for these testcases.
|
||||
pkill -9 -f "${S}/ndb" 2>/dev/null
|
||||
pkill -9 -f "${S}/sql" 2>/dev/null
|
||||
|
||||
failures=""
|
||||
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
|
||||
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
|
||||
has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
[[ -z "$failures" ]] || die "Test failures: $failures"
|
||||
einfo "Tests successfully completed"
|
||||
|
||||
else
|
||||
|
||||
einfo "Skipping server tests due to minimal build."
|
||||
fi
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
commit fd0fc43f6e0ea45bce0e1a68c1f736e481fc4429
|
||||
Author: Johan Bergström <bugs@bergstroem.nu>
|
||||
Date: Thu Apr 2 14:33:51 2015 +1100
|
||||
|
||||
Use shared LUA
|
||||
|
||||
diff --git src/Makefile src/Makefile
|
||||
index a88f1d2..f71e7b5 100644
|
||||
--- src/Makefile
|
||||
+++ src/Makefile
|
||||
@@ -15,7 +15,7 @@
|
||||
release_hdr := $(shell sh -c './mkreleasehdr.sh')
|
||||
uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
|
||||
OPTIMIZATION?=-O2
|
||||
-DEPENDENCY_TARGETS=hiredis linenoise lua
|
||||
+DEPENDENCY_TARGETS=hiredis linenoise
|
||||
|
||||
# Default settings
|
||||
STD=-std=c99 -pedantic
|
||||
@@ -47,6 +47,7 @@ endif
|
||||
FINAL_CFLAGS=$(STD) $(WARN) $(OPT) $(DEBUG) $(CFLAGS) $(REDIS_CFLAGS)
|
||||
FINAL_LDFLAGS=$(LDFLAGS) $(REDIS_LDFLAGS) $(DEBUG)
|
||||
FINAL_LIBS=-lm
|
||||
+FINAL_LIBS+=$(shell pkg-config --libs lua)
|
||||
DEBUG=-g -ggdb
|
||||
|
||||
ifeq ($(uname_S),SunOS)
|
||||
@@ -108,6 +109,7 @@ endif
|
||||
REDIS_SERVER_NAME=redis-server
|
||||
REDIS_SENTINEL_NAME=redis-sentinel
|
||||
REDIS_SERVER_OBJ=adlist.o ae.o anet.o dict.o redis.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o cluster.o crc16.o endianconv.o slowlog.o scripting.o bio.o rio.o rand.o memtest.o crc64.o bitops.o sentinel.o notify.o setproctitle.o blocked.o hyperloglog.o latency.o sparkline.o
|
||||
+REDIS_SERVER_OBJ+=fpconv.o strbuf.o lua_bit.o lua_cjson.o lua_cmsgpack.o lua_struct.o
|
||||
REDIS_CLI_NAME=redis-cli
|
||||
REDIS_CLI_OBJ=anet.o sds.o adlist.o redis-cli.o zmalloc.o release.o anet.o ae.o crc64.o
|
||||
REDIS_BENCHMARK_NAME=redis-benchmark
|
||||
@@ -162,7 +164,7 @@ endif
|
||||
|
||||
# redis-server
|
||||
$(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ)
|
||||
- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS)
|
||||
+ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS)
|
||||
|
||||
# redis-sentinel
|
||||
$(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME)
|
@ -0,0 +1,116 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-db/redis/redis-3.0.0.ebuild,v 1.1 2015/04/11 11:16:42 hwoarang Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit autotools eutils flag-o-matic systemd toolchain-funcs user
|
||||
|
||||
DESCRIPTION="A persistent caching system, key-value and data structures database"
|
||||
HOMEPAGE="http://redis.io/"
|
||||
SRC_URI="http://download.redis.io/releases/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
KEYWORDS="~amd64 ~amd64-linux ~hppa ~x86 ~x86-linux ~x86-macos ~x86-solaris"
|
||||
IUSE="+jemalloc tcmalloc test"
|
||||
SLOT="0"
|
||||
|
||||
RDEPEND=">=dev-lang/lua-5.1:*
|
||||
tcmalloc? ( dev-util/google-perftools )
|
||||
jemalloc? ( >=dev-libs/jemalloc-3.2 )"
|
||||
DEPEND="virtual/pkgconfig
|
||||
>=sys-devel/autoconf-2.63
|
||||
test? ( dev-lang/tcl:0= )
|
||||
${RDEPEND}"
|
||||
REQUIRED_USE="?? ( tcmalloc jemalloc )"
|
||||
|
||||
S="${WORKDIR}/${PN}-${PV/_/-}"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup redis 75
|
||||
enewuser redis 75 -1 /var/lib/redis redis
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-2.8.3-shared.patch
|
||||
epatch "${FILESDIR}"/${PN}-2.8.17-config.patch
|
||||
epatch "${FILESDIR}"/${P}-sharedlua.patch
|
||||
|
||||
# Copy lua modules into build dir
|
||||
cp "${S}"/deps/lua/src/{fpconv,lua_bit,lua_cjson,lua_cmsgpack,lua_struct,strbuf}.c "${S}"/src || die
|
||||
cp "${S}"/deps/lua/src/{fpconv,strbuf}.h "${S}"/src || die
|
||||
# Append cflag for lua_cjson
|
||||
# https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61
|
||||
append-cflags "-DENABLE_CJSON_GLOBAL"
|
||||
|
||||
# now we will rewrite present Makefiles
|
||||
local makefiles=""
|
||||
for MKF in $(find -name 'Makefile' | cut -b 3-); do
|
||||
mv "${MKF}" "${MKF}.in"
|
||||
sed -i -e 's:$(CC):@CC@:g' \
|
||||
-e 's:$(CFLAGS):@AM_CFLAGS@:g' \
|
||||
-e 's: $(DEBUG)::g' \
|
||||
-e 's:$(OBJARCH)::g' \
|
||||
-e 's:ARCH:TARCH:g' \
|
||||
-e '/^CCOPT=/s:$: $(LDFLAGS):g' \
|
||||
"${MKF}.in" \
|
||||
|| die "Sed failed for ${MKF}"
|
||||
makefiles+=" ${MKF}"
|
||||
done
|
||||
# autodetection of compiler and settings; generates the modified Makefiles
|
||||
cp "${FILESDIR}"/configure.ac-2.2 configure.ac
|
||||
sed -i -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
|
||||
configure.ac || die "Sed failed for configure.ac"
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf
|
||||
|
||||
# Linenoise can't be built with -std=c99, see https://bugs.gentoo.org/451164
|
||||
# also, don't define ANSI/c99 for lua twice
|
||||
sed -i -e "s:-std=c99::g" deps/linenoise/Makefile deps/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export CC AR RANLIB
|
||||
|
||||
local myconf=""
|
||||
|
||||
if use tcmalloc ; then
|
||||
myconf="${myconf} USE_TCMALLOC=yes"
|
||||
elif use jemalloc ; then
|
||||
myconf="${myconf} JEMALLOC_SHARED=yes"
|
||||
else
|
||||
myconf="${myconf} MALLOC=yes"
|
||||
fi
|
||||
|
||||
emake ${myconf} V=1 CC="${CC}" AR="${AR} rcu" RANLIB="${RANLIB}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /etc/
|
||||
doins redis.conf sentinel.conf
|
||||
use prefix || fowners redis:redis /etc/{redis,sentinel}.conf
|
||||
fperms 0644 /etc/{redis,sentinel}.conf
|
||||
|
||||
newconfd "${FILESDIR}/redis.confd" redis
|
||||
newinitd "${FILESDIR}/redis.initd-4" redis
|
||||
|
||||
systemd_dounit "${FILESDIR}/redis.service"
|
||||
systemd_newtmpfilesd "${FILESDIR}/redis.tmpfiles" redis.conf
|
||||
|
||||
nonfatal dodoc 00-RELEASENOTES BUGS CONTRIBUTING MANIFESTO README
|
||||
|
||||
dobin src/redis-cli
|
||||
dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-dump
|
||||
fperms 0750 /usr/sbin/redis-benchmark
|
||||
dosym /usr/sbin/redis-server /usr/sbin/redis-sentinel
|
||||
|
||||
if use prefix; then
|
||||
diropts -m0750
|
||||
else
|
||||
diropts -m0750 -o redis -g redis
|
||||
fi
|
||||
keepdir /var/{log,lib}/redis
|
||||
}
|
@ -0,0 +1,72 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/castor/castor-0.9.9.1-r7.ebuild,v 1.1 2015/04/11 21:58:31 monsieurp Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
JAVA_PKG_IUSE="doc examples source"
|
||||
JAVA_PKG_WANT_BOOTCLASSPATH="1.5"
|
||||
|
||||
inherit eutils java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Data binding framework for Java"
|
||||
SRC_URI="http://dist.codehaus.org/${PN}/${PV}/${P}-src.tgz"
|
||||
HOMEPAGE="http://www.castor.org"
|
||||
LICENSE="Exolab"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
SLOT="0.9"
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEP=">=dev-java/commons-logging-1.0.4
|
||||
dev-java/jakarta-oro:2.0
|
||||
dev-java/jakarta-regexp:1.3
|
||||
dev-java/ldapsdk:4.1
|
||||
dev-java/xerces:1.3
|
||||
dev-java/cglib:3
|
||||
java-virtuals/transaction-api"
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${COMMON_DEP}"
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
${COMMON_DEP}"
|
||||
|
||||
java_prepare() {
|
||||
# TODO this should be filed upstream
|
||||
epatch "${FILESDIR}/0.9.5.3-jikes.patch"
|
||||
|
||||
# Does not like Java 1.6's JDBC API
|
||||
java-ant_rewrite-bootclasspath 1.5 src/build.xml
|
||||
|
||||
cd "${S}/lib"
|
||||
rm -v *.jar || die
|
||||
#FIXME: uses these bundled classes
|
||||
rm -v tests/*.jar || die
|
||||
java-pkg_jar-from --build-only ant-core ant.jar
|
||||
#Only used by examples and tests and we aren't building them
|
||||
#java-pkg_jar-from adaptx-0.9
|
||||
java-pkg_jar-from commons-logging
|
||||
java-pkg_jar-from cglib-2
|
||||
java-pkg_jar-from jakarta-oro-2.0 jakarta-oro.jar oro.jar
|
||||
java-pkg_jar-from jakarta-regexp-1.3 jakarta-regexp.jar regexp.jar
|
||||
java-pkg_jar-from xerces-1.3
|
||||
java-pkg_jar-from ldapsdk-4.1 ldapjdk.jar
|
||||
java-pkg_jar-from transaction-api
|
||||
|
||||
# Remove special characters
|
||||
cd ../
|
||||
|
||||
ebegin 'Removing special characters'
|
||||
perl -i'' -npe 's/S.bastien/Sebastien/g;' src/main/org/exolab/castor/types/DateTimeBase.java
|
||||
perl -i'' -npe 's/.actual value./actual value/g;' src/main/org/exolab/castor/xml/schema/reader/ImportUnmarshaller.java
|
||||
eend $?
|
||||
}
|
||||
|
||||
EANT_BUILD_XML="src/build.xml"
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar dist/${P}.jar
|
||||
java-pkg_newjar dist/${P}-xml.jar ${PN}-xml.jar
|
||||
|
||||
use doc && java-pkg_dojavadoc build/doc/javadoc
|
||||
use examples && java-pkg_doexamples src/examples
|
||||
use source && java-pkg_dosrc src/main/org
|
||||
}
|
@ -0,0 +1,98 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/castor/castor-1.1.1-r3.ebuild,v 1.1 2015/04/11 21:58:31 monsieurp Exp $
|
||||
EAPI=5
|
||||
|
||||
JAVA_PKG_IUSE="doc examples source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Data binding framework for Java"
|
||||
HOMEPAGE="http://www.castor.org"
|
||||
SRC_URI="http://dist.codehaus.org/${PN}/${PV}/${P}-src.tgz"
|
||||
|
||||
#SRC_URI="mirror://gentoo/${P}.tar.bz2"
|
||||
# svn co https://svn.codehaus.org/castor/castor/tags/1.0.3/ castor-1.0.3
|
||||
# cd castor-1.0.3
|
||||
# mvn ant:ant
|
||||
# do some magic to build.xml
|
||||
# rm lib/*
|
||||
# cd ../
|
||||
# tar cjvf castor-1.0.3.tar.bz2 --exclude=.svn castor-1.0.3
|
||||
|
||||
LICENSE="Exolab"
|
||||
SLOT="1.0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
# tests and full documentation when support will be added
|
||||
# dev-java/log4j
|
||||
# ~dev-java/servletapi-2.4
|
||||
# dev-java/junit"
|
||||
|
||||
CDEPEND="dev-java/cglib:3
|
||||
dev-java/commons-logging
|
||||
=dev-java/jakarta-oro-2.0*
|
||||
=dev-java/jakarta-regexp-1.3*
|
||||
java-virtuals/transaction-api
|
||||
=dev-java/ldapsdk-4.1*
|
||||
dev-java/ant-core"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
${CDEPEND}"
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${CDEPEND}"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
|
||||
java-ant_rewrite-classpath "${S}/anttask/build.xml"
|
||||
|
||||
cd "${S}/lib"
|
||||
rm -v *.jar tests/*.jar
|
||||
java-pkg_jar-from cglib-2.1 cglib.jar
|
||||
java-pkg_jar-from commons-logging \
|
||||
commons-logging-api.jar commons-logging-1.1.jar
|
||||
java-pkg_jar-from jakarta-oro-2.0
|
||||
java-pkg_jar-from jakarta-regexp-1.3
|
||||
java-pkg_jar-from transaction-api
|
||||
java-pkg_jar-from ldapsdk-4.1 ldapjdk.jar
|
||||
java-pkg_jar-from ant-core ant.jar
|
||||
|
||||
# These are only used for tests or documentation
|
||||
#java-pkg_jar-from junit
|
||||
#java-pkg_jar-from adaptx-0.9
|
||||
#java-pkg_jar-from log4j
|
||||
#java-pkg_jar-from servletapi-2.4 servlet-api.jar
|
||||
use doc && mkdir "${S}/bin/lib"
|
||||
java-pkg_filter-compiler jikes
|
||||
}
|
||||
|
||||
#src_prepare() {
|
||||
# # http://jira.codehaus.org/browse/CASTOR-2008
|
||||
# epatch "${FILESDIR}/1.1.1-jdk-1.4.patch"
|
||||
#}
|
||||
|
||||
# clean target is borked
|
||||
# http://jira.codehaus.org/browse/CASTOR-2009
|
||||
EANT_BUILD_XML="src/build.xml"
|
||||
EANT_GENTOO_CLASSPATH="ant-core"
|
||||
|
||||
# Needs for example mockejb which is not packaged yet
|
||||
#src_test() {
|
||||
# cd "${S}"/src/
|
||||
# eant tests
|
||||
#}
|
||||
|
||||
src_install() {
|
||||
cd dist
|
||||
for jar in *.jar; do
|
||||
java-pkg_newjar ${jar} ${jar//-${PV}}
|
||||
done
|
||||
cd ..
|
||||
dodoc src/etc/CHANGELOG || die
|
||||
java-pkg_register-ant-task
|
||||
use source && java-pkg_dosrc */main/java/org
|
||||
use doc && java-pkg_dojavadoc build/doc/javadoc
|
||||
use examples && java-pkg_doexamples src/examples
|
||||
}
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/cglib/cglib-3.1.ebuild,v 1.1 2015/04/11 18:37:34 monsieurp Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
JAVA_PKG_IUSE="doc examples source test"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="cglib is a powerful, high performance and quality Code Generation Library"
|
||||
HOMEPAGE="https://github.com/cglib/cglib"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${PN}-src-${PV}.jar"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEP="dev-java/asm:4
|
||||
>=dev-java/ant-core-1.7.0"
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${COMMON_DEP}"
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
test? ( dev-java/junit:4 )
|
||||
${COMMON_DEP}"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="yes"
|
||||
EANT_GENTOO_CLASSPATH="asm-4 ant-core"
|
||||
|
||||
java_prepare() {
|
||||
find . -iname '*.jar' -delete || die
|
||||
|
||||
# Get rid of some parts in XML.
|
||||
epatch "${FILESDIR}"/${P}-build.xml.patch
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar dist/${P}.jar ${PN}.jar
|
||||
|
||||
if use doc; then
|
||||
java-pkg_dojavadoc docs
|
||||
fi
|
||||
|
||||
if use source; then
|
||||
java-pkg_dosrc src/proxy/net
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
java-pkg_doexamples --subdir samples src/proxy/samples
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
java-pkg-2_src_test
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
--- build.xml.orig 2015-04-11 20:26:25.459688628 +0200
|
||||
+++ build.xml 2015-04-11 20:28:41.930026892 +0200
|
||||
@@ -73,7 +73,7 @@
|
||||
<target depends="prepare" description="Compile shareable components"
|
||||
name="compile">
|
||||
<javac debug="${compile.debug}" deprecation="${compile.deprecation}" destdir="${build.home}/classes" optimize="${compile.optimize}" srcdir="${source.home}"
|
||||
- target="${compile.target}" bootclasspath="${compile.bootclasspath}" extdirs="${compile.extdirs}" source="${compile.source}">
|
||||
+ target="${compile.target}" extdirs="${compile.extdirs}" source="${compile.source}">
|
||||
<classpath refid="compile.classpath"/>
|
||||
<compilerarg compiler="jikes" value="-nowarn"/>
|
||||
</javac>
|
||||
@@ -123,15 +123,6 @@
|
||||
<include name="**/*"/>
|
||||
<exclude name="samples/**" />
|
||||
</jar>
|
||||
-
|
||||
- <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpathref="compile.classpath"/>
|
||||
- <jarjar basedir="${build.home}/classes" jarfile="${dist.home}/${component.name}-nodep-${component.version}.jar" >
|
||||
- <zipfileset dir="lib" includes="asm*.txt"/>
|
||||
- <zipfileset src="lib/asm-4.2.jar" excludes="META-INF"/>
|
||||
- <rule pattern="org.objectweb.asm.**" result="net.sf.cglib.asm.@1"/>
|
||||
- <include name="**/*"/>
|
||||
- <exclude name="samples/**"/>
|
||||
- </jarjar>
|
||||
</target>
|
||||
|
||||
<target depends="compile,javadoc" description="Create docs and source distribution" name="srcjar">
|
||||
@@ -246,7 +237,7 @@
|
||||
<!-- <jvmarg value="-verbose:class"/> -->
|
||||
<!-- <jvmarg value="-Xprof"/> -->
|
||||
<!-- <jvmarg value="-server"/> -->
|
||||
- <!-- <sysproperty key="cglib.debugLocation" value="debug"/> -->
|
||||
+ <sysproperty key="cglib.debugLocation" value="debug"/>
|
||||
<!-- <jvmarg value="-Djava.security.policy==java.policy" /> -->
|
||||
<!-- <jvmarg value="-Djava.security.manager" /> -->
|
||||
|
@ -0,0 +1,63 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/commons-digester/commons-digester-3.2-r1.ebuild,v 1.1 2015/04/11 21:05:13 monsieurp Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
# See bug #480758.
|
||||
RESTRICT="test"
|
||||
JAVA_PKG_IUSE="doc examples source" # test
|
||||
|
||||
inherit eutils java-pkg-2 java-ant-2
|
||||
|
||||
MY_P="${PN}3-${PV}-src"
|
||||
|
||||
DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects within the system"
|
||||
HOMEPAGE="http://commons.apache.org/digester/"
|
||||
SRC_URI="mirror://apache/commons/digester/source/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3.2"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
CDEPEND="dev-java/cglib:3
|
||||
dev-java/commons-beanutils:1.7
|
||||
>=dev-java/commons-logging-1.0.2:0"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${CDEPEND}"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
${RDEPEND}"
|
||||
|
||||
# test? (
|
||||
# dev-java/junit:4
|
||||
# dev-java/ant-junit
|
||||
# )
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||||
EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-logging,cglib-3"
|
||||
EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
|
||||
|
||||
java_prepare() {
|
||||
cp "${FILESDIR}"/${PN}-2.1-build.xml build.xml || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
java-pkg_jar-from --build-only junit-4
|
||||
|
||||
ANT_TASKS="ant-junit" eant \
|
||||
-Djunit.jar="$(java-pkg_getjar --build-only junit-4 junit.jar)" test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar target/${PN}.jar
|
||||
|
||||
dodoc RELEASE-NOTES.txt
|
||||
|
||||
use doc && java-pkg_dojavadoc target/site/apidocs
|
||||
use source && java-pkg_dosrc src/main/java/org
|
||||
use examples && java-pkg_doexamples src/examples
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST easymock-3.2.zip 970922 SHA256 3ada340522b94d549a887774d42aaea008fb0aabc6f7e649ad6d23399bc7b80c SHA512 472b0f7183f48dcbd60996a78a69f3be0c9c5762856bf827d9a721b3ff03fca2fb68d3baae970a1de3eee0f293d02b3d9dba3c5634575ba395200e67f767ba3b WHIRLPOOL 5bf9dc61bf4716b88d72cbf80553b2629f7e55ffcd00821e74d8fcdb58160d1a494008d75f39a17ef2319c0bb913ae666f7c7e7d45394f6ad69d032d9e125442
|
||||
DIST easymock-3.3.1.zip 1015625 SHA256 06332d947698e615e00baa5441e54f03423912079d81733dc089e57cae138a36 SHA512 0898276df82a99df10e4c91b5b097b6d579914580995b35274ef9d4e0c874266d54c865f96d008becaa210a6307916f6488d0caa205a85caf62920e939becf46 WHIRLPOOL 61e68261374caa1c7a879c28c329e8f3f6a5f067b57bb3c3eb79405b978544e0f3924b5cbe63cdee35964284d3ea602bb039d68461c73869783cf5e555a2d245
|
||||
|
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/easymock/easymock-3.3.1.ebuild,v 1.1 2015/04/11 22:23:20 monsieurp Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
JAVA_PKG_IUSE="doc examples source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Provides Mock Objects for interfaces in JUnit tests by generating them on the fly"
|
||||
HOMEPAGE="http://www.easymock.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/EasyMock/${PV}/${P}.zip"
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 )"
|
||||
SLOT="3.2"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEPEND="
|
||||
dev-java/junit:4
|
||||
dev-java/objenesis:0
|
||||
dev-java/cglib:3
|
||||
"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
app-arch/unzip
|
||||
${COMMON_DEPEND}"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${COMMON_DEPEND}"
|
||||
|
||||
S="${WORKDIR}/${P}"
|
||||
|
||||
JAVA_GENTOO_CLASSPATH="junit-4,objenesis,cglib-3"
|
||||
JAVA_SRC_DIR="src"
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
cd "${S}" || die
|
||||
unzip ${P}-sources.jar -d src/ || die
|
||||
|
||||
if use examples; then
|
||||
unzip ${P}-samples.jar -d examples/ || die
|
||||
fi
|
||||
}
|
||||
|
||||
java_prepare() {
|
||||
epatch "${FILESDIR}"/${PV}-no-android.patch
|
||||
rm src/org/easymock/internal/AndroidClassProxyFactory.java || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg-simple_src_install
|
||||
|
||||
if use examples; then
|
||||
java-pkg_doexamples examples
|
||||
fi
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
diff --git a/src/org/easymock/internal/MocksControl.java b/src/org/easymock/internal/MocksControl.java
|
||||
index e709dc4..cd9d5a9 100644
|
||||
--- a/src/org/easymock/internal/MocksControl.java
|
||||
+++ b/src/org/easymock/internal/MocksControl.java
|
||||
@@ -137,12 +137,6 @@ public class MocksControl implements IMocksControl, IExpectationSetters<Object>,
|
||||
return cached;
|
||||
}
|
||||
|
||||
- // ///CLOVER:OFF
|
||||
- if (AndroidSupport.isAndroid()) {
|
||||
- return classProxyFactory = new AndroidClassProxyFactory();
|
||||
- }
|
||||
- // ///CLOVER:ON
|
||||
-
|
||||
try {
|
||||
return classProxyFactory = new ClassProxyFactory();
|
||||
} catch (final NoClassDefFoundError e) {
|
@ -0,0 +1,51 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/guice/guice-2.0-r1.ebuild,v 1.1 2015/04/11 22:25:47 monsieurp Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Guice is a lightweight dependency injection framework for Java 5 and above"
|
||||
HOMEPAGE="http://code.google.com/p/google-guice/"
|
||||
SRC_URI="http://google-guice.googlecode.com/files/${P}-src.zip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="2"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEPEND="dev-java/aopalliance:1
|
||||
dev-java/asm:3
|
||||
dev-java/cglib:3"
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${COMMON_DEPEND}"
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
${COMMON_DEPEND}"
|
||||
|
||||
S="${WORKDIR}/${P}-src/"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
JAVA_PKG_BSFIX_NAME="build.xml common.xml servlet/build.xml"
|
||||
JAVA_ANT_CLASSPATH_TAGS="${JAVA_ANT_CLASSPATH_TAGS} javadoc"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="yes"
|
||||
EANT_GENTOO_CLASSPATH="aopalliance-1,asm-3,cglib-3"
|
||||
|
||||
java_prepare() {
|
||||
find . -name '*.jar' -delete || die
|
||||
find . -name '*.class' -delete || die
|
||||
epatch "${FILESDIR}"/${PV}-common.xml.patch
|
||||
epatch "${FILESDIR}"/${PV}-build.xml.patch
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_dojar build/${PN}.jar
|
||||
|
||||
use doc && java-pkg_dojavadoc javadoc/
|
||||
use source && java-pkg_dosrc src/com
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/guice/guice-3.0-r1.ebuild,v 1.1 2015/04/11 22:25:47 monsieurp Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
JAVA_PKG_IUSE="source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
DESCRIPTION="Guice is a lightweight dependency injection framework for Java 5 and above"
|
||||
HOMEPAGE="http://code.google.com/p/google-guice/"
|
||||
SRC_URI="http://google-guice.googlecode.com/files/${P}-src.zip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEPEND="dev-java/aopalliance:1
|
||||
dev-java/javax-inject:0
|
||||
dev-java/asm:3
|
||||
dev-java/cglib:3"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.6
|
||||
${COMMON_DEPEND}"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.6
|
||||
${COMMON_DEPEND}"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
S="${WORKDIR}/${P}-src/"
|
||||
|
||||
JAVA_PKG_BSFIX_NAME="build.xml common.xml servlet/build.xml"
|
||||
JAVA_ANT_REWRITE_CLASSPATH="yes"
|
||||
EANT_GENTOO_CLASSPATH="aopalliance-1,asm-3,cglib-3,javax-inject"
|
||||
|
||||
java_prepare() {
|
||||
find . -name '*.jar' -exec rm -v {} + || die
|
||||
find . -name '*.class' -exec rm -v {} + || die
|
||||
epatch "${FILESDIR}"/${PV}-common.xml.patch
|
||||
epatch "${FILESDIR}"/${PV}-build.xml.patch
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_dojar build/${PN}.jar
|
||||
use source && java-pkg_dosrc core/src/com
|
||||
}
|
@ -1,57 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/xmlstreambuffer/xmlstreambuffer-0.5.20070412-r1.ebuild,v 1.2 2014/08/10 20:27:40 slyfox Exp $
|
||||
|
||||
JAVA_PKG_IUSE="source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2 versionator
|
||||
|
||||
MY_PV=$(replace_version_separator 2 '_')
|
||||
DESCRIPTION="Mechanisms to create and processs stream buffers using standard XML APIs"
|
||||
HOMEPAGE="https://xmlstreambuffer.dev.java.net/"
|
||||
SRC_URI="https://xmlstreambuffer.dev.java.net/files/documents/4258/55235/StreamBufferPackage_src_${MY_PV}_033857.zip"
|
||||
|
||||
LICENSE="CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEP="dev-java/jsr173
|
||||
java-virtuals/jaf
|
||||
dev-java/stax-ex"
|
||||
DEPEND=">=virtual/jdk-1.5
|
||||
${COMMON_DEP}"
|
||||
RDEPEND=">=virtual/jre-1.5
|
||||
${COMMON_DEP}"
|
||||
|
||||
S="${WORKDIR}/streambuffer"
|
||||
|
||||
src_unpack() {
|
||||
|
||||
unpack ${A}
|
||||
|
||||
rm -vr "${S}/build" || die
|
||||
|
||||
cd "${S}/dist"
|
||||
rm -v *.jar || die
|
||||
|
||||
cd "${S}/lib"
|
||||
rm -v *.jar || die
|
||||
|
||||
java-pkg_jar-from jsr173 jsr173.jar jsr173_api.jar
|
||||
java-pkg_jar-from stax-ex
|
||||
java-pkg_jar-from jaf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# This "clean" is needed!
|
||||
eant clean
|
||||
java-pkg-2_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_dojar dist/streambuffer.jar
|
||||
|
||||
use source && java-pkg_dosrc src/*
|
||||
|
||||
}
|
@ -1,57 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/xmlstreambuffer/xmlstreambuffer-0.5.20070412-r2.ebuild,v 1.4 2014/08/10 20:27:40 slyfox Exp $
|
||||
|
||||
JAVA_PKG_IUSE="source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2 versionator
|
||||
|
||||
MY_PV=$(replace_version_separator 2 '_')
|
||||
DESCRIPTION="Mechanisms to create and processs stream buffers using standard XML APIs"
|
||||
HOMEPAGE="https://xmlstreambuffer.dev.java.net/"
|
||||
SRC_URI="https://xmlstreambuffer.dev.java.net/files/documents/4258/55235/StreamBufferPackage_src_${MY_PV}_033857.zip"
|
||||
|
||||
LICENSE="CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ppc x86 ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEP="java-virtuals/stax-api
|
||||
java-virtuals/jaf
|
||||
dev-java/stax-ex"
|
||||
DEPEND=">=virtual/jdk-1.5
|
||||
${COMMON_DEP}"
|
||||
RDEPEND=">=virtual/jre-1.5
|
||||
${COMMON_DEP}"
|
||||
|
||||
S="${WORKDIR}/streambuffer"
|
||||
|
||||
EANT_GENTOO_CLASSPATH="stax-api,jaf,stax-ex"
|
||||
|
||||
src_unpack() {
|
||||
|
||||
unpack ${A}
|
||||
|
||||
rm -vr "${S}/build" || die
|
||||
|
||||
cd "${S}/dist" || die
|
||||
rm -v *.jar || die
|
||||
|
||||
cd "${S}/lib" || die
|
||||
rm -v *.jar || die
|
||||
cd "${S}" || die
|
||||
java-ant_rewrite-classpath nbproject/build-impl.xml
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# This "clean" is needed!
|
||||
eant clean
|
||||
java-pkg-2_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_dojar dist/streambuffer.jar
|
||||
|
||||
use source && java-pkg_dosrc src/*
|
||||
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue