mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 12:10:06 +02:00
kdevelop_kf6, downgrade to 25.08.3 (Qt6.8 failure for new one?) (#13446)
This commit is contained in:
310
dev-util/kdevelop/kdevelop_kf6-25.08.3.recipe
Normal file
310
dev-util/kdevelop/kdevelop_kf6-25.08.3.recipe
Normal file
@@ -0,0 +1,310 @@
|
||||
SUMMARY="A cross-platform IDE for C, C++, Python, QML/JavaScript and PHP"
|
||||
DESCRIPTION="KDevelop is a free software integrated development environment \
|
||||
(IDE) developed under the KDE Umbrella. KDevelop provides support for a wide \
|
||||
variety of languages (such as C/C++, Python, PHP, Ruby, ...) via an extensible \
|
||||
plugin framework."
|
||||
HOMEPAGE="https://www.kdevelop.org/"
|
||||
COPYRIGHT="2010-2025 KDE Organisation"
|
||||
LICENSE="GNU GPL v3
|
||||
GNU LGPL v3"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kdevelop-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="4d2b92cf37a9a3324dd9137075c5f552047bd88a673420aa1484fcde79bace92"
|
||||
SOURCE_DIR="kdevelop-$portVersion"
|
||||
PATCHES="kdevelop-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="kdevelop.rdef.in"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
libVersion="6.2.250803"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
||||
|
||||
clangVer="20"
|
||||
|
||||
PROVIDES="
|
||||
kdevelop_kf6$secondaryArchSuffix = $portVersion
|
||||
# should be cmd:kdevelop! but haikuporter doesn't handle this
|
||||
cmd:kdevelop = $portVersion
|
||||
cmd:kdevplatform_shell_environment.sh = $portVersion
|
||||
cmd:kdev_dbus_socket_transformer$secondaryArchSuffix = $portVersion
|
||||
cmd:kdev_format_source$secondaryArchSuffix = $portVersion
|
||||
cmd:kdev_includepathsconverter$secondaryArchSuffix = $portVersion
|
||||
cmd:kdevelop$secondaryArchSuffix = $portVersion
|
||||
lib:libKDevClangPrivate$secondaryArchSuffix
|
||||
lib:libKDevCmakeCommon$secondaryArchSuffix
|
||||
lib:libKDevCompileAnalyzerCommon$secondaryArchSuffix
|
||||
lib:libKDevPlatformDebugger$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformDocumentation$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformInterfaces$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformLanguage$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformOutputView$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformProject$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformSerialization$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformShell$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformSublime$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformTests$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformUtil$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libKDevPlatformVcs$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
# cmd:dbus_launch # needs the one from x86 on 32bit
|
||||
# kde_cli_tools6$secondaryArchSuffix
|
||||
cmd:clazy_standalone
|
||||
cmd:kdev_pg_qt$secondaryArchSuffix
|
||||
lib:libboost_system$secondaryArchSuffix
|
||||
lib:libclang$secondaryArchSuffix
|
||||
lib:libdbus_1$secondaryArchSuffix
|
||||
lib:libGL$secondaryArchSuffix
|
||||
lib:libkomparediff2$secondaryArchSuffix
|
||||
lib:libLLVM$secondaryArchSuffix
|
||||
lib:libsvn_client_1$secondaryArchSuffix
|
||||
lib:libsvn_fs_1$secondaryArchSuffix
|
||||
lib:libsvn_repos_1$secondaryArchSuffix
|
||||
lib:libsvn_ra_1$secondaryArchSuffix
|
||||
lib:libsvn_subr_1$secondaryArchSuffix
|
||||
lib:libsvn_wc_1$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
# KF6
|
||||
lib:libKF6Archive$secondaryArchSuffix
|
||||
lib:libKF6Attica$secondaryArchSuffix
|
||||
lib:libKF6AuthCore$secondaryArchSuffix
|
||||
lib:libKF6Bookmarks$secondaryArchSuffix
|
||||
lib:libKF6Codecs$secondaryArchSuffix
|
||||
lib:libKF6ColorScheme$secondaryArchSuffix
|
||||
lib:libKF6Completion$secondaryArchSuffix
|
||||
lib:libKF6ConfigCore$secondaryArchSuffix
|
||||
lib:libKF6ConfigGui$secondaryArchSuffix
|
||||
lib:libKF6ConfigWidgets$secondaryArchSuffix
|
||||
lib:libKF6CoreAddons$secondaryArchSuffix
|
||||
lib:libKF6Crash$secondaryArchSuffix
|
||||
lib:libKF6DBusAddons$secondaryArchSuffix
|
||||
lib:libKF6FileMetadata$secondaryArchSuffix
|
||||
lib:libKF6GuiAddons$secondaryArchSuffix
|
||||
lib:libKF6I18n$secondaryArchSuffix
|
||||
lib:libKF6IconThemes$secondaryArchSuffix
|
||||
lib:libKF6ItemModels$secondaryArchSuffix
|
||||
lib:libKF6ItemViews$secondaryArchSuffix
|
||||
lib:libKF6JobWidgets$secondaryArchSuffix
|
||||
lib:libKF6KCMUtils$secondaryArchSuffix
|
||||
lib:libKF6KioCore$secondaryArchSuffix
|
||||
lib:libKF6KIOCore$secondaryArchSuffix
|
||||
lib:libKF6KIOWidgets$secondaryArchSuffix
|
||||
lib:libKF6NewStuffCore$secondaryArchSuffix
|
||||
lib:libKF6Notifications$secondaryArchSuffix
|
||||
lib:libKF6NotifyConfig$secondaryArchSuffix
|
||||
lib:libKF6Package$secondaryArchSuffix
|
||||
lib:libKF6Parts$secondaryArchSuffix
|
||||
lib:libKF6Service$secondaryArchSuffix
|
||||
lib:libKF6Solid$secondaryArchSuffix
|
||||
lib:libKF6SonnetUi$secondaryArchSuffix
|
||||
lib:libKF6SyntaxHighlighting$secondaryArchSuffix
|
||||
lib:libKF6TextEditor$secondaryArchSuffix
|
||||
lib:libKF6TextTemplate$secondaryArchSuffix
|
||||
lib:libKF6TextWidgets$secondaryArchSuffix
|
||||
lib:libKF6ThreadWeaver$secondaryArchSuffix
|
||||
lib:libKF6UnitConversion$secondaryArchSuffix
|
||||
lib:libKF6WidgetsAddons$secondaryArchSuffix
|
||||
lib:libKF6WindowSystem$secondaryArchSuffix
|
||||
lib:libKF6XmlGui$secondaryArchSuffix
|
||||
# Qt6
|
||||
lib:libQt6Core$secondaryArchSuffix
|
||||
lib:libQt6Core5Compat$secondaryArchSuffix
|
||||
lib:libQt6Gui$secondaryArchSuffix
|
||||
lib:libQt6Network$secondaryArchSuffix
|
||||
lib:libQt6PrintSupport$secondaryArchSuffix
|
||||
lib:libQt6Qml$secondaryArchSuffix
|
||||
lib:libQt6Quick$secondaryArchSuffix
|
||||
lib:libQt6Svg$secondaryArchSuffix
|
||||
lib:libQt6Test$secondaryArchSuffix
|
||||
# lib:libQt6WebKit$secondaryArchSuffix
|
||||
# lib:libQt6WebKitWidgets$secondaryArchSuffix
|
||||
lib:libQt6Widgets$secondaryArchSuffix
|
||||
lib:libQt6Xml$secondaryArchSuffix
|
||||
"
|
||||
CONFLICTS="
|
||||
kdevelop$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_devel="
|
||||
kdevelop_kf6${secondaryArchSuffix}_devel = $portVersion
|
||||
devel:libKDevPlatformDebugger$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformDocumentation$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformInterfaces$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformLanguage$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformOutputView$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformProject$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformSerialization$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformShell$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformSublime$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformTests$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformUtil$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libKDevPlatformVcs$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES_devel="
|
||||
kdevelop_kf6$secondaryArchSuffix == $portVersion base
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
kdevelop_pg_qt6${secondaryArchSuffix}_devel
|
||||
cmd:clazy_standalone
|
||||
devel:libboost_system$secondaryArchSuffix >= 1.88.0
|
||||
devel:libkomparediff2$secondaryArchSuffix >= 6
|
||||
devel:libLLVM_$clangVer$secondaryArchSuffix
|
||||
devel:libomp$secondaryArchSuffix
|
||||
devel:libsvn_client_1$secondaryArchSuffix
|
||||
devel:libsvn_fs_1$secondaryArchSuffix
|
||||
devel:libsvn_repos_1$secondaryArchSuffix
|
||||
devel:libsvn_ra_1$secondaryArchSuffix
|
||||
devel:libsvn_subr_1$secondaryArchSuffix
|
||||
devel:libsvn_wc_1$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
# KF6
|
||||
extra_cmake_modules$secondaryArchSuffix
|
||||
devel:libKF6Archive$secondaryArchSuffix
|
||||
devel:libKF6ConfigCore$secondaryArchSuffix
|
||||
devel:libKF6Crash$secondaryArchSuffix
|
||||
devel:libKF6DocTools$secondaryArchSuffix
|
||||
devel:libKF6GuiAddons$secondaryArchSuffix
|
||||
devel:libKF6I18n$secondaryArchSuffix
|
||||
devel:libKF6IconThemes$secondaryArchSuffix
|
||||
devel:libKF6ItemModels$secondaryArchSuffix
|
||||
devel:libKF6ItemViews$secondaryArchSuffix
|
||||
devel:libKF6JobWidgets$secondaryArchSuffix
|
||||
devel:libKF6KCMUtils$secondaryArchSuffix
|
||||
devel:libKF6KIOCore$secondaryArchSuffix
|
||||
devel:libKF6NewStuffCore$secondaryArchSuffix
|
||||
devel:libKF6Notifications$secondaryArchSuffix
|
||||
devel:libKF6NotifyConfig$secondaryArchSuffix
|
||||
devel:libKF6Parts$secondaryArchSuffix
|
||||
devel:libKF6Purpose$secondaryArchSuffix
|
||||
devel:libKF6Service$secondaryArchSuffix
|
||||
devel:libKF6SonnetUi$secondaryArchSuffix
|
||||
devel:libKF6TextEditor$secondaryArchSuffix
|
||||
devel:libKF6TextTemplate$secondaryArchSuffix
|
||||
devel:libKF6TextWidgets$secondaryArchSuffix
|
||||
devel:libKF6ThreadWeaver$secondaryArchSuffix
|
||||
devel:libKF6WindowSystem$secondaryArchSuffix
|
||||
devel:libKF6XmlGui$secondaryArchSuffix
|
||||
# Qt6
|
||||
qt6_tools${secondaryArchSuffix}_devel
|
||||
devel:libQt6Core$secondaryArchSuffix
|
||||
devel:libQt6Core5Compat$secondaryArchSuffix
|
||||
devel:libQt6Quick$secondaryArchSuffix
|
||||
# devel:libQt6WebKit$secondaryArchSuffix
|
||||
# devel:libQt6WebKitWidgets$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:apr_1_config$secondaryArchSuffix
|
||||
cmd:apu_1_config$secondaryArchSuffix
|
||||
cmd:clang_$clangVer
|
||||
cmd:clazy_standalone
|
||||
cmd:cmake
|
||||
cmd:cppcheck$secondaryArchSuffix
|
||||
cmd:find
|
||||
cmd:g++$secondaryArchSuffix
|
||||
cmd:kdev_pg_qt$secondaryArchSuffix
|
||||
cmd:llvm_config >= $clangVer
|
||||
cmd:make
|
||||
cmd:meson
|
||||
cmd:msgfmt$secondaryArchSuffix
|
||||
cmd:msgmerge$secondaryArchSuffix
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:sed
|
||||
cmd:update_mime_database$secondaryArchSuffix
|
||||
"
|
||||
|
||||
TEST_REQUIRES="
|
||||
qthaikuplugins$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PATCH()
|
||||
{
|
||||
# disable docs generation until libxml package is fixed
|
||||
sed -e '/add_subdirectory(doc)/ s/^#*/#/' -i CMakeLists.txt
|
||||
sed -e '/kdoctools_install(po)/ s/^#*/#/' -i CMakeLists.txt
|
||||
# use Haiku's icon theme
|
||||
sed -e 's,\ KIconTheme::initTheme();,\// KIconTheme::initTheme();,g' -i app/main.cpp
|
||||
# disable searching for qtwebengine
|
||||
sed -e '/find_dependency(Qt6WebEngineWidgets/ s/^#*/#/' -i kdevplatform/KDevPlatformConfig.cmake.in
|
||||
}
|
||||
|
||||
# BUILD_TESTING needs to be enabled for libKDevPlatformTests
|
||||
# required to build kdevelop_python ...
|
||||
|
||||
BUILD()
|
||||
{
|
||||
CLANG_VERSION="`clang --version | head -n 1 | cut -d " " -f3`"
|
||||
BUILTIN_DIR="`finddir B_SYSTEM_LIB_DIRECTORY`/clang/$CLANG_VERSION/include"
|
||||
|
||||
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \
|
||||
$cmakeDirArgs \
|
||||
-DCMAKE_AUTOGEN_PARALLEL=1 \
|
||||
-DKDE_INSTALL_QMLDIR=$dataDir/Qt6/qml \
|
||||
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt6 \
|
||||
-DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt6 \
|
||||
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
|
||||
-DCLANG_BUILTIN_DIR="$BUILTIN_DIR" \
|
||||
-DBUILD_DOC_VIEWER=OFF \
|
||||
-DBUILD_TESTING=ON \
|
||||
-Wno-dev
|
||||
|
||||
make -C build $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make -C build install
|
||||
|
||||
# cleanup
|
||||
rm -rf $dataDir/{applications,icons,metainfo}
|
||||
# don't mess with shared_mime_info files
|
||||
rm $dataDir/mime/{version,types,treemagic,subclasses,magic,mime.cache}
|
||||
rm $dataDir/mime/{icons,globs,globs2,generic-icons,aliases,XMLnamespaces}
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.Qt6-kdevelop"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/kdevelop.rdef.in > kdevelop.rdef
|
||||
|
||||
addResourcesToBinaries kdevelop.rdef $binDir/kdevelop
|
||||
addAppDeskbarSymlink $binDir/kdevelop KDevelop
|
||||
|
||||
prepareInstalledDevelLibs \
|
||||
libKDevPlatformDebugger \
|
||||
libKDevPlatformDocumentation \
|
||||
libKDevPlatformInterfaces \
|
||||
libKDevPlatformLanguage \
|
||||
libKDevPlatformOutputView \
|
||||
libKDevPlatformProject \
|
||||
libKDevPlatformSerialization \
|
||||
libKDevPlatformShell \
|
||||
libKDevPlatformSublime \
|
||||
libKDevPlatformTests \
|
||||
libKDevPlatformUtil \
|
||||
libKDevPlatformVcs
|
||||
|
||||
packageEntries devel \
|
||||
$developDir \
|
||||
$libDir/cmake
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
# 39% tests passed, 82 tests failed out of 135
|
||||
# Error window pops up witht: Could not find any plugins during startup.
|
||||
# Please make sure QT_PLUGIN_PATH is set correctly
|
||||
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
|
||||
ctest --test-dir build --output-on-failure
|
||||
}
|
||||
Reference in New Issue
Block a user