summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Manifest.gzbin70157 -> 70317 bytes
-rw-r--r--dev-util/hip/Manifest6
-rw-r--r--dev-util/hip/files/hip-5.7.1-disable-stack-protector.patch13
-rw-r--r--dev-util/hip/files/hip-5.7.1-exec-stack.patch31
-rw-r--r--dev-util/hip/files/hip-5.7.1-fix-unaligned-access.patch67
-rw-r--r--dev-util/hip/files/hip-5.7.1-no_asan_doc.patch17
-rw-r--r--dev-util/hip/hip-5.7.1.ebuild9
-rw-r--r--dev-util/hipcc/Manifest5
-rw-r--r--dev-util/hipcc/files/hipcc-5.7.1-fno-stack-protector.patch13
-rw-r--r--dev-util/hipcc/files/hipcc-5.7.1-hipcc-hip-version.patch42
-rw-r--r--dev-util/hipcc/hipcc-5.7.1-r1.ebuild27
-rw-r--r--dev-util/hipcc/hipcc-5.7.1-r2.ebuild46
-rw-r--r--dev-util/hipcc/hipcc-5.7.1.ebuild21
-rw-r--r--dev-util/promu/Manifest2
-rw-r--r--dev-util/promu/metadata.xml2
-rw-r--r--dev-util/tea/Manifest4
-rw-r--r--dev-util/tea/metadata.xml17
-rw-r--r--dev-util/tea/tea-0.9.2.ebuild35
18 files changed, 301 insertions, 56 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 6cd682111e77..81c9e543b3bd 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/hip/Manifest b/dev-util/hip/Manifest
index 3a0ccd3cf45e..35db3797ba45 100644
--- a/dev-util/hip/Manifest
+++ b/dev-util/hip/Manifest
@@ -25,6 +25,10 @@ AUX hip-5.4.3-correct-ldflag.patch 1173 BLAKE2B 170bc09a606fc2cb0cb5e7bb8615b545
AUX hip-5.4.3-fix-HIP_CLANG_PATH-detection.patch 921 BLAKE2B ab06b3ff6d5b005929c42ec49819c09843ab25c31b5d6248938216ca0471034140d4ac289e9496d40140e9b8f0b04f893eab0491c857bc02ba366b3c91447e92 SHA512 96f0fe6806c914c1fd33b832427703684f495158b64c5e831081ecd421043749adb50cbf65b03c2297f9dabf9fb6a22ea931ac8d74db9c31baac31477e4af873
AUX hip-5.5.1-disable-Werror.patch 748 BLAKE2B 965af2240c72e22706c5b1ecb414954ba7b63ba7a9d3535fb00ad754d10813a054721e80a47246cbf4dc06d6e98f25c67fc7cbd54cd9187e59ae6e8e7691d2d3 SHA512 4f5decfe61fa26da0b2159bd8874c83ff047bc5c7f2b2f023490a6bc3c97f588ec80df90c731a7c03b8ea1443a88dac9fbde1b46c5ac4f4a8a59ec4b35ef1bde
AUX hip-5.7.0-install.patch 576 BLAKE2B b3c5437a81bcc901327ba4ee9419ad77ea94aab3f6df49c1ce581fd5dad9321d7ffe4d81e1991476978690811d748ee8600dbdf9d70151cfdfb348130e18efdc SHA512 28301e939b3dc49c47d5db16d11b580dbedd47796a2765afab2b535fcd005d4a909f54865f044f0bacb0470ca2e29e529d1511c8bf4d037987bc046704e8e9eb
+AUX hip-5.7.1-disable-stack-protector.patch 771 BLAKE2B 46ea4b48ae32c7e120418fec467fedc7c496fec2c0589c04e4b62a0afe9b7e6b6e9aae8a4502d5772eefc07c5f71d39b37e4a47d1796d7688b1804814a0274da SHA512 30b82c3b8e7403e8098d1d564c94a85cd29fbf0d6fb4d4af26874bbc5ed03477933fb61064d57c2e2c724182b4816598752b38b1bb9f9384685be72a774d81af
+AUX hip-5.7.1-exec-stack.patch 1136 BLAKE2B b45560c1cd3410ba9340d5dea7fc2ab7167126a3dbcee6fdaa5ccdab6140db8a6ce9c9f588451f77a1cd27154551a4cb00743d7b2ac3dcb6c36e87f2bc182fe1 SHA512 66a6a9518975a9702f365ae6e9b09835ff93cde49209714b4cbb19c375052859ac26f3d4d2b61052280eee93e237f930a4b7b2d837245a7d477e30893ca6a0b4
+AUX hip-5.7.1-fix-unaligned-access.patch 3011 BLAKE2B d8a6a130edcf51c40e88250508ff3db13f134fb3833d1eadfac32dfdee09c7635091b1f32ed640bcba0c5ca2b745c401183ee8adaa392977ecece12a03450f9e SHA512 f9b85117927d18921d939daa73d2d97477bb49eb6ff7e496f9b110b8e70e00734b698517ae4235a03c560bdfc3618367d7eb2970c9d90dc2bcf07e2ab803d994
+AUX hip-5.7.1-no_asan_doc.patch 817 BLAKE2B 4bc80470f9cb476289086ae561560bb54fcdd9d1e66ef420dc60f129f29b0de02025be0ed2a7bfd2143b9bc0b456a354abc574dcbff509872a35e2e0c06f7760 SHA512 10a97524acce0c45c8edeccd11b64445f6edeb380e8262e1fc63163c4758efd731af36701dae1c9988264e8ce10971c9b3959ea881e81646994c779a96d10bb9
AUX hipvars-5.1.3.pm 629 BLAKE2B 6149f230aa0756603ac0b455d802db9c698be8e4a22367e98915db974ea16176f85f9b5a22e2572183641734cedbbe2ba2c826aa0223ea3e12c5550983db0480 SHA512 26ba459b13df1ad6dc50411ac6589dd3d17eff727fee0e938275912e36459c7a43b35233a7f78bbed282a992e969d8b8f95007964c810a5954b0abeccc67082d
AUX hipvars-5.3.3.pm 581 BLAKE2B edf0c1df5f7f5c57189c76fbcedec8155072a9f8e2c580d637dcfb557a844e7cc276b754d0fd8f5a9f59d2c5bbcfda6c9ac9951ad16d8a12bb48e74f062987ab SHA512 9fd72b000f59ec25a74ef5965f4affc5e866025424211b4d81fbea979ffba9f08319dde0063c8c835507a1b9db990f8f25eea3a8e2e6d88faceaf34d5dd722cb
AUX hipvars.pm 598 BLAKE2B 1645b12179195b95757d207248c85b7c8d9eda0347caee5cb48bdc66e85fda517f607bcb69cdfc63657a0db04ad8e96494a0a80268df7c17d6bb0e689325c2e8 SHA512 6c4e71455341673a329b4b0163fefd7f2f4b7d62da3496643d0de096755899c99b3b5a80fffbdf29896c234cb4f617b368217f4eecfd005849b294ff434b79c6
@@ -54,5 +58,5 @@ EBUILD hip-5.1.3-r4.ebuild 6638 BLAKE2B 4ccc536736e737f0066ab4f200a5ea76a9f16ede
EBUILD hip-5.3.3-r3.ebuild 5346 BLAKE2B 4f5c0570e8a4ff65ac0b11bc555e2f81f7c6e56cc3ff86de894536b3b0597c049216a9d4184e25471999c4cf73b8f774daf1bb46d613c830bcc0d8c445f85b74 SHA512 9a54281155f14f467286d132ec405b90703b94760b8f4e268aed77b4a47d8a195febef3200068d0e5905cf7078fb92e2252b6ab7a3b86e40d330449315c0cf4d
EBUILD hip-5.4.3.ebuild 5239 BLAKE2B 74d5423c5f7c01f15c5583b2c53420b1780fa7fdb11581fef2f0570be11a2047a43881a13b41b333905faaafab7dee15e1fb4af96703829cdab7d547e2cb5796 SHA512 7b2f5abfbc2ded1751b3d32349eb81715468125e9a9cc64522b725ed9a92f0dbf6e575fd1b84ab5234532badbf3a6b0c4d3a5b375384665ab413b22c54a5ee3e
EBUILD hip-5.5.1.ebuild 5244 BLAKE2B aa1f937c5f2651ad3e79898ffc427696253c619583cd1450f1a3e7b9a7448e0d750f5df72a87458dfe6107f2f8846bc2b9b064d54b0b849fc3812a4f268c4af1 SHA512 94cad30f1f0e3e376a5902c83a151d3fe2a7b72b45747672e96b9d13dedadc7184c8f714789ff3e436133ffb8a7d58e8194471c843c694d3d39c348fd7d5a3ab
-EBUILD hip-5.7.1.ebuild 2099 BLAKE2B 6ba5a8612ae642efafecd654775564ea2dfe6f8b9d9099d60ee60a0504758731d89a56a56b8895ebb8adf94a4ebd8f530f5a027bb14110e2a8b0277d5f891313 SHA512 a2197c7bb895783c7823e9025381193428360c15575f1ab173c76cd7ddac2c7c57582ad7e69fda4d593cb410be7360da687fab7927f3381f8fdbc5f7db80ef8e
+EBUILD hip-5.7.1.ebuild 2299 BLAKE2B 6f6419e5f7c38dbb0a11f897bb84ce198c9e31ce5e6076f98a2fb32eaab73e60c14a3ef610ae961d033c22b507db78347bb8c3cedc5026d4c26a50fa7c6dcba6 SHA512 fce62dad1b19269ee9efa89d1c1552f89987c3587a0eaf332dedc2bc03726da59710c8e0372bf527573ea2d3ab752347c64072b73fcd727d4ad9cf58631e3fc8
MISC metadata.xml 729 BLAKE2B 92e36c42f6d8335e5a8e3a86b591ff9e6306e0d187644620fab7f8f7ddd00156ee91ff49184ffbe379e509f2096c51c421575a69de7abea3c0b372fdcec52ccb SHA512 84fc8234a5fdf54bf43228c2144d809a461862fb45fea24bf366ee5937df3882c3332429938792981e37dbb4cda6e5d7e05ac5deaded34d8bcce1eb53df8d0fd
diff --git a/dev-util/hip/files/hip-5.7.1-disable-stack-protector.patch b/dev-util/hip/files/hip-5.7.1-disable-stack-protector.patch
new file mode 100644
index 000000000000..49d944ef4bc9
--- /dev/null
+++ b/dev-util/hip/files/hip-5.7.1-disable-stack-protector.patch
@@ -0,0 +1,13 @@
+Disable stack-protector (which is enabled by default gentoo-hardened) in device code.
+This is not required after https://github.com/llvm/llvm-project/pull/70799, but helps with older clang.
+Upstream bug: https://github.com/ROCm-Developer-Tools/clr/issues/21
+--- a/hipamd/src/hiprtc/hiprtcInternal.cpp
++++ b/hipamd/src/hiprtc/hiprtcInternal.cpp
+@@ -144,6 +144,7 @@ RTCCompileProgram::RTCCompileProgram(std::string name_) : RTCProgram(name_), fgp
+ compile_options_.push_back("-nogpuinc");
+ compile_options_.push_back("-Wno-gnu-line-marker");
+ compile_options_.push_back("-Wno-missing-prototypes");
++ compile_options_.push_back("-fno-stack-protector");
+ #ifdef _WIN32
+ compile_options_.push_back("-target");
+ compile_options_.push_back("x86_64-pc-windows-msvc");
diff --git a/dev-util/hip/files/hip-5.7.1-exec-stack.patch b/dev-util/hip/files/hip-5.7.1-exec-stack.patch
new file mode 100644
index 000000000000..744ca7b953c3
--- /dev/null
+++ b/dev-util/hip/files/hip-5.7.1-exec-stack.patch
@@ -0,0 +1,31 @@
+Upstream bug: https://github.com/ROCm-Developer-Tools/clr/issues/22
+--- a/hipamd/src/hip_embed_pch.sh
++++ b/hipamd/src/hip_embed_pch.sh
+@@ -178,6 +178,7 @@ EOF
+
+ echo "// Automatically generated script for HIP RTC." > $mcinFile
+ if [[ $isWindows -eq 0 ]]; then
++ echo " .section .note.GNU-stack,"",%progbits" >> $mcinFile
+ echo " .type __hipRTC_header,@object" >> $mcinFile
+ echo " .type __hipRTC_header_size,@object" >> $mcinFile
+ fi
+--- a/hipamd/src/hiprtc/cmake/HIPRTC.cmake
++++ b/hipamd/src/hiprtc/cmake/HIPRTC.cmake
+@@ -98,6 +98,7 @@ macro(generate_hiprtc_mcin HiprtcMcin HiprtcPreprocessedInput)
+ set(HIPRTC_TYPE_LINUX_ONLY "")
+ else()
+ set(HIPRTC_TYPE_LINUX_ONLY
++ " .section .note.GNU-stack,\"\",%progbits\n"
+ " .type __hipRTC_header,@object\n"
+ " .type __hipRTC_header_size,@object")
+ endif()
+--- a/hipamd/src/hip_embed_pch.sh
++++ b/hipamd/src/hip_embed_pch.sh
+@@ -111,6 +111,7 @@ cat >$tmp/hip_pch.h <<EOF
+ EOF
+
+ cat >$tmp/hip_pch.mcin <<EOF
++ .section .note.GNU-stack,"",%progbits
+ .type __hip_pch_wave32,@object
+ .section .hip_pch_wave32,"aMS",@progbits,1
+ .data
diff --git a/dev-util/hip/files/hip-5.7.1-fix-unaligned-access.patch b/dev-util/hip/files/hip-5.7.1-fix-unaligned-access.patch
new file mode 100644
index 000000000000..ae2092f6e1ac
--- /dev/null
+++ b/dev-util/hip/files/hip-5.7.1-fix-unaligned-access.patch
@@ -0,0 +1,67 @@
+Fix SIGSEGV when compiled with avx-512 instructions.
+
+Due to unaligned allocations, library crashes in
+nontemporalMemcpy in _mm512_stream_si512 (which requires
+64-aligned allocations, but used to copy default-aligned objects).
+
+Without this patch hipamd causes random crashes in hipMemcpy* callers
+(tensile, rocBLAS, miopen, rocThrust, etc.).
+
+Bug: https://bugs.gentoo.org/915969
+Bug report in upstream: https://github.com/ROCm-Developer-Tools/clr/issues/18
+--- a/rocclr/device/rocm/rocvirtual.cpp
++++ b/rocclr/device/rocm/rocvirtual.cpp
+@@ -2790,44 +2790,6 @@ bool VirtualGPU::createVirtualQueue(uint deviceQueueSize)
+ return true;
+ }
+
+-// ================================================================================================
+-__attribute__((optimize("unroll-all-loops"), always_inline))
+-static inline void nontemporalMemcpy(void* __restrict dst, const void* __restrict src,
+- uint16_t size) {
+- #if defined(__AVX512F__)
+- for (auto i = 0u; i != size / sizeof(__m512i); ++i) {
+- _mm512_stream_si512(reinterpret_cast<__m512i* __restrict&>(dst)++,
+- *reinterpret_cast<const __m512i* __restrict&>(src)++);
+- }
+- size = size % sizeof(__m512i);
+- #endif
+-
+- #if defined(__AVX__)
+- for (auto i = 0u; i != size / sizeof(__m256i); ++i) {
+- _mm256_stream_si256(reinterpret_cast<__m256i* __restrict&>(dst)++,
+- *reinterpret_cast<const __m256i* __restrict&>(src)++);
+- }
+- size = size % sizeof(__m256i);
+- #endif
+-
+- for (auto i = 0u; i != size / sizeof(__m128i); ++i) {
+- _mm_stream_si128(reinterpret_cast<__m128i* __restrict&>(dst)++,
+- *(reinterpret_cast<const __m128i* __restrict&>(src)++));
+- }
+- size = size % sizeof(__m128i);
+-
+- for (auto i = 0u; i != size / sizeof(long long); ++i) {
+- _mm_stream_si64(reinterpret_cast<long long* __restrict&>(dst)++,
+- *reinterpret_cast<const long long* __restrict&>(src)++);
+- }
+- size = size % sizeof(long long);
+-
+- for (auto i = 0u; i != size / sizeof(int); ++i) {
+- _mm_stream_si32(reinterpret_cast<int* __restrict&>(dst)++,
+- *reinterpret_cast<const int* __restrict&>(src)++);
+- }
+-}
+-
+ // ================================================================================================
+ bool VirtualGPU::submitKernelInternal(const amd::NDRangeContainer& sizes,
+ const amd::Kernel& kernel, const_address parameters, void* eventHandle,
+@@ -3096,7 +3058,7 @@ bool VirtualGPU::submitKernelInternal(const amd::NDRangeContainer& sizes,
+ argBuffer = reinterpret_cast<address>(allocKernArg(gpuKernel.KernargSegmentByteSize(),
+ gpuKernel.KernargSegmentAlignment()));
+ // Load all kernel arguments
+- nontemporalMemcpy(argBuffer, parameters,
++ memcpy(argBuffer, parameters,
+ std::min(gpuKernel.KernargSegmentByteSize(),
+ signature.paramsSize()));
+ }
diff --git a/dev-util/hip/files/hip-5.7.1-no_asan_doc.patch b/dev-util/hip/files/hip-5.7.1-no_asan_doc.patch
new file mode 100644
index 000000000000..40de416334be
--- /dev/null
+++ b/dev-util/hip/files/hip-5.7.1-no_asan_doc.patch
@@ -0,0 +1,17 @@
+Donot install -asan documents.
+
+Reference:
+https://github.com/RadeonOpenCompute/llvm-project/commit/e782e09f7b113a0f896c6cec7240d411aca1d73f
+https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/issues/61
+
+--- a/hipamd/packaging/CMakeLists.txt 2023-11-18 23:25:45.000000000 +0800
++++ b/hipamd/packaging/CMakeLists.txt 2023-11-18 23:27:27.230354665 +0800
+@@ -36,8 +36,6 @@
+ ###Set License####
+ set(CPACK_RESOURCE_FILE_LICENSE ${hip_SOURCE_DIR}/LICENSE.txt)
+ install(FILES ${CPACK_RESOURCE_FILE_LICENSE} DESTINATION ${CMAKE_INSTALL_DOCDIR} COMPONENT binary)
+-# install license file in share/doc/hip-asan folder
+-install(FILES ${CPACK_RESOURCE_FILE_LICENSE} DESTINATION ${CMAKE_INSTALL_DOCDIR}-asan COMPONENT asan)
+ set(CPACK_RPM_PACKAGE_LICENSE "MIT")
+ #Begin binary files install
+ if(HIP_PLATFORM STREQUAL "amd" )
diff --git a/dev-util/hip/hip-5.7.1.ebuild b/dev-util/hip/hip-5.7.1.ebuild
index 0bba0d2f560b..c9094afe5ba6 100644
--- a/dev-util/hip/hip-5.7.1.ebuild
+++ b/dev-util/hip/hip-5.7.1.ebuild
@@ -35,8 +35,12 @@ RDEPEND="${DEPEND}
>=dev-libs/roct-thunk-interface-5"
PATCHES=(
- "${FILESDIR}/hip-5.7.0-install.patch"
- )
+ "${FILESDIR}/${PN}-5.7.0-install.patch"
+ "${FILESDIR}/${PN}-5.7.1-fix-unaligned-access.patch"
+ "${FILESDIR}/${PN}-5.7.1-exec-stack.patch"
+ "${FILESDIR}/${PN}-5.7.1-disable-stack-protector.patch"
+ "${FILESDIR}/${PN}-5.7.1-no_asan_doc.patch"
+)
S="${WORKDIR}/clr-rocm-${PV}/"
@@ -72,7 +76,6 @@ src_compile() {
}
src_install() {
-
cmake_src_install
rm "${ED}/usr/include/hip/hcc_detail" || die
diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest
index f68dee6a2c91..ca9ea27161d8 100644
--- a/dev-util/hipcc/Manifest
+++ b/dev-util/hipcc/Manifest
@@ -1,4 +1,5 @@
+AUX hipcc-5.7.1-fno-stack-protector.patch 499 BLAKE2B d848b79ad2fd542bc6e6595ebc7dbd240b23aa2903aae31a0583b7beba032d8f4999142b932e9a443415bdb7ae4fe06f9e7da607c402109e3b887fef741d460f SHA512 a115cc8c9779cd318e7806d78a8aa99f03596258f8d3b105231dd6b1f9d3168687c305d1ec1c95902f841bb18570f943d3a655a03504f19a6f6ca7419d9272fd
+AUX hipcc-5.7.1-hipcc-hip-version.patch 2245 BLAKE2B 85e41db593706478e92966ee2ee33e1e8c8309251446f14192083a81e35f43be5dfa23337abc8371147b59c9399be79f9461cadf7ba0e025f1355d6c9836d68e SHA512 2cbfdeb9361b38a32ef52dec0c899c7cadc7220a5213fd6e9670c8a9ea6690e80e956d236e0de893bc4fe19117466659bdfdb2e16e720011b7480bc2e8bee458
DIST hipcc-5.7.1.tar.gz 36589 BLAKE2B a8ae6bd9f0f985d78119223b67b5b35b8d1ee38edb7e43c1e77752d203fe2c8b669b3bcff0cec661054d8cb24f799e7784a49eb0664bdd1dc2bf024ce026c175 SHA512 2d232c8dd4a47de6e0cff9d37b4e63a26cb1809ef2ff3a119c15e992cae96ffc2f4d8c1ddffd8732dea3a3d589a93e177f424a6174f982908aa50904e265432a
-EBUILD hipcc-5.7.1-r1.ebuild 660 BLAKE2B 69b76125c382e37f48d618319650f5e2de52622fc41b44d6e20a32fa8accbcaa3bc02ad58a416e574502ac03f6340e5deabe527fc02f2b7a388ced2aeaa844cd SHA512 22f0a81f4e002257b2e1a9ad66144ab1b9adbcb0f9e55cfb3b69a29e11bbd854b802f8fd3085c175f64df58019c53aea9fa83dc93deb936a09d638cfe0291923
-EBUILD hipcc-5.7.1.ebuild 514 BLAKE2B 85396696876960c47075dcf519c27d3dcb57c4154ba359a47222cb171c60a8a2532640d4f4e49e6f8d29a341faefa194ee28dd3075f867fee84d2880dbb63f0a SHA512 3fe23c89a253bb064417cee9f5766f7aebab482272245b06fe099fceacd59d79eb93102082cd22a1dab0b536ed24981e0542660628ea09479084b575907a1036
+EBUILD hipcc-5.7.1-r2.ebuild 1102 BLAKE2B c89329c17258f59bf31d6039419df045dd8e2c097a4560bcb9bb511ffd3b5d032f79db1de3e9b916a6d459ad280efa8745db51a171130d31e89d5bd3988c8615 SHA512 02323828028ae2ea26010e7c1d7ceb75100275ed019d9a50e07a2c8df19602d45afc21f50f6216e713df383dd37431946f9dc69daddf3c5cd1134e53a748fe92
MISC metadata.xml 845 BLAKE2B 108a9ee40f02d5e190f4d1ee11eea32aaec844c63811265d52046bdb266f6cddfb1774419feace41aaa2bacfd01581847f655aa5fc49536968c54e7f023d49ae SHA512 2b7bbe1205b4a07b81e6c0f4cc2c224a573a03004ce808b4d1ef51ea1b0bec770545b7c46530a1b18222cd67854f790ae44695dd39ef2201d7f3e3ea3ada904f
diff --git a/dev-util/hipcc/files/hipcc-5.7.1-fno-stack-protector.patch b/dev-util/hipcc/files/hipcc-5.7.1-fno-stack-protector.patch
new file mode 100644
index 000000000000..c46420265005
--- /dev/null
+++ b/dev-util/hipcc/files/hipcc-5.7.1-fno-stack-protector.patch
@@ -0,0 +1,13 @@
+Related bug: https://bugs.gentoo.org/890377
+--- a/bin/hipcc.pl
++++ b/bin/hipcc.pl
+@@ -552,6 +552,9 @@ if ($buildDeps and $HIP_PLATFORM eq 'amd') {
+ # pass-through CPP mode.
+
+ if ($HIP_PLATFORM eq "amd") {
++ # Append -fno-stack-protector due to stack protection for HIP is not supported
++ $HIPCXXFLAGS .= " -fno-stack-protector";
++ $HIPCFLAGS .= " -fno-stack-protector";
+ # Set default optimization level to -O3 for hip-clang.
+ if ($optArg eq "") {
+ $HIPCXXFLAGS .= " -O3";
diff --git a/dev-util/hipcc/files/hipcc-5.7.1-hipcc-hip-version.patch b/dev-util/hipcc/files/hipcc-5.7.1-hipcc-hip-version.patch
new file mode 100644
index 000000000000..fa00d44d912e
--- /dev/null
+++ b/dev-util/hipcc/files/hipcc-5.7.1-hipcc-hip-version.patch
@@ -0,0 +1,42 @@
+Edit from:
+https://salsa.debian.org/rocm-team/rocm-hipamd/-/blob/759b0773bd848ff9471fa8cdecd9ee21010bc29c/debian/patches/0013-hipcc-hip-version.patch
+`--hip-version` is required for correclty including __clang_hip_runtime_wrapper.h
+=================================================================================
+Description: enforce --hip-version option within hipcc call.
+ This change is needed since the normal mechanism in ROCm relies on
+ reading a .hipVersion hidden configuration file which has no proper
+ equivalent in a FHS compliant tree, as of ROCm 5.0.
+Author: Cordell Bloor <cgmb-deb@slerp.xyz>
+Bug: https://github.com/ROCm-Developer-Tools/HIP/pull/2937
+Forwarded: not-needed
+Reviewed-by: Étienne Mollier <emollier@debian.org>
+Last-Update: 2022-07-04
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: HIP/bin/hipcc.pl
+===================================================================
+--- HIP.orig/bin/hipcc.pl
++++ HIP/bin/hipcc.pl
+@@ -121,6 +121,9 @@ $HIP_PATH = $hipvars::HIP_PATH;
+ $ROCM_PATH = $hipvars::ROCM_PATH;
+ $HIP_VERSION = $hipvars::HIP_VERSION;
+ $HIP_ROCCLR_HOME = $hipvars::HIP_ROCCLR_HOME;
++$HIP_VERSION_MAJOR = $hipvars::HIP_VERSION_MAJOR;
++$HIP_VERSION_MINOR = $hipvars::HIP_VERSION_MINOR;
++$HIP_VERSION_PATCH = $hipvars::HIP_VERSION_PATCH;
+
+ if ($HIP_PLATFORM eq "amd") {
+ $HIP_INCLUDE_PATH = "$HIP_ROCCLR_HOME/include";
+@@ -188,6 +191,12 @@ if ($HIP_PLATFORM eq "amd") {
+ ## Allow __fp16 as function parameter and return type.
+ $HIPCXXFLAGS .= " -Xclang -fallow-half-arguments-and-returns -D__HIP_HCC_COMPAT_MODE__=1";
+ }
++
++ # Gentoo: there is no FHS compliant location for .hipVersion where clang will still be
++ # able to find it, so .hipVersion has been omitted and the hip version is passed explicitly
++ $HIPCXXFLAGS .= " --hip-version=$HIP_VERSION_MAJOR.$HIP_VERSION_MINOR.$HIP_VERSION_PATCH";
++ $HIPCFLAGS .= " --hip-version=$HIP_VERSION_MAJOR.$HIP_VERSION_MINOR.$HIP_VERSION_PATCH";
++ $HIPLDFLAGS .= " --hip-version=$HIP_VERSION_MAJOR.$HIP_VERSION_MINOR.$HIP_VERSION_PATCH";
+ } elsif ($HIP_PLATFORM eq "nvidia") {
+ $CUDA_PATH=$ENV{'CUDA_PATH'} // '/usr/local/cuda';
+ $HIP_INCLUDE_PATH = "$HIP_PATH/include";
diff --git a/dev-util/hipcc/hipcc-5.7.1-r1.ebuild b/dev-util/hipcc/hipcc-5.7.1-r1.ebuild
deleted file mode 100644
index 78f9a80f3561..000000000000
--- a/dev-util/hipcc/hipcc-5.7.1-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="Radeon Open Compute hipcc"
-HOMEPAGE="https://github.com/ROCm-Developer-Tools/hipcc"
-
-KEYWORDS="~amd64"
-SRC_URI="https://github.com/ROCm-Developer-Tools/hipcc/archive/refs/tags/rocm-${PV}.tar.gz -> hipcc-${PV}.tar.gz"
-
-LICENSE="Apache-2.0 MIT"
-SLOT="0/$(ver_cut 1-2)"
-IUSE="debug test"
-RESTRICT="!test? ( test )"
-
-S=${WORKDIR}/HIPCC-rocm-${PV}
-
-RDEPEND="!<dev-util/hip-5.7"
-
-src_prepare() {
- # hardcoded paths are wrong
- sed -i -e 's~$ROCM_PATH/llvm/bin~/usr/lib/llvm/17/bin~' bin/hipvars.pm || die
- cmake_src_prepare
-}
diff --git a/dev-util/hipcc/hipcc-5.7.1-r2.ebuild b/dev-util/hipcc/hipcc-5.7.1-r2.ebuild
new file mode 100644
index 000000000000..180354c8673c
--- /dev/null
+++ b/dev-util/hipcc/hipcc-5.7.1-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake llvm
+
+LLVM_MAX_SLOT=17
+
+DESCRIPTION="Radeon Open Compute hipcc"
+HOMEPAGE="https://github.com/ROCm-Developer-Tools/hipcc"
+
+KEYWORDS="~amd64"
+SRC_URI="https://github.com/ROCm-Developer-Tools/hipcc/archive/refs/tags/rocm-${PV}.tar.gz -> hipcc-${PV}.tar.gz"
+
+LICENSE="Apache-2.0 MIT"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+S=${WORKDIR}/HIPCC-rocm-${PV}
+
+RDEPEND="!<dev-util/hip-5.7"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7.1-fno-stack-protector.patch"
+ "${FILESDIR}/${PN}-5.7.1-hipcc-hip-version.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed -e "s:\$ROCM_PATH/llvm/bin:$(get_llvm_prefix ${LLVM_MAX_SLOT})/bin:" \
+ -i bin/hipvars.pm || die
+
+ sed -e "s:\$ENV{'DEVICE_LIB_PATH'}:'${EPREFIX}/usr/lib/amdgcn/bitcode':" \
+ -e "s:\$ENV{'HIP_LIB_PATH'}:'${EPREFIX}/usr/$(get_libdir)':" \
+ -e "/HIP.*FLAGS.*isystem.*HIP_INCLUDE_PATH/d" \
+ -i bin/hipcc.pl || die
+}
+
+src_install() {
+ cmake_src_install
+ # rm unwanted copy
+ rm -rf "${ED}/usr/hip" || die
+}
diff --git a/dev-util/hipcc/hipcc-5.7.1.ebuild b/dev-util/hipcc/hipcc-5.7.1.ebuild
deleted file mode 100644
index 71fbdc1e5def..000000000000
--- a/dev-util/hipcc/hipcc-5.7.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="Radeon Open Compute hipcc"
-HOMEPAGE="https://github.com/ROCm-Developer-Tools/hipcc"
-
-KEYWORDS="~amd64"
-SRC_URI="https://github.com/ROCm-Developer-Tools/hipcc/archive/refs/tags/rocm-${PV}.tar.gz -> hipcc-${PV}.tar.gz"
-
-LICENSE="Apache-2.0 MIT"
-SLOT="0/$(ver_cut 1-2)"
-IUSE="debug test"
-RESTRICT="!test? ( test )"
-
-S=${WORKDIR}/HIPCC-rocm-${PV}
-
-RDEPEND="!<dev-util/hip-5.7"
diff --git a/dev-util/promu/Manifest b/dev-util/promu/Manifest
index 64a29873b09d..654ad48d4cd8 100644
--- a/dev-util/promu/Manifest
+++ b/dev-util/promu/Manifest
@@ -8,4 +8,4 @@ EBUILD promu-0.13.0.ebuild 728 BLAKE2B 39c0c654a2f295b12bd74f9c76e75913ed0a3be97
EBUILD promu-0.14.0.ebuild 741 BLAKE2B b494bc541194e2d89569ec62acc24b0f7716cd7445239a3df492ba9e34942ebe07872b391604c2b66c150e06ff7dd660a933ac45a798a78d3c12c384934ecdde SHA512 99a193a1e16a58bc4ceb1a67fb8ad8932df0875196cbaf14342d72563bdace99bc65a71df7a1cff46e8f4ed0f9cb9d711285dc019f6fed93cecddaee80ad7fc4
EBUILD promu-0.15.0.ebuild 963 BLAKE2B e055eedbc865df5a0f78bfb7229c42641090b5830c38aec00bc47a303b7279d76ac1fe85a4b0d373da93f8f914b71321f515d649807800543d32efbeb219072f SHA512 cd663e952a0932d4a88562e1d0f61ae1c13a0deb75b79d37ad8dfc0511a5c0a3973cd79e1b2af040d902d59ca83ad77265161dfb56287cf832af9a959da40f32
EBUILD promu-9999.ebuild 964 BLAKE2B 8676ddb721f111583d35bb84c0cfc77f037df87ae42f07ca75a3c3d165969228e24026d75b898de2d477b21d9c0060b795222c2fc3c2845aada2f39e4022cdd6 SHA512 2393845a6daaf547a202dfb0e0694f90e2b650d4b578f42b08a59c1b7e36b138bee41769e04896ae035421dddcbaac03392eb9d70842008ac55acf79ed4f56d1
-MISC metadata.xml 719 BLAKE2B b4771d5f24b75d5edef09dfa6625c28b98c1309e27454cc2f1cd2831969abc5b8008243b16276d2054fb983b5f5dbc6a52b9aa90bbaa9ee58f6152f337a2e992 SHA512 aaa82f1edd6f59d4af2f4c3670bdb748d4dda006d83297639f752f19f9bbabc435eeaede551f6346c6cbb902a8aac8874dbbf5c89a94842321c4c00108be33f3
+MISC metadata.xml 716 BLAKE2B 15240c6a449309ac6dda077234ec35da888c9f9ff2f61c400a8c9ddf30d763d730cd6a23c3c9a39e46ab2c7d56d1d1dcb77303da711590cab07c81e9f1e097bf SHA512 7b7dae1792fc90bf460da55d5e1b1ef3fbde9dff46532b3a9cebb3392a222688df28abd7a924213968652a9093e64ce4a037e532be968a223491788be09c5ae1
diff --git a/dev-util/promu/metadata.xml b/dev-util/promu/metadata.xml
index 0d1185897523..99fd04f7fbd6 100644
--- a/dev-util/promu/metadata.xml
+++ b/dev-util/promu/metadata.xml
@@ -6,7 +6,7 @@
<name>Zac Medico</name>
</maintainer>
<maintainer type="person" proxied="yes">
- <email>rahil3108@gmail.com</email>
+ <email>me@rahil.website</email>
<name>Rahil Bhimjiani</name>
</maintainer>
<maintainer type="project" proxied="proxy">
diff --git a/dev-util/tea/Manifest b/dev-util/tea/Manifest
new file mode 100644
index 000000000000..93c5ba5a1ac3
--- /dev/null
+++ b/dev-util/tea/Manifest
@@ -0,0 +1,4 @@
+DIST tea-0.9.2-deps.tar.xz 56068596 BLAKE2B 0317a92e3879514dc68e5b0abc2aa08b9b940695db05cfa13227d3b0bc2399d1617d7a8f51c2eb60d3e791f42bf9d3b73c5d1360fac8114a11077a30cf837ccc SHA512 2f8cd3da7e89e54ccbf47c7c7e31b18dabd7082bd10f4db42ea7c6bedfe49e0c1c006ee6b03d20026e001800fa9f6a995388ea7aa258956cf41e8071696a9bb4
+DIST tea-0.9.2.tar.gz 709669 BLAKE2B 44e757dffaf1c8d6fe9de5eaefad58f6f19722f39c870da55932a0672c4040ff0e918e82594147361079e75d934cd58995f119c8ec132870e3f6c4ce2a5d016e SHA512 05be2ea5f845773324c10fe8f0340c96f40f392b7ef8cafb44463b7a5492de2216799d8cc339e7dc42e921afcd3ba0e21be133a87385e907af47261733935e62
+EBUILD tea-0.9.2.ebuild 645 BLAKE2B 8f630e27b4b01765d75e307d254acf36c750b058a7e7305fd2bd5b8215cb26ac6c477bd4917f9ec356035535451845a617b516dd3cd5e3888b3d6ef803521ca4 SHA512 a65c789b06115d20586da6d90650639483bef9f068f9b7ea3208564a8d00f2b01e3b12841a7c794e04d8549141e441da0d463dadd83b944bbf76c87129ba2a46
+MISC metadata.xml 555 BLAKE2B e11239f06bd00ddd5a40b52d67c94dd731bcbc52c8648e63932a453457805794dce02cb76fec4a17681e2f96c1cb090aa3e06b2e1d94ab231310cebc7e41ddac SHA512 0b68d203f0a1465f35a82c1037fc5571e1ff515bfccfedf11452e868e6198c794d70b35aec8831ebe412772e3e34eea69d4edd22cb8f5fa7e5c3ca6e509c7ece
diff --git a/dev-util/tea/metadata.xml b/dev-util/tea/metadata.xml
new file mode 100644
index 000000000000..0b940028cf9a
--- /dev/null
+++ b/dev-util/tea/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ tea is a productivity helper for Gitea. It can be used to manage most
+ entities on one or multiple Gitea instances and provides local helpers like
+ 'tea pr checkout'.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://gitea.com/gitea/tea/issues/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/tea/tea-0.9.2.ebuild b/dev-util/tea/tea-0.9.2.ebuild
new file mode 100644
index 000000000000..896625516252
--- /dev/null
+++ b/dev-util/tea/tea-0.9.2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="Command line tool to interact with Gitea server"
+HOMEPAGE="https://gitea.com/gitea/tea/"
+SRC_URI="
+ https://gitea.com/gitea/tea/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz
+"
+S="${WORKDIR}/tea"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+DOCS=( CHANGELOG.md README.md )
+
+src_compile() {
+ ego build
+}
+
+src_install() {
+ exeinto /usr/bin
+ doexe tea
+
+ newbashcomp contrib/autocomplete.sh tea
+
+ einstalldocs
+}