Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/android-studio/
Date: Tue, 02 Feb 2021 18:29:27
Message-Id: 1612290538.4cd96348067d0f0ab1e356750485426ff794d3b7.leio@gentoo
1 commit: 4cd96348067d0f0ab1e356750485426ff794d3b7
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 2 18:28:58 2021 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 2 18:28:58 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4cd96348
7
8 dev-util/android-studio: bump to 4.1.2
9
10 Package-Manager: Portage-3.0.12, Repoman-3.0.2
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12
13 dev-util/android-studio/Manifest | 1 +
14 .../android-studio-4.1.2.0.201.7042882.ebuild | 129 +++++++++++++++++++++
15 2 files changed, 130 insertions(+)
16
17 diff --git a/dev-util/android-studio/Manifest b/dev-util/android-studio/Manifest
18 index 67ff9c6135a..f8aa4909c81 100644
19 --- a/dev-util/android-studio/Manifest
20 +++ b/dev-util/android-studio/Manifest
21 @@ -1,3 +1,4 @@
22 DIST android-studio-ide-193.6626763-linux.tar.gz 907569312 BLAKE2B 602170eea29e632dd5720ef364510a20056a4d98c61e77d5436a2f624a60e0cfa4e0533174613a74f359d8fdeb4e87489caeb5c34b292fcdc35843a76440a9a3 SHA512 7fba99efccdf3bbbfcbc94625aba3789b1bad0e830b2ac890bd681b9089e6789e87b2dbdc80c6ef3d8db2b2438678a8bb58aefb3c311f61f619042ab1ec9dfac
23 DIST android-studio-ide-201.6858069-linux.tar.gz 926181537 BLAKE2B ed815f5565ef97ca3f4e1c6cbae3548c70ba94a94a7ae522102044ada31468f241db68ef3d1a1ce6acef60a1bc2e6cd7eba1375a1cebbf01c73063a3d85eb9b2 SHA512 b473e9573e21c666042befa17fde8fc9cb0d6ffd41513d64b74779815079d8971c66afcd1dda5663b503324d14851c4f24a454e5da97e2473550323c09919825
24 DIST android-studio-ide-201.6953283-linux.tar.gz 926213072 BLAKE2B bdcca29e75348230c37a141423faf27eae75f299ded1abb3aad12605cb5be144c222d15b998ff16203a035311a6a26d8ae4ee28f337098c78377c5df4e7fcf08 SHA512 554d53596280aa96349ed0b3808599cf315c4f1a439ff57cd2368c6a68b57afac620b86d742c2f2ff72d718a62e33f4353202b3bc3671c0fe934cd8d79f74c0c
25 +DIST android-studio-ide-201.7042882-linux.tar.gz 925365363 BLAKE2B 337db94154a44ad95545b1f6ca48d9f95773663607ed2de415ae04ae80ed10670e9906b0bcac539d539455964a41c2af117557c4ec0af58b14fcbd175aa44197 SHA512 c7829df5296172613c8bc01d699c7581d27f7604e182143bc8ba4c8503771b4e290d16c4dd3498f1d5701eb8d54adc7a61b2a0967454d99f5ec2a10d697e5b56
26
27 diff --git a/dev-util/android-studio/android-studio-4.1.2.0.201.7042882.ebuild b/dev-util/android-studio/android-studio-4.1.2.0.201.7042882.ebuild
28 new file mode 100644
29 index 00000000000..c0c19c66487
30 --- /dev/null
31 +++ b/dev-util/android-studio/android-studio-4.1.2.0.201.7042882.ebuild
32 @@ -0,0 +1,129 @@
33 +# Copyright 1999-2021 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +inherit desktop eutils java-pkg-2
38 +
39 +RESTRICT="strip"
40 +QA_PREBUILT="
41 + opt/${PN}/bin/fsnotifier*
42 + opt/${PN}/bin/libdbm64.so
43 + opt/${PN}/bin/lldb/*
44 + opt/${PN}/custom-jdk/*
45 + opt/${PN}/lib/pty4j-native/linux/*/libpty.so
46 + opt/${PN}/plugins/android/lib/libwebp_jni*.so
47 + opt/${PN}/plugins/android/resources/installer/*
48 + opt/${PN}/plugins/android/resources/perfetto/*
49 + opt/${PN}/plugins/android/resources/simpleperf/*
50 + opt/${PN}/plugins/android/resources/transport/*
51 +"
52 +
53 +VER_CMP=( $(ver_rs 1- ' ') )
54 +if [[ ${#VER_CMP[@]} -eq 6 ]]; then
55 + STUDIO_V=$(ver_cut 1-4)
56 + BUILD_V=$(ver_cut 5-6)
57 +else
58 + STUDIO_V=$(ver_cut 1-3)
59 + BUILD_V=$(ver_cut 4-5)
60 +fi
61 +
62 +DESCRIPTION="Android development environment based on IntelliJ IDEA"
63 +HOMEPAGE="http://developer.android.com/sdk/installing/studio.html"
64 +SRC_URI="https://dl.google.com/dl/android/studio/ide-zips/${STUDIO_V}/${PN}-ide-${BUILD_V}-linux.tar.gz"
65 +
66 +LICENSE="Apache-2.0"
67 +SLOT="0"
68 +IUSE="custom-jdk selinux"
69 +KEYWORDS="~amd64 ~x86"
70 +
71 +DEPEND="
72 + dev-java/commons-logging:0
73 + dev-java/log4j:0"
74 +
75 +RDEPEND="${DEPEND}
76 + >=virtual/jdk-1.7
77 + selinux? ( sec-policy/selinux-android )
78 + >=app-arch/bzip2-1.0.6-r4
79 + dev-java/commons-logging:0
80 + dev-java/log4j:0
81 + >=dev-libs/expat-2.1.0-r3
82 + >=dev-libs/libffi-3.0.13-r1
83 + >=media-libs/fontconfig-2.10.92
84 + >=media-libs/freetype-2.5.5
85 + >=media-libs/libpng-1.2.51
86 + >=media-libs/mesa-10.2.8[X(+)]
87 + || ( gnome-extra/zenity kde-apps/kdialog x11-apps/xmessage x11-libs/libnotify )
88 + sys-libs/ncurses-compat:5[tinfo]
89 + >=sys-libs/zlib-1.2.8-r1
90 + >=x11-libs/libX11-1.6.2
91 + >=x11-libs/libXau-1.0.7-r1
92 + >=x11-libs/libXdamage-1.1.4-r1
93 + >=x11-libs/libXdmcp-1.1.1-r1
94 + >=x11-libs/libXext-1.3.2
95 + >=x11-libs/libXfixes-5.0.1
96 + >=x11-libs/libXrender-0.9.8
97 + >=x11-libs/libXxf86vm-1.1.3
98 + >=x11-libs/libdrm-2.4.46
99 + >=x11-libs/libxcb-1.9.1
100 + >=x11-libs/libxshmfence-1.1"
101 +BDEPEND="dev-util/patchelf"
102 +S=${WORKDIR}/${PN}
103 +PATCHES=( "${FILESDIR}/0001-use-java-home-before-bundled.patch" )
104 +
105 +src_prepare() {
106 + eapply "${PATCHES[@]}"
107 + eapply_user
108 +
109 + # This is really a bundled jdk not a jre
110 + # If custom-jdk is not set bundled jre is replaced with system vm/jdk
111 + if use custom-jdk; then
112 + mv -f "${S}/jre" "${S}/custom-jdk" || die "Could not move bundled jdk"
113 + else
114 + rm -rf "${S}/jre" || die "Could not remove bundled jdk"
115 + fi
116 + # Replace bundled jars with system
117 + # has problems with newer jdom:0 not updated to jdom:2
118 + cd "${S}/lib" || die
119 + local JARS="commons-logging log4j"
120 + local j
121 + for j in ${JARS}; do
122 + rm -v ${j/:*/}*.jar || die
123 + java-pkg_jar-from ${j}
124 + done
125 +
126 + cd "${S}" || die
127 +
128 + # bug 629404
129 + echo "-Djdk.util.zip.ensureTrailingSlash=false" >> bin/studio64.vmoptions || die
130 + echo "-Djdk.util.zip.ensureTrailingSlash=false" >> bin/studio.vmoptions || die
131 +}
132 +
133 +src_compile() {
134 + patchelf --set-rpath '$ORIGIN' bin/lldb/lib/readline.so || die "Failed to fix insecure RPATH"
135 +}
136 +
137 +src_install() {
138 + local dir="/opt/${PN}"
139 +
140 + insinto "${dir}"
141 + doins -r *
142 +
143 + # This is really a bundled jdk not a jre
144 + # If custom-jdk is not set bundled jre is replaced with system vm/jdk
145 + if use custom-jdk; then
146 + dosym "custom-jdk" "${dir}/jre"
147 + else
148 + dosym "../../etc/java-config-2/current-system-vm" "${dir}/jre"
149 + fi
150 +
151 + fperms 755 "${dir}"/bin/{fsnotifier{,64},printenv.py,restart.py,format.sh,inspect.sh,studio.sh}
152 + fperms -R 755 "${dir}"/bin/lldb/{android,bin}
153 + if use custom-jdk; then
154 + fperms -R 755 "${dir}"/jre/{bin,jre/bin}
155 + fperms 755 ${dir}/jre/jre/lib/jexec
156 + fi
157 +
158 + newicon "bin/studio.png" "${PN}.png"
159 + make_wrapper ${PN} ${dir}/bin/studio.sh
160 + make_desktop_entry ${PN} "Android Studio" ${PN} "Development;IDE" "StartupWMClass=jetbrains-studio"
161 +}