parent
0afae31105
commit
bb4d22242a
@ -1,5 +1,5 @@
|
||||
DIST xmltoman-0.4.tar.gz 15250 SHA256 948794a316aaecd13add60e17e476beae86644d066cb60171fc6b779f2df14b0 SHA512 347722731e2101ecd0619f88f4efdbca534810c96977a1281af685e8a61f4c1a826a71a9f0e3af43cc899936640787366a78077f36d23a9efcfeb789dbcfae22 WHIRLPOOL d55ac95434d0aa54bdb5f45dee7c4a6a7ce1467fb7a2165d08ddf2fc6a0bb6001c15b1db4edc21d8eb4791cac2a2fc32a5c83ad4b3c851216117d1d21f441838
|
||||
EBUILD xmltoman-0.4.ebuild 548 SHA256 06546a8b0a9792f447acab859d9d6cfa2a719497214933f3348009927bb8bd30 SHA512 c885b45d5432cbe7449d69f3438ea4cbae4644908d737c0f6a827abac861972049bf2b18727498ed6517bf052bf8944c5acd02fbfeee0dd73653565a63e0d27e WHIRLPOOL 2ace9ed297fb08b0816d998d665fe89a862b2313a0675145bb68384490c634ad1ac212f86d33098e19e53b18f2ba2b4bdb176b74a171cee96658e6c9acafa0d4
|
||||
MISC ChangeLog 2865 SHA256 0027d7dead6f8d5c882ba1e032cc5b03fc47b90560e02bd54684999470ca1582 SHA512 9a5621528e7b433a99200b63f7c85e13b417553c52fea85e9a9714c1edb905ecf5318e410695412ba4dbaaff643f0dc4433ef9a13e3b7280358a1705db5e3c81 WHIRLPOOL 36c567f8d9166b6dc790cf3c8f84725dedc78401dbd6b1917fd3aa35de327615072bc1df7d0b429cd5bedd1ddcaf1ddc40b8c7c6f75af315e451c382385036c5
|
||||
MISC ChangeLog 3038 SHA256 6285e8e39c3d68d789de5cfdfc3d2109936200687b53d9226debe4e77f19cc1f SHA512 43b304b56a1503ff2698df0519363f0af19b13f0929c07dbae5ec47467745330b95eb084ba5232a6082356f9b7954cc962b1a940dfa70f10b56fc06ea67fd047 WHIRLPOOL c492bafecfde8a5713022d9df012941ecf566ec73214cf497d77e207347d97a2b066b7b0bf464a63d18bd9b3388af053800faede4fb991353cdae5954b6b216b
|
||||
MISC ChangeLog-2015 1994 SHA256 e1e04030823e88a1b55b8af2cffeb7e534da75675217d8177f84ce3052e8ed68 SHA512 522408bfe65eb296c500d10fd5eda25d210a693ef469e7998550f50b6c730d6f1d4b878d0a84bb5037b538d4ab5762a5e205a6150b1ee4dfeca344bf31573dba WHIRLPOOL 5a5c05b7b63571909fe002c433accc4ef7dba4a6d6b50205567d9d5acffef3df1441e6e18933cf2a927db7bd2e5ae8f319c7161626419e35535b2f586410e627
|
||||
MISC metadata.xml 245 SHA256 093355081093472e3b0064e425bd200b94e22d6c2033debe7f992784f29ef5c3 SHA512 3af134c5e57fc7b4fc055162378739b18f3531620338c3b3475ee94c17817948e44c2fe91c58d544ee29d2fae237e5db80388ae1960b017b7991330603377060 WHIRLPOOL 1f49500b3909cc9bab0f29c70260c35ab0f567e05122e4fdf90fbd5f7f72155213fced11d9c41b07458c5afc2e713ecc8932f1b6a28d3fe8bc40be65c8265926
|
||||
|
@ -0,0 +1,450 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
|
||||
PLOCALE_BACKUP="en"
|
||||
|
||||
inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
|
||||
EGIT_BRANCH="master"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MAJOR_V=$(get_version_component_range 1-2)
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
GV="2.40"
|
||||
MV="4.5.6"
|
||||
STAGING_P="wine-staging-${PV}"
|
||||
STAGING_DIR="${WORKDIR}/${STAGING_P}"
|
||||
WINE_GENTOO="wine-gentoo-2015.03.07"
|
||||
GST_P="wine-1.8-gstreamer-1.0"
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
|
||||
https://dev.gentoo.org/~np-hardass/distfiles/${PN}/${GST_P}.patch.bz2
|
||||
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git"
|
||||
else
|
||||
SRC_URI="${SRC_URI}
|
||||
staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
|
||||
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
|
||||
test? ( abi_x86_32 )
|
||||
elibc_glibc? ( threads )
|
||||
mono? ( abi_x86_32 )
|
||||
pipelight? ( staging )
|
||||
s3tc? ( staging )
|
||||
vaapi? ( staging )
|
||||
osmesa? ( opengl )" #286560
|
||||
|
||||
# FIXME: the test suite is unsuitable for us; many tests require net access
|
||||
# or fail due to Xvfb's opengl limitations.
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
opengl? (
|
||||
virtual/glu[${MULTILIB_USEDEP}]
|
||||
virtual/opengl[${MULTILIB_USEDEP}]
|
||||
)
|
||||
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
|
||||
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
|
||||
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
xml? (
|
||||
dev-libs/libxml2[${MULTILIB_USEDEP}]
|
||||
dev-libs/libxslt[${MULTILIB_USEDEP}]
|
||||
)
|
||||
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-baselibs-20140508-r14
|
||||
!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-db-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-medialibs-20140508-r6
|
||||
!app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-opengl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-sdl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-soundlibs-20140508
|
||||
!app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-xlibs-20140508
|
||||
)"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dos? ( games-emulation/dosbox )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.0.25[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
|
||||
|
||||
# tools/make_requests requires perl
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
staging? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
prelink? ( sys-devel/prelink )
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
virtual/pkgconfig
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
# These use a non-standard "Wine" category, which is provided by
|
||||
# /etc/xdg/applications-merged/wine.menu
|
||||
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
|
||||
usr/share/applications/wine-notepad.desktop
|
||||
usr/share/applications/wine-uninstaller.desktop
|
||||
usr/share/applications/wine-winecfg.desktop"
|
||||
|
||||
wine_build_environment_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
# bug #549768
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
|
||||
einfo "Checking for gcc-5 ms_abi compiler bug ..."
|
||||
$(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
|
||||
# Run in subshell to prevent "Aborted" message
|
||||
if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
|
||||
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/549768"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
# bug #574044
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
|
||||
einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
|
||||
eerror "Wine cannot be built with this version of gcc-5.3"
|
||||
eerror "due to compiler bugs; please use gcc-config to select a"
|
||||
eerror "different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/574044"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
|
||||
eerror "You need gcc-4.4+ to build 64-bit wine"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
|
||||
if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; then
|
||||
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
|
||||
eerror "See https://bugs.gentoo.org/487864 for more details."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-r3_src_unpack
|
||||
if use staging; then
|
||||
local WINE_COMMIT=${EGIT_VERSION}
|
||||
|
||||
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
|
||||
unset ${PN}_LIVE_{REPO,BRANCH,COMMIT} EGIT_COMMIT;
|
||||
|
||||
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
|
||||
|
||||
local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
|
||||
|
||||
if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
|
||||
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
|
||||
einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
|
||||
einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
unpack ${P}.tar.bz2
|
||||
use staging && unpack "${STAGING_P}.tar.gz"
|
||||
fi
|
||||
|
||||
unpack "${WINE_GENTOO}.tar.bz2"
|
||||
unpack "${GST_P}.patch.bz2"
|
||||
|
||||
l10n_find_plocales_changes "${S}/po" "" ".po"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local md5="$(md5sum server/protocol.def)"
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
|
||||
"${FILESDIR}"/${PN}-1.4_rc2-multilib-portage.patch #395615
|
||||
"${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
|
||||
"${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
|
||||
"${WORKDIR}/${GST_P}.patch"
|
||||
"${FILESDIR}"/${PN}-sysmacros.patch #580046
|
||||
)
|
||||
if use staging; then
|
||||
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
|
||||
ewarn "Wine bugzilla should explicitly state that staging was used."
|
||||
|
||||
local STAGING_EXCLUDE=""
|
||||
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
|
||||
|
||||
# Launch wine-staging patcher in a subshell, using epatch as a backend, and gitapply.sh as a backend for binary patches
|
||||
ebegin "Running Wine-Staging patch installer"
|
||||
(
|
||||
set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE}
|
||||
cd "${STAGING_DIR}/patches"
|
||||
source "${STAGING_DIR}/patches/patchinstall.sh"
|
||||
)
|
||||
eend $?
|
||||
fi
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
|
||||
# Modification of the server protocol requires regenerating the server requests
|
||||
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
|
||||
einfo "server/protocol.def was patched; running tools/make_requests"
|
||||
tools/make_requests || die #432348
|
||||
fi
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
if ! use run-exes; then
|
||||
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
|
||||
fi
|
||||
|
||||
# hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
|
||||
cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
|
||||
|
||||
l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--sysconfdir=/etc/wine
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with lcms cms)
|
||||
$(use_with cups)
|
||||
$(use_with ncurses curses)
|
||||
$(use_with udisks dbus)
|
||||
$(use_with fontconfig)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gsm)
|
||||
$(use_with gstreamer)
|
||||
--without-hal
|
||||
$(use_with jpeg)
|
||||
$(use_with ldap)
|
||||
$(use_enable mono mscoree)
|
||||
$(use_with mp3 mpg123)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with openal)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
$(use_with oss)
|
||||
$(use_with pcap)
|
||||
$(use_with png)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with threads pthread)
|
||||
$(use_with scanner sane)
|
||||
$(use_enable test tests)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with v4l)
|
||||
$(use_with X x)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(use_with xml)
|
||||
$(use_with xml xslt)
|
||||
)
|
||||
|
||||
use staging && myconf+=(
|
||||
--with-xattr
|
||||
$(use_with vaapi va)
|
||||
)
|
||||
|
||||
local PKG_CONFIG AR RANLIB
|
||||
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
|
||||
# set AR and RANLIB to make QA scripts happy; #483342
|
||||
tc-export PKG_CONFIG AR RANLIB
|
||||
|
||||
if use amd64; then
|
||||
if [[ ${ABI} == amd64 ]]; then
|
||||
myconf+=( --enable-win64 )
|
||||
else
|
||||
myconf+=( --disable-win64 )
|
||||
fi
|
||||
|
||||
# Note: using --with-wine64 results in problems with multilib.eclass
|
||||
# CC/LD hackery. We're using separate tools instead.
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myconf[@]}"
|
||||
emake depend
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
if [[ $(id -u) == 0 ]]; then
|
||||
ewarn "Skipping tests since they cannot be run under the root user."
|
||||
ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
|
||||
return
|
||||
fi
|
||||
|
||||
WINEPREFIX="${T}/.wine-${ABI}" \
|
||||
Xemake test
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=( ANNOUNCE AUTHORS README )
|
||||
local l
|
||||
add_locale_docs() {
|
||||
local locale_doc="documentation/README.$1"
|
||||
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
|
||||
}
|
||||
l10n_for_each_locale_do add_locale_docs
|
||||
|
||||
einstalldocs
|
||||
prune_libtool_files --all
|
||||
|
||||
emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
|
||||
use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
|
||||
fi
|
||||
if use mono ; then
|
||||
insinto /usr/share/wine/mono
|
||||
doins "${DISTDIR}"/wine-mono-${MV}.msi
|
||||
fi
|
||||
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
|
||||
rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
|
||||
use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
|
||||
use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
|
||||
|
||||
if use abi_x86_64 && ! use abi_x86_32; then
|
||||
dosym /usr/bin/wine{64,} # 404331
|
||||
dosym /usr/bin/wine{64,}-preloader
|
||||
fi
|
||||
|
||||
# respect LINGUAS when installing man pages, #469418
|
||||
for l in de fr pl; do
|
||||
use linguas_${l} || rm -r "${D}"usr/share/man/${l}*
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
|
||||
if ! use gecko; then
|
||||
ewarn "Without Wine Gecko, wine prefixes will not have a default"
|
||||
ewarn "implementation of iexplore. Many older windows applications"
|
||||
ewarn "rely upon the existence of an iexplore implementation, so"
|
||||
ewarn "you will likely need to install an external one, like via winetricks"
|
||||
fi
|
||||
if ! use mono; then
|
||||
ewarn "Without Wine Mono, wine prefixes will not have a default"
|
||||
ewarn "implementation of .NET. Many windows applications rely upon"
|
||||
ewarn "the existence of a .NET implementation, so you will likely need"
|
||||
ewarn "to install an external one, like via winetricks"
|
||||
fi
|
||||
|
||||
if use gstreamer; then
|
||||
ewarn "This package uses a Gentoo specific patchset to provide"
|
||||
ewarn "GStreamer 1.0 support. Any bugs related to GStreamer should"
|
||||
ewarn "be filed at Gentoo's bugzilla, not upstream's."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
}
|
@ -0,0 +1,456 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
|
||||
PLOCALE_BACKUP="en"
|
||||
|
||||
inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
|
||||
EGIT_BRANCH="master"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MAJOR_V=$(get_version_component_range 1-2)
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
GV="2.40"
|
||||
MV="4.5.6"
|
||||
[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
|
||||
STAGING_P="wine-staging-${PV}"
|
||||
STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
|
||||
WINE_GENTOO="wine-gentoo-2015.03.07"
|
||||
GST_P="wine-1.8-gstreamer-1.0"
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
|
||||
https://dev.gentoo.org/~np-hardass/distfiles/${PN}/${GST_P}.patch.bz2
|
||||
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git"
|
||||
else
|
||||
SRC_URI="${SRC_URI}
|
||||
staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
|
||||
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
|
||||
test? ( abi_x86_32 )
|
||||
elibc_glibc? ( threads )
|
||||
mono? ( abi_x86_32 )
|
||||
pipelight? ( staging )
|
||||
s3tc? ( staging )
|
||||
vaapi? ( staging )
|
||||
osmesa? ( opengl )" #286560
|
||||
|
||||
# FIXME: the test suite is unsuitable for us; many tests require net access
|
||||
# or fail due to Xvfb's opengl limitations.
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
opengl? (
|
||||
virtual/glu[${MULTILIB_USEDEP}]
|
||||
virtual/opengl[${MULTILIB_USEDEP}]
|
||||
)
|
||||
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
|
||||
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
|
||||
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
xml? (
|
||||
dev-libs/libxml2[${MULTILIB_USEDEP}]
|
||||
dev-libs/libxslt[${MULTILIB_USEDEP}]
|
||||
)
|
||||
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-baselibs-20140508-r14
|
||||
!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-db-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-medialibs-20140508-r6
|
||||
!app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-opengl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-sdl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-soundlibs-20140508
|
||||
!app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-xlibs-20140508
|
||||
)"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dos? ( games-emulation/dosbox )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.0.25[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
|
||||
|
||||
# tools/make_requests requires perl
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
staging? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
prelink? ( sys-devel/prelink )
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
virtual/pkgconfig
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
# These use a non-standard "Wine" category, which is provided by
|
||||
# /etc/xdg/applications-merged/wine.menu
|
||||
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
|
||||
usr/share/applications/wine-notepad.desktop
|
||||
usr/share/applications/wine-uninstaller.desktop
|
||||
usr/share/applications/wine-winecfg.desktop"
|
||||
|
||||
wine_build_environment_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
# bug #549768
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
|
||||
einfo "Checking for gcc-5 ms_abi compiler bug ..."
|
||||
$(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
|
||||
# Run in subshell to prevent "Aborted" message
|
||||
if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
|
||||
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/549768"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
# bug #574044
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
|
||||
einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
|
||||
eerror "Wine cannot be built with this version of gcc-5.3"
|
||||
eerror "due to compiler bugs; please use gcc-config to select a"
|
||||
eerror "different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/574044"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
|
||||
eerror "You need gcc-4.4+ to build 64-bit wine"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
|
||||
if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; then
|
||||
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
|
||||
eerror "See https://bugs.gentoo.org/487864 for more details."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-r3_src_unpack
|
||||
if use staging; then
|
||||
local WINE_COMMIT=${EGIT_VERSION}
|
||||
|
||||
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
|
||||
unset ${PN}_LIVE_{REPO,BRANCH,COMMIT} EGIT_COMMIT;
|
||||
|
||||
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
|
||||
|
||||
local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
|
||||
|
||||
if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
|
||||
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
|
||||
einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
|
||||
einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
unpack ${P}.tar.bz2
|
||||
use staging && unpack "${STAGING_P}.tar.gz"
|
||||
fi
|
||||
|
||||
unpack "${WINE_GENTOO}.tar.bz2"
|
||||
unpack "${GST_P}.patch.bz2"
|
||||
|
||||
l10n_find_plocales_changes "${S}/po" "" ".po"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local md5="$(md5sum server/protocol.def)"
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
|
||||
"${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
|
||||
"${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
|
||||
"${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
|
||||
"${WORKDIR}/${GST_P}.patch"
|
||||
"${FILESDIR}"/${PN}-sysmacros.patch #580046
|
||||
)
|
||||
if use staging; then
|
||||
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
|
||||
ewarn "Wine bugzilla should explicitly state that staging was used."
|
||||
|
||||
local STAGING_EXCLUDE=""
|
||||
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
|
||||
|
||||
# Launch wine-staging patcher in a subshell, using epatch as a backend, and gitapply.sh as a backend for binary patches
|
||||
ebegin "Running Wine-Staging patch installer"
|
||||
(
|
||||
set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE}
|
||||
cd "${STAGING_DIR}/patches"
|
||||
source "${STAGING_DIR}/patches/patchinstall.sh"
|
||||
)
|
||||
eend $?
|
||||
|
||||
# To differentiate unofficial staging releases
|
||||
if [[ ! -z ${SUFFIX} ]]; then
|
||||
sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
|
||||
fi
|
||||
fi
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
|
||||
# Modification of the server protocol requires regenerating the server requests
|
||||
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
|
||||
einfo "server/protocol.def was patched; running tools/make_requests"
|
||||
tools/make_requests || die #432348
|
||||
fi
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
if ! use run-exes; then
|
||||
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
|
||||
fi
|
||||
|
||||
# hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
|
||||
cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
|
||||
|
||||
l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--sysconfdir=/etc/wine
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with lcms cms)
|
||||
$(use_with cups)
|
||||
$(use_with ncurses curses)
|
||||
$(use_with udisks dbus)
|
||||
$(use_with fontconfig)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gsm)
|
||||
$(use_with gstreamer)
|
||||
--without-hal
|
||||
$(use_with jpeg)
|
||||
$(use_with ldap)
|
||||
$(use_enable mono mscoree)
|
||||
$(use_with mp3 mpg123)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with openal)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
$(use_with oss)
|
||||
$(use_with pcap)
|
||||
$(use_with png)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with threads pthread)
|
||||
$(use_with scanner sane)
|
||||
$(use_enable test tests)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with v4l)
|
||||
$(use_with X x)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(use_with xml)
|
||||
$(use_with xml xslt)
|
||||
)
|
||||
|
||||
use staging && myconf+=(
|
||||
--with-xattr
|
||||
$(use_with vaapi va)
|
||||
)
|
||||
|
||||
local PKG_CONFIG AR RANLIB
|
||||
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
|
||||
# set AR and RANLIB to make QA scripts happy; #483342
|
||||
tc-export PKG_CONFIG AR RANLIB
|
||||
|
||||
if use amd64; then
|
||||
if [[ ${ABI} == amd64 ]]; then
|
||||
myconf+=( --enable-win64 )
|
||||
else
|
||||
myconf+=( --disable-win64 )
|
||||
fi
|
||||
|
||||
# Note: using --with-wine64 results in problems with multilib.eclass
|
||||
# CC/LD hackery. We're using separate tools instead.
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myconf[@]}"
|
||||
emake depend
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
if [[ $(id -u) == 0 ]]; then
|
||||
ewarn "Skipping tests since they cannot be run under the root user."
|
||||
ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
|
||||
return
|
||||
fi
|
||||
|
||||
WINEPREFIX="${T}/.wine-${ABI}" \
|
||||
Xemake test
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=( ANNOUNCE AUTHORS README )
|
||||
local l
|
||||
add_locale_docs() {
|
||||
local locale_doc="documentation/README.$1"
|
||||
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
|
||||
}
|
||||
l10n_for_each_locale_do add_locale_docs
|
||||
|
||||
einstalldocs
|
||||
prune_libtool_files --all
|
||||
|
||||
emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
|
||||
use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
|
||||
fi
|
||||
if use mono ; then
|
||||
insinto /usr/share/wine/mono
|
||||
doins "${DISTDIR}"/wine-mono-${MV}.msi
|
||||
fi
|
||||
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
|
||||
rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
|
||||
use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
|
||||
use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
|
||||
|
||||
if use abi_x86_64 && ! use abi_x86_32; then
|
||||
dosym /usr/bin/wine{64,} # 404331
|
||||
dosym /usr/bin/wine{64,}-preloader
|
||||
fi
|
||||
|
||||
# respect LINGUAS when installing man pages, #469418
|
||||
for l in de fr pl; do
|
||||
use linguas_${l} || rm -r "${D}"usr/share/man/${l}*
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
|
||||
if ! use gecko; then
|
||||
ewarn "Without Wine Gecko, wine prefixes will not have a default"
|
||||
ewarn "implementation of iexplore. Many older windows applications"
|
||||
ewarn "rely upon the existence of an iexplore implementation, so"
|
||||
ewarn "you will likely need to install an external one, like via winetricks"
|
||||
fi
|
||||
if ! use mono; then
|
||||
ewarn "Without Wine Mono, wine prefixes will not have a default"
|
||||
ewarn "implementation of .NET. Many windows applications rely upon"
|
||||
ewarn "the existence of a .NET implementation, so you will likely need"
|
||||
ewarn "to install an external one, like via winetricks"
|
||||
fi
|
||||
|
||||
if use gstreamer; then
|
||||
ewarn "This package uses a Gentoo specific patchset to provide"
|
||||
ewarn "GStreamer 1.0 support. Any bugs related to GStreamer should"
|
||||
ewarn "be filed at Gentoo's bugzilla, not upstream's."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
}
|
@ -1,451 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
AUTOTOOLS_AUTORECONF=1
|
||||
PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
|
||||
PLOCALE_BACKUP="en"
|
||||
|
||||
inherit autotools-utils eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
|
||||
EGIT_BRANCH="master"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MAJOR_V=$(get_version_component_range 1-2)
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
GV="2.40"
|
||||
MV="4.5.6"
|
||||
STAGING_P="wine-staging-${PV}"
|
||||
STAGING_DIR="${WORKDIR}/${STAGING_P}"
|
||||
WINE_GENTOO="wine-gentoo-2015.03.07"
|
||||
GST_P="wine-1.7.55-gstreamer-v5"
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
|
||||
gstreamer? ( https://dev.gentoo.org/~np-hardass/distfiles/${PN}/${GST_P}.patch.bz2 )
|
||||
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git"
|
||||
else
|
||||
SRC_URI="${SRC_URI}
|
||||
staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
|
||||
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
|
||||
test? ( abi_x86_32 )
|
||||
elibc_glibc? ( threads )
|
||||
mono? ( abi_x86_32 )
|
||||
pipelight? ( staging )
|
||||
s3tc? ( staging )
|
||||
vaapi? ( staging )
|
||||
osmesa? ( opengl )" #286560
|
||||
#?? ( gstreamer staging ) #Should be fixed by pre/post patchset
|
||||
|
||||
# FIXME: the test suite is unsuitable for us; many tests require net access
|
||||
# or fail due to Xvfb's opengl limitations.
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:0.10[${MULTILIB_USEDEP}]
|
||||
media-libs/gst-plugins-base:0.10[${MULTILIB_USEDEP}]
|
||||
)
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
opengl? (
|
||||
virtual/glu[${MULTILIB_USEDEP}]
|
||||
virtual/opengl[${MULTILIB_USEDEP}]
|
||||
)
|
||||
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
|
||||
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
|
||||
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
xml? (
|
||||
dev-libs/libxml2[${MULTILIB_USEDEP}]
|
||||
dev-libs/libxslt[${MULTILIB_USEDEP}]
|
||||
)
|
||||
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-baselibs-20140508-r14
|
||||
!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-db-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-medialibs-20140508-r6
|
||||
!app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-opengl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-sdl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-soundlibs-20140508
|
||||
!app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-xlibs-20140508
|
||||
)"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dos? ( games-emulation/dosbox )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.0.25 )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
|
||||
|
||||
# tools/make_requests requires perl
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
staging? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
prelink? ( sys-devel/prelink )
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
virtual/pkgconfig
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
# These use a non-standard "Wine" category, which is provided by
|
||||
# /etc/xdg/applications-merged/wine.menu
|
||||
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
|
||||
usr/share/applications/wine-notepad.desktop
|
||||
usr/share/applications/wine-uninstaller.desktop
|
||||
usr/share/applications/wine-winecfg.desktop"
|
||||
|
||||
wine_build_environment_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
# bug #549768
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
|
||||
einfo "Checking for gcc-5 ms_abi compiler bug ..."
|
||||
$(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
|
||||
# Run in subshell to prevent "Aborted" message
|
||||
if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
|
||||
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/549768"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
# bug #574044
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
|
||||
einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
|
||||
eerror "Wine cannot be built with this version of gcc-5.3"
|
||||
eerror "due to compiler bugs; please use gcc-config to select a"
|
||||
eerror "different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/574044"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
|
||||
eerror "You need gcc-4.4+ to build 64-bit wine"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
|
||||
if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; then
|
||||
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
|
||||
eerror "See https://bugs.gentoo.org/487864 for more details."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-r3_src_unpack
|
||||
if use staging; then
|
||||
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
|
||||
unset ${PN}_LIVE_REPO;
|
||||
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
|
||||
fi
|
||||
else
|
||||
unpack ${P}.tar.bz2
|
||||
use staging && unpack "${STAGING_P}.tar.gz"
|
||||
fi
|
||||
|
||||
unpack "${WINE_GENTOO}.tar.bz2"
|
||||
use gstreamer && unpack "${GST_P}.patch.bz2"
|
||||
|
||||
l10n_find_plocales_changes "${S}/po" "" ".po"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local md5="$(md5sum server/protocol.def)"
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
|
||||
"${FILESDIR}"/${PN}-1.4_rc2-multilib-portage.patch #395615
|
||||
"${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
|
||||
"${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
|
||||
)
|
||||
if use gstreamer; then
|
||||
# See http://bugs.winehq.org/show_bug.cgi?id=30557
|
||||
ewarn "Applying experimental patch to fix GStreamer support. Note that"
|
||||
ewarn "this patch has been reported to cause crashes in certain games."
|
||||
|
||||
# Wine-Staging 1.7.38 "ntdll: Fix race-condition when threads are killed
|
||||
# during shutdown" patch and "Added patch to implement shared memory
|
||||
# wineserver communication for various user32 functions" prevents the
|
||||
# gstreamer patch from applying cleanly.
|
||||
# So undo the staging patch, apply gstreamer, then re-apply rebased staging
|
||||
# patch on top.
|
||||
if use staging; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-pre.patch"
|
||||
"${WORKDIR}/${GST_P}.patch"
|
||||
"${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-post.patch" )
|
||||
else
|
||||
PATCHES+=( "${WORKDIR}/${GST_P}.patch" )
|
||||
fi
|
||||
fi
|
||||
if use staging; then
|
||||
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
|
||||
ewarn "Wine bugzilla should explicitly state that staging was used."
|
||||
|
||||
local STAGING_EXCLUDE=""
|
||||
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
|
||||
|
||||
# Launch wine-staging patcher in a subshell, using epatch as a backend, and gitapply.sh as a backend for binary patches
|
||||
ebegin "Running Wine-Staging patch installer"
|
||||
(
|
||||
set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE}
|
||||
cd "${STAGING_DIR}/patches"
|
||||
source "${STAGING_DIR}/patches/patchinstall.sh"
|
||||
)
|
||||
eend $?
|
||||
fi
|
||||
autotools-utils_src_prepare
|
||||
|
||||
# Modification of the server protocol requires regenerating the server requests
|
||||
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
|
||||
einfo "server/protocol.def was patched; running tools/make_requests"
|
||||
tools/make_requests || die #432348
|
||||
fi
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
if ! use run-exes; then
|
||||
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
|
||||
fi
|
||||
|
||||
# hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
|
||||
cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
|
||||
|
||||
l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--sysconfdir=/etc/wine
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with lcms cms)
|
||||
$(use_with cups)
|
||||
$(use_with ncurses curses)
|
||||
$(use_with udisks dbus)
|
||||
$(use_with fontconfig)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gsm)
|
||||
$(use_with gstreamer)
|
||||
--without-hal
|
||||
$(use_with jpeg)
|
||||
$(use_with ldap)
|
||||
$(use_enable mono mscoree)
|
||||
$(use_with mp3 mpg123)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with openal)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
$(use_with oss)
|
||||
$(use_with pcap)
|
||||
$(use_with png)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with threads pthread)
|
||||
$(use_with scanner sane)
|
||||
$(use_enable test tests)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with v4l)
|
||||
$(use_with X x)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(use_with xml)
|
||||
$(use_with xml xslt)
|
||||
)
|
||||
|
||||
use staging && myconf+=(
|
||||
--with-xattr
|
||||
$(use_with vaapi va)
|
||||
)
|
||||
|
||||
local PKG_CONFIG AR RANLIB
|
||||
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
|
||||
# set AR and RANLIB to make QA scripts happy; #483342
|
||||
tc-export PKG_CONFIG AR RANLIB
|
||||
|
||||
if use amd64; then
|
||||
if [[ ${ABI} == amd64 ]]; then
|
||||
myconf+=( --enable-win64 )
|
||||
else
|
||||
myconf+=( --disable-win64 )
|
||||
fi
|
||||
|
||||
# Note: using --with-wine64 results in problems with multilib.eclass
|
||||
# CC/LD hackery. We're using separate tools instead.
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myconf[@]}"
|
||||
emake depend
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
if [[ $(id -u) == 0 ]]; then
|
||||
ewarn "Skipping tests since they cannot be run under the root user."
|
||||
ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
|
||||
return
|
||||
fi
|
||||
|
||||
WINEPREFIX="${T}/.wine-${ABI}" \
|
||||
Xemake test
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=( ANNOUNCE AUTHORS README )
|
||||
local l
|
||||
add_locale_docs() {
|
||||
local locale_doc="documentation/README.$1"
|
||||
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
|
||||
}
|
||||
l10n_for_each_locale_do add_locale_docs
|
||||
|
||||
einstalldocs
|
||||
prune_libtool_files --all
|
||||
|
||||
emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
|
||||
use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
|
||||
fi
|
||||
if use mono ; then
|
||||
insinto /usr/share/wine/mono
|
||||
doins "${DISTDIR}"/wine-mono-${MV}.msi
|
||||
fi
|
||||
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
|
||||
rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
|
||||
use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
|
||||
use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
|
||||
|
||||
if use abi_x86_64 && ! use abi_x86_32; then
|
||||
dosym /usr/bin/wine{64,} # 404331
|
||||
dosym /usr/bin/wine{64,}-preloader
|
||||
fi
|
||||
|
||||
# respect LINGUAS when installing man pages, #469418
|
||||
for l in de fr pl; do
|
||||
use linguas_${l} || rm -r "${D}"usr/share/man/${l}*
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
|
||||
if ! use gecko; then
|
||||
ewarn "Without Wine Gecko, wine prefixes will not have a default"
|
||||
ewarn "implementation of iexplore. Many older windows applications"
|
||||
ewarn "rely upon the existence of an iexplore implementation, so"
|
||||
ewarn "you will likely need to install an external one, like via winetricks"
|
||||
fi
|
||||
if ! use mono; then
|
||||
ewarn "Without Wine Mono, wine prefixes will not have a default"
|
||||
ewarn "implementation of .NET. Many windows applications rely upon"
|
||||
ewarn "the existence of a .NET implementation, so you will likely need"
|
||||
ewarn "to install an external one, like via winetricks"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
}
|
@ -0,0 +1,445 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
|
||||
PLOCALE_BACKUP="en"
|
||||
|
||||
inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
|
||||
EGIT_BRANCH="master"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MAJOR_V=$(get_version_component_range 1-2)
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
GV="2.44"
|
||||
MV="4.6.2"
|
||||
[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
|
||||
STAGING_P="wine-staging-${PV}"
|
||||
STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
|
||||
WINE_GENTOO="wine-gentoo-2015.03.07"
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
|
||||
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git"
|
||||
else
|
||||
SRC_URI="${SRC_URI}
|
||||
staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
|
||||
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
|
||||
test? ( abi_x86_32 )
|
||||
elibc_glibc? ( threads )
|
||||
pipelight? ( staging )
|
||||
s3tc? ( staging )
|
||||
vaapi? ( staging )
|
||||
osmesa? ( opengl )" #286560
|
||||
|
||||
# FIXME: the test suite is unsuitable for us; many tests require net access
|
||||
# or fail due to Xvfb's opengl limitations.
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
opengl? (
|
||||
virtual/glu[${MULTILIB_USEDEP}]
|
||||
virtual/opengl[${MULTILIB_USEDEP}]
|
||||
)
|
||||
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
|
||||
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
|
||||
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
xml? (
|
||||
dev-libs/libxml2[${MULTILIB_USEDEP}]
|
||||
dev-libs/libxslt[${MULTILIB_USEDEP}]
|
||||
)
|
||||
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-baselibs-20140508-r14
|
||||
!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-db-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-medialibs-20140508-r6
|
||||
!app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-opengl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-sdl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-soundlibs-20140508
|
||||
!app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-xlibs-20140508
|
||||
)"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dos? ( games-emulation/dosbox )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.0.25[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
|
||||
|
||||
# tools/make_requests requires perl
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
staging? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
prelink? ( sys-devel/prelink )
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
virtual/pkgconfig
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
# These use a non-standard "Wine" category, which is provided by
|
||||
# /etc/xdg/applications-merged/wine.menu
|
||||
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
|
||||
usr/share/applications/wine-notepad.desktop
|
||||
usr/share/applications/wine-uninstaller.desktop
|
||||
usr/share/applications/wine-winecfg.desktop"
|
||||
|
||||
wine_build_environment_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
# bug #549768
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
|
||||
einfo "Checking for gcc-5 ms_abi compiler bug ..."
|
||||
$(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
|
||||
# Run in subshell to prevent "Aborted" message
|
||||
if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
|
||||
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/549768"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
# bug #574044
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
|
||||
einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
|
||||
eerror "Wine cannot be built with this version of gcc-5.3"
|
||||
eerror "due to compiler bugs; please use gcc-config to select a"
|
||||
eerror "different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/574044"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
|
||||
eerror "You need gcc-4.4+ to build 64-bit wine"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
|
||||
if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; then
|
||||
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
|
||||
eerror "See https://bugs.gentoo.org/487864 for more details."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
wine_build_environment_check || die
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-r3_src_unpack
|
||||
if use staging; then
|
||||
local WINE_COMMIT=${EGIT_VERSION}
|
||||
|
||||
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
|
||||
unset ${PN}_LIVE_{REPO,BRANCH,COMMIT} EGIT_COMMIT;
|
||||
|
||||
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
|
||||
|
||||
local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
|
||||
|
||||
if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
|
||||
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
|
||||
einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
|
||||
einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
unpack ${P}.tar.bz2
|
||||
use staging && unpack "${STAGING_P}.tar.gz"
|
||||
fi
|
||||
|
||||
unpack "${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
l10n_find_plocales_changes "${S}/po" "" ".po"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local md5="$(md5sum server/protocol.def)"
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
|
||||
"${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
|
||||
"${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
|
||||
"${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
|
||||
"${FILESDIR}"/${PN}-sysmacros.patch #580046
|
||||
)
|
||||
if use staging; then
|
||||
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
|
||||
ewarn "Wine bugzilla should explicitly state that staging was used."
|
||||
|
||||
local STAGING_EXCLUDE=""
|
||||
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
|
||||
|
||||
# Launch wine-staging patcher in a subshell, using epatch as a backend, and gitapply.sh as a backend for binary patches
|
||||
ebegin "Running Wine-Staging patch installer"
|
||||
(
|
||||
set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE}
|
||||
cd "${STAGING_DIR}/patches"
|
||||
source "${STAGING_DIR}/patches/patchinstall.sh"
|
||||
)
|
||||
eend $?
|
||||
|
||||
# To differentiate unofficial staging releases
|
||||
if [[ ! -z ${SUFFIX} ]]; then
|
||||
sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
|
||||
fi
|
||||
fi
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
|
||||
# Modification of the server protocol requires regenerating the server requests
|
||||
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
|
||||
einfo "server/protocol.def was patched; running tools/make_requests"
|
||||
tools/make_requests || die #432348
|
||||
fi
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
if ! use run-exes; then
|
||||
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
|
||||
fi
|
||||
|
||||
# hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
|
||||
cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
|
||||
|
||||
l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--sysconfdir=/etc/wine
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with lcms cms)
|
||||
$(use_with cups)
|
||||
$(use_with ncurses curses)
|
||||
$(use_with udisks dbus)
|
||||
$(use_with fontconfig)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gsm)
|
||||
$(use_with gstreamer)
|
||||
--without-hal
|
||||
$(use_with jpeg)
|
||||
$(use_with ldap)
|
||||
$(use_enable mono mscoree)
|
||||
$(use_with mp3 mpg123)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with openal)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
$(use_with oss)
|
||||
$(use_with pcap)
|
||||
$(use_with png)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with threads pthread)
|
||||
$(use_with scanner sane)
|
||||
$(use_enable test tests)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with v4l)
|
||||
$(use_with X x)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(use_with xml)
|
||||
$(use_with xml xslt)
|
||||
)
|
||||
|
||||
use staging && myconf+=(
|
||||
--with-xattr
|
||||
$(use_with vaapi va)
|
||||
)
|
||||
|
||||
local PKG_CONFIG AR RANLIB
|
||||
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
|
||||
# set AR and RANLIB to make QA scripts happy; #483342
|
||||
tc-export PKG_CONFIG AR RANLIB
|
||||
|
||||
if use amd64; then
|
||||
if [[ ${ABI} == amd64 ]]; then
|
||||
myconf+=( --enable-win64 )
|
||||
else
|
||||
myconf+=( --disable-win64 )
|
||||
fi
|
||||
|
||||
# Note: using --with-wine64 results in problems with multilib.eclass
|
||||
# CC/LD hackery. We're using separate tools instead.
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myconf[@]}"
|
||||
emake depend
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
if [[ $(id -u) == 0 ]]; then
|
||||
ewarn "Skipping tests since they cannot be run under the root user."
|
||||
ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
|
||||
return
|
||||
fi
|
||||
|
||||
WINEPREFIX="${T}/.wine-${ABI}" \
|
||||
Xemake test
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=( ANNOUNCE AUTHORS README )
|
||||
local l
|
||||
add_locale_docs() {
|
||||
local locale_doc="documentation/README.$1"
|
||||
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
|
||||
}
|
||||
l10n_for_each_locale_do add_locale_docs
|
||||
|
||||
einstalldocs
|
||||
prune_libtool_files --all
|
||||
|
||||
emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
|
||||
use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
|
||||
fi
|
||||
if use mono ; then
|
||||
insinto /usr/share/wine/mono
|
||||
doins "${DISTDIR}"/wine-mono-${MV}.msi
|
||||
fi
|
||||
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
|
||||
rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
|
||||
use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
|
||||
use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
|
||||
|
||||
if use abi_x86_64 && ! use abi_x86_32; then
|
||||
dosym /usr/bin/wine{64,} # 404331
|
||||
dosym /usr/bin/wine{64,}-preloader
|
||||
fi
|
||||
|
||||
# respect LINGUAS when installing man pages, #469418
|
||||
for l in de fr pl; do
|
||||
use linguas_${l} || rm -r "${D}"usr/share/man/${l}*
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
|
||||
if ! use gecko; then
|
||||
ewarn "Without Wine Gecko, wine prefixes will not have a default"
|
||||
ewarn "implementation of iexplore. Many older windows applications"
|
||||
ewarn "rely upon the existence of an iexplore implementation, so"
|
||||
ewarn "you will likely need to install an external one, like via winetricks"
|
||||
fi
|
||||
if ! use mono; then
|
||||
ewarn "Without Wine Mono, wine prefixes will not have a default"
|
||||
ewarn "implementation of .NET. Many windows applications rely upon"
|
||||
ewarn "the existence of a .NET implementation, so you will likely need"
|
||||
ewarn "to install an external one, like via winetricks"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
}
|
@ -1,12 +1,10 @@
|
||||
AUX aseprite-0.9.5-as-needed.patch 1119 SHA256 cee86f85a9baffa6f85cd22c096f14271dc6b2f8589e8958d0a93128e7c013c2 SHA512 d8b986cb5dc6f4737453680abee7c2a150aed40df13c807b7b5d1140e3bca7e854ce3c62189d12647933408c2e49e4a85bb3259b1a5964dc93b50e16202547e7 WHIRLPOOL 7b2bbb80c86eb45a202396f5f8f83760eccc3d3a42e47688f8f4c67cf0ee82f8cc7dc665a76fa3bc0bd9a74fadd14af5afc9b1747e258ab61a5a895f6f12a8a1
|
||||
AUX aseprite-0.9.5-underlinking.patch 714 SHA256 b4bde90abac92a6c0cd9533610a1623497bb6ff371b7574f38b0d55dcd7e25ff SHA512 d941006981c01a93da30f7460fb5d4d9cd9927f370c568d3c8a39a4b6eaff1998f054bc96fc546f62b58d61eac7994210b45b56f3ad2f65cacf7c4cb333205f8 WHIRLPOOL 9661b86c2341f505f158409751759468a7757a14ba5edb39904cf35607a3bbb588bbcd8f5687afa9b696651f4299706a1c1d6a23c268cf88efcc048c6a1084d3
|
||||
AUX aseprite-1.0.6-obinary.patch 638 SHA256 fedad8b421be4e33dae347d5340f70d9731774c125bef176c2ef650a1f166312 SHA512 4001a1766071138bfa45f58af460f9d3b4ce0900b8e2ae049b76dc7f9f9f933c9bc94c02c9f7417d7194e1aedbf884be91edeb9cc32b0930ddda6913139582d7 WHIRLPOOL 3cc9f84a8de9d5259707b72d1034602773fd0360414f9f2e4c8f2286741c90e0f06af3a6442e085f40e441cf467f116a9bfa2b4e017ec4a7af7bb6abaebbe1ff
|
||||
AUX aseprite-1.0.6-png_sizeof.patch 446 SHA256 74563a756f99c3e5e8220e0bfdf7bb42e5ccee6fd5b1c9e11ab2d9eb28945e52 SHA512 b050e2b6a5b951cfb8a6cf688577439a6ebdc0e51163f8be3bf735ac49f25ce98b9488477cfbc7b811aa1e3348a2d3887e6ea04bc39a5011f562ad70dceb3297 WHIRLPOOL 6237f230fef3eec5ef55c12d94d72a72c6ce4b9d583c4fb0b2f4146567e97206c0097aabe39593f4daf6792b9ad69a7619e091ac3736224418d889139a150380
|
||||
AUX aseprite-1.1.4.1_underlinking.patch 285 SHA256 a15b138092abc0dad3ac5f9a3abda93af6e7da04395f780e8c64b344de10d07a SHA512 f666c22f3a12e0666180acc6c34f007ae164860f000036dfe63528efac6a42aefc1fe490b0df433063200dbcb9d6cfcbbd35a196267d284b19204b962acfde4c WHIRLPOOL 04e802ff2a47920128b3a41029d5ea38fee59b41e2c14a8eaa23478684ce38e56239cf3bf0bd1080b0ee2686ad6b62b492a8c85dc7d64361e25f123c18846cf0
|
||||
DIST Aseprite-v1.1.4.1-Source.zip 11723085 SHA256 731ac44259217626dde91cdcae9a24cdd4337540fc91bbe5c05cebcb12869879 SHA512 deeb42c123517e17378498584bb788f375e8aaaf046d5f9732848a5bd794a1af1d8381ff51271f9e30c198478e0f716ae23495972b693db9049ff4c2b8968672 WHIRLPOOL 5c2bd1bf8f5d187c385086a431ab070f55308b01089ce703e54093963402a9300295ea1cbf3602021fea1211ae68c6a2a07391e8e054827ce82ee60462001c4a
|
||||
DIST aseprite-0.9.5.tar.xz 507744 SHA256 81e0360d9d8a32d6c548775dbacdb1520aac94b54c2d9f1327d52f219737f154 SHA512 fc6df942aefea67fd05e1b688209b70a2d5879a1441f61a6e3ee4d72fcdab4e580e1d4d7392fd493e0a46c45401a3eef759aa3efee17450e4c98df7f310b2d00 WHIRLPOOL 060dcf2754827ab3b30dde55cfcecd25e2d88f6e296b45529737e2194f4a9891d171776d10f9c571890efb9766b64080b85dc3d737102d2ac7be9843d27fdaef
|
||||
DIST aseprite-1.0.6.tar.gz 3685678 SHA256 449619ee49eaf18c483706c6d2364868085b0f311548bd69e5664fdc0c06e21e SHA512 0189cb6d845ea799f84c17b6456a10341a5ba2a2712bed2c202a711ffe60bb3f2e2eb47bb5702c6326f16a842cd8780c4c1f44ba61111a535b172c34e6f2d327 WHIRLPOOL 4bbf000bf30beafef0003f047f625d4af7e61d51336562ba9192eceb4c72cafbd361bf68ba5fef20b260e74997b679d440d2f9e6386c1ab48c0a6e103577caf2
|
||||
EBUILD aseprite-0.9.5-r1.ebuild 2617 SHA256 9f7c92caced8c870ec952fc88f78015df8dc329b67411c98dc2017fc155074ad SHA512 3cce8d59f9c5e666a3838e6289b25319f853a6579886711f6f1ea624c1bd82d322a48f2b96e08786c36149c2e307ae9b6fbf9b49f5009517d5f9b2234fc2b138 WHIRLPOOL 6b5857c85da42c8e072220cf275a9ce2a76514cf9b9238450d8fde00efbe566ff3fad6076e3a13b15de344c24e0cea54d5b53c64242d327eef745a0a614ea4d5
|
||||
EBUILD aseprite-1.0.6.ebuild 1749 SHA256 a3705189b8b5b4459efadef973af30729453bdf7b910b11c0d22adcfd0c1a421 SHA512 89aefa98e985f0e4db052983c060f458aff76b2e0e69f16c38de4d1077e97daa458f391761664f7a1cbfed3765f93166708557cdbae8f1537c0cfb8b1a54e127 WHIRLPOOL bf003cc395926d8ddde7084f841b2dbc02bcc64395d61d29c2b598421d5ca202b18ecced6f22ebc45754d01c2c0d4fdffaec67251839337f82ed6cbbf5284160
|
||||
EBUILD aseprite-9999.ebuild 2287 SHA256 51d581e2e8b8ab9d5d5429b63fc533f8a726e80e3bf982739ae4535b91370d48 SHA512 296e7b779e456b1239b8c5cc41bad4a3dd54b94fd454b269ac3d18cd1cefc077f2ece9a0fc71fff7007e742e66b3b556829747d8a85023112b0972b5181d68a3 WHIRLPOOL dfbceb03c57fa76350f648135336dd1149fec2fbef0134e2e358310a28807b1297c409dc58723abea131d69756698bcf285c846cd985d7b016043cf0f5afb8f6
|
||||
MISC ChangeLog 3496 SHA256 12aea10cfdf3c3cecf8632b0eed9176bd9eaa1d0a87a2be1b03ec6027d7f558c SHA512 acdc571404d47505edbd7ff6add3c25168663c031e08d8872c95fff77368550394468cb6be0f79ae29712b9f593116d45ae54a57f8c7d14752fffb60c2c5f5bf WHIRLPOOL 01f87f7ab5e7c6b282072453c44832cf7fb87ec433e977e62645b12424f18e1e9fe07e5dd8d437077fa3f244f61c4dbd11e49a731e261b401133fb9011feb0d9
|
||||
EBUILD aseprite-0.9.5-r1.ebuild 2619 SHA256 1f9ec73525508b9098530e0e9d115f65e4b4376c56c6bc58403179eb6e9fc4a7 SHA512 67e608d8bf2619c328793c107dda418d54e03fe08474542cd4493226983851fb993a36006a318859b01d815524cb1ab2fef897dfa052d797a5d502f1cafb675c WHIRLPOOL e5cbfe4d32c0b3bcc6b20736a00f016a20600d5b2de06e796cb82784f71393ac0677778ebac451d27aa3d40e3347d6f6e19902a8a7a4a67748b1c0c51ed66848
|
||||
EBUILD aseprite-1.1.4.1.ebuild 1687 SHA256 b0ffd6d15c10da997e5770f39d03765460965b651f26702191f136ffd955fadb SHA512 a5aa8b8cb18603d875fa54667056e2c6fd302e4a154c3e1dcfba476ef6d59103c579a03b268db9ecc05d4de2a3488985fd5dc1e6f3981ec8955398df31445bf1 WHIRLPOOL 62afe62b826df231cb4d78b119fb4f7796aefa7b3949e1b6af333599de2aa7ecfa20593dffe78f398dbc195ea23d7614eea080574d7cf859236f27b2da6677f5
|
||||
MISC ChangeLog 4341 SHA256 d3b7f3d1a47aac52c4ae75f8b24e6af7fc064a036314432d3b1ec4024c09bb0b SHA512 f3b936f0a04cae16fd3d5b70b5434b632b3fe9174abcb7fb80536215d1b3e956548ed8b66c2fd7ada343a662a46183a656332936a114cb1b848bfa20133592b6 WHIRLPOOL 456e053d5b56149f4451da8ab0e82d564dea8d5698c30836969b9a0d99f77e29510f059abf840f6fb5439fff766af3f0a05618c3c02770f540a0b30061e714e9
|
||||
MISC ChangeLog-2015 2153 SHA256 584b9accdef10dcd89025aa62391866b9df0b9157312f572ac2c9c14c0411ea3 SHA512 9da3a31f2c3f213f9a76c236fd44606c416cf73ac5906250c754c1dd511ab287e0adc6cbfe1f428a577bb13c5a3bf9224c1c260e29782d7c8e880b5b472bbb56 WHIRLPOOL 1a4e2410a57a658b6fbb3406c3b49bc233ae314e48b4204488c0de4205a9986e2a3025996eebd7df25a655eb731a127c0fc7c0432a5576a2ff44dfe3c1bfa7eb
|
||||
MISC metadata.xml 522 SHA256 955e0cf5f508812f264b95d44be0c2fa44e6fbc796d0f630b2f9e6f04de385a6 SHA512 e19232e03126d3d41c75e24a4ee82697b7fa5fde20793b55066a3b02e02fb322c6a649e06b37c1844fa887a54b218df39c94a800867d613a6e7cad1b8c06077a WHIRLPOOL 86aebce097f753682df87b259c7b19d7c501e3b58806fffb3a128a02941ad32283d820420fc33d170c7de4041e0727124c680db9bda2f9432daf2210960ea151
|
||||
MISC metadata.xml 863 SHA256 298fc003dcc415546d6520ace441cf71dfdaf978ac6f26577ed0b225f99f6711 SHA512 d75c41d8d2a09a1651a0c7b2f9eaff54bfd2645b0bec1d84c43916d84928e81e3a84b38491ca8b9d46358d7b0e819550fdd599faca951ef3c1ebaa7dc5b4f359 WHIRLPOOL e6afb17abab4fa366375bb00f0df179a2ef8ded149c1994fb7f98182faf5216449eda791af7b209dd10fc6aa1d3b04ea784af3657eacb3bab9ed7560d58000f6
|
||||
|
@ -1,95 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit cmake-utils flag-o-matic git-2
|
||||
|
||||
DESCRIPTION="Animated sprite editor & pixel art tool"
|
||||
HOMEPAGE="http://www.aseprite.org"
|
||||
EGIT_REPO_URI="git://github.com/dacap/${PN}.git"
|
||||
|
||||
LICENSE="GPL-2 FTL"
|
||||
SLOT="0"
|
||||
KEYWORDS=""
|
||||
|
||||
IUSE="debug memleak static test"
|
||||
|
||||
RDEPEND="dev-libs/tinyxml
|
||||
media-libs/allegro:0[X,png]
|
||||
media-libs/giflib
|
||||
media-libs/libpng:0
|
||||
net-misc/curl
|
||||
sys-libs/zlib
|
||||
virtual/jpeg
|
||||
x11-libs/libX11"
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( dev-cpp/gtest )"
|
||||
|
||||
DOCS=( docs/quickref.odt
|
||||
docs/files/ase.txt
|
||||
docs/files/fli.txt
|
||||
docs/files/msk.txt
|
||||
docs/files/pic.txt
|
||||
docs/files/picpro.txt )
|
||||
|
||||
src_prepare() {
|
||||
cmake-utils_src_prepare
|
||||
|
||||
# Fix to make flag-o-matic work.
|
||||
if use debug ; then
|
||||
sed -i '/-DNDEBUG/d' CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
# Only do a static link with Allegro if the user explicitly wants it.
|
||||
if ! use static ; then
|
||||
sed -i '/-DALLEGRO_STATICLINK/d' CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
# Remove long compiling tests for users with FEATURES="-test",
|
||||
# also removes the gtest dependency from the build.
|
||||
if ! use test ; then
|
||||
sed -i '/^find_unittests/d' src/CMakeLists.txt || die
|
||||
sed -i '/include_directories(.*third_party\/gtest.*)/d' src/CMakeLists.txt || die
|
||||
sed -i '/add_subdirectory(gtest)/d' third_party/CMakeLists.txt || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use debug && append-cppflags -DDEBUGMODE -D_DEBUG
|
||||
|
||||
local mycmakeargs
|
||||
|
||||
mycmakeargs=(
|
||||
-DENABLE_UPDATER=OFF
|
||||
-DUSE_SHARED_ALLEGRO4=ON
|
||||
-DUSE_SHARED_CURL=ON
|
||||
-DUSE_SHARED_GIFLIB=ON
|
||||
-DUSE_SHARED_JPEGLIB=ON
|
||||
-DUSE_SHARED_LIBLOADPNG=ON
|
||||
-DUSE_SHARED_LIBPNG=ON
|
||||
-DUSE_SHARED_TINYXML=ON
|
||||
-DUSE_SHARED_ZLIB=ON
|
||||
-DFULLSCREEN_PLATFORM=ON
|
||||
$(cmake-utils_use_enable memleak)
|
||||
$(cmake-utils_use_use static STATIC_LIBC)
|
||||
)
|
||||
|
||||
if use test ; then
|
||||
mycmakeargs+=(
|
||||
-DUSE_SHARED_GTEST=ON
|
||||
)
|
||||
fi
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Warning: aseprite might not choose the resolution correctly; so, you might need"
|
||||
elog " to change the resolution once using the -resolution WxH[xBPP] argument."
|
||||
elog ""
|
||||
elog " On subsequent runs, aseprite will remember the resolution you have set."
|
||||
elog ""
|
||||
elog " For example: \`aseprite -resolution 1440x900\`"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
From 9997ad9fcbb0dcef16e4e8224e4238ecdfe56b66 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?=
|
||||
<Mailaender@users.noreply.github.com>
|
||||
Date: Sun, 28 Sep 2014 06:38:18 +0200
|
||||
Subject: [PATCH] always declare O_BINARY
|
||||
|
||||
closes #461
|
||||
---
|
||||
src/base/file_handle.cpp | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/base/file_handle.cpp b/src/base/file_handle.cpp
|
||||
index 0ba214e..f336513 100644
|
||||
--- a/src/base/file_handle.cpp
|
||||
+++ b/src/base/file_handle.cpp
|
||||
@@ -21,6 +21,11 @@
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
||||
+#ifndef O_BINARY
|
||||
+#define O_BINARY 0
|
||||
+#define O_TEXT 0
|
||||
+#endif
|
||||
+
|
||||
using namespace std;
|
||||
|
||||
namespace base {
|
@ -1,11 +0,0 @@
|
||||
--- src/app/file/png_format.cpp
|
||||
+++ src/app/file/png_format.cpp
|
||||
@@ -413,7 +413,7 @@
|
||||
#endif
|
||||
|
||||
// Save the color palette.
|
||||
- palette = (png_colorp)png_malloc(png_ptr, PNG_MAX_PALETTE_LENGTH * png_sizeof(png_color));
|
||||
+ palette = (png_colorp)png_malloc(png_ptr, PNG_MAX_PALETTE_LENGTH * sizeof(png_color));
|
||||
for (c = 0; c < PNG_MAX_PALETTE_LENGTH; c++) {
|
||||
fop_sequence_get_color(fop, c, &r, &g, &b);
|
||||
palette[c].red = r;
|
@ -0,0 +1,12 @@
|
||||
diff --git a/src/she/CMakeLists.txt b/src/she/CMakeLists.txt
|
||||
index eddf386..d1b8ce5 100644
|
||||
--- a/src/she/CMakeLists.txt
|
||||
+++ b/src/she/CMakeLists.txt
|
||||
@@ -205,6 +205,7 @@ endif()
|
||||
add_library(she ${SHE_SOURCES})
|
||||
|
||||
target_link_libraries(she
|
||||
+ ${PLATFORM_LIBS}
|
||||
gfx-lib
|
||||
base-lib)
|
||||
|
@ -1,366 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils java-vm-2 prefix versionator
|
||||
|
||||
# This URIs need to be updated when bumping!
|
||||
JDK_URI="http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html"
|
||||
JCE_URI="http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html"
|
||||
|
||||
# This is a list of archs supported by this update.
|
||||
# Currently arm comes and goes.
|
||||
AT_AVAILABLE=( amd64 arm arm64 x86 x64-solaris sparc64-solaris x64-macos )
|
||||
|
||||
# Sometimes some or all of the demos are missing, this is to not have to rewrite half
|
||||
# the ebuild when it happens.
|
||||
DEMOS_AVAILABLE=( amd64 arm arm64 x86 x64-solaris sparc64-solaris x64-macos )
|
||||
|
||||
if [[ "$(get_version_component_range 4)" == 0 ]] ; then
|
||||
S_PV="$(get_version_component_range 1-3)"
|
||||
else
|
||||
MY_PV_EXT="u$(get_version_component_range 4)"
|
||||
S_PV="$(get_version_component_range 1-4)"
|
||||
fi
|
||||
|
||||
MY_PV="$(get_version_component_range 2)${MY_PV_EXT}"
|
||||
|
||||
AT_amd64="jdk-${MY_PV}-linux-x64.tar.gz"
|
||||
AT_arm="jdk-${MY_PV}-linux-arm32-vfp-hflt.tar.gz"
|
||||
AT_arm64="jdk-${MY_PV}-linux-arm64-vfp-hflt.tar.gz"
|
||||
AT_x86="jdk-${MY_PV}-linux-i586.tar.gz"
|
||||
AT_x64_solaris="jdk-${MY_PV}-solaris-x64.tar.gz"
|
||||
AT_sparc64_solaris="${AT_sparc_solaris} jdk-${MY_PV}-solaris-sparcv9.tar.gz"
|
||||
AT_x64_macos="jdk-${MY_PV}-macosx-x64.dmg"
|
||||
|
||||
DEMOS_amd64="jdk-${MY_PV}-linux-x64-demos.tar.gz"
|
||||
DEMOS_arm="jdk-${MY_PV}-linux-arm32-vfp-hflt-demos.tar.gz"
|
||||
DEMOS_arm64="jdk-${MY_PV}-linux-arm64-vfp-hflt-demos.tar.gz"
|
||||
DEMOS_x86="jdk-${MY_PV}-linux-i586-demos.tar.gz"
|
||||
DEMOS_x64_solaris="jdk-${MY_PV}-solaris-x64-demos.tar.gz"
|
||||
DEMOS_sparc64_solaris="jdk-${MY_PV}-solaris-sparcv9-demos.tar.gz"
|
||||
DEMOS_x64_macos="jdk-${MY_PV}-macosx-x86_64-demos.zip"
|
||||
|
||||
JCE_DIR="UnlimitedJCEPolicyJDK8"
|
||||
JCE_FILE="jce_policy-8.zip"
|
||||
|
||||
DESCRIPTION="Oracle's Java SE Development Kit"
|
||||
HOMEPAGE="http://www.oracle.com/technetwork/java/javase/"
|
||||
for d in "${AT_AVAILABLE[@]}"; do
|
||||
SRC_URI+=" ${d}? ( $(eval "echo \${$(echo AT_${d/-/_})}")"
|
||||
if has ${d} "${DEMOS_AVAILABLE[@]}"; then
|
||||
SRC_URI+=" examples? ( $(eval "echo \${$(echo DEMOS_${d/-/_})}") )"
|
||||
fi
|
||||
SRC_URI+=" )"
|
||||
done
|
||||
unset d
|
||||
SRC_URI+=" jce? ( ${JCE_FILE} )"
|
||||
|
||||
LICENSE="Oracle-BCLA-JavaSE examples? ( BSD )"
|
||||
SLOT="1.8"
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc64-solaris ~x64-solaris"
|
||||
IUSE="alsa cups derby doc examples +fontconfig headless-awt javafx jce nsplugin pax_kernel selinux source"
|
||||
REQUIRED_USE="javafx? ( alsa fontconfig )"
|
||||
|
||||
RESTRICT="fetch preserve-libs strip"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
# NOTES:
|
||||
#
|
||||
# * cups is dlopened.
|
||||
#
|
||||
# * libpng is also dlopened but only by libsplashscreen, which isn't
|
||||
# important, so we can exclude that.
|
||||
#
|
||||
# * We still need to work out the exact AWT and JavaFX dependencies
|
||||
# under MacOS. It doesn't appear to use many, if any, of the
|
||||
# dependencies below.
|
||||
#
|
||||
RDEPEND="!x64-macos? (
|
||||
!headless-awt? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXtst
|
||||
)
|
||||
javafx? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/libxml2:2
|
||||
dev-libs/libxslt
|
||||
media-libs/freetype:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXtst
|
||||
x11-libs/libXxf86vm
|
||||
x11-libs/pango
|
||||
virtual/opengl
|
||||
)
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
doc? ( dev-java/java-sdk-docs:${SLOT} )
|
||||
fontconfig? ( media-libs/fontconfig:1.0 )
|
||||
!prefix? ( sys-libs/glibc:* )
|
||||
selinux? ( sec-policy/selinux-java )"
|
||||
|
||||
# A PaX header isn't created by scanelf so depend on paxctl to avoid
|
||||
# fallback marking. See bug #427642.
|
||||
DEPEND="app-arch/zip
|
||||
jce? ( app-arch/unzip )
|
||||
examples? ( x64-macos? ( app-arch/unzip ) )
|
||||
pax_kernel? ( sys-apps/paxctl )"
|
||||
|
||||
S="${WORKDIR}/jdk"
|
||||
|
||||
check_tarballs_available() {
|
||||
local uri=$1; shift
|
||||
local dl= unavailable=
|
||||
for dl in "${@}" ; do
|
||||
[[ ! -f "${DISTDIR}/${dl}" ]] && unavailable+=" ${dl}"
|
||||
done
|
||||
|
||||
if [[ -n "${unavailable}" ]] ; then
|
||||
if [[ -z ${_check_tarballs_available_once} ]] ; then
|
||||
einfo
|
||||
einfo "Oracle requires you to download the needed files manually after"
|
||||
einfo "accepting their license through a javascript capable web browser."
|
||||
einfo
|
||||
_check_tarballs_available_once=1
|
||||
fi
|
||||
einfo "Download the following files:"
|
||||
for dl in ${unavailable}; do
|
||||
einfo " ${dl}"
|
||||
done
|
||||
einfo "at '${uri}'"
|
||||
einfo "and move them to '${DISTDIR}'"
|
||||
einfo
|
||||
einfo "If the above mentioned urls do not point to the correct version anymore,"
|
||||
einfo "please download the files from Oracle's java download archive:"
|
||||
einfo
|
||||
einfo " http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html#jdk-${MY_PV}-oth-JPR"
|
||||
einfo
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_nofetch() {
|
||||
local distfiles=( $(eval "echo \${$(echo AT_${ARCH/-/_})}") )
|
||||
if use examples && has ${ARCH} "${DEMOS_AVAILABLE[@]}"; then
|
||||
distfiles+=( $(eval "echo \${$(echo DEMOS_${ARCH/-/_})}") )
|
||||
fi
|
||||
check_tarballs_available "${JDK_URI}" "${distfiles[@]}"
|
||||
|
||||
use jce && check_tarballs_available "${JCE_URI}" "${JCE_FILE}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use x64-macos ; then
|
||||
pushd "${T}" > /dev/null
|
||||
mkdir dmgmount
|
||||
hdiutil attach "${DISTDIR}"/jdk-${MY_PV}-macosx-x64.dmg \
|
||||
-mountpoint "${T}"/dmgmount
|
||||
local update=$(get_version_component_range 4)
|
||||
[[ ${#update} == 1 ]] && update="0${update}"
|
||||
xar -xf dmgmount/JDK\ $(get_version_component_range 2)\ Update\ ${update}.pkg
|
||||
hdiutil detach "${T}"/dmgmount
|
||||
zcat jdk1${MY_PV%u*}0${update}.pkg/Payload | cpio -idv
|
||||
mv Contents/Home "${WORKDIR}"/jdk${MY_PV}
|
||||
popd > /dev/null
|
||||
use jce && unpack "${JCE_FILE}"
|
||||
else
|
||||
default
|
||||
fi
|
||||
|
||||
# Upstream is changing their versioning scheme every release around 1.8.0.*;
|
||||
# to stop having to change it over and over again, just wildcard match and
|
||||
# live a happy life instead of trying to get this new jdk1.8.0_05 to work.
|
||||
mv "${WORKDIR}"/jdk* "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use jce ; then
|
||||
mv "${WORKDIR}"/${JCE_DIR} jre/lib/security/ || die
|
||||
fi
|
||||
|
||||
if [[ -n ${JAVA_PKG_STRICT} ]] ; then
|
||||
# Mark this binary early to run it now.
|
||||
pax-mark Cm ./bin/javap
|
||||
|
||||
eqawarn "Ensure that this only calls trackJavaUsage(). If not, see bug #559936."
|
||||
eqawarn
|
||||
eqawarn "$(./bin/javap -J-Duser.home=${T} -c sun.misc.PostVMInitHook || die)"
|
||||
fi
|
||||
|
||||
# Remove the hook that calls Oracle's evil usage tracker. Not just
|
||||
# because it's evil but because it breaks the sandbox during builds
|
||||
# and we can't find any other feasible way to disable it or make it
|
||||
# write somewhere else. See bug #559936 for details.
|
||||
zip -d jre/lib/rt.jar sun/misc/PostVMInitHook.class || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/opt/${P}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
# Create files used as storage for system preferences.
|
||||
mkdir jre/.systemPrefs || die
|
||||
touch jre/.systemPrefs/.system.lock || die
|
||||
touch jre/.systemPrefs/.systemRootModFile || die
|
||||
|
||||
if ! use alsa ; then
|
||||
rm -vf jre/lib/*/libjsoundalsa.* || die
|
||||
fi
|
||||
|
||||
if use headless-awt ; then
|
||||
rm -vf {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
|
||||
{,jre/}bin/{javaws,policytool} \
|
||||
bin/appletviewer || die
|
||||
fi
|
||||
|
||||
if ! use javafx ; then
|
||||
rm -vf jre/lib/*/lib*{decora,fx,glass,prism}* \
|
||||
jre/lib/*/libgstreamer-lite.* {,jre/}lib/{,ext/}*fx* \
|
||||
bin/*javafx* bin/javapackager || die
|
||||
fi
|
||||
|
||||
if ! use nsplugin ; then
|
||||
rm -vf jre/lib/*/libnpjp2.* || die
|
||||
else
|
||||
local nsplugin=$(echo jre/lib/*/libnpjp2.*)
|
||||
fi
|
||||
|
||||
# Even though plugins linked against multiple ffmpeg versions are
|
||||
# provided, they generally lag behind what Gentoo has available.
|
||||
rm -vf jre/lib/*/libavplugin* || die
|
||||
|
||||
dodoc COPYRIGHT
|
||||
dodir "${dest}"
|
||||
cp -pPR bin include jre lib man "${ddest}" || die
|
||||
|
||||
if use derby ; then
|
||||
cp -pPR db "${ddest}" || die
|
||||
fi
|
||||
|
||||
if use examples && has ${ARCH} "${DEMOS_AVAILABLE[@]}" ; then
|
||||
cp -pPR demo sample "${ddest}" || die
|
||||
fi
|
||||
|
||||
if use jce ; then
|
||||
dodir "${dest}"/jre/lib/security/strong-jce
|
||||
mv "${ddest}"/jre/lib/security/US_export_policy.jar \
|
||||
"${ddest}"/jre/lib/security/strong-jce || die
|
||||
mv "${ddest}"/jre/lib/security/local_policy.jar \
|
||||
"${ddest}"/jre/lib/security/strong-jce || die
|
||||
dosym "${dest}"/jre/lib/security/${JCE_DIR}/US_export_policy.jar \
|
||||
"${dest}"/jre/lib/security/US_export_policy.jar
|
||||
dosym "${dest}"/jre/lib/security/${JCE_DIR}/local_policy.jar \
|
||||
"${dest}"/jre/lib/security/local_policy.jar
|
||||
fi
|
||||
|
||||
if use nsplugin ; then
|
||||
local nsplugin_link=${nsplugin##*/}
|
||||
nsplugin_link=${nsplugin_link/./-${PN}-${SLOT}.}
|
||||
dosym "${dest}/${nsplugin}" "/usr/$(get_libdir)/nsbrowser/plugins/${nsplugin_link}"
|
||||
fi
|
||||
|
||||
if use source ; then
|
||||
cp -v src.zip "${ddest}" || die
|
||||
|
||||
if use javafx ; then
|
||||
cp -v javafx-src.zip "${ddest}" || die
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -d jre/lib/desktop ]] ; then
|
||||
# Install desktop file for the Java Control Panel.
|
||||
# Using ${PN}-${SLOT} to prevent file collision with jre and or
|
||||
# other slots. make_desktop_entry can't be used as ${P} would
|
||||
# end up in filename.
|
||||
newicon jre/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png \
|
||||
sun-jcontrol-${PN}-${SLOT}.png || die
|
||||
sed -e "s#Name=.*#Name=Java Control Panel for Oracle JDK ${SLOT}#" \
|
||||
-e "s#Exec=.*#Exec=/opt/${P}/jre/bin/jcontrol#" \
|
||||
-e "s#Icon=.*#Icon=sun-jcontrol-${PN}-${SLOT}#" \
|
||||
-e "s#Application;##" \
|
||||
-e "/Encoding/d" \
|
||||
jre/lib/desktop/applications/sun_java.desktop \
|
||||
> "${T}"/jcontrol-${PN}-${SLOT}.desktop || die
|
||||
domenu "${T}"/jcontrol-${PN}-${SLOT}.desktop
|
||||
fi
|
||||
|
||||
# Prune all fontconfig files so libfontconfig will be used and only install
|
||||
# a Gentoo specific one if fontconfig is disabled.
|
||||
# http://docs.oracle.com/javase/8/docs/technotes/guides/intl/fontconfig.html
|
||||
rm "${ddest}"/jre/lib/fontconfig.*
|
||||
if ! use fontconfig ; then
|
||||
cp "${FILESDIR}"/fontconfig.Gentoo.properties "${T}"/fontconfig.properties || die
|
||||
eprefixify "${T}"/fontconfig.properties
|
||||
insinto "${dest}"/jre/lib/
|
||||
doins "${T}"/fontconfig.properties
|
||||
fi
|
||||
|
||||
# This needs to be done before CDS - #215225
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
|
||||
# see bug #207282
|
||||
einfo "Creating the Class Data Sharing archives"
|
||||
case ${ARCH} in
|
||||
arm|ia64)
|
||||
${ddest}/bin/java -client -Xshare:dump || die
|
||||
;;
|
||||
x86)
|
||||
${ddest}/bin/java -client -Xshare:dump || die
|
||||
# limit heap size for large memory on x86 #467518
|
||||
# this is a workaround and shouldn't be needed.
|
||||
${ddest}/bin/java -server -Xms64m -Xmx64m -Xshare:dump || die
|
||||
;;
|
||||
*)
|
||||
${ddest}/bin/java -server -Xshare:dump || die
|
||||
;;
|
||||
esac
|
||||
|
||||
# Remove empty dirs we might have copied.
|
||||
find "${D}" -type d -empty -exec rmdir -v {} + || die
|
||||
|
||||
if use x64-macos ; then
|
||||
# Fix miscellaneous install_name issues.
|
||||
pushd "${ddest}"/jre/lib > /dev/null || die
|
||||
local lib needed nlib npath
|
||||
for lib in decora_sse glass prism_{common,es2,sw} ; do
|
||||
lib=lib${lib}.dylib
|
||||
einfo "Fixing self-reference of ${lib}"
|
||||
install_name_tool \
|
||||
-id "${EPREFIX}${dest}/jre/lib/${lib}" \
|
||||
"${lib}"
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# This is still jdk1{5,6}, even on Java 8, so don't change it
|
||||
# until you know different.
|
||||
for nlib in jdk1{5,6} ; do
|
||||
install_name_tool -change \
|
||||
/usr/lib/libgcc_s_ppc64.1.dylib \
|
||||
/usr/lib/libSystem.B.dylib \
|
||||
"${ddest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib
|
||||
install_name_tool -id \
|
||||
"${EPREFIX}${dest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib \
|
||||
"${ddest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib
|
||||
done
|
||||
fi
|
||||
|
||||
set_java_env
|
||||
java-vm_revdep-mask
|
||||
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
java-vm-2_pkg_postinst
|
||||
|
||||
if ! use headless-awt && ! use javafx; then
|
||||
ewarn "You have disabled the javafx flag. Some modern desktop Java applications"
|
||||
ewarn "require this and they may fail with a confusing error message."
|
||||
fi
|
||||
}
|
@ -1,249 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils java-vm-2 prefix versionator
|
||||
|
||||
# This URIs need updating when bumping!
|
||||
JRE_URI="http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html"
|
||||
JCE_URI="http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html"
|
||||
|
||||
if [[ "$(get_version_component_range 4)" == 0 ]] ; then
|
||||
S_PV="$(get_version_component_range 1-3)"
|
||||
else
|
||||
MY_PV_EXT="u$(get_version_component_range 4)"
|
||||
S_PV="$(get_version_component_range 1-4)"
|
||||
fi
|
||||
|
||||
MY_PV="$(get_version_component_range 2)${MY_PV_EXT}"
|
||||
|
||||
AT_amd64="jre-${MY_PV}-linux-x64.tar.gz"
|
||||
AT_x86="jre-${MY_PV}-linux-i586.tar.gz"
|
||||
|
||||
JCE_DIR="UnlimitedJCEPolicyJDK8"
|
||||
JCE_FILE="jce_policy-8.zip"
|
||||
|
||||
DESCRIPTION="Oracle's Java SE Runtime Environment"
|
||||
HOMEPAGE="http://www.oracle.com/technetwork/java/javase/"
|
||||
SRC_URI="
|
||||
amd64? ( ${AT_amd64} )
|
||||
x86? ( ${AT_x86} )
|
||||
jce? ( ${JCE_FILE} )"
|
||||
|
||||
LICENSE="Oracle-BCLA-JavaSE"
|
||||
SLOT="1.8"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="alsa cups +fontconfig headless-awt javafx jce nsplugin pax_kernel selinux"
|
||||
|
||||
RESTRICT="fetch preserve-libs strip"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
# NOTES:
|
||||
#
|
||||
# * cups is dlopened.
|
||||
#
|
||||
# * libpng is also dlopened but only by libsplashscreen, which isn't
|
||||
# important, so we can exclude that.
|
||||
#
|
||||
# * We still need to work out the exact AWT and JavaFX dependencies
|
||||
# under MacOS. It doesn't appear to use many, if any, of the
|
||||
# dependencies below.
|
||||
#
|
||||
RDEPEND="!x64-macos? (
|
||||
!headless-awt? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXtst
|
||||
)
|
||||
javafx? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/libxml2:2
|
||||
dev-libs/libxslt
|
||||
media-libs/freetype:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXtst
|
||||
x11-libs/libXxf86vm
|
||||
x11-libs/pango
|
||||
virtual/opengl
|
||||
)
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
fontconfig? ( media-libs/fontconfig:1.0 )
|
||||
!prefix? ( sys-libs/glibc:* )
|
||||
selinux? ( sec-policy/selinux-java )"
|
||||
|
||||
# A PaX header isn't created by scanelf so depend on paxctl to avoid
|
||||
# fallback marking. See bug #427642.
|
||||
DEPEND="app-arch/zip
|
||||
jce? ( app-arch/unzip )
|
||||
pax_kernel? ( sys-apps/paxctl )"
|
||||
|
||||
S="${WORKDIR}/jre"
|
||||
|
||||
pkg_nofetch() {
|
||||
local AT_ARCH="AT_${ARCH}"
|
||||
local AT="${!AT_ARCH}"
|
||||
|
||||
einfo "Please download '${AT}' from:"
|
||||
einfo "'${JRE_URI}'"
|
||||
einfo "and move it to '${DISTDIR}'"
|
||||
|
||||
if use jce; then
|
||||
einfo "Also download '${JCE_FILE}' from:"
|
||||
einfo "'${JCE_URI}'"
|
||||
einfo "and move it to '${DISTDIR}'"
|
||||
fi
|
||||
|
||||
einfo
|
||||
einfo "If the above mentioned urls do not point to the correct version anymore,"
|
||||
einfo "please download the files from Oracle's java download archive:"
|
||||
einfo
|
||||
einfo " http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html#jre-${MY_PV}-oth-JPR"
|
||||
einfo
|
||||
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
# Upstream is changing their versioning scheme every release around 1.8.0.*;
|
||||
# to stop having to change it over and over again, just wildcard match and
|
||||
# live a happy life instead of trying to get this new jre1.8.0_05 to work.
|
||||
mv "${WORKDIR}"/jre* "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use jce ; then
|
||||
mv "${WORKDIR}"/${JCE_DIR} lib/security/ || die
|
||||
fi
|
||||
|
||||
# Remove the hook that calls Oracle's evil usage tracker. Not just
|
||||
# because it's evil but because it breaks the sandbox during builds
|
||||
# and we can't find any other feasible way to disable it or make it
|
||||
# write somewhere else. See bug #559936 for details.
|
||||
zip -d lib/rt.jar sun/misc/PostVMInitHook.class || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/opt/${P}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
# Create files used as storage for system preferences.
|
||||
mkdir .systemPrefs || die
|
||||
touch .systemPrefs/.system.lock || die
|
||||
touch .systemPrefs/.systemRootModFile || die
|
||||
|
||||
if ! use alsa ; then
|
||||
rm -vf lib/*/libjsoundalsa.* || die
|
||||
fi
|
||||
|
||||
if use headless-awt ; then
|
||||
rm -vf lib/*/lib*{[jx]awt,splashscreen}* \
|
||||
bin/{javaws,policytool} || die
|
||||
fi
|
||||
|
||||
if ! use javafx ; then
|
||||
rm -vf lib/*/lib*{decora,fx,glass,prism}* \
|
||||
lib/*/libgstreamer-lite.* lib/{,ext/}*fx* || die
|
||||
fi
|
||||
|
||||
if ! use nsplugin ; then
|
||||
rm -vf lib/*/libnpjp2.* || die
|
||||
else
|
||||
local nsplugin=$(echo lib/*/libnpjp2.*)
|
||||
fi
|
||||
|
||||
# Even though plugins linked against multiple ffmpeg versions are
|
||||
# provided, they generally lag behind what Gentoo has available.
|
||||
rm -vf lib/*/libavplugin* || die
|
||||
|
||||
dodoc COPYRIGHT
|
||||
dodir "${dest}"
|
||||
cp -pPR bin lib man "${ddest}" || die
|
||||
|
||||
if use jce ; then
|
||||
dodir ${dest}/lib/security/strong-jce
|
||||
mv "${ddest}"/lib/security/US_export_policy.jar \
|
||||
"${ddest}"/lib/security/strong-jce || die
|
||||
mv "${ddest}"/lib/security/local_policy.jar \
|
||||
"${ddest}"/lib/security/strong-jce || die
|
||||
dosym "${dest}"/lib/security/${JCE_DIR}/US_export_policy.jar \
|
||||
"${dest}"/lib/security/US_export_policy.jar
|
||||
dosym "${dest}"/lib/security/${JCE_DIR}/local_policy.jar \
|
||||
"${dest}"/lib/security/local_policy.jar
|
||||
fi
|
||||
|
||||
if use nsplugin ; then
|
||||
local nsplugin_link=${nsplugin##*/}
|
||||
nsplugin_link=${nsplugin_link/./-${PN}-${SLOT}.}
|
||||
dosym "${dest}/${nsplugin}" "/usr/$(get_libdir)/nsbrowser/plugins/${nsplugin_link}"
|
||||
fi
|
||||
|
||||
# Install desktop file for the Java Control Panel.
|
||||
# Using ${PN}-${SLOT} to prevent file collision with jre and or other slots.
|
||||
# make_desktop_entry can't be used as ${P} would end up in filename.
|
||||
newicon lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png \
|
||||
sun-jcontrol-${PN}-${SLOT}.png || die
|
||||
sed -e "s#Name=.*#Name=Java Control Panel for Oracle JRE ${SLOT}#" \
|
||||
-e "s#Exec=.*#Exec=/opt/${P}/bin/jcontrol#" \
|
||||
-e "s#Icon=.*#Icon=sun-jcontrol-${PN}-${SLOT}#" \
|
||||
-e "s#Application;##" \
|
||||
-e "/Encoding/d" \
|
||||
lib/desktop/applications/sun_java.desktop > \
|
||||
"${T}"/jcontrol-${PN}-${SLOT}.desktop || die
|
||||
domenu "${T}"/jcontrol-${PN}-${SLOT}.desktop
|
||||
|
||||
# Prune all fontconfig files so libfontconfig will be used and only install
|
||||
# a Gentoo specific one if fontconfig is disabled.
|
||||
# http://docs.oracle.com/javase/8/docs/technotes/guides/intl/fontconfig.html
|
||||
rm "${ddest}"/lib/fontconfig.* || die
|
||||
if ! use fontconfig ; then
|
||||
cp "${FILESDIR}"/fontconfig.Gentoo.properties "${T}"/fontconfig.properties || die
|
||||
eprefixify "${T}"/fontconfig.properties
|
||||
insinto "${dest}"/lib/
|
||||
doins "${T}"/fontconfig.properties
|
||||
fi
|
||||
|
||||
# This needs to be done before CDS - #215225
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
|
||||
# see bug #207282
|
||||
einfo "Creating the Class Data Sharing archives"
|
||||
case ${ARCH} in
|
||||
arm|ia64)
|
||||
${ddest}/bin/java -client -Xshare:dump || die
|
||||
;;
|
||||
x86)
|
||||
${ddest}/bin/java -client -Xshare:dump || die
|
||||
# limit heap size for large memory on x86 #467518
|
||||
# this is a workaround and shouldn't be needed.
|
||||
${ddest}/bin/java -server -Xms64m -Xmx64m -Xshare:dump || die
|
||||
;;
|
||||
*)
|
||||
${ddest}/bin/java -server -Xshare:dump || die
|
||||
;;
|
||||
esac
|
||||
|
||||
# Remove empty dirs we might have copied.
|
||||
find "${D}" -type d -empty -exec rmdir -v {} + || die
|
||||
|
||||
set_java_env
|
||||
java-vm_revdep-mask
|
||||
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
java-vm-2_pkg_postinst
|
||||
|
||||
if ! use headless-awt && ! use javafx; then
|
||||
ewarn "You have disabled the javafx flag. Some modern desktop Java applications"
|
||||
ewarn "require this and they may fail with a confusing error message."
|
||||
fi
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
AUX libfastjson-0.99.2-fix-for-implicit-declaration-of-vasprintf.patch 596 SHA256 1951a0a800d80f7255adb6f352837b63b0b4d377593b95e62ac7dc1eb3399a2b SHA512 fd32eb655520446578a6bf0ad6d855a78b77e229a3787f0d9d586c96e8ab72903f5e1f98ad2581dc33e5f58ebe88ee30f0ba4cdf4b8be42e9a1ee5e4572fb917 WHIRLPOOL 92fa0b93fbcba29712049c02b7274ec27b336346932a2a0c1f0c172541a7dbd98b8ce552241784568d11b53ed93367186c5e4da404ff96878d4be3b9d3ee3f48
|
||||
DIST libfastjson-0.99.2.tar.gz 366602 SHA256 6ff053d455243a81014f37b4d81c746d9b8d40256a56326c3a7921c8bf458dfd SHA512 4b57697cbb901bc12a26d98c3d6df998aba373d4f38339189c9bd3e5a32777fa4796039fe82581337e576fa93c6deb87759eba04326134f587064c82e1b3daaf WHIRLPOOL 56010125b4ba905aba3fa7ad69faf38237426c1ef5cbaad90458fe31e96b86719d2766d2099928dc22aa7d98a64d079a3bd9de31702b28547d1f1d416170d487
|
||||
EBUILD libfastjson-0.99.2.ebuild 844 SHA256 b8ef073f4c2c878bbde04bfb37477f7c53bfd2848b05d1b71b1ef0539ed5e970 SHA512 ec173d20913ab808f68b8bffbf51b6fce47a9844c1e5803410882cb6aedf674a204fd103bd6abe54236a27ec964ffd70ff9f0f0abf4a5baca1f70809654173dd WHIRLPOOL eedff53f265b0c5d78a5379b5dc5c4a3e739f852f4fb49bcc772159748bf1ce920f63a7ca0e695c2867b6be3d5ce47ddf3fee8588f38f07073a19a0326f7f56f
|
||||
MISC ChangeLog 560 SHA256 795e5abeaa2871c280eebb6bef5d288a71bc997e90a40e32656d92cc12b6ac50 SHA512 268470c4d8186f7486f2a73059f2656d7df59937e81d9db317f8d950f09ba97060db5d5624d66c1758b3e8bcceeef8a3da036b4e35ab7079a9a5be33568b0805 WHIRLPOOL 1a95297e60ad4a72fd430da9f8c63e0d134ba63b2c53365136102fe21bffa7e2aab32dcbc459d61ee04b658eb6f5723d7cace8cd51ad32d8b2b4271868bd4fad
|
||||
MISC ChangeLog 737 SHA256 e952f037111a28da4f0b906dc41d3c2253e47edee9485d6467b6da6b38791759 SHA512 a01d2ffca6e5564eb59417a464d99129a51d85e59197bae8b55ad49b2d6e193e93c7491a637d1ef8aba6c6bb379b1496f36aef086d3f3eaa59c3c484be6569d6 WHIRLPOOL d8d4c81cb3b14a463380cdfce44943f30c4a5fb6dc5a515d9ae47ccc28ff2b3ad2b0b7153d7b2d7de6146e688728be1d94e7e7510b22927cac4c449847cd7b40
|
||||
MISC metadata.xml 518 SHA256 d1f3b4e558a1297f5c15493db99aafeec2f82961bf79ebf501b655916ee6a48d SHA512 f42c0aa88b002eb5f1fefe52745ca04dbd3dedfc6bc9f4cb67b1ab52fa18d87fad3cb9ff2649a858bec3681ed37c6dbf0dac771b76a9a8399468ba2ef0cfb5cf WHIRLPOOL f7aea0266a7934e560193cf93ee096c6bf4fa74a5005e0600cdf7ea9bc5d4b7acd03063f76a34ad1073939fc687911f438837119da98b5cc5aa885d1d982e9db
|
||||
|
@ -1,4 +1,4 @@
|
||||
DIST librdkafka-0.9.0.99.tar.gz 432559 SHA256 5af65838419a1e1069e486a233575df6067fec7c5756f59c56e517b5287041f6 SHA512 2dc7442a6067a26f98105d4a2fe6eed0dcd73866cc3f57fbbe83ade03a2aa03f8a082bbf9c8860d57d81b9b4a48ef78afa55354e473f461c03e4c8c560ffdb7b WHIRLPOOL ea0714fed991f7d05bbc15b8d35993b06ad37e7fa94b8866da44b35fe38185f09c8817169ad0c5fb599c5482178375ffbf1f722e99bd01358cf4ffd0f7266935
|
||||
EBUILD librdkafka-0.9.0.99.ebuild 1118 SHA256 e6b73bc1e65aa6f9cc79cf489693ae7f669675ecc69b5426882cf806bdb1a12f SHA512 d0ca798dd5bc7990780a29686cc16e1faa568bdbb8d4b3351d7809db48f1b7b755387390172059b61f5ea0a45502f8eb19c5de305d0043643a7f367e7e884b59 WHIRLPOOL 0784662589d511d6760113a6a48fe165e409d198b9403893b3aaabdae84ee4ec243ba4da241aa70d8097867986708966166260b68594da6ba1f081066a989705
|
||||
MISC ChangeLog 372 SHA256 bc075e2534093bc0639b3e7d757ba40745948a44700cc0e27bb977b7f85a9c84 SHA512 6bf89a5ae56563b2f20a0ce4c00349f54b1358996ad682ad680618ac4ec653d9a4fa663858303f1d297b5f198c4ffd235e5095c2c38ab851e140ddb1c3b08bdb WHIRLPOOL ce48dbf458e673bbefbf1df7519888db4c749de5d550e5fcaf89d3eb5e761b1377f45ff0a7de14360b13664754156a176f5f079f6ccc998aef637c9d3a253ffc
|
||||
MISC ChangeLog 550 SHA256 3b3b48652bc8a511d0ff8aaa8aa3f41f1e9cf4c2f6d82383dffc6057c3034980 SHA512 6b805b2bd52ae85efda41f5480ad24e56ef63554e109e09958a47ee7519d3cbc548e8bb38f80d463809fa3b7da72103cd3565a864d2bc97c43681845ae95de61 WHIRLPOOL 4cbc863a64ca28e8062fb262c599a2950d89f730ade84f1ce5f0126e79c9aaf111885475df3a0683235e320524f80bd40ba186f27bd6b65b5bbf963810f842b4
|
||||
MISC metadata.xml 518 SHA256 888e24fb0650249f13f9e27d355ac7b8e69e05dcb54b1572dbfc0f294075a0d8 SHA512 978d37d3f2382f0bb03d95174d2535f253de348d8c88ba76f0aa1538c70d5120ee467e35f35441a1fddda3b1cd11e610bd5c2515ae403ae736939f40bf3c4f7c WHIRLPOOL 102549d2eb045eb9807ab117f55cb608611e0aeada7d40a9b647ac2414e771664a250c2a9593b7e8a4b600f58ee84c3be27f08c417365d3526a2cb7b9bc55172
|
||||
|
@ -0,0 +1,48 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="Parsing Expression Grammars for Lua"
|
||||
HOMEPAGE="http://www.inf.puc-rio.br/~roberto/lpeg/"
|
||||
SRC_URI="http://www.inf.puc-rio.br/~roberto/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~x86"
|
||||
IUSE="debug doc luajit"
|
||||
|
||||
RDEPEND="!luajit? ( >=dev-lang/lua-5.1:= )
|
||||
luajit? ( dev-lang/luajit:2= )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=( "HISTORY" )
|
||||
HTML_DOCS=( "lpeg.html" "re.html" )
|
||||
PATCHES=( "${FILESDIR}"/${PN}-0.12.1-makefile.patch )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
use debug && append-cflags -DLPEG_DEBUG
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)" \
|
||||
LUADIR="$($(tc-getPKG_CONFIG) --variable includedir $(usex luajit 'luajit' 'lua'))"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
$(usex luajit 'luajit' 'lua') test.lua || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto "$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD $(usex luajit 'luajit' 'lua'))"
|
||||
doexe lpeg.so
|
||||
insinto "$($(tc-getPKG_CONFIG) --variable INSTALL_LMOD $(usex luajit 'luajit' 'lua'))"
|
||||
doins re.lua
|
||||
|
||||
use doc && einstalldocs
|
||||
}
|
@ -1,8 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>vim@gentoo.org</email>
|
||||
<name>Gentoo Vim Project</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" >
|
||||
<email>lluixhi@gmail.com</email>
|
||||
<name>Aric Belsito</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="luajit">Use <pkg>dev-lang/luajit</pkg> instead of
|
||||
<pkg>dev-lang/lua</pkg></flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
|
@ -0,0 +1,14 @@
|
||||
# ChangeLog for dev-lua/mpack
|
||||
# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
|
||||
# (auto-generated from git log)
|
||||
|
||||
*mpack-1.0.2 (21 Apr 2016)
|
||||
|
||||
21 Apr 2016; Patrice Clement <monsieurp@gentoo.org> +metadata.xml,
|
||||
+mpack-1.0.2.ebuild:
|
||||
Add new ebuild.
|
||||
|
||||
Closes: https://github.com/gentoo/gentoo/pull/1318
|
||||
|
||||
Signed-off-by: Patrice Clement <monsieurp@gentoo.org>
|
||||
|
@ -0,0 +1,4 @@
|
||||
DIST mpack-1.0.2.tar.gz 44671 SHA256 9c570b2aab81b0c56d97cbd8fc483dc431b69510fd9becb4a1845291563e8bc9 SHA512 307ae26799e59224dd624d1f5473c86d5cf975155c58b7ccfd17be98321afb0f7235d06a7a2c50112d4630b3cc7c185c9b307007be5cdbd792819ec2991fa3d2 WHIRLPOOL b5461701898d3e8ab72c92f8d75c4b098986821a3cba281e82a15e495ee4ac2a9efddbd61c542dc3f3cb0cb45f18362652b102dfa8bae690d6c8f4b1b3261911
|
||||
EBUILD mpack-1.0.2.ebuild 898 SHA256 8f0add6fb7c7d3acc1a9635151b37a35fdf2007a6c3533c73abd1493667e90ee SHA512 aab422b753dcb12b4c4480b1c472fcbb2f782cc364faa9d23e071b0183f64960787a5ba6c88cefdd3de89f61d1904661ab8455af4c903e879640ad3d9cb7712f WHIRLPOOL ee7cd4ab4c1e5750be2ec033e4a6b95c5cb47404da8e00f3eb13c1c3cb808a1d483a9d3abc7a0144dd8a46103466f5f3c04f1439146a1f82dec6167c7221895a
|
||||
MISC ChangeLog 383 SHA256 59053aa95c6565df230b69f86488d44b05ca6bf81c3a54fa08daa86359217d7a SHA512 17f1511f12818662da5e3d9fe0cb445b4acc7122eb3779bc35b448327f36d8119a716852c67a8a4cbff840bf06b3a2356a5987b59e79b41ee87ef91e58a2bcde WHIRLPOOL 53063f4ba1f1d53c186a38913253929fcf6f982aba5d655542c9a7a4a1c5beb1f1316ab3fe70c850c3e311167ab8774c8ba8a797e9d4cc3046a26e6f5c871122
|
||||
MISC metadata.xml 476 SHA256 692a0ea5abfc7936e9319c50e8757daa13c74604d616575a863e6fd2e8cab106 SHA512 b8b64b6ce675ddbdf770f29a7fd60a96964ed0855c1412d8cd8c171d1373cb07d7d19fcd1b184053202dd186dba8190cd5b816bcb42af664bf1674e6544b7a7c WHIRLPOOL b67bca0ecfbd217003051efa17e1b2911f7771d2d6aec355fd0d40b61c6dcb168e7fd5b8b80b8e9c951fd7301bf0cb9afe176b3f73812105bde434b2de7ec5b9
|
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" >
|
||||
<email>lluixhi@gmail.com</email>
|
||||
<name>Aric Belsito</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="luajit">Use <pkg>dev-lang/luajit</pkg> instead of
|
||||
<pkg>dev-lang/lua</pkg></flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Lua bindings for libmpack"
|
||||
HOMEPAGE="https://github.com/tarruda/libmpack/"
|
||||
SRC_URI="https://github.com/tarruda/libmpack/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/libmpack-${PV}/binding/lua"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="luajit test"
|
||||
|
||||
RDEPEND="!luajit? ( >=dev-lang/lua-5.1:= )
|
||||
luajit? ( dev-lang/luajit:2= )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
test? ( dev-lua/busted )"
|
||||
|
||||
src_compile() {
|
||||
$(tc-getCC) ${CFLAGS} ${LDFLAGS} $($(tc-getPKG_CONFIG) --cflags $(usex luajit 'luajit' 'lua')) -fPIC -DPIC -shared lmpack.c -o mpack.so || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
busted -o gtest test.lua || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto "$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD $(usex luajit 'luajit' 'lua'))"
|
||||
doexe mpack.so
|
||||
}
|
@ -1,7 +1,5 @@
|
||||
DIST barby-0.6.2.tgz 92842 SHA256 fd8be7db0d3214fc2e2f330cc62de7c8d1884311b0230501b9cc9a23ec7f5deb SHA512 bb1a0387cfcabe8e282b1624c09574778cf438a5aa9fddaafd413ffe06726e95a766bc3f8bbb51b39894c267b167ce8b3cfe3cbaf83896a90c3509b81478e3a6 WHIRLPOOL 55a9f2171373735fc6fa7bfff60c4faaa0e1a1ab97facfa9a0025a63f9575858177d2df3c5b39dc140a8d163e46c368e1ec2798351fb8208d58fb5c64e4b0c2b
|
||||
DIST barby-0.6.3.tgz 92842 SHA256 fd8be7db0d3214fc2e2f330cc62de7c8d1884311b0230501b9cc9a23ec7f5deb SHA512 bb1a0387cfcabe8e282b1624c09574778cf438a5aa9fddaafd413ffe06726e95a766bc3f8bbb51b39894c267b167ce8b3cfe3cbaf83896a90c3509b81478e3a6 WHIRLPOOL 55a9f2171373735fc6fa7bfff60c4faaa0e1a1ab97facfa9a0025a63f9575858177d2df3c5b39dc140a8d163e46c368e1ec2798351fb8208d58fb5c64e4b0c2b
|
||||
EBUILD barby-0.6.2-r1.ebuild 2916 SHA256 304856fee3ffab01a4a84aa274d89f27063efde0217de35af38dd19986b44320 SHA512 06626e5973b45fc7db0f691ccff05b25a0b24d637527762690b6b245c8ce7ca115dacff2ea0f7b4d1ada945f6d479b60be73a3964b4ce2081e9112e1dc3155fc WHIRLPOOL 01aab87fa7025f687e3989d25c69b3304067cca35f969dafb619cc6eb29a81b5318a9a41c4dde8b839b0dfa9ad5c22ba7dcf2499f50d4d89e832b998531ed140
|
||||
EBUILD barby-0.6.3.ebuild 2918 SHA256 814e233211c22cd87a803a78358f1ca7ffca96a32b78326cac7d979227beb713 SHA512 00b62da7336728e7b542759783c26864e3959e692de51d7fc1b947a5cddf9598e538d8a6f81bf254a96aa1f80e131cba6714b470353d3967df5b95778ef02e8b WHIRLPOOL b4b02e1fd082e24ee0a20646b126fee07c465e2a407600a035182c12e60716f354007bf5174f5d51edcdbdcb1d48789e4c9c4f2c74eee5fea431c68099850de6
|
||||
DIST barby-0.6.3.tar.gz 92841 SHA256 51546e7f58fc4587ec7977ac924874ac89ee1397ddd11d3fdeaa3a567dcebb92 SHA512 b7415298ee2d8bb17a88b5c647d707a15151d2110834e87c2d598def88290ad90947bc49ded175b44050d8d95510602d374699fd91f2fb873728e8536dc70ef6 WHIRLPOOL e0272be0adeb828d7745ddbb9ffe61674314943bfd3ad5aaca29a998b38bdd9dbe25d1e4333b182c63edd0240c509a32037c4e9277cdbf0b01723aa261e19a6a
|
||||
EBUILD barby-0.6.3-r1.ebuild 2414 SHA256 800123c3c9afdd2a6404b967fc696370a15aaa36e2b0641fb8d8c2e05eef0529 SHA512 be5e108f30d81824f7f013106b695192304264b3d915d11ff0d2616606011dfebab49d8115c20b0deb77b81675463d66529437d8d2eec305a3ff7877b9a7830e WHIRLPOOL 7a15fed36d5f37f87df1611dbc55381a99043650bf1541dd785fab8ac9cf12e1d393bf63a499082bffab821724eac1cb8ce54579387bfbb981aa9b813c6fd29f
|
||||
MISC ChangeLog 2963 SHA256 30239e757906b057a65612dd8eda29afc80b86b3ebfda22c9d31e8b2c664cf00 SHA512 150d39704c446a3e64d263f728f7905e1a3368a70e51a4cc8f4a1c5f151d14c545d4a1666226766b88fbada4dd0cda5e4fcd4f151e90f539a6f88e0d60f9d219 WHIRLPOOL 96e85426060be07daa71291362b11f7358e6abcdbf4d3fab0785182b3fa6c0529b8a9d056a8fdbc509d8a6fe89611c09ee9b80eb316e46b9cd4a31e594580d14
|
||||
MISC ChangeLog-2015 2199 SHA256 1150db449a15d3ca226194d1a70026dad51c9cb527d9c8068036471d72538c4b SHA512 3772f8ebbf4dffd5522b81aab774ee0f9133901040ebde5b06f510a3cce3884aa96f0efc966fdedcde06fad2608c45b3fe2345c58c99839eaa429f932627f556 WHIRLPOOL dfa569d62261f957ebf2c5c85696849280e8af904701fb9921d049647d99c91cca640f6b2e43d2d2a4819f12aceb1336df28eff72e094e3af361354e5f580075
|
||||
MISC metadata.xml 1297 SHA256 9a9651c624dbd653afadc7afb7b2b6b433e0f8f17c64cbb0299148501bce71ef SHA512 cd7c8dbcae7d84a63eb9ff91350c34723cbbe464bbc70dc9a1e3c98433c90df14e022a5e4ae1594741e46a2fa598be483ccf8c59f29e094d22386d2db45d1943 WHIRLPOOL 814077b1aea541c27bc232a9f179096ce8b121b556ac08de3f9af9d3201070a2dfc982c7788639bab7f235538a360df7cb8640b38b4e4daa24edac38cccc07d9
|
||||
MISC metadata.xml 1073 SHA256 85b09f53ee1e36f70cb1205cee243dda2efd3884f0be5c90b54960ff20f981c9 SHA512 c3e13b0b201a8a8556b5f725d366b78da9ee82bae9707a8722055d0e5e73571560209657e4c7ef69a777934585cdd2d0e001a979f35773f9f31ac99d6346f4dd WHIRLPOOL 8f5c56a4e32918795d7297eacb657c7348c37fa18d447a9a261c54ccc7b52b3e8f7f7ec00fc6a6b5440ad85b42be506f74cea9dce2b9f29ac97d0ee58d031c11
|
||||
|
@ -1,124 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
USE_RUBY="ruby20 ruby21 ruby22"
|
||||
|
||||
RUBY_FAKEGEM_TASK_TEST="test"
|
||||
|
||||
RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
|
||||
|
||||
COMMIT="891b15594b34229b8bdb267c10ab5b5309c03320"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="Ruby barcode generator that doesn't rely on 3rd party libraries"
|
||||
HOMEPAGE="http://toretore.eu/barby/"
|
||||
|
||||
GITHUB_USER="toretore"
|
||||
SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tgz"
|
||||
|
||||
RUBY_S="${PN}-${COMMIT}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="datamatrix test qrcode rmagick pdf-writer prawn png cairo"
|
||||
|
||||
ruby_add_rdepend "
|
||||
rmagick? ( dev-ruby/rmagick )
|
||||
cairo? ( dev-ruby/rcairo )"
|
||||
|
||||
ruby_add_rdepend "qrcode? ( dev-ruby/rqrcode )
|
||||
png? ( dev-ruby/chunky_png )
|
||||
prawn? ( dev-ruby/prawn )"
|
||||
|
||||
ruby_add_bdepend "test? ( dev-ruby/minitest )"
|
||||
|
||||
# testing requires imagemagick capable of png output
|
||||
DEPEND+=" test? ( media-gfx/imagemagick[png] )"
|
||||
|
||||
# prawn breaks tests for some reasons, needs to be investigated; code
|
||||
# still works though.
|
||||
RESTRICT="prawn? ( test )"
|
||||
|
||||
all_ruby_prepare() {
|
||||
sed -i -e '/[bB]undler/s:^:#:' test/test_helper.rb
|
||||
}
|
||||
|
||||
each_ruby_prepare() {
|
||||
if use datamatrix; then
|
||||
sed -i -e '/^end/i s.add_dependency "semacode"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/barcode/data_matrix.rb \
|
||||
test/data_matrix_test.rb
|
||||
fi
|
||||
|
||||
if use pdf-writer; then
|
||||
sed -i -e '/^end/i s.add_dependency "pdf-writer"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/outputter/pdfwriter_outputter.rb \
|
||||
test/outputter/pdfwriter_outputter_test.rb
|
||||
fi
|
||||
|
||||
if use qrcode; then
|
||||
sed -i -e '/^end/i s.add_dependency "rqrcode"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/barcode/qr_code.rb \
|
||||
test/qr_code_test.rb
|
||||
fi
|
||||
|
||||
if use rmagick; then
|
||||
sed -i -e '/^end/i s.add_dependency "rmagick"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/outputter/rmagick_outputter.rb \
|
||||
test/outputter/rmagick_outputter_test.rb
|
||||
fi
|
||||
|
||||
if use prawn; then
|
||||
sed -i -e '/^end/i s.add_dependency "prawn"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/outputter/prawn_outputter.rb \
|
||||
test/outputter/prawn_outputter_test.rb
|
||||
fi
|
||||
|
||||
if use png; then
|
||||
sed -i -e '/^end/i s.add_dependency "chunky_png"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/outputter/png_outputter.rb \
|
||||
test/outputter/png_outputter_test.rb
|
||||
fi
|
||||
|
||||
if use cairo; then
|
||||
sed -i -e '/^end/i s.add_dependency "cairo"' ${RUBY_FAKEGEM_GEMSPEC}
|
||||
else
|
||||
rm \
|
||||
lib/barby/outputter/cairo_outputter.rb \
|
||||
test/outputter/cairo_outputter_test.rb
|
||||
fi
|
||||
|
||||
case ${RUBY} in
|
||||
*/ruby19)
|
||||
rm -f \
|
||||
lib/barby/barcode/data_matrix.rb \
|
||||
test/data_matrix_test.rb \
|
||||
lib/barby/outputter/pdfwriter_outputter.rb \
|
||||
test/outputter/pdfwriter_outputter_test.rb
|
||||
|
||||
sed -i \
|
||||
-e '/semacode/d' \
|
||||
-e '/pdf-writer/d' \
|
||||
${RUBY_FAKEGEM_GEMSPEC}
|
||||
;;
|
||||
esac
|
||||
}
|
@ -1,8 +1,10 @@
|
||||
DIST cairo-1.14.1.gem 96768 SHA256 e93a7bc97687d2725b77f4651656f77a42a134e39129e05c853c6eac1929ae4d SHA512 08d045f5763ed61ff10fe7d5388532e4fd6be24411a9e5e1ea3cc17de48092cab0723cbf17208eb488fa3322114f4112182983a487516db291173644a0dee355 WHIRLPOOL cc0056366208c6b3f722042758a6a469b0ffe4dcb8a71fc17970773e4fad05208efd46d7b354feb71230ecedd839d719cbde1685f5c113288f7777bda58ff52c
|
||||
DIST cairo-1.14.3.gem 97792 SHA256 e3a31ef8097c0b16f2ad71561dca37b4564ae3003838a82805aadeceb69d03b6 SHA512 aba56403ca813bdcc56c01fed76642e4115a683ed3e3d056675195d2d86fc7dfa44f0077ca47407eeea27789824171251222e6300f3f3c395bc186afb616c772 WHIRLPOOL 724d072ad881f54cdcdc631399f99e6bdc563bc78f70c611bdeb3ddc659de78e4ce75c1ec51ac6659542e9ab8ae9c138caa610f97e37a6a1d69440313b69e6a9
|
||||
DIST cairo-1.15.2.gem 98304 SHA256 954cb9bf7ac7cc79a5cc805be61ca81378454f20f621939fa6afb4513cab50d9 SHA512 61ebc30c096de50e4a1d5115c3af45913870aa357a788aa3d440f3945b0292ff410022296879f5a5d03229114261227db1fb15ceaee1cf91c586bb1f00544fc6 WHIRLPOOL 6be8cf957f08c3e871bbd73e33a41d117e92e123569756332552e47b6287c68682f91c3b23e85156d84348de17f3f901ffd7bce9cbaf6289558d27ffa522a2c5
|
||||
EBUILD rcairo-1.14.1-r1.ebuild 1602 SHA256 da274a1d51ca8b6ae8e944e06ea89115cce4a783701fdabdd37279df3206f7bf SHA512 7bfa32d650c70ae731c2c819601254ea438a6afcb29a7ba7253f35c0662d03b86f773b79fa296678680f6f6898fdb3d3a12dcea4c6d35f0bd7fec13da17ab4a1 WHIRLPOOL 10084af91ea95beeccd1e04464b394ff73d0008ce4ccc4447e96f4fc4e686ca11a3856ef69ce33fc3f65d764d082a03c7198c156fa9d672d13e002b5a9d214a8
|
||||
EBUILD rcairo-1.14.1.ebuild 1586 SHA256 3726711ed1f493eacf1cc85eacd6078a776902dbc2cdf0dfa08365cc1305b7c0 SHA512 72bdddcdd838557e77facd234f509dcd635e7a83d5f14bc27a51247679fadda894bff855466076cfbe5309d67732f30448a5be85e29b3e8d8bbbc822b1057bfc WHIRLPOOL 80acdc4ca59c005c01021e79d1f028e71d8f94fa9994be728b8e0e0eb74024182477cec89e0cba56890d3e1d8e7b15c46a93bbe0ba18ec3ab27e0d6455004ccc
|
||||
EBUILD rcairo-1.14.3.ebuild 1602 SHA256 da274a1d51ca8b6ae8e944e06ea89115cce4a783701fdabdd37279df3206f7bf SHA512 7bfa32d650c70ae731c2c819601254ea438a6afcb29a7ba7253f35c0662d03b86f773b79fa296678680f6f6898fdb3d3a12dcea4c6d35f0bd7fec13da17ab4a1 WHIRLPOOL 10084af91ea95beeccd1e04464b394ff73d0008ce4ccc4447e96f4fc4e686ca11a3856ef69ce33fc3f65d764d082a03c7198c156fa9d672d13e002b5a9d214a8
|
||||
EBUILD rcairo-1.15.2.ebuild 1609 SHA256 6158828db87b67fa39fac2dee550500e5a26d45c8a0c66dbd0df9c7f5a9dcd6d SHA512 cd48c987cfe6ce7e476a6fce1a970306d4594a6ec6872a24a4a835f7127a19f55f12af3ae7f6ba30584a98c481d11b72066baf6fce7a29fa3fe635a17253319a WHIRLPOOL 4855e12c6b41705623b311e38338b67fdb1a095596b9a648f6411870ac8f21e5b0996d33fc9306444c5d7e8d8b2fbb1e6d853419378afd5d56222272c1114ec7
|
||||
MISC ChangeLog 2811 SHA256 572d54a38572ab9165efbd773111268b7f73ff4d81a0f150a052e63ae78274ba SHA512 539f7a4cd87bebefe364eae2db01552e4db78aa63fbdb82dd5a297db24a4272ff20a71242e690b7e5803be08fc94fdebf29a1bfdb77ad5d5a39e4c33948e6094 WHIRLPOOL e56c3031089532f8b5c24d790c5b8c9065cb1ebfbc1a21f7516c5f269aa1a110e66e61d40fb7f2c3fc72d5830caf5142ad8b15b5e22e1e24951831b2b5edffc1
|
||||
MISC ChangeLog-2015 13356 SHA256 47dc515898ad4d2507c3cf9085e01f74039fad7a04eea717383d668ce4cd424a SHA512 303c5686f1a72a2a132ba13ac652252a6757eed33e6a7c2a99ec18d383d6a07abaa47eae9236ead67dcbd4ada5344e3ad9faedff23d4a709c5f69c1da55a43b0 WHIRLPOOL a8eaf18dfb87bc0b0e28094ae007f5ed8945d73dfa759f6d1009fef92e5510e62c710ede255799ac6356f638376026842b1a5baf289f5003c00851529598aaad
|
||||
MISC metadata.xml 247 SHA256 1236c1552dc683658bd5bc3c5f880b71d9dfa13025edab4a0f8973f9eaa6bcf5 SHA512 ea4c044637b751a2c28c6ac226121e74ef18196af4b594e60413fec907bbab29c6b0c7735c3f503485df16dcfb36ddb86038394d92e2cd18c8f04626628e9f09 WHIRLPOOL c1aa829db3553d79fe71a8bf79fd6ea24e9fff4e591a4ade3c05e2a97b0df352170fbce76450c0402ec6d8998951c2f3eb3e198ac4638c0e0882208b9f4d8fc8
|
||||
|
@ -0,0 +1,76 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
USE_RUBY="ruby20 ruby21 ruby22 ruby23"
|
||||
|
||||
RUBY_FAKEGEM_NAME="cairo"
|
||||
|
||||
# Documentation depends on files that are not distributed.
|
||||
RUBY_FAKEGEM_TASK_DOC=""
|
||||
|
||||
RUBY_FAKEGEM_TASK_TEST=""
|
||||
|
||||
RUBY_FAKEGEM_DOCDIR="doc"
|
||||
|
||||
RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
|
||||
|
||||
inherit multilib ruby-fakegem
|
||||
|
||||
DESCRIPTION="Ruby bindings for cairo"
|
||||
HOMEPAGE="http://cairographics.org/rcairo/"
|
||||
|
||||
IUSE=""
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="|| ( Ruby GPL-2 )"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
>=x11-libs/cairo-1.2.0[svg]"
|
||||
DEPEND="${DEPEND}
|
||||
>=x11-libs/cairo-1.2.0[svg]"
|
||||
|
||||
ruby_add_bdepend "
|
||||
dev-ruby/pkg-config
|
||||
dev-ruby/ruby-glib2
|
||||
test? ( >=dev-ruby/test-unit-2.1.0-r1:2 )"
|
||||
|
||||
all_ruby_prepare() {
|
||||
# Avoid development dependency.
|
||||
sed -i -e '/notify/ s:^:#:' test/cairo-test-utils.rb || die
|
||||
}
|
||||
|
||||
each_ruby_configure() {
|
||||
${RUBY} -Cext/cairo extconf.rb || die "extconf failed"
|
||||
}
|
||||
|
||||
each_ruby_compile() {
|
||||
emake V=1 -Cext/cairo
|
||||
|
||||
# again, try to make it more standard, to install it more easily.
|
||||
cp ext/cairo/cairo$(get_modname) lib/ || die
|
||||
}
|
||||
|
||||
each_ruby_test() {
|
||||
# don't rely on the Rakefile because it's a mess to load with
|
||||
# their hierarchy, do it manually.
|
||||
${RUBY} -Ilib -r ./test/cairo-test-utils.rb \
|
||||
-e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
each_fakegem_install
|
||||
|
||||
insinto $(ruby_get_hdrdir)
|
||||
doins ext/cairo/rb_cairo.h
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
all_fakegem_install
|
||||
|
||||
insinto /usr/share/doc/${PF}/samples
|
||||
doins -r samples/*
|
||||
}
|
@ -1,7 +1,6 @@
|
||||
AUX ruby-tcpwrap-0.6-ruby19.patch 2399 SHA256 a9c59e4b141be514c397379e485b00ab8d40594564e81a26d880fa7f68d29436 SHA512 ff12bcf83a11e26289411511e0dfef5ba1d0306a5e45bfb1657f2bc5363670d99de1de3c14b32bfe29a6ba410eb416fc47cacbd06e58df7c7b9ed43bdf45a6c7 WHIRLPOOL 6a7c2892bc2c1478c6a462e91367478259b87bb5f3f8b245bafea863804d8edd32d1cef12b914c04b7fae5aa2b6d601610ad354398e2ad1f21f6cc48f3b5dd65
|
||||
DIST ruby-tcpwrap-0.6.tar.gz 4504 SHA256 b896dc36d41951ba5e3f769d1ad5a246b1f559d58f6435966ebe1d4d369996ea SHA512 51385f6a1cbcb18ce5866d5c2edd3388891835781f66d22558ad72e9dbb4639f376b5cae8a2890289b4d2cfbd4fb4f42d45c13b596372601ff57b6f1638ca6c1 WHIRLPOOL eaa402a06726fd0bd125fbb49af5c82676cbef62a736d15a343c63f6f2deedc485a548cf2bf76759f3de7b192769f80f1715df7a65cc35ea18c2c4176a6131e5
|
||||
EBUILD ruby-tcpwrap-0.6-r2.ebuild 1174 SHA256 2ac87d03ae6ee1cf50094d72980fa03d31ba8e1c1eb00220497446594a2e2c7f SHA512 c5ae6d9029fcf34236c4f3999a11db55a5f819715252a9d9d698ce9d25e40983de8c3be3e0b0b676c0f377d78f492770bd5cb7800d6f815167e749bd7d1c69bd WHIRLPOOL f05cecfe1653ea03b863c58e246ff06c6cb6150efb294509410341ccbf4432d9c5e7898f9802caf4b80b32a248628e97698c3a7c5892560761fb96dcd231a1fb
|
||||
EBUILD ruby-tcpwrap-0.6-r3.ebuild 1183 SHA256 f8cc14c35915b192e6c44d84804792f3d244d315a4e0b098c6f5a7065b17a89a SHA512 01efa09f7283db00086cc7ce940d94ea20911fb285d417b9997a93a9ad8695a0c213ebfec0263abae7330b4ea466319d49ad170f9362403fcf5383cd7b715d4c WHIRLPOOL 419b66f64abcd8e4f6f2e533c3cbc417aae73a2bc0aaa851232878e3dfeeb29e9e87a1edabdd399c204aaedc9e2e11c0fd064df18d9994d707a703fc375d5aa7
|
||||
EBUILD ruby-tcpwrap-0.6-r3.ebuild 1174 SHA256 7f66b1480dd9cce8ef9a4c8821846599481d301e0aa78599b2784711b8bc9384 SHA512 7df791ed0080682ea5786dae2e45edf80ae9fac1eb43f7419111c88fef5249ebd61316d868c4a599e239316a4d9228b9480ea78b490267026625338986a687ce WHIRLPOOL 123174d46b192238daef573f3f5014906322188a03f85ddfb7c90d14211e25e33320863e5734e0418fb52e99019509208556d510cd4782d20b9647f0f23f576a
|
||||
MISC ChangeLog 2548 SHA256 5b9ac72e0ff4cec64f701a4a750c68e029c00fdc5d75f5753a25ec8aa9b7f99c SHA512 31417372e288746f3505fcaa06d86e2bc9872d890567cbf5dfebfda3a8fa56cc8d186d52452aa2cdc01179fec86f91207f4fa1335a7d319dbabb81b721f1b896 WHIRLPOOL 1781895eecffe23085e57c140e32fd04ac5ba2f6b3ae06878d771e7e0a6dc145c1a98d03b66d2b28b9c7c41407637772c5e1ffcf4b31a1a919d312bef63a7a17
|
||||
MISC ChangeLog-2015 3630 SHA256 7ae4526d7b641190c6ed25b62ddde21c5f8d6a346e9d0825ccf3c426cf1a884b SHA512 aabcc70110b9d1784715e606f63221356ff8f37108ded83a52b6acfb70a864e225662cf5a351d77fd4fb40d0d2dec5ddb8bd17242d4035c049ece83f4779ba59 WHIRLPOOL d278f03ef1b0d3a7635a15ec1313eb8e9f72b511c88d3b012698873e9ab4686d9778c37cf26a02b587ff594f7a2326c4113c72f547b82e254b520a4b718bac81
|
||||
MISC metadata.xml 247 SHA256 1236c1552dc683658bd5bc3c5f880b71d9dfa13025edab4a0f8973f9eaa6bcf5 SHA512 ea4c044637b751a2c28c6ac226121e74ef18196af4b594e60413fec907bbab29c6b0c7735c3f503485df16dcfb36ddb86038394d92e2cd18c8f04626628e9f09 WHIRLPOOL c1aa829db3553d79fe71a8bf79fd6ea24e9fff4e591a4ade3c05e2a97b0df352170fbce76450c0402ec6d8998951c2f3eb3e198ac4638c0e0882208b9f4d8fc8
|
||||
|
@ -1,55 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
# ruby22 -> Does not compile
|
||||
USE_RUBY="ruby19 ruby20"
|
||||
|
||||
inherit ruby-ng
|
||||
|
||||
DESCRIPTION="A TCP wrappers library for Ruby"
|
||||
HOMEPAGE="http://raa.ruby-lang.org/list.rhtml?name=ruby-tcpwrap"
|
||||
SRC_URI="http://shugo.net/archive/ruby-tcpwrap/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~hppa ~mips ~ppc x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND+=" net-libs/libident
|
||||
sys-apps/tcp-wrappers"
|
||||
|
||||
RDEPEND+=" net-libs/libident
|
||||
sys-apps/tcp-wrappers"
|
||||
|
||||
RUBY_S="${PN}"
|
||||
RUBY_PATCHES=( "${P}-ruby19.patch" )
|
||||
|
||||
each_ruby_configure() {
|
||||
${RUBY} extconf.rb || die "extconf.rb failed"
|
||||
}
|
||||
|
||||
each_ruby_compile() {
|
||||
# We have injected --no-undefined in Ruby as a safety precaution
|
||||
# against broken ebuilds, but the Ruby-Gnome bindings
|
||||
# unfortunately rely on the lazy load of other extensions; see bug
|
||||
# #320545.
|
||||
find . -name Makefile -print0 | xargs -0 \
|
||||
sed -i -e 's:-Wl,--no-undefined ::' || die "--no-undefined removal failed"
|
||||
|
||||
emake V=1
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
emake DESTDIR="${D}" install V=1
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
dodoc README*
|
||||
dohtml doc/*
|
||||
|
||||
docinto sample
|
||||
dodoc sample/*
|
||||
}
|
@ -0,0 +1,219 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
GCONF_DEBUG="no"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
PYTHON_COMPAT=( python{3_3,3_4,3_5} )
|
||||
|
||||
inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
|
||||
|
||||
DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
|
||||
HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2+"
|
||||
SLOT="0"
|
||||
IUSE="+bluetooth +networkmanager +nls -openrc-force"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
# libXfixes-5.0 needed for pointer barriers
|
||||
# FIXME:
|
||||
# * gstreamer support is currently automagic
|
||||
COMMON_DEPEND="
|
||||
>=app-accessibility/at-spi2-atk-2.5.3
|
||||
>=dev-libs/atk-2[introspection]
|
||||
>=app-crypt/gcr-3.7.5[introspection]
|
||||
>=dev-libs/glib-2.45.3:2[dbus]
|
||||
>=dev-libs/gjs-1.39
|
||||
>=dev-libs/gobject-introspection-1.45.4:=
|
||||
dev-libs/libical:=
|
||||
>=x11-libs/gtk+-3.15.0:3[introspection]
|
||||
>=media-libs/clutter-1.21.5:1.0[introspection]
|
||||
>=dev-libs/json-glib-0.13.2
|
||||
>=dev-libs/libcroco-0.6.8:0.6
|
||||
>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
|
||||
>=gnome-base/gsettings-desktop-schemas-3.14
|
||||
>=gnome-base/gnome-keyring-3.3.90
|
||||
gnome-base/libgnome-keyring
|
||||
>=gnome-extra/evolution-data-server-3.17.2:=
|
||||
>=media-libs/gstreamer-0.11.92:1.0
|
||||
>=net-im/telepathy-logger-0.2.4[introspection]
|
||||
>=net-libs/telepathy-glib-0.19[introspection]
|
||||
>=sys-auth/polkit-0.100[introspection]
|
||||
>=x11-libs/libXfixes-5.0
|
||||
x11-libs/libXtst
|
||||
>=x11-wm/mutter-3.18.1[introspection]
|
||||
>=x11-libs/startup-notification-0.11
|
||||
|
||||
${PYTHON_DEPS}
|
||||
dev-python/pygobject:3[${PYTHON_USEDEP}]
|
||||
|
||||
dev-libs/dbus-glib
|
||||
dev-libs/libxml2:2
|
||||
gnome-base/librsvg
|
||||
media-libs/libcanberra[gtk3]
|
||||
media-libs/mesa
|
||||
>=media-sound/pulseaudio-2
|
||||
>=net-libs/libsoup-2.40:2.4[introspection]
|
||||
x11-libs/libX11
|
||||
x11-libs/gdk-pixbuf:2[introspection]
|
||||
x11-libs/pango[introspection]
|
||||
x11-apps/mesa-progs
|
||||
|
||||
bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
|
||||
networkmanager? (
|
||||
app-crypt/libsecret
|
||||
>=gnome-extra/nm-applet-0.9.8
|
||||
>=net-misc/networkmanager-0.9.8[introspection] )
|
||||
"
|
||||
# Runtime-only deps are probably incomplete and approximate.
|
||||
# Introspection deps generated using:
|
||||
# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq
|
||||
# Each block:
|
||||
# 1. Pull in polkit-0.101 for pretty authorization dialogs
|
||||
# 2. Introspection stuff needed via imports.gi.*
|
||||
# 3. gnome-session is needed for gnome-session-quit
|
||||
# 4. Control shell settings
|
||||
# 5. Systemd needed for suspending support
|
||||
# 6. xdg-utils needed for xdg-open, used by extension tool
|
||||
# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
|
||||
# 8. IBus is needed for nls integration
|
||||
# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
>=sys-auth/polkit-0.101[introspection]
|
||||
|
||||
>=app-accessibility/caribou-0.4.8
|
||||
media-libs/cogl[introspection]
|
||||
>=sys-apps/accountsservice-0.6.14[introspection]
|
||||
>=sys-power/upower-0.99[introspection]
|
||||
|
||||
>=gnome-base/gnome-session-2.91.91
|
||||
>=gnome-base/gnome-settings-daemon-3.8.3
|
||||
|
||||
!openrc-force? ( >=sys-apps/systemd-31 )
|
||||
|
||||
x11-misc/xdg-utils
|
||||
|
||||
media-fonts/dejavu
|
||||
x11-themes/gnome-icon-theme-symbolic
|
||||
|
||||
networkmanager? (
|
||||
net-misc/mobile-broadband-provider-info
|
||||
sys-libs/timezone-data )
|
||||
nls? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
|
||||
"
|
||||
# avoid circular dependency, see bug #546134
|
||||
PDEPEND="
|
||||
>=gnome-base/gdm-3.5[introspection]
|
||||
>=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?,networkmanager(+)?]
|
||||
"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
dev-libs/libxslt
|
||||
>=dev-util/gtk-doc-am-1.17
|
||||
>=dev-util/intltool-0.40
|
||||
gnome-base/gnome-common
|
||||
virtual/pkgconfig
|
||||
!!=dev-lang/spidermonkey-1.8.2*
|
||||
"
|
||||
# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=360413
|
||||
|
||||
src_prepare() {
|
||||
# Change favorites defaults, bug #479918
|
||||
epatch "${FILESDIR}"/${PN}-3.14.0-defaults.patch
|
||||
|
||||
# Fix automagic gnome-bluetooth dep, bug #398145
|
||||
epatch "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
|
||||
|
||||
# Fix silent bluetooth linking failure with ld.gold, bug #503952
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=726435
|
||||
epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
|
||||
|
||||
epatch_user
|
||||
|
||||
eautoreconf
|
||||
gnome2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Do not error out on warnings
|
||||
gnome2_src_configure \
|
||||
--enable-browser-plugin \
|
||||
--enable-man \
|
||||
$(use_enable !openrc-force systemd) \
|
||||
$(use_with bluetooth) \
|
||||
$(use_enable networkmanager) \
|
||||
BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
|
||||
}
|
||||
|
||||
src_install() {
|
||||
gnome2_src_install
|
||||
python_replicate_script "${ED}/usr/bin/gnome-shell-extension-tool"
|
||||
python_replicate_script "${ED}/usr/bin/gnome-shell-perf-tool"
|
||||
|
||||
# Required for gnome-shell on hardened/PaX, bug #398941
|
||||
# Future-proof for >=spidermonkey-1.8.7 following polkit's example
|
||||
if has_version '<dev-lang/spidermonkey-1.8.7'; then
|
||||
pax-mark mr "${ED}usr/bin/gnome-shell"{,-extension-prefs}
|
||||
elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
|
||||
pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
|
||||
# Required for gnome-shell on hardened/PaX #457146 and #457194
|
||||
# PaX EMUTRAMP need to be on
|
||||
elif has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
|
||||
pax-mark E "${ED}usr/bin/gnome-shell"{,-extension-prefs}
|
||||
else
|
||||
pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_pkg_postinst
|
||||
|
||||
if ! has_version 'media-libs/gst-plugins-good:1.0' || \
|
||||
! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
|
||||
ewarn "To make use of GNOME Shell's built-in screen recording utility,"
|
||||
ewarn "you need to either install media-libs/gst-plugins-good:1.0"
|
||||
ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
|
||||
ewarn "apps.gnome-shell.recorder/pipeline to what you want to use."
|
||||
fi
|
||||
|
||||
if ! has_version ">=x11-base/xorg-server-1.11"; then
|
||||
ewarn "If you use multiple screens, it is highly recommended that you"
|
||||
ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
|
||||
ewarn "pointer barriers which will make it easier to use hot corners."
|
||||
fi
|
||||
|
||||
if has_version "<x11-drivers/ati-drivers-12"; then
|
||||
ewarn "GNOME Shell has been reported to show graphical corruption under"
|
||||
ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
|
||||
ewarn "drivers."
|
||||
fi
|
||||
|
||||
if ! has_version "media-libs/mesa[llvm]"; then
|
||||
elog "llvmpipe is used as fallback when no 3D acceleration"
|
||||
elog "is available. You will need to enable llvm USE for"
|
||||
elog "media-libs/mesa."
|
||||
fi
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=563084
|
||||
if has_version "x11-drivers/nvidia-drivers[-kms]"; then
|
||||
ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers,"
|
||||
ewarn "otherwise Gnome will fail to start"
|
||||
fi
|
||||
|
||||
if ! systemd_is_booted; then
|
||||
ewarn "${PN} needs Systemd to be *running* for working"
|
||||
ewarn "properly. Please follow this guide to migrate:"
|
||||
ewarn "https://wiki.gentoo.org/wiki/Systemd"
|
||||
fi
|
||||
|
||||
if use openrc-force; then
|
||||
ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
|
||||
ewarn "this can lead to unexpected problems and is not supported neither by"
|
||||
ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
|
||||
ewarn "you will need to disable this USE flag system wide and retest before"
|
||||
ewarn "opening any bug report."
|
||||
fi
|
||||
}
|
@ -1 +1 @@
|
||||
Thu, 21 Apr 2016 19:08:47 +0000
|
||||
Fri, 22 Apr 2016 08:10:57 +0000
|
||||
|
@ -1 +1 @@
|
||||
Thu, 21 Apr 2016 19:08:47 +0000
|
||||
Fri, 22 Apr 2016 08:10:57 +0000
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue