diff --git a/.SRCINFO b/.SRCINFO index 043e505..2cdd522 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = edgetx-companion pkgdesc = EEPROM Editor and Simulator for EdgeTX RC radio transmitter firmwares - pkgver = 2.7.1 + pkgver = 2.9.2 pkgrel = 1 url = https://edgetx.org/ arch = x86_64 @@ -11,12 +11,14 @@ pkgbase = edgetx-companion makedepends = avr-gcc makedepends = avr-libc makedepends = bc + makedepends = clang makedepends = cmake makedepends = fox makedepends = gcc makedepends = git makedepends = icu makedepends = python + makedepends = python-lz4 makedepends = python-pillow makedepends = python-pyqt5 makedepends = qt5-svg @@ -24,16 +26,37 @@ pkgbase = edgetx-companion makedepends = qt5-translations makedepends = sed makedepends = xsd + depends = gcc-libs + depends = glibc depends = hicolor-icon-theme depends = qt5-base depends = qt5-multimedia - depends = sdl + depends = sdl2 optdepends = dfu-util: tool for flashing stm32 based radios provides = companion conflicts = companion - source = git+https://github.com/EdgeTX/edgetx.git#tag=v2.7.1 + options = !debug + source = git+https://github.com/EdgeTX/edgetx.git#tag=v2.9.2 + source = git+https://github.com/jbeder/yaml-cpp.git + source = git+https://github.com/raphaelcoeffic/AccessDenied.git + source = git+https://github.com/FreeRTOS/FreeRTOS-Kernel.git + source = git+https://github.com/edgetx/libopenui.git + source = git+https://github.com/FreeRTOS/FreeRTOS-Kernel-Community-Supported-Ports.git + source = git+https://github.com/FreeRTOS/FreeRTOS-Kernel-Partner-Supported-Ports.git + source = git+https://github.com/EdgeTX/lvgl.git + source = git+https://github.com/nothings/stb.git source = install.patch - sha256sums = SKIP - sha256sums = f9b62f82f402ea96153a7e45ec22aeaa4780039d57b28cc8ca8456e05c34ffe7 + source = remove-ssl-check.patch + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = SKIP + b2sums = 2f2d110ba03c3d852bec93a0705570df93e72f5e3757bd64494083c5a1ae59c5228024fca563043c05014b1962ccde88e029a6bac2fe36be6e852a53b35a43fb + b2sums = 6ad8cfff9f623c1d0182713839419b633f421e762d01cd46b2ce817c1552929d9ffadcb38f112d6ac9d3d196346b781d842ad0d9c34d4dbe0d5709a3edbc6026 pkgname = edgetx-companion diff --git a/PKGBUILD b/PKGBUILD index c5a4296..8fdd006 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -4,42 +4,88 @@ # Contributer: Arnaud pkgname=edgetx-companion -pkgver=2.7.1 +pkgver=2.9.2 pkgrel=1 pkgdesc="EEPROM Editor and Simulator for EdgeTX RC radio transmitter firmwares" arch=('x86_64') url='https://edgetx.org/' license=('GPL2') -depends=('hicolor-icon-theme' 'qt5-base' 'qt5-multimedia' 'sdl') +depends=('gcc-libs' 'glibc' 'hicolor-icon-theme' 'qt5-base' 'qt5-multimedia' 'sdl2') optdepends=('dfu-util: tool for flashing stm32 based radios') makedepends=('arm-none-eabi-binutils' 'arm-none-eabi-gcc' 'arm-none-eabi-newlib' - 'avr-gcc' 'avr-libc' 'bc' 'cmake' 'fox' 'gcc' 'git' 'icu' 'python' - 'python-pillow' 'python-pyqt5' 'qt5-svg' 'qt5-tools' 'qt5-translations' - 'sed' 'xsd') + 'avr-gcc' 'avr-libc' 'bc' 'clang' 'cmake' 'fox' 'gcc' 'git' 'icu' 'python' + 'python-lz4' 'python-pillow' 'python-pyqt5' 'qt5-svg' 'qt5-tools' + 'qt5-translations' 'sed' 'xsd') +options=('!debug') provides=('companion') conflicts=('companion') _pkgbase=${pkgname%%-*} _versuff=${pkgver/./} && _versuff=${_versuff%%.*} -source=("git+https://github.com/EdgeTX/edgetx.git#tag=v${pkgver}" - install.patch) -sha256sums=('SKIP' - 'f9b62f82f402ea96153a7e45ec22aeaa4780039d57b28cc8ca8456e05c34ffe7') +source=("git+https://github.com/EdgeTX/edgetx.git#tag=v$pkgver" + "git+https://github.com/jbeder/yaml-cpp.git" + "git+https://github.com/raphaelcoeffic/AccessDenied.git" + "git+https://github.com/FreeRTOS/FreeRTOS-Kernel.git" + "git+https://github.com/edgetx/libopenui.git" + "git+https://github.com/FreeRTOS/FreeRTOS-Kernel-Community-Supported-Ports.git" + "git+https://github.com/FreeRTOS/FreeRTOS-Kernel-Partner-Supported-Ports.git" + "git+https://github.com/EdgeTX/lvgl.git" + "git+https://github.com/nothings/stb.git" + install.patch + remove-ssl-check.patch) +b2sums=('SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + '2f2d110ba03c3d852bec93a0705570df93e72f5e3757bd64494083c5a1ae59c5228024fca563043c05014b1962ccde88e029a6bac2fe36be6e852a53b35a43fb' + '6ad8cfff9f623c1d0182713839419b633f421e762d01cd46b2ce817c1552929d9ffadcb38f112d6ac9d3d196346b781d842ad0d9c34d4dbe0d5709a3edbc6026') prepare() { - cd ${_pkgbase} - patch ./tools/build-companion-nightly.sh < ${srcdir}/install.patch - git submodule update --init --recursive + export EDGETX_VERSION_TAG=$pkgver + + cd $_pkgbase + + patch ./tools/build-companion.sh < $srcdir/install.patch + patch ./companion/src/CMakeLists.txt < $srcdir/remove-ssl-check.patch + + cd $srcdir/$_pkgbase/companion/src/thirdparty/ + git submodule init + git config submodule.yaml-cpp.url $srcdir/yaml-cpp + git submodule update --init + + cd $srcdir/$_pkgbase/radio/src/thirdparty/ + git submodule init + git config submodule.AccessDenied.url $srcdir/AccessDenied + git config submodule.FreeRTOS-Kernel.url $srcdir/FreeRTOS + git config submodule.libopenui.url $srcdir/libopenui + git submodule update --init + + cd $srcdir/$_pkgbase/radio/src/thirdparty/FreeRTOS/portable/ThirdParty/ + git submodule init + git config submodule.FreeRTOS-Kernel-Community-Supported-Ports.url $srcdir/Community-Supported-Ports + git config submodule.FreeRTOS-Kernel-Partner-Supported-Ports.url $srcdir/FreeRTOS-Kernel-Partner-Supported-Ports + git submodule update --init + + cd $srcdir/$_pkgbase/radio/src/thirdparty/libopenui/thirdparty/ + git submodule init + git config submodule.lvgl.url $srcdir/lvgl + git config submodule.stb.url $srcdir/stb + git submodule update --init } build() { - cd ${_pkgbase} - ./tools/build-companion-nightly.sh ${MAKEFLAGS} ${srcdir}/${_pkgbase} ${srcdir}/build ${_versuff} + cd $_pkgbase + ./tools/build-companion.sh $MAKEFLAGS $srcdir/$_pkgbase $srcdir/build $_versuff } package() { - cd ${srcdir}/build - make DESTDIR=${pkgdir}/ install - cd ${pkgdir}/usr/share/applications - sed -i -e 's/Categories=Application/Categories=Utility/' companion${_versuff}.desktop - sed -i -e 's/Categories=Application/Categories=Utility/' simulator${_versuff}.desktop + cd $srcdir/build/native + make DESTDIR=$pkgdir/ install + cd $pkgdir/usr/share/applications + sed -i -e 's/Categories=Application/Categories=Utility/' companion$_versuff.desktop + sed -i -e 's/Categories=Application/Categories=Utility/' simulator$_versuff.desktop } diff --git a/install.patch b/install.patch index 467ba28..4d947c8 100644 --- a/install.patch +++ b/install.patch @@ -1,3 +1,5 @@ +--- build-companion-org.sh 2022-11-29 15:37:49.493916416 +0100 ++++ build-companion.sh 2022-11-29 20:11:06.425385270 +0100 @@ -30,7 +30,7 @@ SRCDIR=$1 OUTDIR=$2 @@ -6,9 +8,9 @@ +COMMON_OPTIONS="-DCMAKE_INSTALL_PREFIX=/usr -DGVARS=YES -DHELI=YES -DLUA=YES -Wno-dev -DCMAKE_BUILD_TYPE=Release" if [ "$(uname)" = "Darwin" ]; then COMMON_OPTIONS="${COMMON_OPTIONS} -DCMAKE_OSX_DEPLOYMENT_TARGET='10.9'" - elif [ "$(uname)" != "Linux" ]; then -@@ -41,9 +41,9 @@ - COMMON_OPTIONS="${COMMON_OPTIONS} -DVERSION_SUFFIX=$3" + elif [ "$(uname)" != "Linux" ]; then # Assume Windows and MSYS2 +@@ -59,9 +59,9 @@ + fi fi -rm -rf build @@ -18,19 +20,28 @@ +mkdir ${OUTDIR} +cd ${OUTDIR} - cmake ${COMMON_OPTIONS} -DPCB=X9LITE ${SRCDIR} - make -j${JOBS} libsimulator -@@ -128,13 +128,3 @@ - cmake ${COMMON_OPTIONS} -DPCB=X12S ${SRCDIR} - make -j${JOBS} libsimulator + declare -a simulator_plugins=(x9lite x9lites + x7 x7-access +@@ -161,19 +161,10 @@ + esac + rm -f CMakeCache.txt native/CMakeCache.txt ++ + cmake ${BUILD_OPTIONS} "${SRCDIR}" + cmake --build . --target native-configure + cmake --build native -j"${JOBS}" --target libsimulator +-done ++done + +-cmake --build . --target native-configure -if [ "$(uname)" = "Darwin" ]; then -- make -j${JOBS} package -- cp *.dmg ${OUTDIR} +- cmake --build native -j"${JOBS}" --target package +- cp native/*.dmg "${OUTDIR}" -elif [ "$(uname)" = "Linux" ]; then -- make -j${JOBS} package -- cp *.AppImage ${OUTDIR} +- cmake --build native -j"${JOBS}" --target package +- cp native/*.AppImage "${OUTDIR}" -else -- make installer -- cp companion/*.exe ${OUTDIR} +- cmake --build native --target installer +- cp native/companion/*.exe "${OUTDIR}" -fi ++cmake ${BUILD_OPTIONS} "${OUTDIR}/native" diff --git a/remove-ssl-check.patch b/remove-ssl-check.patch new file mode 100644 index 0000000..02eda4c --- /dev/null +++ b/remove-ssl-check.patch @@ -0,0 +1,25 @@ +--- CMakeLists.txt.old 2023-11-12 12:28:49.000000000 +0100 ++++ CMakeLists.txt 2023-11-16 17:08:59.841823856 +0100 +@@ -353,9 +353,6 @@ + cmake_policy(SET CMP0026 OLD) # https://cmake.org/cmake/help/v3.0/policy/CMP0026.html + endif() + +-# OpenSSL +-include(FindOpenSSL) +- + if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + message(STATUS "install " ${CMAKE_BINARY_DIR} " to " ${CMAKE_INSTALL_PREFIX}/bin) + install(TARGETS ${COMPANION_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) +@@ -379,12 +376,6 @@ + install(FILES ../targets/linux/45-companion-taranis.rules DESTINATION ${INSTALL_TEMP_LIB_PFX}lib/udev/rules.d RENAME 45-companion${C9X_NAME_SUFFIX}-taranis.rules) + install(FILES ../targets/linux/45-usbasp.rules DESTINATION ${INSTALL_TEMP_LIB_PFX}lib/udev/rules.d RENAME 45-companion${C9X_NAME_SUFFIX}-usbasp.rules) + +- if (OPENSSL_FOUND) +- get_filename_component(OPENSSL_SSL_LIBRARY_DIR ${OPENSSL_SSL_LIBRARY} DIRECTORY) +- # install only files Qt networking requires +- install(DIRECTORY ${OPENSSL_SSL_LIBRARY_DIR}/ DESTINATION ${CMAKE_INSTALL_PREFIX}/lib FILES_MATCHING PATTERN "engines*" EXCLUDE PATTERN "pkg*" EXCLUDE PATTERN "*.so*") +- endif() +- + # Linux specific code + set(OperatingSystem "Linux") + # Shortcut target