--- portage/dev-util/android-studio/android-studio-4.1.3.0.201.7199119.ebuild 2021-07-09 20:22:03.239392736 -0500 +++ portage/dev-util/android-studio/android-studio-4.2.2.0.202.7486908.ebuild 2021-07-09 20:38:31.121693562 -0500 @@ -6,16 +6,20 @@ RESTRICT="strip" QA_PREBUILT=" + opt/${PN}/bin/clang/linux/* opt/${PN}/bin/fsnotifier* opt/${PN}/bin/libdbm64.so opt/${PN}/bin/lldb/* opt/${PN}/custom-jdk/* opt/${PN}/lib/pty4j-native/linux/*/libpty.so opt/${PN}/plugins/android/lib/libwebp_jni*.so + opt/${PN}/plugins/android/lib/layoutlib/data/linux/lib64/* opt/${PN}/plugins/android/resources/installer/* opt/${PN}/plugins/android/resources/perfetto/* opt/${PN}/plugins/android/resources/simpleperf/* + opt/${PN}/plugins/android/resources/trace_processor_daemon/trace_processor_daemon opt/${PN}/plugins/android/resources/transport/* + opt/${PN}/plugins/webp/lib/libwebp/linux/* " VER_CMP=( $(ver_rs 1- ' ') ) @@ -40,6 +44,7 @@ dev-java/commons-logging:0 dev-java/log4j:0" +# Java 11 is not yet fully supported on Gentoo -- change RDEPEND to virtual/jdk:11 when 11 is unmasked RDEPEND="${DEPEND} >=virtual/jdk-1.7 selinux? ( sec-policy/selinux-android ) @@ -99,7 +104,9 @@ } src_compile() { - patchelf --set-rpath '$ORIGIN' bin/lldb/lib/readline.so || die "Failed to fix insecure RPATH" + for so in bin/clang/linux/libc++.so.1 bin/lldb/lib64/libc++.so.1 bin/lldb/lib64/libc++abi.so.1 bin/lldb/lib64/liblldb.so.11git plugins/android/lib/layoutlib/data/linux/lib64/libandroid_runtime.so plugins/android/lib/layoutlib/data/linux/lib64/libbinder.so plugins/android/lib/layoutlib/data/linux/lib64/libhidlbase.so plugins/android/resources/simpleperf/linux-x86_64/libsimpleperf_report.so; do + patchelf --set-rpath '$ORIGIN' ${so} || die "Failed to fix insecure RPATH" + done } src_install() { @@ -112,15 +119,17 @@ # If custom-jdk is not set bundled jre is replaced with system vm/jdk if use custom-jdk; then dosym "custom-jdk" "${dir}/jre" - else - dosym "../../etc/java-config-2/current-system-vm" "${dir}/jre" + elif has_version "dev-java/openjdk:11"; then + dosym "${EPREFIX}/usr/$(get_libdir)/openjdk-11" "${dir}/jre" + elif has_version "dev-java/openjdk-bin:11"; then + dosym "/opt/openjdk-bin-11" "${dir}/jre" fi fperms 755 "${dir}"/bin/{fsnotifier{,64},printenv.py,restart.py,format.sh,inspect.sh,studio.sh} fperms -R 755 "${dir}"/bin/lldb/{android,bin} if use custom-jdk; then - fperms -R 755 "${dir}"/jre/{bin,jre/bin} - fperms 755 ${dir}/jre/jre/lib/jexec + fperms -R 755 "${dir}"/jre/bin + fperms 755 "${dir}"/jre/lib/jexec fi newicon "bin/studio.png" "${PN}.png"