Skip to content
Snippets Groups Projects
Commit 84b7748f authored by Sertonix's avatar Sertonix Committed by Kevin Daudt
Browse files

testing/rpi-imager: new aport

Fixes #16476
parent a782661a
No related branches found
No related tags found
1 merge request!72585testing/rpi-imager: new aport
Pipeline #261488 skipped
# Contributor: Sertonix <sertonix@posteo.net>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=rpi-imager
pkgver=1.9.0
pkgrel=0
pkgdesc="A user-friendly tool for creating bootable media for Raspberry Pi devices"
url="https://www.raspberrypi.com/software/"
# only supports little endian
arch="all !s390x"
license="Apache-2.0"
makedepends="
cmake
curl-dev
gnutls-dev
libarchive-dev
ninja
qt6-qtbase-dev
qt6-qtdeclarative-dev
qt6-qtsvg-dev
qt6-qttools-dev
xz-dev
"
subpackages="$pkgname-doc"
source="https://github.com/raspberrypi/rpi-imager/archive/v$pkgver/rpi-imager-$pkgver.tar.gz
devendor.patch
"
options="!check"
prepare() {
default_prepare
# Remove vendored dependencies
local i
for i in src/dependencies/*; do
case $i in
*/drivelist|*/mountutils|*/sha256crypt) continue ;;
esac
rm -r "$i"
done
}
build() {
if [ "$CBUILD" != "$CHOST" ]; then
local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
cmake -B build -S src -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=None \
-DENABLE_CHECK_VERSION=OFF \
-DENABLE_TELEMETRY=OFF \
$crossopts
cmake --build build
}
package() {
DESTDIR="$pkgdir" cmake --install build
install -Dm644 -t "$pkgdir"/usr/share/applications debian/*.desktop
install -Dm644 -t "$pkgdir"/usr/share/metainfo debian/*.metainfo.xml
install -Dm644 -t "$pkgdir"/usr/share/icons/hicolor/128x128/apps debian/rpi-imager.png
install -Dm644 -t "$pkgdir"/usr/share/man/man1 doc/man/*.1
}
sha512sums="
cbe1b623244b41a513b01e686092c0ea2e5fc6f4544e779742e9dc88fb3c2f6f5839e814a18ef647a8fd347b6f97fd0053e44eb556213dc0052c12565b8a224b rpi-imager-1.9.0.tar.gz
21b503a3c284b813a063691a768ca648175ea368029cbdd62b2e999da61cb94b1f8cdb5dfddec7911f75f725f9bc41dd7fb06374437411758a5798b53a3283a5 devendor.patch
"
Ref https://github.com/raspberrypi/rpi-imager/issues/924
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -39,126 +39,13 @@ endif(APPLE)
set(BUILD_TESTING OFF)
# Bundled liblzma
-set(XZ_MICROLZMA_DECODER OFF)
-set(XZ_MICROLZMA_ENCODER OFF)
-set(XZ_LZIP_DECODER OFF)
-set(XZ_ENABLE_SANDBOX OFF)
-set(XZ_BUILD_SHARED_LIBS OFF)
-set(XZ_ENABLE_DOXYGEN OFF)
-set(XZ_DECODERS
- lzma1
- lzma2
- delta
-)
-set(XZ_ENCODERS "")
-set(CREATE_LZMA_SYMLINKS OFF)
-set(CREATE_XZ_SYMLINKS OFF)
-add_subdirectory(dependencies/xz-5.6.2)
-set(LIBLZMA_FOUND true)
-set(LIBLZMA_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/xz-5.6.2/src/liblzma/api FORCE)
-set(LIBLZMA_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/xz-5.6.2/src/liblzma/api FORCE)
-set(LIBLZMA_LIBRARY liblzma)
-set(LIBLZMA_LIBRARIES liblzma)
-
-# Bundled zstd
-set(ZSTD_BUILD_PROGRAMS OFF CACHE BOOL "" FORCE)
-set(ZSTD_BUILD_SHARED OFF CACHE BOOL "" FORCE)
-set(ZSTD_BUILD_TESTS OFF CACHE BOOL "" FORCE)
-set(ZSTD_BUILD_DICTBUILDER OFF CACHE BOOL "" FORCE)
-add_subdirectory(dependencies/zstd-1.5.6/build/cmake)
-set(Zstd_FOUND true)
-set(ZSTD_FOUND true)
-set(Zstd_VERSION "1.5.6")
-set(ZSTD_VERSION "1.5.6")
-set(Zstd_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.6/lib)
-set(ZSTD_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.6/lib)
-set(Zstd_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.6/lib)
-set(ZSTD_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zstd-1.5.6/lib)
-set(Zstd_LIBRARIES libzstd_static)
-set(ZSTD_LIBRARIES libzstd_static)
-
-# Bundled zlib
-set(ZLIB_BUILD_EXAMPLES OFF)
-add_subdirectory(dependencies/zlib-1.3.1)
-set(ZLIB_FOUND TRUE)
-set(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/zlib-1.3.1 CACHE PATH "zlib include dir")
-set(ZLIB_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/zlib-1.3.1 CACHE PATH "zlib include dir")
-set(ZLIB_LIBRARY zlibstatic)
-set(ZLIB_LIBRARIES zlibstatic)
+find_package(LibLZMA REQUIRED)
# Bundled libarchive
-set(ARCHIVE_ENABLE_WERROR OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_INSTALL OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_TEST OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_CNG OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_MBEDTLS OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_NETTLE OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_OPENSSL OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_BZip2 OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_LZ4 OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_LZO OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_LIBB2 OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_LIBXML2 OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_EXPAT OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_PCREPOSIX OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_PCRE2POSIX OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_LIBGCC OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_TAR OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_CPIO OFF CACHE BOOL "")
-set(ARCHIVE_ENABLE_CAT OFF CACHE BOOL "")
-set(ARCHIVE_BUILD_SHARED_LIBS OFF CACHE BOOL "")
-add_subdirectory(dependencies/libarchive-3.7.4)
-set(LibArchive_FOUND true)
-set(LibArchive_LIBRARIES archive_static)
-set(LibArchive_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/libarchive-3.7.4/libarchive)
+find_package(LibArchive REQUIRED)
# Bundled libcurl
-set(CMAKE_CURL_INCLUDES)
-set(BUILD_STATIC_CURL true)
-set(BUILD_CURL_EXE OFF CACHE BOOL "" FORCE)
-set(BUILD_LIBCURL_DOCS OFF CACHE BOOL "" FORCE)
-set(ENABLE_CURL_MANUAL OFF CACHE BOOL "" FORCE)
-set(CURL_DISABLE_ALTSVC ON)
-set(CURL_DISABLE_KERBEROS_AUTH ON)
-set(CURL_DISABLE_DICT ON)
-set(CURL_DISABLE_DISABLE_FORM_API ON)
-set(CURL_DISABLE_FTP ON)
-set(CURL_DISABLE_GOPHER ON)
-set(CURL_DISABLE_IMAP ON)
-set(CURL_DISABLE_LDAP ON)
-set(CURL_DISABLE_LDAPS ON)
-set(CURL_DISABLE_MQTT ON)
-set(CURL_DISABLE_NETRC ON)
-set(CURL_DISABLE_POP3 ON)
-set(CURL_DISABLE_RTSP ON)
-set(CURL_DISABLE_SMTP ON)
-set(CURL_DISABLE_TELNET ON)
-set(CURL_DISABLE_TFTP ON)
-set(CURL_ZSTD ON)
-set(CURL_ENABLE_EXPORT_TARGET OFF CACHE BOOL "" FORCE)
-if (APPLE)
- # TODO: SecureTransport is a deprecated API in macOS, supporting
- # only up to TLS v1.2. cURL has not implemented the replacement,
- # Network.framework, and so we will need to select an alternative.
- # Best recommendation: Libressl, as used by Apple in the curl binary
- # on macOS.
- set(CURL_USE_SECTRANSP ON)
- set(CURL_DEFAULT_SSL_BACKEND "secure-transport")
-else()
- if (WIN32)
- set(CURL_USE_SCHANNEL ON)
- set(CURL_DEFAULT_SSL_BACKEND "schannel")
- else ()
- set(CURL_USE_GNUTLS ON)
- set(CURL_DEFAULT_SSL_BACKEND "gnutls")
- endif(WIN32)
-endif(APPLE)
-
-add_subdirectory(dependencies/curl-8.8.0)
-set(CURL_FOUND true)
-set(CURL_LIBRARIES libcurl_static)
-set(CURL_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/dependencies/curl-8.8.0/include)
-set(CURL_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/dependencies/curl-8.8.0/include)
+find_package(CURL REQUIRED)
# Adding headers explicity so they are displayed in Qt Creator
set(HEADERS config.h imagewriter.h networkaccessmanagerfactory.h nan.h drivelistitem.h drivelistmodel.h drivelistmodelpollthread.h driveformatthread.h powersaveblocker.h cli.h
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment