net-misc/megasync: add 5.7.0.0

Signed-off-by: Takuya Wakazono <pastalian46@gmail.com>
This commit is contained in:
Takuya Wakazono
2025-01-02 21:00:35 +09:00
parent 44335352fe
commit 9b0b966ecd
6 changed files with 228 additions and 0 deletions

View File

@@ -1,4 +1,6 @@
DIST megasync-5.6.0.0.tar.gz 24712966 BLAKE2B 644e2ccbb2d7e60e9b15278d0e75c46ed102bab436e33a46dfac5068d9e527f4d9e1fbf109f286200b07d02efc08a986c0c263f4ce588fa286dcfc5eb73310d2 SHA512 49105e145cb3af2628044eb0161efdb4c2b75d844d955fe65b54171d77b887e0b77c543911a9a39501fe2200f43fbcdf3f0f1b78fe5868fa8a1968e7e9e02aca
DIST megasync-5.6.1.0.tar.gz 24712997 BLAKE2B 0e1a80c3c4f934f0b9274beba0883a72ab41bb9dc71284109cf2dd17660adc30ace4e82258ff403d1f95e5edab3aedf309632c2e172b0c727bdfedf06379d09e SHA512 f62b8890eefd4b0f66eeaf99e98a04369da36daea1b3011888c16408578a6e10f3bbe5d584b18a249776ceff9184b77506a809fd1bba95b8f6671a8bf10a1dc1
DIST megasync-5.7.0.0.tar.gz 23204780 BLAKE2B 5d17808e366e2d3f538168d0580b2a68d077e95d45346f377eb5172d10d06db948fa021e3d1dc39b0d4967cba5b540a843028a571457adea53adcf9770e4e190 SHA512 b7db94bd372d9fd94fa987dc8a370129f23bcb2ff885862544e1a154de71af12459e8af7cbc25fecde5f3c074c81eac079d53dcdcef90e3f0ae8638bced7c868
DIST megasync-sdk-5.6.0.0.tar.gz 4231209 BLAKE2B 47e2bfe98879101c295e98556c21189a9e0223ed98c21558c6270534d0f58270e41a44eef7a2889caeb1c3256fd00e5d10c51c53c58c96e48efe29b56bb54d06 SHA512 4cf7bd84421a4399fe4269bac16916b5164755f2241c19a78b1c371dac342332c6e7e440942bac31370eeb840a6a71645fd26e1c98a8ff095a1ab8d10ca694e8
DIST megasync-sdk-5.6.1.0.tar.gz 4231187 BLAKE2B 4e0640281b451d9de18f63be3cca832717fe3ea387d91ace63a7db9d63ea51dfdd54342912885b3a7bde475b93beb524c9a44da9d2106d157df4a6b13b470104 SHA512 f630c3232e3b7b5ac5d9fab0f2d3c8ea6acbd98bb27fdc948d150e91b9edf5ffda575a52544fe5af0e6a023fa53ffe3dc1632e06c823956928e7edb0637f2932
DIST megasync-sdk-5.7.0.0.tar.gz 4042090 BLAKE2B 326688d633dfd08a160a799a426d29c84515d5971a7b6644ee7624b9ffd092e21f2f0e3f31a55bdfb766623bea60a9867c3c412a4ccd08b629391abdd0056dba SHA512 9c0562f072c00d42b9e53e66f123990dac76ec0dccef6b32985468da75d79105e9e6ed2aad084f8110bc1d89efed21488bf71303872bbd876cd5260fac7caf7e

View File

@@ -0,0 +1,11 @@
Disable forced options to reduce graphics-related dependencies.
--- a/cmake/modules/desktopapp_options.cmake
+++ b/cmake/modules/desktopapp_options.cmake
@@ -27,7 +27,6 @@ if (ENABLE_DESKTOP_APP)
set(USE_LIBUV ON) # Used by the Qt Desktop App: Includes the library and turns on internal web and ftp server functionality in the SDK.
set(ENABLE_LOG_PERFORMANCE ON)
set(ENABLE_QT_BINDINGS ON)
- set(ENABLE_ISOLATED_GFX ON)
endif()
include(sdklib_options)

View File

@@ -0,0 +1,27 @@
--- a/cmake/modules/desktopapp_configuration.cmake
+++ b/cmake/modules/desktopapp_configuration.cmake
@@ -29,8 +29,6 @@ if(UNIX AND NOT APPLE)
# Note: using cmake --install --prefix /some/prefix will keep the RPATH as configured above.
# Used for building packages: in which install dir is a path construction folder that will not be there in packages
- set(CMAKE_INSTALL_LIBDIR "opt/megasync/lib") # override default "lib" from GNUInstallDirs
- set(CMAKE_INSTALL_BINDIR "usr/bin") # override default "bin" from GNUInstallDirs
# Override CMAKE_INSTALL_PREFIX
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) # In consecutive runs it will always be undef/false
--- a/src/MEGASync/CMakeLists.txt
+++ b/src/MEGASync/CMakeLists.txt
@@ -142,13 +142,6 @@ if (UNIX AND NOT APPLE)
set(vcpkg_lib_folder "${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/$<$<CONFIG:Debug>:debug/>lib/")
- install(DIRECTORY "${vcpkg_lib_folder}"
- TYPE LIB # In CMAKE_INSTALL_LIBDIR directory
- FILES_MATCHING
- PATTERN "*.so*"
- PATTERN "manual-link" EXCLUDE
- PATTERN "pkgconfig" EXCLUDE
- )
if(DEPLOY_QT_LIBRARIES)
include(desktopapp_deploy_qt)

