shotcut: Add package
This commit is contained in:
65
mingw-w64-shotcut/0001-add-windeploy-option.patch
Normal file
65
mingw-w64-shotcut/0001-add-windeploy-option.patch
Normal file
@@ -0,0 +1,65 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index aff5a80..fcf7cbd 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -15,6 +15,10 @@ project(shotcut
|
||||
LANGUAGES CXX
|
||||
)
|
||||
|
||||
+if(WIN32)
|
||||
+ option(WINDOWS_DEPLOY "Install exes/libs directly to prefix (no subdir /bin)" ON)
|
||||
+endif()
|
||||
+
|
||||
include(FeatureSummary)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
diff --git a/CuteLogger/CMakeLists.txt b/CuteLogger/CMakeLists.txt
|
||||
index 03073f6..a92a68f 100644
|
||||
--- a/CuteLogger/CMakeLists.txt
|
||||
+++ b/CuteLogger/CMakeLists.txt
|
||||
@@ -39,4 +39,12 @@
|
||||
|
||||
ADD_LIBRARY(${library_target} SHARED ${sources} ${includes})
|
||||
TARGET_LINK_LIBRARIES(${library_target} Qt5::Core)
|
||||
-INSTALL(TARGETS ${library_target} DESTINATION lib)
|
||||
+IF(WINDOWS_DEPLOY)
|
||||
+ INSTALL(TARGETS ${library_target} DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
+ELSE()
|
||||
+ INSTALL(TARGETS ${library_target}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+)
|
||||
+ENDIF(WINDOWS_DEPLOY)
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index e210472..68c81b7 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -257,7 +257,13 @@ if(WIN32)
|
||||
target_link_directories(shotcut PRIVATE ${CMAKE_SOURCE_DIR}/drmingw/x64/lib)
|
||||
target_link_libraries(shotcut PRIVATE debug exchndl)
|
||||
|
||||
- install(TARGETS shotcut RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
+ if(WINDOWS_DEPLOY)
|
||||
+ install(TARGETS shotcut RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
+ else()
|
||||
+ target_compile_definitions(shotcut PRIVATE NODEPLOY)
|
||||
+ install(TARGETS shotcut RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
+ endif()
|
||||
+
|
||||
install(DIRECTORY qml DESTINATION ${CMAKE_INSTALL_PREFIX}/share/shotcut/)
|
||||
endif()
|
||||
|
||||
diff --git a/src/qmltypes/qmlapplication.cpp b/src/qmltypes/qmlapplication.cpp
|
||||
index 067bd1d..cfed004 100644
|
||||
--- a/src/qmltypes/qmlapplication.cpp
|
||||
+++ b/src/qmltypes/qmlapplication.cpp
|
||||
@@ -230,7 +230,7 @@ QDir QmlApplication::dataDir()
|
||||
dir.cdUp();
|
||||
dir.cd("Resources");
|
||||
#else
|
||||
-#if defined(Q_OS_UNIX)
|
||||
+#if defined(Q_OS_UNIX) || (defined(Q_OS_WIN) && defined(NODEPLOY))
|
||||
dir.cdUp();
|
||||
#endif
|
||||
dir.cd("share");
|
||||
68
mingw-w64-shotcut/PKGBUILD
Normal file
68
mingw-w64-shotcut/PKGBUILD
Normal file
@@ -0,0 +1,68 @@
|
||||
# Maintainer: Biswapriyo Nath <nathbappai@gmail.com>
|
||||
|
||||
_realname=shotcut
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
pkgver=22.06.23
|
||||
pkgrel=1
|
||||
pkgdesc='Cross-platform Qt based Video Editor (mingw-w64)'
|
||||
arch=('any')
|
||||
mingw_arch=('mingw32' 'mingw64' 'ucrt64')
|
||||
url='https://www.shotcut.org/'
|
||||
license=('spdx:GPL-3.0-or-later')
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-ffmpeg"
|
||||
"${MINGW_PACKAGE_PREFIX}-fftw"
|
||||
"${MINGW_PACKAGE_PREFIX}-mlt"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-base"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-declarative"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-multimedia"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-quickcontrols2"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-websockets"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-winextras")
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-ninja"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt5-tools")
|
||||
source=("${_realname}-${pkgver}.tar.gz::https://github.com/mltframework/shotcut/archive/v${pkgver}.tar.gz"
|
||||
0001-add-windeploy-option.patch)
|
||||
sha256sums=('78486651ec86ecfdf813d43d8e27c4ecf6869d0940c87e9a569160d604595d27'
|
||||
'b2bf11bd9be12268c8fb9f9fe4cee304c2190700597f56325611d8a7fe80dabc')
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
|
||||
# https://github.com/mltframework/shotcut/pull/1309
|
||||
patch -p1 -i "${srcdir}/0001-add-windeploy-option.patch"
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"
|
||||
|
||||
declare -a extra_config
|
||||
if check_option "debug" "n"; then
|
||||
extra_config+=("-DCMAKE_BUILD_TYPE=Release")
|
||||
else
|
||||
extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
|
||||
fi
|
||||
|
||||
# https://github.com/mltframework/shotcut/issues/1275
|
||||
export CXXFLAGS+=" -DSHOTCUT_NOUPGRADE"
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
"${MINGW_PREFIX}"/bin/cmake.exe \
|
||||
-GNinja \
|
||||
-DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \
|
||||
"${extra_config[@]}" \
|
||||
-DSHOTCUT_VERSION=${pkgver} \
|
||||
-DWINDOWS_DEPLOY=OFF \
|
||||
../${_realname}-${pkgver}
|
||||
|
||||
"${MINGW_PREFIX}"/bin/cmake.exe --build .
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/build-${MSYSTEM}"
|
||||
DESTDIR="${pkgdir}" "${MINGW_PREFIX}"/bin/cmake.exe --install .
|
||||
install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING"
|
||||
}
|
||||
Reference in New Issue
Block a user