diff options
Diffstat (limited to 'dev-build')
| -rw-r--r-- | dev-build/cmake/Manifest | 6 | ||||
| -rw-r--r-- | dev-build/cmake/cmake-4.1.4.ebuild | 324 | ||||
| -rw-r--r-- | dev-build/cmake/cmake-4.2.1.ebuild | 323 | ||||
| -rw-r--r-- | dev-build/dolphin-plugins-makefileactions/Manifest | 1 | ||||
| -rw-r--r-- | dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.0.ebuild | 60 | ||||
| -rw-r--r-- | dev-build/make/make-4.4.1-r102.ebuild | 2 | ||||
| -rw-r--r-- | dev-build/ninja/ninja-1.13.2-r1.ebuild | 2 | ||||
| -rw-r--r-- | dev-build/scons/scons-4.10.0.ebuild | 2 | ||||
| -rw-r--r-- | dev-build/scons/scons-4.10.1.ebuild | 2 | ||||
| -rw-r--r-- | dev-build/steve/Manifest | 2 | ||||
| -rw-r--r-- | dev-build/steve/steve-1.2.0.ebuild (renamed from dev-build/steve/steve-1.0.2.ebuild) | 42 | ||||
| -rw-r--r-- | dev-build/steve/steve-9999.ebuild | 36 |
12 files changed, 789 insertions, 13 deletions
diff --git a/dev-build/cmake/Manifest b/dev-build/cmake/Manifest index 276fd9329de2..3d091833f75f 100644 --- a/dev-build/cmake/Manifest +++ b/dev-build/cmake/Manifest @@ -12,3 +12,9 @@ DIST cmake-4.1.2.tar.gz 12048810 BLAKE2B a15dcfa25d22373bcd0a92109fe9e4a42b37ee4 DIST cmake-4.1.3-SHA-256.txt 2015 BLAKE2B d87dc222c3aee5c92e880142d115e9debc0cbdc7567c08e6d3425431c5fcba32f54ca63382d01829aa5f8389d6aca5dbdfded006ea8174eaa9d7f4a776c86f26 SHA512 408e03535cc0377123b0c17ba46955e45e6ca23849b48536253ff9d2b2268cc8f44f3365c79ebfe3861a5fd68f8dfc61d005ed77f2fa262477b5103060ecacb1 DIST cmake-4.1.3-SHA-256.txt.asc 833 BLAKE2B e6327f6ef0b18048340c17a5ba53dc76632d2834c8cd831e9456996da6bac3bf67edf64364e4cf6d75b3a7955c72e412f665847ab3f33715697cd727adada0f2 SHA512 f3ca38fecd65020c80cc870a9ef5926d28ac5cc8de716c446b7aca3a6614e5163931f1721e166f1d50038478eb2d7dcc054cb740aaace141c0dadc91f2e037b3 DIST cmake-4.1.3.tar.gz 12049989 BLAKE2B fa220d86e9fc8f9bdfb20123b6b326f47fced48fddbd0e05dade82b0273fcb936ea727bb2bfb87495600e2b8212235e58a737d9d480d7c1f951bbc12b28b9ff7 SHA512 98623542c1076c425aad68ee31b13f60da2374a44b6fc8f60ca5eee7f5c4e941bfc97d14f7856fd3b7b0e1f6263f2a881795d410d5519226a24976059fb8ec77 +DIST cmake-4.1.4-SHA-256.txt 2015 BLAKE2B 6e8b2f7c769fbf7b5dbdec081edd8c9169f80fb9b16119b5ace3e5596a14394abe8287f45c537dc2ded972e521745c909d9b33e242c1d8fe34abda9791cec71d SHA512 c806bc17dbad51b5bd90354bf3df31232bd39f7a8dee30205807cc7e2ba63eaddc1138f8512c860e86d21cc7075f58cda85f4f9f3f9001810a243e6ebef0261c +DIST cmake-4.1.4-SHA-256.txt.asc 833 BLAKE2B e2685feadb1565a5d14eea89eb5e505dd3988a10f3539d40d44411f425db7baba7fea7cabe894a706e86f58ff8c7332ed26a56711113d099ab27f874177036c3 SHA512 b316dec0ed3f5df1d03b8fdd17afa997df5da723072c4958fe728d4abf5156b36c9e79e0344735a20d31d4a2366aa22b4ae23f334b831ce67ed6bf23183631da +DIST cmake-4.1.4.tar.gz 12051840 BLAKE2B 0d43042b70b1fe27bb1e1eeb2bda1b24923887cb0fdaca2fff11771c980b7a9b24637559315f58c53066a53aa40dd3e2127de8cf4fd7eb0d25844e27a7a08f17 SHA512 c8a5eb269f98f70db1f52675822e1b371864fa86037ed4f1714f77abaf5c7b3fae307bfc4392add29c2c600b502d8876d7d1bb260e331ee6607cb02356a7e8a8 +DIST cmake-4.2.1-SHA-256.txt 2015 BLAKE2B 6896490b0da207448bdcda863296b47fa6be38069743f00e77065427cd68bd7fb7b8893ce4e6dc6213f9d7fe34bc764bd5e48cf32fccbaf24350870188a7dc33 SHA512 1adeac1b105bd16b9f593e87ba3d8ffbf285ec78a36f565549b97c2e796a4bbb594f00184809e0118ad71137b33c9d3298a673d296cf42b7a37ab32b9c05b882 +DIST cmake-4.2.1-SHA-256.txt.asc 833 BLAKE2B 8dbb976c39be74f680070cb9b23689d334daf7518317548fe3ab8eace7007329161b6307aca441238222a8f1cd5674f01e117bab143364eb87876a50e5ca6b1a SHA512 4a07deb385ab72aa20b1fe7d5defa790101e0e6454ef66bdf125feab5ab363e58e856884ebcdbe75677978a616dc99eb181dfdeb9bcc4a67fd8a28ce48019410 +DIST cmake-4.2.1.tar.gz 12341564 BLAKE2B ba5f7acf8b0c8acadab93b159171b12ee866215a2f16f01d424c05520b97dcc7ad19acb19ed047d38cd4e5766e4676b43df0d092ae18db6be7218df58c4933cc SHA512 75617692e975f5974bc015d62983e48d0dedaed2daa1e25d93807d25c6ed836e73e37de064e1e924078162fc20f38f9210ac1c4d699c9bd795050119abc848ce diff --git a/dev-build/cmake/cmake-4.1.4.ebuild b/dev-build/cmake/cmake-4.1.4.ebuild new file mode 100644 index 000000000000..f33baf3549c4 --- /dev/null +++ b/dev-build/cmake/cmake-4.1.4.ebuild @@ -0,0 +1,324 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=( none ) +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + # BootstrapTest: we actually bootstrap it every time so why test it? + # BundleUtilities: bundle creation broken + # CMakeOnly.AllFindModules: pthread issues + # CTest.updatecvs: which fails to commit as root + # Fortran: requires fortran + # RunCMake.CompilerLauncher: also requires fortran + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # TestUpload, which requires network access + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + local myctestargs=( + --output-on-failure + -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \ + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.2.1.ebuild b/dev-build/cmake/cmake-4.2.1.ebuild new file mode 100644 index 000000000000..ad820d758f95 --- /dev/null +++ b/dev-build/cmake/cmake-4.2.1.ebuild @@ -0,0 +1,323 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=( none ) +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + # BootstrapTest: we actually bootstrap it every time so why test it? + # BundleUtilities: bundle creation broken + # CMakeOnly.AllFindModules: pthread issues + # CTest.updatecvs: which fails to commit as root + # Fortran: requires fortran + # RunCMake.CompilerLauncher: also requires fortran + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # TestUpload, which requires network access + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + local myctestargs=( + --output-on-failure + -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \ + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/dolphin-plugins-makefileactions/Manifest b/dev-build/dolphin-plugins-makefileactions/Manifest index aa1293eb5ce2..79c6ef1e8155 100644 --- a/dev-build/dolphin-plugins-makefileactions/Manifest +++ b/dev-build/dolphin-plugins-makefileactions/Manifest @@ -1 +1,2 @@ DIST dolphin-plugins-25.08.3.tar.xz 336856 BLAKE2B 7714809fde0c00ba52c002c3ed6a12a2006a2a3cf980e211ff5c736ef2138e50acddc03f70ffc70030313cbaabf259de826129c0766354a389c27655cb164b9c SHA512 df887b3be57da1344f5311093ba13251c4af554f4f3d93b3e44c0835da21ac8cec0fccaaee7e8b8e9162e56b1396bcbbded2bc5f02955b30ba01203fff0a279a +DIST dolphin-plugins-25.12.0.tar.xz 336404 BLAKE2B 6966e1f13617e25d7249088623f25330d5e7555ee6695611338ad675399b1b56a309ee854462cde866d417f7dc933749fc68f6953ec67c1c45a0a93f3f92cd76 SHA512 2441fa7da4b42cbb6016e420f8ec025141bb2ca63975c35baca33337f852d361d484a3b1d6a0dd1a575377b385056e91bf6bbfba692c81ef5207f4316d5091d4 diff --git a/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.0.ebuild b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.0.ebuild new file mode 100644 index 000000000000..8b86cdacb208 --- /dev/null +++ b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KDE_ORG_NAME="dolphin-plugins" +MY_PLUGIN_NAME="makefileactions" +PVCUT=$(ver_cut 1-3) +KFMIN=6.19.0 +QTMIN=6.9.1 +inherit ecm gear.kde.org + +DESCRIPTION="Dolphin plugin for Makefile targets integration" +HOMEPAGE="https://apps.kde.org/dolphin_plugins/" + +LICENSE="GPL-2+" +SLOT="6" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="" + +DEPEND=" + >=dev-qt/qtbase-${QTMIN}:6[concurrent,gui,widgets] + >=kde-apps/dolphin-${PVCUT}:6 + >=kde-frameworks/kconfig-${KFMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/ki18n-${KFMIN}:6 + >=kde-frameworks/kio-${KFMIN}:6 + >=kde-frameworks/kjobwidgets-${KFMIN}:6 +" +RDEPEND="${DEPEND} + !<kde-apps/dolphin-plugins-subversion-24.08.2-r1 + >=kde-apps/dolphin-plugins-common-${PV} +" + +src_prepare() { + ecm_src_prepare + ecm_punt_po_install + # solid, qtdbus only required by mountiso + ecm_punt_qt_module DBus + ecm_punt_kf_module Solid + # kxmlgui, qtnetwork only required by dropbox + ecm_punt_qt_module Network + ecm_punt_kf_module XmlGui + # kcompletion, ktextwidgets only required by other plugins + ecm_punt_kf_module Completion + ecm_punt_kf_module TextWidgets +} + +src_configure() { + local mycmakeargs=( + -DBUILD_${MY_PLUGIN_NAME}=ON + -DBUILD_bazaar=OFF + -DBUILD_dropbox=OFF + -DBUILD_git=OFF + -DBUILD_hg=OFF + -DBUILD_mountiso=OFF + -DBUILD_svn=OFF + ) + ecm_src_configure +} diff --git a/dev-build/make/make-4.4.1-r102.ebuild b/dev-build/make/make-4.4.1-r102.ebuild index 3a8850687935..4f8e4fe3429b 100644 --- a/dev-build/make/make-4.4.1-r102.ebuild +++ b/dev-build/make/make-4.4.1-r102.ebuild @@ -18,7 +18,7 @@ elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then else SRC_URI="mirror://gnu/make/${P}.tar.lz" SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="GPL-3+" diff --git a/dev-build/ninja/ninja-1.13.2-r1.ebuild b/dev-build/ninja/ninja-1.13.2-r1.ebuild index ffc17cf92a94..a77f97720706 100644 --- a/dev-build/ninja/ninja-1.13.2-r1.ebuild +++ b/dev-build/ninja/ninja-1.13.2-r1.ebuild @@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]]; then inherit git-r3 else SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi GTEST_VER=1.16.0 diff --git a/dev-build/scons/scons-4.10.0.ebuild b/dev-build/scons/scons-4.10.0.ebuild index f694c13f980d..9fa72e9ee5e8 100644 --- a/dev-build/scons/scons-4.10.0.ebuild +++ b/dev-build/scons/scons-4.10.0.ebuild @@ -32,7 +32,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" IUSE="doc test" RESTRICT="!test? ( test )" diff --git a/dev-build/scons/scons-4.10.1.ebuild b/dev-build/scons/scons-4.10.1.ebuild index c0983df9d0b7..84033d2fa685 100644 --- a/dev-build/scons/scons-4.10.1.ebuild +++ b/dev-build/scons/scons-4.10.1.ebuild @@ -32,7 +32,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" IUSE="doc test" RESTRICT="!test? ( test )" diff --git a/dev-build/steve/Manifest b/dev-build/steve/Manifest index 2187c5ad7a47..4a756e8994d7 100644 --- a/dev-build/steve/Manifest +++ b/dev-build/steve/Manifest @@ -1,2 +1,2 @@ -DIST steve-1.0.2.tar.bz2 12338 BLAKE2B e271557045be0d57a5a69da5bfb6a78e84ff0f53ecdb69f61d678cdda47564f1bc405c0d25d82df81d6ecff33168714afc3721787d8b04323df42c1f7efb6c0b SHA512 c93f8920bb80893224eb77dadfd40f3b86961e711dcf1a639bbe26bb28a0bf86afeda8e12d237ad5474d9461b6d50ecd05d250cbffecc57aa0075f023b49c7eb DIST steve-1.1.0.tar.xz 17132 BLAKE2B 3f415d007eb808180499b541cf79684ec62807ba3e60e41466c829ac5a073b6b349d55a90dd75111054bcfd33398de72dd283fef8e3654bb57cbcfeab66ffb94 SHA512 516e7523864de0a13242456a5b3a4b6ba8ea36caf90e61842acb2d56461aa1441c1ad5f2b04d3bbd3d649d9f3622e88726cbbb5b7e15c7ccbb16e179fbac4c11 +DIST steve-1.2.0.tar.xz 18940 BLAKE2B 88f04479ea92104a678a23032f81fd25f96c679ec38e376aa57f1baae2e26528cc8d965e958597de30ada07965d4301199defce5e77c7984ef6deba3ef11f64c SHA512 18fc62afb65599e01a79d50351dde0a3ac842fe9bab585672c9bf7fff00d96be4b916adbf92f3d9246750087c4462692440b00e73486ad54b2c63a61349d9338 diff --git a/dev-build/steve/steve-1.0.2.ebuild b/dev-build/steve/steve-1.2.0.ebuild index 37287fd81579..04be9d182345 100644 --- a/dev-build/steve/steve-1.0.2.ebuild +++ b/dev-build/steve/steve-1.2.0.ebuild @@ -3,18 +3,20 @@ EAPI=8 -inherit linux-info meson systemd udev +PYTHON_COMPAT=( python3_{11..14} ) -DESCRIPTION="A simple jobserver for Gentoo" +inherit linux-info meson python-any-r1 systemd udev + +DESCRIPTION="A load-balancing jobserver for Gentoo" HOMEPAGE="https://gitweb.gentoo.org/proj/steve.git/" -SRC_URI=" - https://gitweb.gentoo.org/proj/steve.git/snapshot/${P}.tar.bz2 -" +SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.xz" LICENSE="GPL-2+" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" -IUSE="debug" +IUSE="debug test" +RESTRICT="test" +PROPERTIES="test? ( test_privileged )" DEPEND=" dev-libs/libevent:= @@ -25,21 +27,49 @@ RDEPEND=" " BDEPEND=" virtual/pkgconfig + test? ( + $(python_gen_any_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ') + ) " +python_check_deps() { + python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && + python_has_version "dev-python/pytest-timeout[${PYTHON_USEDEP}]" +} + pkg_pretend() { local CONFIG_CHECK="~CUSE" check_extra_config } +pkg_setup() { + use test && python-any-r1_pkg_setup +} + src_configure() { local emesonargs=( $(meson_use !debug b_ndebug) + $(meson_use test) ) meson_src_configure } +src_test() { + addwrite /dev/cuse + addwrite /dev/steve.test + if [[ ! -w /dev/cuse ]]; then + die "Testing steve requires /dev/cuse" + fi + + local -x STEVE=${BUILD_DIR}/steve + local EPYTEST_PLUGINS=( pytest-timeout ) + epytest +} + src_install() { meson_src_install diff --git a/dev-build/steve/steve-9999.ebuild b/dev-build/steve/steve-9999.ebuild index 3b91fc9a19a5..d508d96d2a3f 100644 --- a/dev-build/steve/steve-9999.ebuild +++ b/dev-build/steve/steve-9999.ebuild @@ -3,7 +3,9 @@ EAPI=8 -inherit git-r3 linux-info meson systemd udev +PYTHON_COMPAT=( python3_{11..14} ) + +inherit git-r3 linux-info meson python-any-r1 systemd udev |