View File

@@ -0,0 +1,30 @@
Add missing zlib links.
```
/usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../x86_64-pc-linux-gnu/bin/ld: src/MEGASync/mega/tools/gfxworker/liblibgfxworker.a(logger.cpp.o): undefined reference to symbol 'gzputs'
```
--- a/src/MEGASync/control/control.cmake
+++ b/src/MEGASync/control/control.cmake
@@ -71,6 +71,9 @@ set(DESKTOP_APP_CONTROL_SOURCES
control/StatsEventHandler.cpp
)
+find_package(ZLIB REQUIRED)
+target_link_libraries(MEGAsync PRIVATE ZLIB::ZLIB)
+
target_sources(MEGAsync
PRIVATE
${DESKTOP_APP_CONTROL_HEADERS}
--- a/src/MEGASync/mega/tools/gfxworker/CMakeLists.txt
+++ b/src/MEGASync/mega/tools/gfxworker/CMakeLists.txt
@@ -70,9 +70,11 @@ add_executable(gfxworker
src/main.cpp
)
+find_package(ZLIB REQUIRED)
target_link_libraries(gfxworker
PRIVATE
libgfxworker
+ ZLIB::ZLIB
)
# Adjust compilation flags for warnings and errors for gfxworker

View File

@@ -0,0 +1,11 @@
--- a/src/MEGASync/mega/cmake/modules/sdklib_libraries.cmake
+++ b/src/MEGASync/mega/cmake/modules/sdklib_libraries.cmake
@@ -95,7 +95,7 @@ macro(load_sdklib_libraries)
find_package(PkgConfig REQUIRED) # For libraries loaded using pkg-config
- pkg_check_modules(cryptopp REQUIRED IMPORTED_TARGET libcrypto++)
+ pkg_check_modules(cryptopp REQUIRED IMPORTED_TARGET libcryptopp)
target_link_libraries(SDKlib PUBLIC PkgConfig::cryptopp) # TODO: Private for SDK core
pkg_check_modules(sodium REQUIRED IMPORTED_TARGET libsodium)

View File

@@ -0,0 +1,147 @@
# Copyright 2023-2025 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
"
MEGA_SDK_REV="81f2d1cde975859ff264c66b808cfa855f79ae82" # commit of src/MEGASync/mega submodule
MEGA_TAG_SUFFIX="Win"
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
"
S="${WORKDIR}"/MEGAsync-${PV}_${MEGA_TAG_SUFFIX}
LICENSE="MEGA"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="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:=
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? (
dev-libs/glib:2
xfce-base/thunar:=
)
"
RDEPEND="
${DEPEND}
dev-qt/qtquickcontrols:5
dev-qt/qtquickcontrols2:5
"
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}/${PN}-4.10.0.0_ffmpeg6.patch"
"${FILESDIR}/${PN}-5.6.0.0-remove-clang-format.patch"
"${FILESDIR}/${P}-disable-forced-options.patch"
"${FILESDIR}/${P}-fix-install-dir.patch"
"${FILESDIR}/${P}-link-zlib.patch"
"${FILESDIR}/${P}-rename-libcryptopp.patch"
)
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() {
rmdir src/MEGASync/mega || die
mv "${WORKDIR}/sdk-${MEGA_SDK_REV}" src/MEGASync/mega || die
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/cmake/modules/packages"
-DENABLE_DESKTOP_APP_WERROR=OFF
-DENABLE_DESKTOP_UPDATE_GEN=OFF
-DENABLE_DESIGN_TOKENS_IMPORTER=OFF
-DENABLE_ISOLATED_GFX=$(usex thumbnail)
-DENABLE_LINUX_EXT=$(usex nautilus)
-DUSE_FFMPEG=$(usex thumbnail)
-DUSE_FREEIMAGE=$(usex thumbnail)
-DUSE_MEDIAINFO=$(usex mediainfo)
-DUSE_PDFIUM=OFF
-DUSE_READLINE=OFF
)
cmake_src_configure
unset mycmakeargs
nemo_run eqmake5 DEFINES=no_desktop
thunar_run eqmake5
}
src_compile() {
cmake_src_compile
nemo_run emake
thunar_run emake
}
src_install() {
cmake_src_install
nemo_run emake INSTALL_ROOT="${D}" install
thunar_run emake INSTALL_ROOT="${D}" install
}