diff options
author | mirror@stealer.net <mirror@stealer.net> | 2025-07-19 17:30:23 +0000 |
---|---|---|
committer | mirror@stealer.net <mirror@stealer.net> | 2025-07-19 17:30:23 +0000 |
commit | b02b02f1dfcd9a566aaa4750d2585839b1534d29 (patch) | |
tree | be313e2f9e62946a303171c14925832a4784a582 /dev-libs | |
parent | e6ec21b535e280355919a4e609acc10bd0f1af1a (diff) |
2025-07-19 17:12:40+00:00
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/Manifest.gz | bin | 99220 -> 99211 bytes | |||
-rw-r--r-- | dev-libs/libxml2/Manifest | 20 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49794-CVE-2025-49796.patch | 182 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49795.patch | 69 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6021.patch | 40 | ||||
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6170.patch | 102 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.13.7.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.13.8-r1.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.13.8-r2.ebuild | 195 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.13.8.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.14.4-r1.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.14.4.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-2.14.5.ebuild | 183 | ||||
-rw-r--r-- | dev-libs/libxml2/libxml2-9999.ebuild | 2 | ||||
-rw-r--r-- | dev-libs/xbyak/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/xbyak/xbyak-7.28.ebuild | 25 |
16 files changed, 795 insertions, 35 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz Binary files differindex cc1ed7b9b98f0..847c68324c17e 100644 --- a/dev-libs/Manifest.gz +++ b/dev-libs/Manifest.gz diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest index b404ea1702c8d..4e2a291848978 100644 --- a/dev-libs/libxml2/Manifest +++ b/dev-libs/libxml2/Manifest @@ -1,17 +1,23 @@ AUX libxml2-2.12.9-icu-pkgconfig.patch 1074 BLAKE2B a676f25de6c96ec5056b472a4819d65ca944dc5befc40c708a5c0d982d29912fcb3c602573f172abb3e62baeed3ae222dc594dc8d7f69031e86080427d86f98e SHA512 613e3b853ad734f789704b6523d402eb996f01688edcf7ca96a753f79dc0cbd2057df1cc9b6cc80c664da4a3acf4be75ce88825371060ba51e151c6b643d8eaf -AUX libxml2-2.13.8-CVE-2025-6021.patch 1730 BLAKE2B dd21b1cc8e779e6bc88c12bf67e81a648661c5927ca470b14d77cb85e47014357b8e84aa3557cb5c3570af73076b2599bbfc0f91d953f87ae3f878f909b52da3 SHA512 e0c5282a14fd3804f95f57c3a23a18d6071933bc50146d0e5e91390b673f5884ebbc923aa404151430d0b7abdd1f0afaac8f357695bb2847b9b58894bebbd887 +AUX libxml2-2.13.8-CVE-2025-49794-CVE-2025-49796.patch 6527 BLAKE2B 5d1fb103f857a25eb71627977c3463cd703467b72b82dc4197d52f6c4d27debac6ec17151ef1e41d258675951a623dfe902534a4c703d46472bc5e2bdf14d0d6 SHA512 c8dfd7ef83519b41af8474294370384f61772c0c8cbfc1886d4ab60287d839d38adf882d41580b75cd08082acb0973ff6b6b9322edbca0f12d2b112c936da2ac +AUX libxml2-2.13.8-CVE-2025-49795.patch 2333 BLAKE2B 4beaf75d3dde5710d70b09cbb7338a46db2b64f78ef4b003b31df3ed02c5b7f8122d467c90baced18002749a311597e300658c92b3d95618ec9cdfd51183dc5d SHA512 0604127641544dabc426b0d981dfb2c50624017f02836f67dc20247184ada59ec7603b3cbeb49c14501d2d57e05c26099e0b1450068e5f8249891e95a55bfb77 +AUX libxml2-2.13.8-CVE-2025-6021.patch 1567 BLAKE2B 94b0a3d29e40bfe31e470e69e24756854ac5779f51418fd69451c1a9ce1486aa9dbdb40d5fb23b5ad9320a02bf3551c5f937a09c3b1e237ebddaaad1f678e1dc SHA512 cd076137654131429ebd69415df859e1ad80cda7b92d15bdd08dfd4a80b387cb051f3c0e3023d805ece2d70c0949b178cfa1f24028528a7553e5e19ac510b47d +AUX libxml2-2.13.8-CVE-2025-6170.patch 4409 BLAKE2B 4d32ce6d9486cc4c9221a0e57be3e3a8e9fa9a41eb15ff904c9399080ccfea18eb63d4dd9232ac6b91ed3eb39fd811810b3822b5d03b2055ad0d4cbe1aa8a642 SHA512 6d48e6108abed1f7d7724434a2ebd2939bcfe274f30741c7ad887af4071048abffe0711a128cace4804e7824cbb0c00667345a8d1ae8feb2e9ed058af3b849ef AUX libxml2-2.14.2-no-git.patch 943 BLAKE2B 6ba7d630022bffacc2d6325cd9c59f3f3ee11bb4d68fe88dbe62720e3d19bd4364d2f55e1fb214edf67377694271c7bbc76b5188379321c8a644e8cf0e072f39 SHA512 7a165f00fb85aebc5a24ba445d38affb8642fe090cfa70442ba501bb90d050711da4e19a9fb8bcacc9c62c2d4836261478f278461eba80ba8462493e0587cfe5 AUX libxml2-2.14.4-cmake.patch 2318 BLAKE2B 40d4ef5e38c2da55474fa718541803840a61dc31688e2ae361281530a03b9f4a7e6e28526b7848d841b71a11f1f5bc543c293eee38f807848ded4eb4115ffde2 SHA512 6de14836b12beb6042c4303f318fb92083177ea5a71f702141ceff04208b1d23ae8e796c4fbd654156c2fe80fee1260396382215962139652cab02c47f07c36d DIST libxml2-2.13.7.tar.xz 2424236 BLAKE2B 464097c4b579f964a42909e26b3c2702d7b40c3029628c8980a1ea7a43867dda3c4bdf38b63557f971b20b125a5fc0ac7031bad5df10b1bc25380e995f7707b4 SHA512 6e69ed38cdf2aaa5df7e26b654a7aadd2d80131619184380bafc6a22811acb6b7286c819175c3b37edb194019a93ba6085852a0281934d6bb36d0b52ce138541 DIST libxml2-2.13.8.tar.xz 2423128 BLAKE2B 9abe12acb2b619f8649dc4472c39d4c59074a83538bf1a534163737bf9e99e6387fec53404392c325102da1e77f53606f2679c47b7136d7f7541a8fcc6bcd995 SHA512 668e556404693f17e074bc31e2caa5e50bf003ee3cd81b61a51ea25e76efd7eff7ec70ff603eed87b9d9e9b2299673e6e8871798264113e660e703b74b58458f DIST libxml2-2.14.4.tar.xz 2325848 BLAKE2B 6ee7e4f35e6f15124fe1ceb55758236229f87e05344c55e82c419f8e8dba763adbd25746c038d13189dfadc3bb023fd8891251e78e9c9046d42961829d93b885 SHA512 5991223bdd6c84886bba8fb81c4e48bf92c8bc3571262ffa8c7673a10efeebceafc1dee362624417dca146982d030ee8d0ccda41f4c82d3074845f74ef6da5d4 +DIST libxml2-2.14.5.tar.xz 2327528 BLAKE2B cab1d75abfa4dcbceb4b4394664adae9edd1ace7fe33d027e7e6861139a176282ff9e33b46d8b5801032cbe5e75196198d3ddfc2c58fb1dca0942aa06f63decf SHA512 9777fe0eb788a185f13617f74a2e2ffcc2128a6b179d491c06ddbb876d9bb38c951d3d7c2371d184a97143b9b2d8d6eca19fb7fcbbbe4bfa90e728f4bb1cbdf7 DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733 DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288 DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe -EBUILD libxml2-2.13.7.ebuild 4921 BLAKE2B baa689e56ce0807a2bfacfb8ead683ed8c1f6c9568e9bfd6f21e2322f0545bb8ba27dee8ef5deac25fc8234f425642d1b79f9151b2a4018398b3a2dde37f83f8 SHA512 1ffb4276f4edecd170417beda52e73e4639732f6e6cb0da448da9d1e80130448c46511bbee080e6c192c611273882fcee4c7a5f942296c5ed2a8f6403f5be832 -EBUILD libxml2-2.13.8-r1.ebuild 4977 BLAKE2B 08b085263ec6c956681bb8ed1323e9b703c6c8be7447dc1a8f2a42a91bb231a49b5f3f8b668f974be32af9a8517e14bcb12c6a3e207d3d5a0a44b68cef7567eb SHA512 5419a5dcf46e07a3bc0e230387a21d6f6d4fdbc56e32082174bfac4fd2b8559e5c80d0b41f86fba2e3f05f1ed57d5c4aaea3605541179ee2060aac86d7deb934 -EBUILD libxml2-2.13.8.ebuild 4921 BLAKE2B a2213e55590b2576eb6e2665d2c73d9de9e42b336ac8aa59ec13374bc22c0983c33039c2e505a937263740bb3ebd199febc16367625ed1566f29767ec3a3a192 SHA512 505ee2305a7c9ff19aaf46c384289333f50847487f6928e56975a7f92c0d14fe92ba7da4b154271b34ed304eb17c8c39a369b87c7081f975387f3e5070d1a184 -EBUILD libxml2-2.14.4-r1.ebuild 4512 BLAKE2B 485d44c52f1b8c00a5253eb86335710e28f61637dab550bb9892ec243431da190aac91f39b8e823f04b9e1353577f8817ea06ab27f7bbc1e051de0cf9b855431 SHA512 8c6eecc7f08261b657ed8dfd4aff9c950695179d1e1150150f1e2ee75a5382a66da77f206f2b40374526910887732deb3ad432b3bfc71af4b68c06779a33f8ee -EBUILD libxml2-2.14.4.ebuild 4470 BLAKE2B 0a3d53f6131a927af0508193b143eac45697b3abeb6ba6b5a2d32fa3fb111c6169b4c333de64213a9dc7e11ea70a70f3882c86ad04b2294456468e113fe843f2 SHA512 d04bf71af42ce4b768364965412da90429770ff72861953a5c907ca0a63a04104e23c83aac7e93ae03981ff12ddef8fac0b5e851902c0ded9777aa95c4b24691 -EBUILD libxml2-9999.ebuild 4414 BLAKE2B 6746f2a38f59e674a5e02bc58f743f9c47da5a1aa99400cfbb92d74c4a2dbc71b7b639a92f693da4554e2d545108b538854e35e4ff241148c1483b94fa364243 SHA512 b5803a47b36842682c343f2faeee4fd250b65a37ef87fb9cd331437e4f44a6ad6ce69cf57a24e6ed2b812a43247e2b3a7d36aa7e3ae43fe4a6ae7e190e9cefe1 +EBUILD libxml2-2.13.7.ebuild 4922 BLAKE2B e45a2a1f04e63ebeae0e9fc283d6cf85c5ec0819fd627f72a4a34efd4409edd141d1c6b47b0589b3fb87ccdd7f35a4447e10724dd69bcd95bc85e4de57ce4baa SHA512 e35a3138af6786ad396829365ea31189856b64cf2f6752769d03c608b07e1ba510cbcca87b6c77f755a86e2f7bddaf769469c421c8b13b7bcd9186955da560e2 +EBUILD libxml2-2.13.8-r1.ebuild 4978 BLAKE2B 02f90d78116d48585bf4089ac1fd4e488835bc04869fd760e8cbb85dfe3030abc726c5a0afb6764f855f2a1efaba851a6d80e29d1d0ea162324e7735a52281a9 SHA512 1e58301740b8cb2e1860a984cb1fd184d647b2d921cca8a534e07aa3bcacd17f51db427413189f385b8d8937fa888af35216f1d22c60336beda2f12807572119 +EBUILD libxml2-2.13.8-r2.ebuild 5140 BLAKE2B 77afe223b3c9e5c98a0c4636120c60a62eba3c456cba0d2c5db3aae6d1d773753f53620cfafa3f2de0adcd5c5ebf1ce84fac034095b88d720013ffce036bb0d7 SHA512 6f34566fb5c4281c731ea9a35e4e18aa5236268bb563551852db9c10ce3e9d0f96cc8c683aa3a3faa37995d057640280615f9f70e165ff530d38d3de49c2eef1 +EBUILD libxml2-2.13.8.ebuild 4922 BLAKE2B a039b6de5702f5d270939d00f926b4f5f8aac803dece484c61fba1c6e261fe3762c485befef1d202a9f2a3e0ee9d207da53adbc9fa2c4e32bfa333cf5d49dac8 SHA512 076ae6a4ab7df59f1fc61f7373c09974e587eb1ca003c8c36201e5479de3cc55622bc15576e562a037ef3c4a6457ba8c8e73fda23ccf13cfb910e74951231434 +EBUILD libxml2-2.14.4-r1.ebuild 4513 BLAKE2B d0a4963bd399649b05df9c6b7547d33621eaade93a1047b2a88d6e444e90490e8454d6f17f14ee40fe70c9edd6b8b0391f2735d2e6652df06fb6f7e087791a40 SHA512 be0e53d2d0682ff8e97d71efffb1eeb20b73f6719bfd009663fcd83e3576c58c58d96d829c66d8e7efa1ed9da907942a0e37be548f415d2d351dc668348052f1 +EBUILD libxml2-2.14.4.ebuild 4471 BLAKE2B f683ba5cd480e50c650f6e54900c0698b6e1cc320c7fa06b63a37fa31cb67d1ab0d70781fbf966dadbffe1c770f9d29df8989d6bae9e2677dc443a5b33ee062b SHA512 686b0645b604f4c674c873943913b960bceeba6b9f14b787d58e5fe1def90085a3b816961f6c05aeb308602ca8fe998c29bc86ed0de6dfe8840d5c832ea0944c +EBUILD libxml2-2.14.5.ebuild 4471 BLAKE2B f683ba5cd480e50c650f6e54900c0698b6e1cc320c7fa06b63a37fa31cb67d1ab0d70781fbf966dadbffe1c770f9d29df8989d6bae9e2677dc443a5b33ee062b SHA512 686b0645b604f4c674c873943913b960bceeba6b9f14b787d58e5fe1def90085a3b816961f6c05aeb308602ca8fe998c29bc86ed0de6dfe8840d5c832ea0944c +EBUILD libxml2-9999.ebuild 4415 BLAKE2B 9ff6a52ea336f015215ccf6650d42f225ee3eb68509d98711847b6f66c2a4fb740ab824516f9d90bbf8fbaafc47985232be04a3033559cab24300d33f9f0a93c SHA512 c359611847fb3582e171cfb1e76b324c432ba4a388ae2b9c37b535b8650ae41362113d57ae4fb6f474d869873a460ab4dda5629e2b997903f016a4e06b23f000 MISC metadata.xml 519 BLAKE2B 528be4ec79b54eaed229c84c96656266acffaa2ab68c7b1e6daecdee77bb1109ea56babceff0459125e04326425be28f436a78f697c363920102b94aca25179d SHA512 85804c662dd019e6c4cad05bb691b2058c9b93c190c57a7b4cc2674bee71a805da41159184c1bae9954700e52b41bb104a2d1e66ea4d1799463626befb691d11 diff --git a/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49794-CVE-2025-49796.patch b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49794-CVE-2025-49796.patch new file mode 100644 index 0000000000000..bb8d7c1175a8f --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49794-CVE-2025-49796.patch @@ -0,0 +1,182 @@ +From 81cef8c5b5aec2acdf5707e57a6db0c8d1d0abca Mon Sep 17 00:00:00 2001 +From: Nick Wellnhofer <wellnhofer@aevum.de> +Date: Fri, 4 Jul 2025 14:28:26 +0200 +Subject: [PATCH] [CVE-2025-49794] [CVE-2025-49796] schematron: Fix + xmlSchematronReportOutput + +Fix use-after-free (CVE-2025-49794) and type confusion (CVE-2025-49796) +in xmlSchematronReportOutput. + +Fixes #931. +Fixes #933. +--- + result/schematron/cve-2025-49794_0.err | 2 ++ + result/schematron/cve-2025-49796_0.err | 2 ++ + schematron.c | 49 ++++++++++++++------------ + test/schematron/cve-2025-49794.sct | 10 ++++++ + test/schematron/cve-2025-49794_0.xml | 6 ++++ + test/schematron/cve-2025-49796.sct | 9 +++++ + test/schematron/cve-2025-49796_0.xml | 3 ++ + 7 files changed, 58 insertions(+), 23 deletions(-) + create mode 100644 result/schematron/cve-2025-49794_0.err + create mode 100644 result/schematron/cve-2025-49796_0.err + create mode 100644 test/schematron/cve-2025-49794.sct + create mode 100644 test/schematron/cve-2025-49794_0.xml + create mode 100644 test/schematron/cve-2025-49796.sct + create mode 100644 test/schematron/cve-2025-49796_0.xml + +diff --git a/result/schematron/cve-2025-49794_0.err b/result/schematron/cve-2025-49794_0.err +new file mode 100644 +index 00000000..57752310 +--- /dev/null ++++ b/result/schematron/cve-2025-49794_0.err +@@ -0,0 +1,2 @@ ++./test/schematron/cve-2025-49794_0.xml:2: element boo0: schematron error : /librar0/boo0 line 2: ++./test/schematron/cve-2025-49794_0.xml fails to validate +diff --git a/result/schematron/cve-2025-49796_0.err b/result/schematron/cve-2025-49796_0.err +new file mode 100644 +index 00000000..bf875ee0 +--- /dev/null ++++ b/result/schematron/cve-2025-49796_0.err +@@ -0,0 +1,2 @@ ++./test/schematron/cve-2025-49796_0.xml:2: element boo0: schematron error : /librar0/boo0 line 2: ++./test/schematron/cve-2025-49796_0.xml fails to validate +diff --git a/schematron.c b/schematron.c +index da603402..6e2ceeb7 100644 +--- a/schematron.c ++++ b/schematron.c +@@ -1414,27 +1414,15 @@ exit: + * * + ************************************************************************/ + +-static xmlNodePtr ++static xmlXPathObjectPtr + xmlSchematronGetNode(xmlSchematronValidCtxtPtr ctxt, + xmlNodePtr cur, const xmlChar *xpath) { +- xmlNodePtr node = NULL; +- xmlXPathObjectPtr ret; +- + if ((ctxt == NULL) || (cur == NULL) || (xpath == NULL)) + return(NULL); + + ctxt->xctxt->doc = cur->doc; + ctxt->xctxt->node = cur; +- ret = xmlXPathEval(xpath, ctxt->xctxt); +- if (ret == NULL) +- return(NULL); +- +- if ((ret->type == XPATH_NODESET) && +- (ret->nodesetval != NULL) && (ret->nodesetval->nodeNr > 0)) +- node = ret->nodesetval->nodeTab[0]; +- +- xmlXPathFreeObject(ret); +- return(node); ++ return(xmlXPathEval(xpath, ctxt->xctxt)); + } + + /** +@@ -1480,25 +1468,40 @@ xmlSchematronFormatReport(xmlSchematronValidCtxtPtr ctxt, + (child->type == XML_CDATA_SECTION_NODE)) + ret = xmlStrcat(ret, child->content); + else if (IS_SCHEMATRON(child, "name")) { ++ xmlXPathObject *obj = NULL; + xmlChar *path; + + path = xmlGetNoNsProp(child, BAD_CAST "path"); + + node = cur; + if (path != NULL) { +- node = xmlSchematronGetNode(ctxt, cur, path); +- if (node == NULL) +- node = cur; ++ obj = xmlSchematronGetNode(ctxt, cur, path); ++ if ((obj != NULL) && ++ (obj->type == XPATH_NODESET) && ++ (obj->nodesetval != NULL) && ++ (obj->nodesetval->nodeNr > 0)) ++ node = obj->nodesetval->nodeTab[0]; + xmlFree(path); + } + +- if ((node->ns == NULL) || (node->ns->prefix == NULL)) +- ret = xmlStrcat(ret, node->name); +- else { +- ret = xmlStrcat(ret, node->ns->prefix); +- ret = xmlStrcat(ret, BAD_CAST ":"); +- ret = xmlStrcat(ret, node->name); ++ switch (node->type) { ++ case XML_ELEMENT_NODE: ++ case XML_ATTRIBUTE_NODE: ++ if ((node->ns == NULL) || (node->ns->prefix == NULL)) ++ ret = xmlStrcat(ret, node->name); ++ else { ++ ret = xmlStrcat(ret, node->ns->prefix); ++ ret = xmlStrcat(ret, BAD_CAST ":"); ++ ret = xmlStrcat(ret, node->name); ++ } ++ break; ++ ++ /* TODO: handle other node types */ ++ default: ++ break; + } ++ ++ xmlXPathFreeObject(obj); + } else if (IS_SCHEMATRON(child, "value-of")) { + xmlChar *select; + xmlXPathObjectPtr eval; +diff --git a/test/schematron/cve-2025-49794.sct b/test/schematron/cve-2025-49794.sct +new file mode 100644 +index 00000000..7fc9ee3d +--- /dev/null ++++ b/test/schematron/cve-2025-49794.sct +@@ -0,0 +1,10 @@ ++<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"> ++ <sch:pattern id=""> ++ <sch:rule context="boo0"> ++ <sch:report test="not(0)"> ++ <sch:name path="	e|namespace::*|e"/> ++ </sch:report> ++ <sch:report test="0"></sch:report> ++ </sch:rule> ++ </sch:pattern> ++</sch:schema> +diff --git a/test/schematron/cve-2025-49794_0.xml b/test/schematron/cve-2025-49794_0.xml +new file mode 100644 +index 00000000..debc64ba +--- /dev/null ++++ b/test/schematron/cve-2025-49794_0.xml +@@ -0,0 +1,6 @@ ++<librar0> ++ <boo0 t=""> ++ <author></author> ++ </boo0> ++ <ins></ins> ++</librar0> +diff --git a/test/schematron/cve-2025-49796.sct b/test/schematron/cve-2025-49796.sct +new file mode 100644 +index 00000000..e9702d75 +--- /dev/null ++++ b/test/schematron/cve-2025-49796.sct +@@ -0,0 +1,9 @@ ++<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"> ++ <sch:pattern id=""> ++ <sch:rule context="boo0"> ++ <sch:report test="not(0)"> ++ <sch:name path="/"/> ++ </sch:report> ++ </sch:rule> ++ </sch:pattern> ++</sch:schema> +diff --git a/test/schematron/cve-2025-49796_0.xml b/test/schematron/cve-2025-49796_0.xml +new file mode 100644 +index 00000000..be33c4ec +--- /dev/null ++++ b/test/schematron/cve-2025-49796_0.xml +@@ -0,0 +1,3 @@ ++<librar0> ++ <boo0/> ++</librar0> +-- +2.49.1 + diff --git a/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49795.patch b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49795.patch new file mode 100644 index 0000000000000..bc84978053779 --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-49795.patch @@ -0,0 +1,69 @@ +From 62048278a4c5fdf14d287dfb400005c0a0caa69f Mon Sep 17 00:00:00 2001 +From: Michael Mann <mmann78@netscape.net> +Date: Sat, 21 Jun 2025 12:11:30 -0400 +Subject: [PATCH] [CVE-2025-49795] schematron: Fix null pointer dereference + leading to DoS + +Fixes #932 +--- + result/schematron/zvon16_0.err | 3 +++ + schematron.c | 5 +++++ + test/schematron/zvon16.sct | 7 +++++++ + test/schematron/zvon16_0.xml | 5 +++++ + 4 files changed, 20 insertions(+) + create mode 100644 result/schematron/zvon16_0.err + create mode 100644 test/schematron/zvon16.sct + create mode 100644 test/schematron/zvon16_0.xml + +diff --git a/result/schematron/zvon16_0.err b/result/schematron/zvon16_0.err +new file mode 100644 +index 00000000..3d052409 +--- /dev/null ++++ b/result/schematron/zvon16_0.err +@@ -0,0 +1,3 @@ ++XPath error : Unregistered function ++./test/schematron/zvon16_0.xml:2: element book: schematron error : /library/book line 2: Book ++./test/schematron/zvon16_0.xml fails to validate +diff --git a/schematron.c b/schematron.c +index 1de25deb..da603402 100644 +--- a/schematron.c ++++ b/schematron.c +@@ -1506,6 +1506,11 @@ xmlSchematronFormatReport(xmlSchematronValidCtxtPtr ctxt, + select = xmlGetNoNsProp(child, BAD_CAST "select"); + comp = xmlXPathCtxtCompile(ctxt->xctxt, select); + eval = xmlXPathCompiledEval(comp, ctxt->xctxt); ++ if (eval == NULL) { ++ xmlXPathFreeCompExpr(comp); ++ xmlFree(select); ++ return ret; ++ } + + switch (eval->type) { + case XPATH_NODESET: { +diff --git a/test/schematron/zvon16.sct b/test/schematron/zvon16.sct +new file mode 100644 +index 00000000..f03848aa +--- /dev/null ++++ b/test/schematron/zvon16.sct +@@ -0,0 +1,7 @@ ++<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"> ++ <sch:pattern id="TestPattern"> ++ <sch:rule context="book"> ++ <sch:report test="not(@available)">Book <sch:value-of select="falae()"/> test</sch:report> ++ </sch:rule> ++ </sch:pattern> ++</sch:schema> +diff --git a/test/schematron/zvon16_0.xml b/test/schematron/zvon16_0.xml +new file mode 100644 +index 00000000..551e2d65 +--- /dev/null ++++ b/test/schematron/zvon16_0.xml +@@ -0,0 +1,5 @@ ++<library> ++ <book title="Test Book" id="bk101"> ++ <author>Test Author</author> ++ </book> ++</library> +-- +2.49.1 + diff --git a/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6021.patch b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6021.patch index 8c5e83e680b50..215519a0a65f5 100644 --- a/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6021.patch +++ b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6021.patch @@ -1,31 +1,29 @@ -From ebe46ba82340cea8f030e0c0b3bb89aabad83674 Mon Sep 17 00:00:00 2001 -Message-ID: <ebe46ba82340cea8f030e0c0b3bb89aabad83674.1750520310.git.sam@gentoo.org> +From 17d950ae33c23f87692aa179bacedb6743f3188a Mon Sep 17 00:00:00 2001 From: Nick Wellnhofer <wellnhofer@aevum.de> Date: Tue, 27 May 2025 12:53:17 +0200 -Subject: [PATCH] tree: Fix integer overflow in xmlBuildQName - -This issue affects memory safety and might receive a CVE ID later. +Subject: [PATCH] [CVE-2025-6021] tree: Fix integer overflow in xmlBuildQName Fixes #926. - -(cherry picked from commit acbbeef9f5dcdcc901c5f3fa14d583ef8cfd22f0) --- - tree.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) + tree.c | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tree.c b/tree.c -index f097cf87..76112e22 100644 +index f097cf87..5bc95b8a 100644 --- a/tree.c +++ b/tree.c -@@ -22,6 +22,7 @@ - #include <stddef.h> - #include <limits.h> - #include <ctype.h> -+#include <stdint.h> - #include <stdlib.h> +@@ -47,6 +47,10 @@ + #include "private/error.h" + #include "private/tree.h" - #ifdef LIBXML_ZLIB_ENABLED -@@ -167,10 +168,10 @@ xmlGetParameterEntityFromDtd(const xmlDtd *dtd, const xmlChar *name) { ++#ifndef SIZE_MAX ++ #define SIZE_MAX ((size_t)-1) ++#endif ++ + int __xmlRegisterCallbacks = 0; + + /************************************************************************ +@@ -167,10 +171,10 @@ xmlGetParameterEntityFromDtd(const xmlDtd *dtd, const xmlChar *name) { xmlChar * xmlBuildQName(const xmlChar *ncname, const xmlChar *prefix, xmlChar *memory, int len) { @@ -38,7 +36,7 @@ index f097cf87..76112e22 100644 if (prefix == NULL) return((xmlChar *) ncname); #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -@@ -181,8 +182,10 @@ xmlBuildQName(const xmlChar *ncname, const xmlChar *prefix, +@@ -181,8 +185,10 @@ xmlBuildQName(const xmlChar *ncname, const xmlChar *prefix, lenn = strlen((char *) ncname); lenp = strlen((char *) prefix); @@ -50,8 +48,6 @@ index f097cf87..76112e22 100644 ret = (xmlChar *) xmlMallocAtomic(lenn + lenp + 2); if (ret == NULL) return(NULL); - -base-commit: 3a1c25f5e7bbf8180690cf5c4c5a9fc1caf55c62 -- -2.50.0 +2.49.1 diff --git a/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6170.patch b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6170.patch new file mode 100644 index 0000000000000..df01188e03ab5 --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.13.8-CVE-2025-6170.patch @@ -0,0 +1,102 @@ +From 5e9ec5c107d3f5b5179c3dbc19df43df041cd55b Mon Sep 17 00:00:00 2001 +From: Michael Mann <mmann78@netscape.net> +Date: Fri, 20 Jun 2025 23:05:00 -0400 +Subject: [PATCH] [CVE-2025-6170] Fix potential buffer overflows of interactive + shell + +Fixes #941 +--- + debugXML.c | 15 ++++++++++----- + result/scripts/long_command | 8 ++++++++ + test/scripts/long_command.script | 6 ++++++ + test/scripts/long_command.xml | 1 + + 4 files changed, 25 insertions(+), 5 deletions(-) + create mode 100644 result/scripts/long_command + create mode 100644 test/scripts/long_command.script + create mode 100644 test/scripts/long_command.xml + +diff --git a/debugXML.c b/debugXML.c +index ed56b0f8..452b9573 100644 +--- a/debugXML.c ++++ b/debugXML.c +@@ -1033,6 +1033,10 @@ xmlCtxtDumpOneNode(xmlDebugCtxtPtr ctxt, xmlNodePtr node) + xmlCtxtGenericNodeCheck(ctxt, node); + } + ++#define MAX_PROMPT_SIZE 500 ++#define MAX_ARG_SIZE 400 ++#define MAX_COMMAND_SIZE 100 ++ + /** + * xmlCtxtDumpNode: + * @output: the FILE * for the output +@@ -2795,10 +2799,10 @@ void + xmlShell(xmlDocPtr doc, const char *filename, xmlShellReadlineFunc input, + FILE * output) + { +- char prompt[500] = "/ > "; ++ char prompt[MAX_PROMPT_SIZE] = "/ > "; + char *cmdline = NULL, *cur; +- char command[100]; +- char arg[400]; ++ char command[MAX_COMMAND_SIZE]; ++ char arg[MAX_ARG_SIZE]; + int i; + xmlShellCtxtPtr ctxt; + xmlXPathObjectPtr list; +@@ -2856,7 +2860,8 @@ xmlShell(xmlDocPtr doc, const char *filename, xmlShellReadlineFunc input, + cur++; + i = 0; + while ((*cur != ' ') && (*cur != '\t') && +- (*cur != '\n') && (*cur != '\r')) { ++ (*cur != '\n') && (*cur != '\r') && ++ (i < (MAX_COMMAND_SIZE - 1))) { + if (*cur == 0) + break; + command[i++] = *cur++; +@@ -2871,7 +2876,7 @@ xmlShell(xmlDocPtr doc, const char *filename, xmlShellReadlineFunc input, + while ((*cur == ' ') || (*cur == '\t')) + cur++; + i = 0; +- while ((*cur != '\n') && (*cur != '\r') && (*cur != 0)) { ++ while ((*cur != '\n') && (*cur != '\r') && (*cur != 0) && (i < (MAX_ARG_SIZE-1))) { + if (*cur == 0) + break; + arg[i++] = *cur++; +diff --git a/result/scripts/long_command b/result/scripts/long_command +new file mode 100644 +index 00000000..e6f00708 +--- /dev/null ++++ b/result/scripts/long_command +@@ -0,0 +1,8 @@ ++/ > b > b > Object is a Node Set : ++Set contains 1 nodes: ++1 ELEMENT a:c ++b > Unknown command This_is_a_really_long_command_string_designed_to_test_the_limits_of_the_memory_that_stores_the_comm ++b > b > Unknown command ess_currents_of_time_and_existence ++b > <?xml version="1.0"?> ++<a xmlns:a="bar"><b xmlns:a="foo">Navigating_the_labyrinthine_corridors_of_human_cognition_one_often_encounters_the_perplexing_paradox_that_the_more_we_delve_into_the_intricate_dance_of_neural_pathways_and_synaptic_firings_the_further_we_seem_to_stray_from_a_truly_holistic_understanding_of_consciousness_a_phenomenon_that_remains_as_elusive_as_a_moonbeam_caught_in_a_spiderweb_yet_undeniably_shapes_every_fleeting_thought_every_prof</b></a> ++b > +\ No newline at end of file +diff --git a/test/scripts/long_command.script b/test/scripts/long_command.script +new file mode 100644 +index 00000000..00f6df09 +--- /dev/null ++++ b/test/scripts/long_command.script +@@ -0,0 +1,6 @@ ++cd a/b ++set <a:c/> ++xpath //*[namespace-uri()="foo"] ++This_is_a_really_long_command_string_designed_to_test_the_limits_of_the_memory_that_stores_the_command_please_dont_crash foo ++set Navigating_the_labyrinthine_corridors_of_human_cognition_one_often_encounters_the_perplexing_paradox_that_the_more_we_delve_into_the_intricate_dance_of_neural_pathways_and_synaptic_firings_the_further_we_seem_to_stray_from_a_truly_holistic_understanding_of_consciousness_a_phenomenon_that_remains_as_elusive_as_a_moonbeam_caught_in_a_spiderweb_yet_undeniably_shapes_every_fleeting_thought_every_profound_emotion_and_every_grand_aspiration_that_propels_our_species_ever_onward_through_the_relentless_currents_of_time_and_existence ++save - +diff --git a/test/scripts/long_command.xml b/test/scripts/long_command.xml +new file mode 100644 +index 00000000..1ba44016 +--- /dev/null ++++ b/test/scripts/long_command.xml +@@ -0,0 +1 @@ ++<a xmlns:a="bar"><b xmlns:a="foo"/></a> +-- +2.49.1 + diff --git a/dev-libs/libxml2/libxml2-2.13.7.ebuild b/dev-libs/libxml2/libxml2-2.13.7.ebuild index e9263968946b0..fd02ad0f40abf 100644 --- a/dev-libs/libxml2/libxml2-2.13.7.ebuild +++ b/dev-libs/libxml2/libxml2-2.13.7.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{10..13} ) PYTHON_REQ_USE="xml(+)" inherit autotools python-r1 multilib-minimal -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/libxml2/libxml2-2.13.8-r1.ebuild b/dev-libs/libxml2/libxml2-2.13.8-r1.ebuild index bf99e8749a1dd..ce318bca07205 100644 --- a/dev-libs/libxml2/libxml2-2.13.8-r1.ebuild +++ b/dev-libs/libxml2/libxml2-2.13.8-r1.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="xml(+)" inherit autotools python-r1 multilib-minimal -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/libxml2/libxml2-2.13.8-r2.ebuild b/dev-libs/libxml2/libxml2-2.13.8-r2.ebuild new file mode 100644 index 0000000000000..8faab5ffc8290 --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.13.8-r2.ebuild @@ -0,0 +1,195 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{11..14} ) +PYTHON_REQ_USE="xml(+)" +inherit autotools python-r1 multilib-minimal + +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit git-r3 +else + inherit gnome.org + 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 + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="examples icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-build/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.12.9-icu-pkgconfig.patch + "${FILESDIR}"/${PN}-2.13.8-CVE-2025-49794-CVE-2025-49796.patch + "${FILESDIR}"/${PN}-2.13.8-CVE-2025-49795.patch + "${FILESDIR}"/${PN}-2.13.8-CVE-2025-6021.patch + "${FILESDIR}"/${PN}-2.13.8-CVE-2025-6170.patch + +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + #elibtoolize + + eautoreconf +} + +multilib_src_configure() { + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + --with-legacy \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # <obz@gentoo.org> + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/dev-libs/libxml2/libxml2-2.13.8.ebuild b/dev-libs/libxml2/libxml2-2.13.8.ebuild index 56e3d37836141..7b35f65a4185e 100644 --- a/dev-libs/libxml2/libxml2-2.13.8.ebuild +++ b/dev-libs/libxml2/libxml2-2.13.8.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="xml(+)" inherit autotools python-r1 multilib-minimal -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/libxml2/libxml2-2.14.4-r1.ebuild b/dev-libs/libxml2/libxml2-2.14.4-r1.ebuild index f8c49ee9c2260..4c63126c61e8b 100644 --- a/dev-libs/libxml2/libxml2-2.14.4-r1.ebuild +++ b/dev-libs/libxml2/libxml2-2.14.4-r1.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="xml(+)" inherit python-r1 meson-multilib -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/libxml2/libxml2-2.14.4.ebuild b/dev-libs/libxml2/libxml2-2.14.4.ebuild index cea637a5d7a2c..738064b3f7dcc 100644 --- a/dev-libs/libxml2/libxml2-2.14.4.ebuild +++ b/dev-libs/libxml2/libxml2-2.14.4.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="xml(+)" inherit python-r1 meson-multilib -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/libxml2/libxml2-2.14.5.ebuild b/dev-libs/libxml2/libxml2-2.14.5.ebuild new file mode 100644 index 0000000000000..738064b3f7dcc --- /dev/null +++ b/dev-libs/libxml2/libxml2-2.14.5.ebuild @@ -0,0 +1,183 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{11..14} ) +PYTHON_REQ_USE="xml(+)" +inherit python-r1 meson-multilib + +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit git-r3 +else + inherit gnome.org + 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 + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +# see so_version = v_maj + v_min_compat for subslot +SLOT="2/16" +IUSE="icu +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/libxml2-2.14.2-no-git.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + sed -e "/^dir_doc/ s/meson.project_name()$/\'${PF}\'/" -i meson.build || die +} + +python_configure() { + local emesonargs=( + $(meson_feature icu) + $(meson_native_use_feature readline) + $(meson_native_use_feature readline history) + -Dpython=enabled + ) + mkdir "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + meson_src_configure + popd >/dev/null || die +} + +multilib_src_configure() { + local emesonargs=( + -Ddefault_library=$(multilib_native_usex static-libs both shared) + $(meson_feature icu) + $(meson_native_use_feature readline) + $(meson_native_use_feature readline history) + -Dpython=disabled + + # There has been a clean break with a soname bump. + # It's time to deal with the breakage. + # bug #935452 + -Dlegacy=disabled + ) + meson_src_configure + + if multilib_is_native_abi && use python ; then + python_foreach_impl python_configure + fi +} + +python_compile() { + pushd "${BUILD_DIR}" >/dev/null || die + meson_src_compile + popd >/dev/null || die +} + +multilib_src_compile() { + meson_src_compile + + if multilib_is_native_abi && use python ; then + python_foreach_impl python_compile + fi +} + +multilib_src_test() { + meson_src_test + + if multilib_is_native_abi && use python ; then + python_foreach_impl meson_src_test + fi +} + +python_install() { + pushd "${BUILD_DIR}" >/dev/null || die + meson_src_install + python_optimize + popd >/dev/null || die +} + +multilib_src_install() { + if multilib_is_native_abi && use python ; then + python_foreach_impl python_install + fi + + meson_src_install +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # <obz@gentoo.org> + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/dev-libs/libxml2/libxml2-9999.ebuild b/dev-libs/libxml2/libxml2-9999.ebuild index 2487d92bd5dc3..1d1ab606ab4ea 100644 --- a/dev-libs/libxml2/libxml2-9999.ebuild +++ b/dev-libs/libxml2/libxml2-9999.ebuild @@ -9,7 +9,7 @@ PYTHON_COMPAT=( python3_{11..14} ) PYTHON_REQ_USE="xml(+)" inherit python-r1 meson-multilib -XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_HOME="https://www.w3.org/XML/2004/xml-schema-test-suite" XSTS_NAME_1="xmlschema2002-01-16" XSTS_NAME_2="xmlschema2004-01-14" XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" diff --git a/dev-libs/xbyak/Manifest b/dev-libs/xbyak/Manifest index e8d8205aeb34e..72a30f649c6e3 100644 --- a/dev-libs/xbyak/Manifest +++ b/dev-libs/xbyak/Manifest @@ -1,3 +1,5 @@ DIST xbyak-5.73.tar.gz 214021 BLAKE2B bf7ab78df7ac3f5a8860b3a613957bad8b6faba523126f6f4ce94be4ce25da8b91a418ac2445d8d706f09fc7434a8ab9ef6f63c56ef0b7860290fe6801849fe7 SHA512 1c2eb73c2e9b66d4b4f7689e071ea8ba8a3b7f0e05ef885ad35ca89f706772bd6e8ad448581c954b1a24f424ebd2db4e420410450a951fda7e02d6fd2e5e9a67 +DIST xbyak-7.28.tar.gz 293489 BLAKE2B 25a55d682d4219d50f09325e6455dc3c3fafa2d432d95fb61cb93589fec51e7ce8dac01a50a81e1354797d48e1687a08bbb040f08e6262dc59a1bff5378ef866 SHA512 443c5c0f14182e46b07af18ee5bd631a0557c37c6b92f6b19a3100dcc8f7b8baa100b7f142fc182cb8d74537bd69459f1065b39078a8a8d02f247133c9c46be4 EBUILD xbyak-5.73.ebuild 426 BLAKE2B e5b44a2f5460ae0e753a804f9953b086b677802c4de95e5b545054c609d42ccedc050a154077a97362ec2f1d692018d9d765c91d8f3bf77f5ac3b58ed6ae4b38 SHA512 66bac49123b93cf8458f3b3b8583a3b502d78f65d9040cb9f61021e99fceb0aec17d51a4eb21459f1fe4978b95ec881dad7f7b053b28b5343e2da070bb25f878 +EBUILD xbyak-7.28.ebuild 473 BLAKE2B 57390f5fd69a89629fdeb139a456bd80661fe764e498d0b46676082d0e687abafa0d962ad70d1d4241c70975a8c92631ab1ebbfbeafd4ed8afd31a08467eb427 SHA512 4e5a13d794c555a94d434648ee20f30b2119f0ab8d72d9c577024be0aecfebb52e74aec24679ec875a90de5154aa610b28571dee7d6012bb38b32a8aa6e2a09a MISC metadata.xml 294 BLAKE2B 6ff08f098a11aeedc66f4d1a7f11063f90e97707b1761c18859dfe849ad5263b251667eb9076df58a0a3abde48a0e3a468a7df22230df38bebedb62ff3cfb68e SHA512 fd0a122d24814090c80745bf2ecead1fe87722bcdd19464bd3a48f4d09d067c9dae8153d8c04c62cbf5008ba13f44509080a950f2acad9710bed04e6fc040b76 diff --git a/dev-libs/xbyak/xbyak-7.28.ebuild b/dev-libs/xbyak/xbyak-7.28.ebuild new file mode 100644 index 0000000000000..6abe95ceb47e9 --- /dev/null +++ b/dev-libs/xbyak/xbyak-7.28.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="JIT assembler for x86(IA-32)/x64(AMD64, x86-64)" +HOMEPAGE="https://github.com/herumi/xbyak" +SRC_URI="https://github.com/herumi/xbyak/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( dev-lang/yasm ) +" + +src_test() { + emake -C test test +} |