summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViorel Munteanu <ceamac@gentoo.org>2023-05-12 08:34:01 +0300
committerViorel Munteanu <ceamac@gentoo.org>2023-05-12 09:00:11 +0300
commit789a0c31abf76ef5c12afefb2a932d872b75ad31 (patch)
treee99de5ccbdd2e4fdecff6fb7ed3a724c8e130dca /app-emulation/virtualbox-guest-additions
parentapp-backup/bacula: add 13.0.3 (diff)
downloadgentoo-789a0c31abf76ef5c12afefb2a932d872b75ad31.tar.gz
gentoo-789a0c31abf76ef5c12afefb2a932d872b75ad31.tar.bz2
gentoo-789a0c31abf76ef5c12afefb2a932d872b75ad31.zip
app-emulation/virtualbox-guest-additions: add support for kernel 6.4
Add patches from upstream to support kernel 6.4. Also update SRC_URI to point to 7.0.8a, even if it doesn't apply here, to match virtualbox. Closes: https://github.com/gentoo/gentoo/pull/31003 Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
Diffstat (limited to 'app-emulation/virtualbox-guest-additions')
-rw-r--r--app-emulation/virtualbox-guest-additions/Manifest2
-rw-r--r--app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch25
-rw-r--r--app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch38
-rw-r--r--app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8-r1.ebuild (renamed from app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8.ebuild)9
4 files changed, 72 insertions, 2 deletions
diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
index 5e3f885253cb..5e823d4ec1f1 100644
--- a/app-emulation/virtualbox-guest-additions/Manifest
+++ b/app-emulation/virtualbox-guest-additions/Manifest
@@ -1,6 +1,6 @@
DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
DIST VirtualBox-6.1.44.tar.bz2 165775421 BLAKE2B e87d7175bc616784c79d02b595d81119cedc7f4df1822b71ca10b85d44d5cd1dacd999e7867a0bef8579ea715ef732b990cef63f3325fff0c139abe394d88ad7 SHA512 49c3baa1a40dcafcc6b31d0abcfecfcb24305de44e5efd3f68ba4443574e21b8cc34d7288e0fbc56730bc3be2bee07089b7dfed14848a88dc38a1433b6dda8af
DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
-DIST VirtualBox-7.0.8.tar.bz2 199298777 BLAKE2B 6e36532516fb1ebee4cf7f356659a8cde6bd5074a509c824499ed34d8d0ffc9aff45211d4dcb35e3977fcd72a9b18796ed57f8760dd45e578d8225814c4c8710 SHA512 4c25f8275269d085cf347596a242b8921f140e0e40d8c44fd6b171742b8cbd0c9a45f4702dbc0c1272e10091be68c3668711c9e4d1a8b3ce57d25f871e0eb9fe
+DIST VirtualBox-7.0.8a.tar.bz2 199387757 BLAKE2B 0ba397825277ecbb851bd4ea94c85448e2966fd96ef8edcaf3102f8515553736d6ceee84c0647fa37443c1875256353fdd029d6c505aa99834079acb957b24a0 SHA512 fcbf907f6f7f2396ebff5a31af6ec00b38f09799380bac4847cc9044455832de058659edaa9f621b0054fa402bfacef1b5444498c9faeb3671d02da1505c952d
DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf
diff --git a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch
new file mode 100644
index 000000000000..c13d57ee4503
--- /dev/null
+++ b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch
@@ -0,0 +1,25 @@
+Initial support for kernel 6.4
+https://www.virtualbox.org/changeset/99666/vbox
+
+--- a/src/VBox/Additions/linux/sharedfolders/regops.c
++++ b/src/VBox/Additions/linux/sharedfolders/regops.c
+@@ -75,4 +75,11 @@
+ #if RTLNX_VER_MAX(2,5,12)
+ # define PageUptodate(a_pPage) Page_Uptodate(a_pPage)
++#endif
++
++/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field. */
++#if RTLNX_VER_MIN(6,4,0)
++# define VBOX_ITER_IOV(_iter) iter_iov(_iter)
++#else
++# define VBOX_ITER_IOV(_iter) iter->iov
+ #endif
+
+@@ -2400,5 +2407,5 @@
+ if (iter_is_iovec(iter) || (VBSF_GET_ITER_TYPE(iter) & ITER_KVEC)) {
+ # endif
+- const struct iovec *pCurIov = iter->iov;
++ const struct iovec *pCurIov = VBOX_ITER_IOV(iter);
+ size_t cLeft = iter->nr_segs;
+ size_t cPagesSpan = 0;
+
diff --git a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch
new file mode 100644
index 000000000000..b390c2f5e48a
--- /dev/null
+++ b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch
@@ -0,0 +1,38 @@
+Initial support for kernel 6.4
+https://www.virtualbox.org/changeset/99667/vbox
+
+--- a/src/VBox/Additions/linux/sharedfolders/regops.c
++++ b/src/VBox/Additions/linux/sharedfolders/regops.c
+@@ -77,11 +77,4 @@
+ #endif
+
+-/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field. */
+-#if RTLNX_VER_MIN(6,4,0)
+-# define VBOX_ITER_IOV(_iter) iter_iov(_iter)
+-#else
+-# define VBOX_ITER_IOV(_iter) iter->iov
+-#endif
+-
+
+ /*********************************************************************************************************************************
+@@ -94,4 +87,12 @@
+ #else
+ # define VBSF_GET_ITER_TYPE(a_pIter) ((a_pIter)->type)
++#endif
++
++/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field
++ * of struct iov_iter. */
++#if RTLNX_VER_MIN(6,4,0)
++# define VBSF_GET_ITER_IOV(_iter) iter_iov(_iter)
++#else
++# define VBSF_GET_ITER_IOV(_iter) iter->iov
+ #endif
+
+@@ -2407,5 +2408,5 @@
+ if (iter_is_iovec(iter) || (VBSF_GET_ITER_TYPE(iter) & ITER_KVEC)) {
+ # endif
+- const struct iovec *pCurIov = VBOX_ITER_IOV(iter);
++ const struct iovec *pCurIov = VBSF_GET_ITER_IOV(iter);
+ size_t cLeft = iter->nr_segs;
+ size_t cPagesSpan = 0;
+
diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8-r1.ebuild
index 2ad17a9c1126..4f354c7b62b0 100644
--- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8.ebuild
+++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.8-r1.ebuild
@@ -10,7 +10,7 @@ MY_P="${MY_PN}-${PV}"
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}a.tar.bz2
https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2"
S="${WORKDIR}/${MY_PN}-${PV}"
@@ -61,6 +61,11 @@ PDEPEND="
gui? ( x11-drivers/xf86-video-vboxvideo )
"
+PATCHES=(
+ "${FILESDIR}"/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch
+ "${FILESDIR}"/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch
+)
+
BUILD_TARGETS="all"
BUILD_TARGET_ARCH="${ARCH}"
@@ -78,6 +83,8 @@ pkg_setup() {
}
src_prepare() {
+ eapply "${PATCHES[@]}"
+
# Remove shipped binaries (kBuild,yasm), see bug #232775
rm -r kBuild/bin tools || die