diff options
-rw-r--r-- | dev-util/clion/Manifest | 2 | ||||
-rw-r--r-- | dev-util/clion/clion-2023.1.4.ebuild | 106 |
2 files changed, 107 insertions, 1 deletions
diff --git a/dev-util/clion/Manifest b/dev-util/clion/Manifest index 367b1072d3dd..d05ec83d3126 100644 --- a/dev-util/clion/Manifest +++ b/dev-util/clion/Manifest @@ -1,2 +1,2 @@ DIST CLion-2022.3.2.tar.gz 847111855 BLAKE2B 7e1814bcc683126f51eefd350b3d171a22d320ec658bc24b8831db1198756c59ee1be951665d10f2c3e76831f0d8ab55c0ae5fd9abeae0acf4e7009ce00f1faa SHA512 7ca87933323c0e1a4800eb75fbe40d179af987f33de51bca0e6b35264aaffea991712187719b837e07bd11457f8891f9f6038fb10f4e3157170d7818179b7531 -DIST CLion-2023.1.tar.gz 856517982 BLAKE2B ed3460070e235a93929dba016775cf4afd845cf99c2732d927a9296ba053bfc75129bcb568aa2a2a413e2b3244c2791cf264b9c1f2219888d04d8d7b46064378 SHA512 b80625f32437baf3aceac284c266246dc76f780fb624bd43588b7f767e807fe3a56b993076bcbf56007f062f2a449529bca5b4fc19505e6d1a92f90c22586f51 +DIST CLion-2023.1.4.tar.gz 858589459 BLAKE2B aed16b6cd6f88279f772fd38f63ff27019998ed1f7e63c1fcaba16fd1b43277d112806dd8ba4ff5e08a23fb5d80b0b80e24b7ef693e19a38220a7129c71d2d98 SHA512 b50ebcdb0b85ec00a9caaad6a309c8f37524a62115a8efeaa8b05819849bdda2d81bf2fae4a723d7d378fb32910a45af26aa5303006aff2e1ad96d5a4749ba90 diff --git a/dev-util/clion/clion-2023.1.4.ebuild b/dev-util/clion/clion-2023.1.4.ebuild new file mode 100644 index 000000000000..1faba92b159b --- /dev/null +++ b/dev-util/clion/clion-2023.1.4.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop wrapper + +DESCRIPTION="A complete toolset for C and C++ development" +HOMEPAGE="https://www.jetbrains.com/clion/" +SRC_URI="https://download.jetbrains.com/cpp/CLion-${PV}.tar.gz" + +LICENSE="|| ( IDEA IDEA_Academic IDEA_Classroom IDEA_OpenSource IDEA_Personal ) + Apache-1.1 Apache-2.0 BSD BSD-2 CC0-1.0 CDDL-1.1 CPL-0.5 CPL-1.0 + EPL-1.0 EPL-2.0 GPL-2 GPL-2-with-classpath-exception GPL-3 ISC JDOM + LGPL-2.1+ LGPL-3 MIT MPL-1.0 MPL-1.1 OFL public-domain PSF-2 UoI-NCSA ZLIB" +SLOT="0" +KEYWORDS="~amd64" +RESTRICT="bindist mirror splitdebug" + +BDEPEND="dev-util/patchelf" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + dev-util/cmake + dev-util/ninja + media-libs/alsa-lib + media-libs/freetype:2 + media-libs/mesa + net-print/cups + sys-apps/dbus + sys-devel/gdb + sys-libs/zlib + x11-libs/cairo + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libXxf86vm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/pango" + +QA_PREBUILT="opt/${PN}/*" + +src_prepare() { + default + + local remove_me=( + help/ReferenceCardForMac.pdf + bin/cmake + bin/gdb/linux + bin/lldb/linux + bin/ninja + license/CMake* + plugins/cwm-plugin/quiche-native/darwin-aarch64 + plugins/cwm-plugin/quiche-native/darwin-x86-64 + plugins/cwm-plugin/quiche-native/linux-aarch64 + plugins/cwm-plugin/quiche-native/win32-x86-64 + plugins/remote-dev-server/selfcontained + ) + + rm -rv "${remove_me[@]}" || die + + for file in "jbr/lib/{libjcef.so,jcef_helper}" + do + if [[ -f "${file}" ]]; then + patchelf --set-rpath '$ORIGIN' "${file}" || die + fi + done +} + +src_install() { + local dir="/opt/${PN}" + + insinto "${dir}" + doins -r * + fperms 755 "${dir}"/bin/{clion.sh,fsnotifier,inspect.sh,ltedit.sh,repair,restart.py,clang/linux/x64/{clangd,clang-tidy,clazy-standalone,llvm-symbolizer}} + + if [[ -d jbr ]]; then + fperms 755 "${dir}"/jbr/bin/{java,javac,jdb,jrunscript,keytool,rmiregistry,serialver} + # Fix #763582 + fperms 755 "${dir}"/jbr/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper} + fi + + dosym -r "${EPREFIX}/usr/bin/ninja" "${dir}"/bin/ninja/linux/x64/ninja + + make_wrapper "${PN}" "${dir}/bin/${PN}.sh" + newicon "bin/${PN}.svg" "${PN}.svg" + make_desktop_entry "${PN}" "CLion" "${PN}" "Development;IDE;" + + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit + insinto /usr/lib/sysctl.d + newins - 30-"${PN}"-inotify-watches.conf <<<"fs.inotify.max_user_watches = 524288" +} |