sys-libs/ncurses: Sync with Gentoo

It's from Gentoo commit 0e65dd1715be4bd43b55e74115a1a760be5047d3.

Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org>
This commit is contained in:
Flatcar Buildbot 2026-02-02 07:31:46 +00:00
parent 1f9ca4329f
commit 4e64c9d39e
5 changed files with 559 additions and 3 deletions

View File

@ -124,8 +124,47 @@ DIST ncurses-6.5-20250726.patch.gz 47760 BLAKE2B 316109ff7e38c6ecdec115e7980d307
DIST ncurses-6.5-20250726.patch.gz.asc 729 BLAKE2B 0317fe9d4251514a01848b804e1c0d89cbadf6645127bcdb5b854a4a60346de1ffc5464454ac9cb4e930eed566e65e3c5b9624b2e7b76b264f4bd9cbb6f5e70d SHA512 847d6de3cf0ba49ed6cafeae269966d1687e061eb546b0e05ab155af20309ab7fbe0eed6e4d226bc3859a8aa7c526d2781233bf06e9862120c57f2791c2e52f0
DIST ncurses-6.5-20250802.patch.gz 4000 BLAKE2B 18c7855d0a16ad24947b8f9099729dde3d4bf5509d310ec6fe48e52436a8e9c151b963020c798484184989c9816266ef21f5545d73e5d931a8c07da318612e2d SHA512 ef29aeb611f7362343356b50f602298e52727df62dea661dd9b831f440dd9b3ca3b4e0a57011222db9e8016fa06413ef97b83936445353dbb11993f08936d95f
DIST ncurses-6.5-20250802.patch.gz.asc 729 BLAKE2B 20bdd09573b76d1f37964f3af89e96fa481a8c3cd3872de5b8c1fdffc718c4777ef7a5a99046b17f06a92a9266f46ac29df5e21c473ed3fbaf1e03fc557157f3 SHA512 e2398af3d20db4fff9d724a8c7d6da32c094b95dc8156c46f6f5f3aaa3f53b9b0eb739bb6be8afab54863180ab56e16168056b0852ff3aefce0875a32f2770b8
DIST ncurses-6.5-20250809.patch.gz 46897 BLAKE2B 42c023edabcfcd3fc83941b9f250d930b69a1ee1b328b68512bbd0499f47f7ef7e0f7cd292fd5a263fc35a25d25a51893cacfe3d7efd741209d8745afb2cec53 SHA512 b4186a62aa987f6d258322ef2288d3e4742915263baddcb7c1d9ca31b8097abb93d53cfc96ce205d9aeb6793d207630a34420541f47cd9eb328701fe83ec8757
DIST ncurses-6.5-20250809.patch.gz.asc 729 BLAKE2B 480600e7cb9032b38aa004a1dd22a917b31c19b7a530c1264e52ffbb775033b656db4a00bad6477b71507ffa355c6e950d0a4bd42fdecceba3756905e44d0421 SHA512 0fde10847f267bb2856ce4bcfff5a7c06d59a6d626e94cdcc575f95a97a1b4adf8b89859a01970451ff1613242d9cf757c64e0d4ef55428db49eb970a8da271f
DIST ncurses-6.5-20250816.patch.gz 119512 BLAKE2B 57ea32c56c3d7aa5dcf46c4432974b0b252e6a30e9166a14873f0621746366f6273161c640b98181ebed59604ecfa975740e509f56d3bc31a7186d5e61364226 SHA512 7723c14dc469612c0b5d0eeb02117f46c2ce06e2b303d0411b0ffe92f1149adc90b92fc8d66dd877f11d6df3ad019ef2d36d50564c531b8ebccec82083dca9d5
DIST ncurses-6.5-20250816.patch.gz.asc 729 BLAKE2B 8f799e324cc3f7fd02bffa481101fe447c544b41ff0839c737101731945331c9a4275a53d99d08cc8d7d27635b5d8431d3e620ed346124463817ea676beb3dc7 SHA512 94b3bf84f172c28eb01fb341d4f578c80e3aacfc218e0288cd9846981cbd205af6302432acf9d2616dc51cd6acfd7c45942366c6b1de2f3882896becb064a7ab
DIST ncurses-6.5-20250823.patch.gz 44210 BLAKE2B 26dac2ceb0818800e82e13fa5cff5df8cedff4c70f6326b2d3c946131099e37868eecaf1f14f3e11d548f392061a0fa2a395c9737c557a504393167687528a67 SHA512 d8ca6b886a4dd07d77cee10dfd63529580a2b7951c730f30c56c29d1451aed8d90f0a7ce0de9476c96efebdfcc341e1180c3076383da10bf9cb643ac4a4ba93b
DIST ncurses-6.5-20250823.patch.gz.asc 729 BLAKE2B c9892e424bcf8737019876d4929e383bc95a047b5af20955700f8d88be57453f1b78aae4d88370529a22cbec12ccdb8a5bb3f4c81c3f0a983d81aecb5b438c91 SHA512 eeea41aa72b1c9006dff584dfe559e766330d4715518c2356362dbc024d468b16430a6c6dd46823e0c25b9f664e090f5eb464e929cc2c15e725253e1702f7e6d
DIST ncurses-6.5-20250830.patch.gz 13319 BLAKE2B aa47b1f01985f56e5e2b5cfca44e3381140fac516dd93ba4b6872fa87a3d25d702c25836746e98e991759ffdd5e52daa22905de2648de93ea28c1a0b5634a2aa SHA512 1905c1c6ddc3df31e51c828c48fe81af7b93991195853d5d04031b10198e1c5eb2653e3552ec894867600a23c7e5570ec104e711406b1a7f47579a272ed38147
DIST ncurses-6.5-20250830.patch.gz.asc 729 BLAKE2B 565e7a6150554603b27a005c0dc3c56599ee39efcf40959aba962fdec638b2affc4824d8156d8c70b0c305e126b1ebb2d325a211168ec19aa17dbef2c68a5197 SHA512 126d67074b46c1f529a632a55ffabf33f850322be57f7a03f7c4c5c4a69dca89a773cea64b943217af6eb2fbb9ed2341545fd7bf6c7452b6a23e250296bd5717
DIST ncurses-6.5-20250913.patch.gz 80129 BLAKE2B f42227602fcf1651306904ef60f43ee783c9f1e01600b6083809e82a05a9c70fed773c9eca163234a0381f4a6885906cbcff8672ad418a79384f8fdc765678ef SHA512 8ebc583e6f7454f05210b1d31d5f369facb918c6ec01faa649160ea60458dc89a15ae675b4b6a91ef80d728730d78be21ec2c7afa8d30b4bb7f1b572e9713e8d
DIST ncurses-6.5-20250913.patch.gz.asc 729 BLAKE2B 82f637fd79d8ddfa7ee9c69a39511fe91e4bb0e83399ac51bd9f662b10a1d76e511c72e1856b3aedaa2a2958a26f339e526c27b5bc5d30d3b79b1a716c101893 SHA512 4a0dfce56ce8d594b8295437ca7325da41f4907090663d5fa43a9d8e41a30b4c746463bd980988f15c9ea474090370b378fec52eac371aa2a4ae1b5c75ccf5da
DIST ncurses-6.5-20250920.patch.gz 37175 BLAKE2B 207cc906673fad63c664dd1f31cff7e2a417e90f395d475d1d934eb61921691d84ea12d415ac746d9708384118ad0835598316b55ad8e79cc887690ce5656839 SHA512 cc21a8f3cdb512a6742aa9760e223114a5fbfafdc05e4bc4413f0b3ec32ede1c43d48dc1dd98bbe572db4fa39a6e1c92de356f6d7d79654b5b9377eb6cba5cf9
DIST ncurses-6.5-20250920.patch.gz.asc 729 BLAKE2B d2294d67deffb414a52f7bd1e2ad63eb00342873c3474a4a8f3c1388a3c3b6fcd681318bcd9fac809d2ed003ae3149278a384e7089a4da8980b63f5e5115e169 SHA512 21ed7b930ac4e3024a1576e5da19220d45b3d27de93846c29e686e7052af97cefb3d167f87a00f7f176234ab238864d05a55bf14c1c18fb08eab824d4d99c97a
DIST ncurses-6.5-20250927.patch.gz 8267 BLAKE2B 728d22b33733e5da996898ca55555e47ade97928d1077ec13dd92a44291d222eecf75174fb142bba0806b9ee7fddde85ba700b91f96aa12a7dbf214785683634 SHA512 bd3029306b024301b2500fe2871d6bf7e0e92ff83ec78080825e5fc5bed0ed63736a798d32c4a9955e30559a2fbf095a7ba5374b1aa04fed8b46b64fd9cdd245
DIST ncurses-6.5-20250927.patch.gz.asc 729 BLAKE2B 925cfcb07449925e4c3bbe1fb25416cba78756c326c98ba58f1155d4317900465ca9b03ca51eadd60c8653a2e6967da204c6fb73a777665d0edfc77b55226271 SHA512 cfc2ec9a1228600cac21fcc206f3d5b72da4f4d9f70cf1315f927463c87f1090d79e875594adad93cbe01f9e59873546eb352832cf49039132ef280621e4617f
DIST ncurses-6.5-20251004.patch.gz 203325 BLAKE2B 4c171114cc9cb567cb2246b83a8c32ecb1addb22a70ab4c7637fdd6da5e3b198cb5ac73776bde3b38c98a7334f405c7bb1df492b05864cc04ea82a9dac21b79f SHA512 b0d28be367d00ea1c6151b57dcc98767831ee3c5f9823b3cd0f1d8b099b0a0bb95c3d08d02ac766988a064dc83e2a264cf8ae91ed1fbd8f3555bd943e86b62a4
DIST ncurses-6.5-20251004.patch.gz.asc 729 BLAKE2B 25024c8a8f1dcc03383052df5566955835869b1f1082e7fc294bece49fb2b6e523d9611a3f160fed69a63e1eaa8dd5cf40a670351c4aa302e8841ffed4d740ce SHA512 556230f44629b5d01b9b67e0a71b607b5d822330dcf046a2a99e6b2abb61fd60b201323b6e148a66157c3dc667b78fd1943d6787163fc7293fac7df5a151dad6
DIST ncurses-6.5-20251010.patch.gz 206836 BLAKE2B 86661e45894bf896ef0f3157571f948d0291db5c7a2018a66bc92ecb9a54504efd0cc142582bcd557da7a48920f30702238f6682fe3f72b2002bcaf72211d7a1 SHA512 410818b46b50b640a95ff4946ddc3a7911c27a702c80edf4c14d24116c033fac4431e195bf71ac4a4be19db4d8e486e2710e89be3e6cfe15739ec1c9bb305788
DIST ncurses-6.5-20251010.patch.gz.asc 729 BLAKE2B 8f96014a3aed043d3ef9b298d5478b4d539976a315c4e94587c15d94d54582a5c0b47124b5516cd6c74cb29111b6a24e62e1a9849c7258434f79f946a4be31a4 SHA512 256148ddcac8a5bcc7f7e6f8cab527d8a1e14fa59bc5e5f05225f385be414b80d2defdb3e7929393417e128961de12d7c5a91e1482c1234f20530d469a44a91f
DIST ncurses-6.5-20251018.patch.gz 161296 BLAKE2B 03ae4709f8ba67039b0b3926b29aa5c591d86cb1de723c0b0b6d8feec8ac48e926c111ba74e3b5f2c84b2d70d69c4c6741f1d74074f29ddfab8f55c18d4c7476 SHA512 e2f53a6104313dc395ad8093faac3af14703363cdfd4d9ead90afd051ab2670ead40ad07405ad9a502cd5f186f7f34c07e6cb20ed28c3ffc374beb2931260d4d
DIST ncurses-6.5-20251018.patch.gz.asc 729 BLAKE2B 86e874f0d74f9b00a2ee1f66bcecc531681428e0dc98de125aec67de32ce84b1aa44bb398495df273c9ec18061349f87184d0c59cb6518a02c409fabef8e1bb3 SHA512 71eaf0969e90c875b8d301a162b665bc0a0a7091b747133ab443e0851d034fecdc6e3000b29ca18007d390039fad95e7d2cc046b04831c759767617fb3b139e8
DIST ncurses-6.5-20251025.patch.gz 14491 BLAKE2B 6cd6c3f3ee34b2819d3525723e0ed4755f61fb24daab2113543ed4295cfa83f79473a0ec78ccd7e8fda1c9ccce4cfb01d0199beea8c3773a9028ae618c6c90ef SHA512 405c3599e93895f432dcb3c9be4fbadb61f24ae2c16a6a3e3e4f57c8eb24a679d7233d13380a49f5d1e8adc3bee891582ff9eb512e15799d3a6cb39d3d4d7593
DIST ncurses-6.5-20251025.patch.gz.asc 729 BLAKE2B 3dd848d6d54262142878ed3e069d022ce78f26a6cd4bd6e6865ac40fb0c8a9da00ceabbca63a6d8f3fa329aed149dfef1e6650274e1eee7669c3d151a975ef4f SHA512 acfbed338e670f5762bc0f8e1b68caa76104cef05ac5e5522510ef3b90554f7806526be0bcf4e59a44b119af935c713dd6d43e0bbba9869fc30fcf2be21287a8
DIST ncurses-6.5-20251101.patch.gz 17400 BLAKE2B a58218161188f14bc3d21a7c19189630bf364e3abc5a1dabe70e6f986371e23430996c5037f7f668d9cb452532c744cba5e895571d44aee79ac2e14ca5cb72d6 SHA512 eb65a8789a4946ef8630fd93ac60fc690a32b2b4b8ca336f07a86404e5f677e7d85e475a57642959e5c6c7affc3fc2a559bcecd90756261c90221c02489886c2
DIST ncurses-6.5-20251101.patch.gz.asc 729 BLAKE2B c64b32815ced635c41f39f0309d7305b82c6ae00d5bd7f23ab77c56cf0bc265901ac05bbf1768e6645305894c5200cc08b6d88056e10b736b6409eaecff5f31f SHA512 7c77f189c81c68fcaa685163ed4b58cb1141c72864d8bf74e40c6e2d02a14de4e158537de1259010126893ba543403f99b4768bb06934ba21c825e76ee81250f
DIST ncurses-6.5-20251115.patch.gz 42799 BLAKE2B 26fecf92c968b85867edbae4728f467693793cce601548d5c043a369ea1e8c03f601bfa6fa972f21732eee9a0e3a96dcc88c6dd01e9cbffa16f8b91d20aa10ec SHA512 4b18e92526b69a8ee5c98814bc8de8c52ddbd7acd8b6e41786244b3f2f37cb436c93dbb398fe02d5af6d8bfac476aa04e9e94e27166b4f143cdd42809a30c932
DIST ncurses-6.5-20251115.patch.gz.asc 729 BLAKE2B 739bbcd9acc1153b0bd09e9ab1528ed2c5b1d3a6fa15f03b1a5bbf4efa177f631bb4348485e908c184722a8810af7e763b7e37a3dab53cdb7f7a09963c5f64da SHA512 f03991a5069f490fbb79230c47388219adbd9d0df8134ecf33e3072df049055967d29e8dd4ee047d752c1286d4f99bd7706c63d63c8c946ebcf926cd7c7d6100
DIST ncurses-6.5-20251122.patch.gz 4970 BLAKE2B 9b80805baf3c29bea66434b553c126958ca157f7e5f9008173f31616af447b086c01db9fd16027aa253fd890dee78540426b6faceda265dfe0acbfb40dde816e SHA512 17199617592baa5349554308a50f469078ec97b64659bf6064f7e2247dced030c85409341d97767518a57e3b0dad90306d472c8ac4bb42258448fcf4b9ce8981
DIST ncurses-6.5-20251122.patch.gz.asc 729 BLAKE2B 1e2fc221870490d02857ad8182b750d3704ca31fc16250e7febee25ccc8a9f33f2c8e2242fac577f21a2ab1d0c70ad0fb68823e932f9fc5dee7fd6f094921196 SHA512 c94a7543bf9d20be4761e651613f7f3ee2fe10153c0a7dc792c35b74f8e78b0e53c0303e754a3a3d6c17ba7439be5d4f0bea0f9686886c853815b293dbb54176
DIST ncurses-6.5-20251123.patch.gz 3595 BLAKE2B de3f5e9943322f3517eaec91e7b66eb6d5cde63da7208ce330ceec3b7bdba1be999d622029eeff0bea153f6f075bfbcb7f1aceeb36cb774e148162fc77c2b807 SHA512 50ea77cc1f050fd15f9c72bf22ed511e13ed37a44364fbd4d90625f6ae8dd2368f128c6070f137cf4570b8595c77713c05f24459aab9b5a0e67500b79649c650
DIST ncurses-6.5-20251123.patch.gz.asc 729 BLAKE2B 26de469564d95dad59c933cd3b4a75ceb16a0ecb186a85a6ebcfff3e910887ec476ddf854b676558fa40f0e4b9d4b1508c6f2d33b2c65f32af42f33ad0aae0c9 SHA512 f1f5eecf1d0dc579a62e7c5cba3a38522282cfb608bdaadea5e39cfa8ab2d3f093a28c05ea657ef13a81265fdd4e7e00ab8aed4c158a6ef63b8dfc0e174b2f72
DIST ncurses-6.5-20251129.patch.gz 3455 BLAKE2B dfd89cd780e415f3a62a3b8819d8f114da76b8fb05113fa71a3748d85e5692be02fc062f3fb943d3289ee6a3eb1287ac15e2241ccb15851e642e881e14de72b0 SHA512 60b0f7feb418a0074e04c812280470bcb9547ecf037f3e8cef93991cfe37e6bcbbd04494de5e669c242f1ab8d01ea38378e079f8fe712f7f2ccf47f44aa8cb21
DIST ncurses-6.5-20251129.patch.gz.asc 729 BLAKE2B 35455c3155739005c4e019013483144c4db597bb32e822c81c7491fb8246d6c3eac060a43187c97f49121c78a31e3e6142181b04f9fa8018e8284586818711b9 SHA512 21262705f09b945ce7dc0deba62c265779d03bad75c1307198f7454e17bd8a147a0c3145460a4d4fd0073d4024508a4fab8b53c68e930bbcb942ff193e8a4185
DIST ncurses-6.5-20251206.patch.gz 19900 BLAKE2B 6207671b1cac347a3eaf17ed5b6f831299503f9d2bb85eecea0f4bb1e79674dfe8ea513d96b80fa4e1e1d608e1fc3b670b99fe9126662b94e8abe197b7631fac SHA512 a9b9338f5bd185d281b8659ae56fed6ba7d3d94c8d22274f55de28fe1345e9bfc16e50457e2069d5c15bb7211cdc69a875ca9ef7eaac9ffd831719a074bb8005
DIST ncurses-6.5-20251206.patch.gz.asc 729 BLAKE2B ddfffd8da860a3551c3e3cbd4ed4248fb5490b5102392c3ed122bebc334f545b3bb0881cdcf77ae754b03d0f502ba6ed22f8c477ec806ef650c16bc4fb7fadb7 SHA512 b1206bfc8965b5e649409508c68a8c7db74f4afb51960b9f043ae77d2ac4570ecc0a333d991bf7a94d324288365a4923fc0154207679a4439f77d9bde95c8e95
DIST ncurses-6.5-20251213.patch.gz 3444 BLAKE2B 6bd6f2ec52b0388388e238abfbe63b1d8f7eec7b07cd00e9c1bd4f30b72810a6bc65080e644f7a2c8ac20548f74a110bf858ba7d6a0385d1f2735965c3c315f9 SHA512 fdef9635e4de7001309a428efcccbb6ab5c6be532e5fad74456a733bf5a56a3be8c03c71f2c8add1dffa4cdd42d4373a65ad19afcb40e641802d1f458ae7d13b
DIST ncurses-6.5-20251213.patch.gz.asc 729 BLAKE2B f9b41ea4a29d06b21561284b398874b5e145557a6119516a35bcee27a3652af3c1f289b78b0438f65243aaca63a0e84fd7f20bee61fd2c942b7118c60aca164e SHA512 cc14b5d519405f6d784fdf27db14c9099717263ebc7fad0a04dceb68c39d5cee7c4a6f2b80eb69e1e223b75d30f4b4b075af5831f1bd7e440f93e7b56c9e8c0b
DIST ncurses-6.5-20251220.patch.gz 46642 BLAKE2B 4b0f3edd124ffbaba3d20fb1594ecc20ad10ef96a4d403579ccf9bf3f20eebbac57be973a08ef0b343213e0e2f594d2fef188d208dd3364ee1f7a48294a3914f SHA512 7d5b00f20f48617806867d319a8a19cd2d3e17e9391d537c8dec1aab53e0e7838a163226f83f60a00f4cc407029ce13250da9a60a68561a4e6cc3ad5cf2bb3db
DIST ncurses-6.5-20251220.patch.gz.asc 729 BLAKE2B d208a0969f99afd55454fbcaca2d8cb6e784008b0c1b10a4272d3ebb16128245774d88341c9ec8f08d5f64280cae89978b9ba215a4168ebb96ecb768b0ff1c03 SHA512 fb8714e858c60fbc7b33b162d681f6f261daeeb6bd6e376c058c12624e976db520dbd0b7a0a87394e81b9b6ef46cd9a127b51a15c334f0da4239e2a49405295f
DIST ncurses-6.5.tar.gz 3688489 BLAKE2B d0a05c218b5f320ba9abe2f322787baef1d15d764e503c81d49772b54b2927d28ecbeb500c8e514996226b41f69445b4de44ff423cec25b61847307fe61682ec SHA512 fc5a13409d2a530a1325776dcce3a99127ddc2c03999cfeb0065d0eee2d68456274fb1c7b3cc99c1937bc657d0e7fca97016e147f93c7821b5a4a6837db821e8
DIST ncurses-6.5.tar.gz.sig 438 BLAKE2B 5789b47932ec97d3863c7a65306369f0a36cb5b1a35c1e009b5174f50941edceafc22e6f07db3843a096773663a0ca602c0ecb9465e6042d9a78d76ae5008215 SHA512 96ce61a3d529e48e249acecbf4bb9eae2d9f2f67506e92ffa3182f5e98040c38babf0c2c15d92fc5d96e1181e72be1b29fdbff7bee859dfe2ae387f9b8883092
DIST ncurses-6.5_p20250301-patches.tar.xz 65224 BLAKE2B 9db65c728cc6d79e21b7673bb7700069cbf09287acfb65b23a65d607c3172835a9bf7df9a705d3a05b6197684bc7935e1cbed91bf18343c4fb8ebacf17e61dc1 SHA512 f5808f0c2fc1f6027678d8980a0cf598a64c9e85e1d72459dd712090c2dd24eb45261f35b025fd543aed56e903c658942c163b8fe8bace24a56fb8e9238da29e
DIST ncurses-6.5_p20250531-patches.tar.xz 65304 BLAKE2B b696a473c34df2aa1fe8b03fcbd6dd4bffdc8620917c0651994037bf902526a0c0b2be843beee2dec543677a0289aea35dd7e9ba7161eaef2c5663b4f1e356a8 SHA512 cb638cd2fd7128a7245b95a686df0725cbe133b42d26bdebabe62f070eacc25545845ea09c44d6d73183776a0ad094ae7857e2079b6561f05d94b86730f355db
DIST ncurses-6.5_p20250802-patches.tar.xz 64208 BLAKE2B a4e721225ac68590f6d5b492d5ec0a90b2637fe34bbe6bc3bf7eebfd6e295f430f71e63f36bb81db5864868e29d4acb62698dc01511048d929c745b752a95352 SHA512 40d9db23bc9b3baa0fac6bc380c47bc13bf2928796b6a0ab706f952dd6c39cba939e772f13b0323656b661f9006cd4d5dbde705db79a2bf28980c6f423ded374
DIST ncurses-6.5_p20251220-patches.tar.xz 64532 BLAKE2B 2e15dcdff309cdfae21bb122a57a34088bed9c85658de938e50fee1fd28b73549eff0bf8f1656a0e86a0a53bf1539cc369ef9a0c9daef8d8cf4e8874dac7eb5d SHA512 394323278b59cac96fec01f2b2cf81f134b644e0887f187e9a6b0b3411a18f17252430bbcd7bab08ab578a69d7217a31e482b498e96ff991d4d9da4ec37c8a7a

