176 lines
3.6 KiB
Bash
176 lines
3.6 KiB
Bash
# Copyright 2023-2024 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit cmake flag-o-matic qmake-utils xdg
|
|
|
|
DESCRIPTION="The official Qt-based program for syncing your MEGA account in your PC"
|
|
HOMEPAGE="
|
|
https://mega.io
|
|
https://github.com/meganz/MEGAsync
|
|
"
|
|
|
|
if [[ ${PV} == 9999 ]];then
|
|
inherit git-r3
|
|
EGIT_REPO_URI="https://github.com/meganz/MEGAsync"
|
|
EGIT_BRANCH="master"
|
|
EGIT_SUBMODULES=( '*' )
|
|
else
|
|
MEGA_SDK_REV="eb8dba09149e1aad0210c3591f3ef6e50022f714" # commit of src/MEGASync/mega submodule
|
|
MEGA_TAG_SUFFIX="Linux"
|
|
SRC_URI="
|
|
https://github.com/meganz/MEGAsync/archive/v${PV}_${MEGA_TAG_SUFFIX}.tar.gz -> ${P}.tar.gz
|
|
https://github.com/meganz/sdk/archive/${MEGA_SDK_REV}.tar.gz -> ${PN}-sdk-${PV}.tar.gz
|
|
"
|
|
KEYWORDS="~amd64 ~x86"
|
|
S="${WORKDIR}"/MEGAsync-${PV}_${MEGA_TAG_SUFFIX}
|
|
fi
|
|
|
|
LICENSE="MEGA"
|
|
SLOT="0"
|
|
IUSE="dolphin mediainfo nautilus nemo thumbnail thunar"
|
|
|
|
DEPEND="
|
|
dev-db/sqlite:3
|
|
dev-libs/crypto++:=
|
|
dev-libs/icu:=
|
|
dev-libs/libsodium:=
|
|
dev-libs/libuv:=
|
|
dev-libs/openssl:0=
|
|
dev-qt/qtconcurrent:5
|
|
dev-qt/qtcore:5
|
|
dev-qt/qtdbus:5
|
|
dev-qt/qtdeclarative:5
|
|
dev-qt/qtgui:5
|
|
dev-qt/qtnetwork:5
|
|
dev-qt/qtimageformats:5
|
|
dev-qt/qtsvg:5
|
|
dev-qt/qtwidgets:5
|
|
dev-qt/qtx11extras:5
|
|
net-dns/c-ares:=
|
|
net-misc/curl[ssl]
|
|
sys-libs/zlib
|
|
x11-libs/libxcb:=
|
|
dolphin? (
|
|
kde-apps/dolphin:5
|
|
kde-frameworks/kcoreaddons:5
|
|
kde-frameworks/kio:5
|
|
kde-frameworks/kwidgetsaddons:5
|
|
)
|
|
mediainfo? (
|
|
media-libs/libmediainfo
|
|
media-libs/libzen
|
|
)
|
|
nautilus? (
|
|
dev-libs/glib:2
|
|
>=gnome-base/nautilus-43
|
|
)
|
|
nemo? (
|
|
dev-libs/glib:2
|
|
gnome-extra/nemo
|
|
)
|
|
thumbnail? (
|
|
media-libs/freeimage
|
|
media-video/ffmpeg:=
|
|
)
|
|
thunar? ( xfce-base/thunar:= )
|
|
"
|
|
RDEPEND="
|
|
${DEPEND}
|
|
dev-qt/qtquickcontrols:5
|
|
dev-qt/qtquickcontrols2:5
|
|
"
|
|
BDEPEND="
|
|
dev-qt/linguist-tools:5
|
|
dolphin? ( kde-frameworks/extra-cmake-modules )
|
|
"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}/${PN}-4.10.0.0_ffmpeg6.patch"
|
|
"${FILESDIR}/${PN}-4.10.0.0_fix-build.patch"
|
|
"${FILESDIR}/${PN}-5.3.0.0-link-zlib.patch"
|
|
"${FILESDIR}/${PN}-5.3.0.0-fix-install-dir.patch"
|
|
"${FILESDIR}/${PN}-5.3.0.0-rename-libcryptopp.patch"
|
|
)
|
|
|
|
BUILD_DIR_DOLPHIN="${S}_dolphin"
|
|
|
|
dolphin_run() {
|
|
if use dolphin; then
|
|
cd "${S}/src/MEGAShellExtDolphin" || die
|
|
BUILD_DIR="${BUILD_DIR_DOLPHIN}" CMAKE_USE_DIR="${S}/src/MEGAShellExtDolphin" "$@"
|
|
fi
|
|
}
|
|
|
|
nautilus_run() {
|
|
if use nautilus; then
|
|
cd "${S}/src/MEGAShellExtNautilus" || die
|
|
"$@"
|
|
fi
|
|
}
|
|
|
|
nemo_run() {
|
|
if use nemo; then
|
|
cd "${S}/src/MEGAShellExtNemo" || die
|
|
"$@"
|
|
fi
|
|
}
|
|
|
|
thunar_run() {
|
|
if use thunar; then
|
|
cd "${S}/src/MEGAShellExtThunar" || die
|
|
"$@"
|
|
fi
|
|
}
|
|
|
|
src_prepare() {
|
|
if [[ ${PV} != 9999 ]]; then
|
|
rmdir src/MEGASync/mega || die
|
|
mv "${WORKDIR}/sdk-${MEGA_SDK_REV}" src/MEGASync/mega || die
|
|
fi
|
|
|
|
cmake_src_prepare
|
|
}
|
|
|
|
src_configure() {
|
|
# https://github.com/meganz/sdk/issues/2679
|
|
append-cppflags -DNDEBUG
|
|
|
|
local mycmakeargs=(
|
|
# build internal libs as static
|
|
-DBUILD_SHARED_LIBS=OFF
|
|
-DCMAKE_MODULE_PATH="${S}/src/MEGASync/mega/contrib/cmake/modules/packages"
|
|
-DENABLE_DESKTOP_UPDATE_GEN=OFF
|
|
-DUSE_FFMPEG=$(usex thumbnail)
|
|
-DUSE_FREEIMAGE=$(usex thumbnail)
|
|
-DUSE_MEDIAINFO=$(usex mediainfo)
|
|
-DUSE_PDFIUM=OFF
|
|
-DUSE_READLINE=OFF
|
|
)
|
|
cmake_src_configure
|
|
|
|
unset mycmakeargs
|
|
dolphin_run cmake_src_configure
|
|
nautilus_run eqmake5
|
|
nemo_run eqmake5
|
|
thunar_run eqmake5
|
|
}
|
|
|
|
src_compile() {
|
|
cmake_src_compile
|
|
|
|
dolphin_run cmake_src_compile
|
|
nautilus_run emake
|
|
nemo_run emake
|
|
thunar_run emake
|
|
}
|
|
|
|
src_install() {
|
|
cmake_src_install
|
|
|
|
dolphin_run cmake_src_install
|
|
nautilus_run emake INSTALL_ROOT="${D}" install
|
|
nemo_run emake INSTALL_ROOT="${D}" install
|
|
thunar_run emake INSTALL_ROOT="${D}" install
|
|
}
|