From 7d03e44490a4596b43b3b3a0586315c936cd6e0f Mon Sep 17 00:00:00 2001 From: Gianfranco Costamagna Date: Thu, 27 Jan 2022 11:48:59 +0100 Subject: boinc-client: Update to 7.18.1 * update to 7.18.1 and unblacklist * Add openssl 3.0 build fix provided by upstream * fix the sed command to work with the correct new libtool named file * refresh patches * drop patch part that is added in one patch and removed in the following one Signed-off-by: Gianfranco Costamagna Signed-off-by: Gianfranco Costamagna Signed-off-by: Khem Raj --- .../recipes-extended/boinc/boinc-client/4563.patch | 36 +++++++++ .../boinc/boinc-client/boinc-AM_CONDITIONAL.patch | 11 +-- .../boinc/boinc-client/gtk-configure.patch | 10 +-- .../recipes-extended/boinc/boinc-client_7.16.16.bb | 92 ---------------------- .../recipes-extended/boinc/boinc-client_7.18.1.bb | 92 ++++++++++++++++++++++ 5 files changed, 130 insertions(+), 111 deletions(-) create mode 100644 meta-oe/recipes-extended/boinc/boinc-client/4563.patch delete mode 100644 meta-oe/recipes-extended/boinc/boinc-client_7.16.16.bb create mode 100644 meta-oe/recipes-extended/boinc/boinc-client_7.18.1.bb (limited to 'meta-oe/recipes-extended/boinc') diff --git a/meta-oe/recipes-extended/boinc/boinc-client/4563.patch b/meta-oe/recipes-extended/boinc/boinc-client/4563.patch new file mode 100644 index 0000000000..a18da45395 --- /dev/null +++ b/meta-oe/recipes-extended/boinc/boinc-client/4563.patch @@ -0,0 +1,36 @@ +From 689dc20ede9768377d4032ff8c70b58269c8dc9c Mon Sep 17 00:00:00 2001 +From: Charlie Fenton +Date: Mon, 18 Oct 2021 01:43:08 -0700 +Subject: [PATCH 01/10] Mac: update dependent libraries to latest: + c-ares-1.17.2, curl-7.79.1, freetype-2.11.0, openssl-3.0.0 Previously updated + to wxWidgets-3.1.5. FTGL version ftgl-2.1.3~rc5 is still the current + version. + +--- + lib/crypt.cpp | 7 +- + 8 files changed, 199 insertions(+), 150 deletions(-) + +diff --git a/lib/crypt.cpp b/lib/crypt.cpp +index 01249cfc340..9b1f69160b8 100644 +--- a/lib/crypt.cpp ++++ b/lib/crypt.cpp +@@ -1,6 +1,6 @@ + // This file is part of BOINC. + // http://boinc.berkeley.edu +-// Copyright (C) 2008 University of California ++// Copyright (C) 2021 University of California + // + // BOINC is free software; you can redistribute it and/or modify it + // under the terms of the GNU Lesser General Public License +@@ -672,7 +672,10 @@ int check_validity_of_cert( + } + #ifdef HAVE_OPAQUE_RSA_DSA_DH + RSA *rsa; +- rsa = EVP_PKEY_get0_RSA(pubKey); ++ // CAUTION: In OpenSSL 3.0.0, EVP_PKEY_get0_RSA() now returns a ++ // pointer of type "const struct rsa_st*" to an immutable value. ++ // Do not try to modify the contents of the returned struct. ++ rsa = (rsa_st*)EVP_PKEY_get0_RSA(pubKey); + if (!RSA_blinding_on(rsa, c)) { + #else + if (!RSA_blinding_on(pubKey->pkey.rsa, c)) { diff --git a/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch b/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch index 7c3b0325dd..0431f523e5 100644 --- a/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch +++ b/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch @@ -14,7 +14,7 @@ diff --git a/configure.ac b/configure.ac index d81d795de4..7beeb34ae2 100644 --- a/configure.ac +++ b/configure.ac -@@ -63,6 +63,7 @@ m4_pattern_allow([AC_PROG_OBJCXX]) +@@ -59,6 +59,7 @@ m4_pattern_allow([AC_PROG_OBJCXX]) m4_ifdef([AC_PROG_OBJCXX],[AC_PROG_OBJCXX],) dnl ------ AC_PROG_CPP @@ -22,12 +22,3 @@ index d81d795de4..7beeb34ae2 100644 AC_PROG_MAKE_SET SAH_LINKS AC_LANG_PUSH(C) -@@ -1068,6 +1069,8 @@ AM_CONDITIONAL(ENABLE_BOINCCRYPT, [test "x${enable_server}" = xyes || test "x${ - AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes]) - AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so]) - -+PKG_CHECK_MODULES([GTK2], [gtk+-2.0]) -+ - dnl ====================================================================== - dnl some more vodoo required for building portable client-binary (client, clientgui) - dnl ====================================================================== diff --git a/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch b/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch index e060b1a40c..3b814e903c 100644 --- a/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch +++ b/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch @@ -14,7 +14,7 @@ diff --git a/configure.ac b/configure.ac index 7beeb34ae2..35234c2762 100644 --- a/configure.ac +++ b/configure.ac -@@ -1018,6 +1018,11 @@ else +@@ -1044,6 +1044,11 @@ else AM_CONDITIONAL([GUI_GTK], false) fi @@ -26,11 +26,3 @@ index 7beeb34ae2..35234c2762 100644 dnl ---------- libNotify -------------------------------------------------- if test "${enable_manager}" = yes ; then PKG_CHECK_MODULES(LIBNOTIFY, [libnotify]) -@@ -1069,7 +1074,6 @@ AM_CONDITIONAL(ENABLE_BOINCCRYPT, [test "x${enable_server}" = xyes || test "x${ - AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes]) - AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so]) - --PKG_CHECK_MODULES([GTK2], [gtk+-2.0]) - - dnl ====================================================================== - dnl some more vodoo required for building portable client-binary (client, clientgui) diff --git a/meta-oe/recipes-extended/boinc/boinc-client_7.16.16.bb b/meta-oe/recipes-extended/boinc/boinc-client_7.16.16.bb deleted file mode 100644 index 79aaad9d85..0000000000 --- a/meta-oe/recipes-extended/boinc/boinc-client_7.16.16.bb +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright (C) 2016 Khem Raj -# Released under the MIT license (see COPYING.MIT for the terms) - -SUMMARY = "Open-source software for volunteer computing" -DESCRIPTION = "The Berkeley Open Infrastructure for Network Computing (BOINC) is an open- \ -source software platform which supports distributed computing, primarily in \ -the form of volunteer computing and desktop Grid computing. It is well \ -suited for problems which are often described as trivially parallel. BOINC \ -is the underlying software used by projects such as SETI@home, Einstein@Home, \ -ClimatePrediciton.net, the World Community Grid, and many other distributed \ -computing projects. \ -This package installs the BOINC client software, which will allow your \ -computer to participate in one or more BOINC projects, using your spare \ -computer time to search for cures for diseases, model protein folding, study \ -global warming, discover sources of gravitational waves, and many other types \ -of scientific and mathematical research." - -HOMEPAGE = "http://boinc.berkeley.edu/" -PNBLACKLIST[boinc-client] ?= "Needs porting to openssl 3.x" -LICENSE = "LGPLv2+ & GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6" -SECTION = "applications" -DEPENDS = "curl \ - jpeg \ - openssl \ - sqlite3 \ - virtual/libgl \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'libnotify', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+ libnotify xcb-util libxscrnsaver', '', d)} \ - nettle \ -" -SRCREV = "df0239e6f074207798a8ecf1358a74545dda9132" -BRANCH = "client_release/7/7.16" -SRC_URI = "git://github.com/BOINC/boinc;protocol=https;branch=${BRANCH} \ - file://boinc-AM_CONDITIONAL.patch \ - file://gtk-configure.patch \ -" - -inherit gettext autotools pkgconfig features_check systemd - -REQUIRED_DISTRO_FEATURES += "opengl" - -S = "${WORKDIR}/git" - -EXTRA_OECONF += "\ - --enable-libraries \ - --enable-unicode \ - --enable-shared \ - --enable-dynamic-client-linkage \ - --enable-client \ - --disable-server \ - --disable-static \ - --disable-manager \ - --with-ssl=${STAGING_EXECPREFIXDIR} \ - --without-wxdir \ - --without-x \ - --with-boinc-platform=${TARGET_SYS} \ - ac_cv_c_undeclared_builtin_options='none' \ -" -export PKG_CONFIG = "${STAGING_BINDIR_NATIVE}/pkg-config" - -do_configure:prepend () { - if [ "${@bb.utils.contains('DEPENDS', 'gtk+', '1', '0', d)}" = "0" ] - then - export GTK2_CFLAGS="" - export GTK2_LIBS="" - fi -} - -do_compile:prepend () { - # Disable rpaths - sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${B}/${TARGET_SYS}-libtool - sed -i -e 's|^sys_lib_dlsearch_path_spec=.*|sys_lib_dlsearch_path_spec=""|g' ${B}/${TARGET_SYS}-libtool - sed -i -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${B}/${TARGET_SYS}-libtool -} - -do_install:append() { - if [ -e ${D}${nonarch_libdir}/systemd/system/boinc-client.service ]; then - install -d ${D}${systemd_system_unitdir} - mv \ - ${D}${nonarch_libdir}/systemd/system/boinc-client.service \ - ${D}${systemd_system_unitdir}/boinc-client.service - rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}/systemd/system \ - ${D}${nonarch_libdir}/systemd \ - ${D}${nonarch_libdir} - fi -} - -SYSTEMD_SERVICE:${PN} = "boinc-client.service" - -FILES:${PN} += "${libdir}/systemd" diff --git a/meta-oe/recipes-extended/boinc/boinc-client_7.18.1.bb b/meta-oe/recipes-extended/boinc/boinc-client_7.18.1.bb new file mode 100644 index 0000000000..114e39463c --- /dev/null +++ b/meta-oe/recipes-extended/boinc/boinc-client_7.18.1.bb @@ -0,0 +1,92 @@ +# Copyright (C) 2016 Khem Raj +# Released under the MIT license (see COPYING.MIT for the terms) + +SUMMARY = "Open-source software for volunteer computing" +DESCRIPTION = "The Berkeley Open Infrastructure for Network Computing (BOINC) is an open- \ +source software platform which supports distributed computing, primarily in \ +the form of volunteer computing and desktop Grid computing. It is well \ +suited for problems which are often described as trivially parallel. BOINC \ +is the underlying software used by projects such as SETI@home, Einstein@Home, \ +ClimatePrediciton.net, the World Community Grid, and many other distributed \ +computing projects. \ +This package installs the BOINC client software, which will allow your \ +computer to participate in one or more BOINC projects, using your spare \ +computer time to search for cures for diseases, model protein folding, study \ +global warming, discover sources of gravitational waves, and many other types \ +of scientific and mathematical research." + +HOMEPAGE = "http://boinc.berkeley.edu/" +LICENSE = "LGPLv2+ & GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6" +SECTION = "applications" +DEPENDS = "curl \ + jpeg \ + openssl \ + sqlite3 \ + virtual/libgl \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'libnotify', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+ libnotify xcb-util libxscrnsaver', '', d)} \ + nettle \ +" +SRCREV = "b49adfb118211e11c719766c0d71e7bdfe7f3363" +BRANCH = "client_release/7/7.18" +SRC_URI = "git://github.com/BOINC/boinc;protocol=https;branch=${BRANCH} \ + file://boinc-AM_CONDITIONAL.patch \ + file://gtk-configure.patch \ + file://4563.patch \ +" + +inherit gettext autotools pkgconfig features_check systemd + +REQUIRED_DISTRO_FEATURES += "opengl" + +S = "${WORKDIR}/git" + +EXTRA_OECONF += "\ + --enable-libraries \ + --enable-unicode \ + --enable-shared \ + --enable-dynamic-client-linkage \ + --enable-client \ + --disable-server \ + --disable-static \ + --disable-manager \ + --with-ssl=${STAGING_EXECPREFIXDIR} \ + --without-wxdir \ + --without-x \ + --with-boinc-platform=${TARGET_SYS} \ + ac_cv_c_undeclared_builtin_options='none' \ +" +export PKG_CONFIG = "${STAGING_BINDIR_NATIVE}/pkg-config" + +do_configure:prepend () { + if [ "${@bb.utils.contains('DEPENDS', 'gtk+', '1', '0', d)}" = "0" ] + then + export GTK2_CFLAGS="" + export GTK2_LIBS="" + fi +} + +do_compile:prepend () { + # Disable rpaths + sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${B}/libtool + sed -i -e 's|^sys_lib_dlsearch_path_spec=.*|sys_lib_dlsearch_path_spec=""|g' ${B}/libtool + sed -i -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${B}/libtool +} + +do_install:append() { + if [ -e ${D}${nonarch_libdir}/systemd/system/boinc-client.service ]; then + install -d ${D}${systemd_system_unitdir} + mv \ + ${D}${nonarch_libdir}/systemd/system/boinc-client.service \ + ${D}${systemd_system_unitdir}/boinc-client.service + rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}/systemd/system \ + ${D}${nonarch_libdir}/systemd \ + ${D}${nonarch_libdir} + fi +} + +SYSTEMD_SERVICE:${PN} = "boinc-client.service" + +FILES:${PN} += "${libdir}/systemd" -- cgit 1.2.3-korg