View File

@ -129,7 +129,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
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 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
# In 6.5_p20250118, the C++ examples fail to link, but there's no automated
# testsuite anyway. Controlling building examples isn't really what USE=test

View File

@ -138,7 +138,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
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 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
# In 6.5_p20250118, the C++ examples fail to link, but there's no automated
# testsuite anyway. Controlling building examples isn't really what USE=test

View File

@ -146,7 +146,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
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 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
# In 6.5_p20250118, the C++ examples fail to link, but there's no automated
# testsuite anyway. Controlling building examples isn't really what USE=test

View File

@ -0,0 +1,517 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# sys-libs/ncurses-compat can be bumped with sys-libs/ncurses as upstream
# provide a configure option for the ABI version.
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc
inherit flag-o-matic toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig
MY_PV="${PV:0:3}"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="Console display library"
HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/"
# Keep invisible-mirror.net here as some users reported 403 forbidden with invisible-island.net
SRC_URI="
mirror://gnu/ncurses/${MY_P}.tar.gz
https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz
https://invisible-mirror.net/archives/${PN}/${MY_P}.tar.gz
verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )
"
GENTOO_PATCH_DEV=sam
GENTOO_PATCH_PV=6.5_p20251220
GENTOO_PATCH_NAME=${PN}-${GENTOO_PATCH_PV}-patches
# Populated below in a loop. Do not add patches manually here.
UPSTREAM_PATCHES=()
if [[ ${PV} == *_p* ]] ; then
# Sometimes, after releases, there's no megapatch available yet.
#
# From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/:
#
# "At times (generally to mark a relatively stable point), I create a rollup
# patch, which consists of all changes from the release through the current date."
#
# Also, from https://lists.gnu.org/archive/html/bug-ncurses/2019-08/msg00039.html,
# the patches are considered to be acceptable to use after some testing. They
# are both for development but also bug fixes.
#
# This array should contain a list of all the snapshots since the last
# release if there's no megapatch available yet.
PATCH_DATES=(
20240504
20240511
20240518
20240519
20240525
20240601
20240608
20240615
20240622
20240629
20240706
20240713
20240720
20240727
20240810
20240817
20240824
20240831
20240914
20240922
20240928
20241006
20241019
20241026
20241102
20241109
20241123
20241130
20241207
20241214
20241221
20241228
20250104
20250111
20250118
20250125
20250201
20250208
20250215
20250216
20250222
20250301
20250308
20250315
20250322
20250329
20250405
20250412
20250419
20250426
20250503
20250510
20250517
20250524
20250531
20250614
20250621
20250628
20250705
20250712
20250720
20250726
20250802
20250809
20250816
20250823
20250830
20250913
20250920
20250927
20251004
20251010
20251018
20251025
20251101
20251115
20251122
20251123
20251129
20251206
20251213
# Latest patch is just _pN = $(ver_cut 4)
$(ver_cut 4)
)
if [[ -z ${PATCH_DATES[@]} ]] ; then
SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz"
SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz.asc"
# If we have a rollup patch, use that instead of the individual ones.
UPSTREAM_PATCHES+=( patch.sh )
else
# We use a mirror as well because we've had reports of 403 forbidden for some users.
upstream_url_base="https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-"
upstream_m_url_base="https://invisible-mirror.net/archives/${PN}/${PV/_p*}/${MY_P}-"
# Prefix each date with the upstream location (https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P})
mangled_patches=( "${PATCH_DATES[@]/#/${upstream_url_base}}" )
# Suffix each with .patch.gz
mangled_patches=( "${mangled_patches[@]/%/.patch.gz}" )
mangled_patches_sig=( "${mangled_patches[@]/%/.asc}" )
# Repeat for .patch.gz.asc for verify-sig
SRC_URI+=" ${mangled_patches[@]}"
SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]} )"
# For all of the URLs, chuck in invisible-island.net too:
SRC_URI+=" ${mangled_patches[@]/${upstream_url_base}/${upstream_m_url_base}}"
SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]/${upstream_url_base}/${upstream_m_url_base}} )"
UPSTREAM_PATCHES=( "${PATCH_DATES[@]/%/.patch}" )
unset upstream_url_base upstream_m_url_base mangled_patches mangled_patches_sig
fi
fi
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${GENTOO_PATCH_NAME}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
# In 6.5_p20250118, the C++ examples fail to link, but there's no automated
# testsuite anyway. Controlling building examples isn't really what USE=test
# is for. Just restrict them.
RESTRICT="!test? ( test ) test"
# TODO: ncurses allows (and we take advantage of this, even) passing
# the SONAME for dlopen() use, so only the header is needed at build time.
# Maybe we should bundle a copy of gpm.h so we can move gpm to PDEPEND
# which would be far nicer UX-wise.
DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )"
# Block the older ncurses that installed all files w/SLOT=5, bug #557472
RDEPEND="
${DEPEND}
!<=sys-libs/ncurses-5.9-r4:5
!<sys-libs/slang-2.3.2_pre23
!<x11-terms/rxvt-unicode-9.06-r3
!<x11-terms/st-0.6-r1
!minimal? ( !<x11-terms/ghostty-1.1.0 )
"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )"
PATCHES=(
"${UPSTREAM_PATCHES[@]/#/${WORKDIR}/${MY_P}-}"
# When rebasing Gentoo's patchset, please use git from a clean
# src_prepare with upstream patches already applied. git am --reject
# the existing patchset and rebase as required. This makes it easier
# to manage future rebasing & adding new patches.
#
# For the same reasons, please include the original configure.in changes,
# NOT just the generated results!
"${WORKDIR}"/${GENTOO_PATCH_NAME}
)
src_unpack() {
# Avoid trying to verify our own patchset tarball, there's no point
if use verify-sig ; then
local file
for file in ${A} ; do
if [[ ${file} == ${MY_P}.tar.gz ]] ; then
verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.sig
else
[[ ${file} == @(*${GENTOO_PATCH_NAME}.tar.xz|*.asc|*.sig) ]] && continue
verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.asc
fi
done
fi
default
}
src_configure() {
# bug #115036
unset TERMINFO
tc-export_build_env BUILD_{CC,CXX,CPP}
# bug #214642
BUILD_CPPFLAGS+=" -D_GNU_SOURCE"
# Build the various variants of ncurses -- narrow, wide, and threaded. #510440
# Order matters here -- we want unicode/thread versions to come last so that the
# binaries in /usr/bin support both wide and narrow.
# The naming is also important as we use these directly with filenames and when
# checking configure flags.
NCURSES_TARGETS=(
ncurses
ncursesw
ncursest
ncursestw
)
# When installing ncurses, we have to use a compatible version of tic.
# This comes up when cross-compiling, doing multilib builds, upgrading,
# or installing for the first time. Build a local copy of tic whenever
# the host version isn't available. bug #249363, bug #557598
if ! has_version -b "~sys-libs/${P}:0" ; then
local lbuildflags="-static"
# some toolchains don't quite support static linking
local dbuildflags="-Wl,-rpath,${WORKDIR}/lib"
case ${CHOST} in
*-darwin*) dbuildflags= ;;
*-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;;
esac
echo "int main() {}" | \
$(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \
|| lbuildflags="${dbuildflags}"
# We can't re-use the multilib BUILD_DIR because we run outside of it.
BUILD_DIR="${WORKDIR}" \
CC=${BUILD_CC} \
CXX=${BUILD_CXX} \
CPP=${BUILD_CPP} \
CHOST=${CBUILD} \
CFLAGS=${BUILD_CFLAGS} \
CXXFLAGS=${BUILD_CXXFLAGS} \
CPPFLAGS=${BUILD_CPPFLAGS} \
LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \
do_configure cross --without-shared --with-normal --with-progs --without-ada
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
if [[ ${ABI} == x86 ]] ; then
# For compatibility with older binaries at slight performance cost.
# bug #616402
use stack-realign && append-flags -mstackrealign
fi
local t
for t in "${NCURSES_TARGETS[@]}" ; do
do_configure "${t}"
done
}
do_configure() {
local target=$1
shift
mkdir "${BUILD_DIR}/${target}" || die
cd "${BUILD_DIR}/${target}" || die
local conf=(
# We need the basic terminfo files in /etc, bug #37026. We will
# add '--with-terminfo-dirs' and then populate /etc/terminfo in
# src_install() ...
--with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo"
# Enable installation of .pc files.
--enable-pc-files
# This path is used to control where the .pc files are installed.
--with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
# Now the rest of the various standard flags.
--with-shared
--enable-fvisibility
# (Originally disabled until bug #245417 is sorted out, but now
# just keeping it off for good, given nobody needed it until now
# (2022) and we're trying to phase out bdb.)
--without-hashed-db
$(use_with ada)
$(use_with cxx)
$(use_with cxx cxx-binding)
--with-cxx-shared
$(use_with debug)
$(use_with profile)
# The configure script uses ldd to parse the linked output which
# is flaky for cross-compiling/multilib/ldd versions/etc...
$(use_with gpm gpm libgpm.so.1)
# bug #930806
--disable-setuid-environ
# TODO: Maybe do these for USE=hardened
#--disable-root-access
#--disable-root-environ
--disable-termcap
--enable-symlinks
--with-manpage-format=normal
--enable-const
--enable-colorfgbg
--enable-hard-tabs
--enable-echo
$(use_enable !ada warnings)
$(use_enable debug assertions)
$(use_enable !debug leaks)
$(use_enable debug expanded)
$(use_enable !debug macros)
$(multilib_native_with progs)
$(use_with test tests)
$(use_with trace)
$(use_with tinfo termlib)
--disable-stripping
--disable-pkg-ldflags
)
case ${CHOST} in
*-mingw32*)
conf+=( --enable-term-driver )
;;
*)
conf+=( --disable-term-driver )
;;
esac
if [[ ${target} == ncurses*w ]] ; then
conf+=( --enable-widec )
else
conf+=( --disable-widec )
fi
if [[ ${target} == ncursest* ]] ; then
conf+=( --with-{pthread,reentrant} )
else
conf+=( --without-{pthread,reentrant} )
fi
# Make sure each variant goes in a unique location.
if [[ ${target} == "ncurses" ]] ; then
# "ncurses" variant goes into "${EPREFIX}"/usr/include
# It is needed on Prefix because the configure script appends
# "ncurses" to "${prefix}/include" if "${prefix}" is not /usr.
conf+=( --enable-overwrite )
else
conf+=( --includedir="${EPREFIX}"/usr/include/${target} )
fi
# See comments in src_configure.
if [[ ${target} != "cross" ]] ; then
local cross_path="${WORKDIR}/cross"
[[ -d ${cross_path} ]] && export TIC="${cross_path}/progs/tic"
fi
ECONF_SOURCE="${S}" econf "${conf[@]}" "$@"
}
src_compile() {
# See comments in src_configure.
if ! has_version -b "~sys-libs/${P}:0" ; then
BUILD_DIR="${WORKDIR}" do_compile cross -C progs tic$(get_exeext)
fi
multilib-minimal_src_compile
}
multilib_src_compile() {
local t
for t in "${NCURSES_TARGETS[@]}" ; do
do_compile "${t}"
done
}
do_compile() {
local target=$1
shift
cd "${BUILD_DIR}/${target}" || die
# A little hack to fix parallel builds ... they break when
# generating sources so if we generate the sources first (in
# non-parallel), we can then build the rest of the package
# in parallel. This is not really a perf hit since the source
# generation is quite small.
emake -j1 sources
# For some reason, sources depends on pc-files which depends on
# compiled libraries which depends on sources which ...
# Manually delete the pc-files file so the install step will
# create the .pc files we want.
rm -f misc/pc-files || die
emake "$@"
}
multilib_src_install() {
local target
for target in "${NCURSES_TARGETS[@]}" ; do
emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install
done
# Move main libraries into /.
if multilib_is_native_abi ; then
gen_usr_ldscript -a \
"${NCURSES_TARGETS[@]}" \
$(usex tinfo 'tinfow tinfo' '')
fi
# Don't delete '*.dll.a', needed for linking, bug #631468
if ! use static-libs; then
find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die
fi
# Build fails to create this ...
# -FIXME-
# Ugly hackaround for riscv having two parts libdir (bug #689240)
# Replace this hack with an official solution once we have one...
# -FIXME-
dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \
/usr/$(get_libdir)/terminfo
# Remove obsolete libcurses symlink that is created by the build
# system. Technically, this could be also achieved
# via --disable-overwrite but it also moves headers implicitly,
# and we do not want to do this yet.
# bug #836696
rm "${ED}"/usr/$(get_libdir)/libcurses* || die
}
multilib_src_install_all() {
local terms=(
# Dumb/simple values that show up when using the in-kernel VT.
ansi console dumb linux
vt{52,100,102,200,220}
# [u]rxvt users used to be pretty common. Probably should drop this
# since upstream is dead and people are moving away from it.
rxvt{,-unicode}{,-256color}
# xterm users are common, as is terminals re-using/spoofing it.
xterm xterm-{,256}color
# screen is common (and reused by tmux).
screen{,-256color}
screen.xterm-256color
)
if use split-usr ; then
local x
# We need the basic terminfo files in /etc for embedded/recovery, bug #37026
einfo "Installing basic terminfo files in /etc..."
for x in "${terms[@]}"; do
local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null)
local basedir=$(basename "$(dirname "${termfile}")")
if [[ -n ${termfile} ]] ; then
dodir "/etc/terminfo/${basedir}"
mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die
dosym "../../../../etc/terminfo/${basedir}/${x}" \
"/usr/share/terminfo/${basedir}/${x}"
fi
done
echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses
use minimal && rm -r "${ED}"/usr/share/terminfo*
# Because ncurses5-config --terminfo returns the directory we keep it
# bug #245374
keepdir /usr/share/terminfo
elif use minimal ; then
# Keep only the basic terminfo files
find "${ED}"/usr/share/terminfo/ \
\( -type f -o -type l \) ${terms[*]/#/! -name } -delete , \
-type d -empty -delete || die
fi
cd "${S}" || die
dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc
if use doc ; then
docinto html
dodoc -r doc/html/
fi
}
pkg_preinst() {
preserve_old_lib /$(get_libdir)/libncurses.so.5
preserve_old_lib /$(get_libdir)/libncursesw.so.5
}
pkg_postinst() {
preserve_old_lib_notify /$(get_libdir)/libncurses.so.5
preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5
}