1 # Copyright 1999-2017 Gentoo Foundation |
|
2 # Distributed under the terms of the GNU General Public License v2 |
|
3 |
|
4 EAPI=6 |
|
5 |
|
6 DESCRIPTION="An awesome Android emulator" |
|
7 HOMEPAGE="http://www.genymotion.com" |
|
8 SRC_URI="https://dl.genymotion.com/releases/${P}/${P}_x64.bin" |
|
9 |
|
10 LICENSE="GENYMOTION" |
|
11 SLOT="0" |
|
12 KEYWORDS="~amd64" |
|
13 IUSE="unbundled-libs" |
|
14 |
|
15 inherit pax-utils |
|
16 |
|
17 DEPEND="" |
|
18 # note if you compile protobuf with >=gcc-5.1 you need to disable the new c++11 abi |
|
19 # -D_GLIBCXX_USE_CXX11_ABI=0 to your CXXFLAGS for protobuf |
|
20 RDEPEND="|| ( >=app-emulation/virtualbox-5.0.28 |
|
21 >=app-emulation/virtualbox-bin-5.0.28 ) |
|
22 unbundled-libs? ( |
|
23 dev-libs/openssl:0 |
|
24 dev-qt/qtcore:5[icu] |
|
25 dev-qt/qtgui:5 |
|
26 dev-qt/qtnetwork:5 |
|
27 dev-qt/qtopengl:5 |
|
28 dev-qt/qtprintsupport:5 |
|
29 dev-qt/qtquickcontrols:5 |
|
30 dev-qt/qtsql:5 |
|
31 dev-qt/qtsvg:5 |
|
32 dev-qt/qtwebkit:5 |
|
33 dev-qt/qtwebsockets:5 |
|
34 dev-qt/qtwidgets:5 |
|
35 dev-qt/qtx11extras:5 |
|
36 dev-qt/qtgraphicaleffects:5 |
|
37 =dev-libs/protobuf-2.6* |
|
38 )" |
|
39 |
|
40 # don't unbundle libav to avoid downgrade |
|
41 # media-video/libav:0/9 |
|
42 |
|
43 QA_PRESTRIPPED=" |
|
44 /opt/genymotion/device-upgrade |
|
45 /opt/genymotion/genymotion |
|
46 /opt/genymotion/genymotion-tool |
|
47 /opt/genymotion/genymotionadbtunneld |
|
48 /opt/genymotion/genyshell |
|
49 /opt/genymotion/gmtool |
|
50 /opt/genymotion/imageformats/libqsvg.so |
|
51 /opt/genymotion/imageformats/libqgif.so |
|
52 /opt/genymotion/imageformats/libqjpeg.so |
|
53 /opt/genymotion/lib64EGL_translator.so |
|
54 /opt/genymotion/lib64GLES_CM_translator.so |
|
55 /opt/genymotion/lib64GLES_V2_translator.so |
|
56 /opt/genymotion/lib64OpenglRender.so |
|
57 /opt/genymotion/libavutil.so.51 |
|
58 /opt/genymotion/libcrypto.so.1.0.0 |
|
59 /opt/genymotion/libicudata.so.53 |
|
60 /opt/genymotion/libicui18n.so.53 |
|
61 /opt/genymotion/libicuuc.so.53 |
|
62 /opt/genymotion/libminicrypt.so.1.0.0 |
|
63 /opt/genymotion/libprotobuf.so.9 |
|
64 /opt/genymotion/libQt5Concurrent.so.5 |
|
65 /opt/genymotion/libQt5Core.so.5 |
|
66 /opt/genymotion/libQt5DBus.so.5 |
|
67 /opt/genymotion/libQt5Gui.so.5 |
|
68 /opt/genymotion/libQt5Network.so.5 |
|
69 /opt/genymotion/libQt5OpenGL.so.5 |
|
70 /opt/genymotion/libQt5PrintSupport.so.5 |
|
71 /opt/genymotion/libQt5Qml.so.5 |
|
72 /opt/genymotion/libQt5Quick.so.5 |
|
73 /opt/genymotion/libQt5Sql.so.5 |
|
74 /opt/genymotion/libQt5Svg.so.5 |
|
75 /opt/genymotion/libQt5WebKit.so.5 |
|
76 /opt/genymotion/libQt5WebKitWidgets.so.5 |
|
77 /opt/genymotion/libQt5Widgets.so.5 |
|
78 /opt/genymotion/libswscale.so.2 |
|
79 /opt/genymotion/platforms/libqxcb.so |
|
80 /opt/genymotion/player |
|
81 /opt/genymotion/plugins/libvboxmanage.so.1.0.0 |
|
82 /opt/genymotion/sqldrivers/libqsqlite.so |
|
83 /opt/genymotion/tools/aapt |
|
84 /opt/genymotion/tools/adb |
|
85 /opt/genymotion/tools/glewinfo " |
|
86 |
|
87 EMBEDDED_LIBS=" |
|
88 libharfbuzz.so.0 |
|
89 libXrender.so.1 |
|
90 libXcomposite.so.1 |
|
91 libxslt.so.1 |
|
92 libxml2.so.2 |
|
93 libsqlite3.so.0 |
|
94 libfreetype.so.6 |
|
95 libgraphite2.so.3 |
|
96 libexpat.so.1 |
|
97 libxcb-dri3.so.0 |
|
98 libxcb-present.so.0 |
|
99 libxcb-sync.so.1 |
|
100 libxshmfence.so.1 |
|
101 libglapi.so.0 |
|
102 libXext.so.6 |
|
103 libXdamage.so.1 |
|
104 libXfixes.so.3 |
|
105 libX11-xcb.so.1 |
|
106 libxcb.so.1 |
|
107 libxcb-glx.so.0 |
|
108 libxcb-dri2.so.0 |
|
109 libXxf86vm.so.1 |
|
110 libdrm.so.2 |
|
111 libicuuc.so.52 |
|
112 libpng12.so.0 |
|
113 libXau.so.6 |
|
114 libXdmcp.so.6 |
|
115 libicudata.so.52 |
|
116 libQt5WebKitWidgets.so.5 |
|
117 libQt5WebSockets.so.5 |
|
118 libQt5Concurrent.so.5 |
|
119 libQt5Svg.so.5 |
|
120 libQt5Gui.so.5 |
|
121 libQt5Core.so.5 |
|
122 libQt5Network.so.5 |
|
123 libQt5Widgets.so.5 |
|
124 libQt5Sql.so.5 |
|
125 libQt5WebKit.so.5 |
|
126 libQt5X11Extras.so.5 |
|
127 libQt5PrintSupport.so.5 |
|
128 libQt5OpenGL.so.5 |
|
129 libQt5Quick.so.5 |
|
130 libQt5Qml.so.5 |
|
131 libQt5DBus.so.5 |
|
132 libjpeg.so.8 |
|
133 libicui18n.so.52 |
|
134 libgstreamer-1.0.so.0 |
|
135 libgstapp-1.0.so.0 |
|
136 libgstbase-1.0.so.0 |
|
137 libgstpbutils-1.0.so.0 |
|
138 libgstvideo-1.0.so.0 |
|
139 libgstaudio-1.0.so.0 |
|
140 libffi.so.6 |
|
141 liborc-0.4.so.0 |
|
142 libgsttag-1.0.so.0 |
|
143 libdouble-conversion.so.1 |
|
144 libXi.so.6 |
|
145 libxcb-render-util.so.0 |
|
146 libSM.so.6 |
|
147 libICE.so.6 |
|
148 libxcb-render.so.0 |
|
149 libxcb-image.so.0 |
|
150 libxcb-icccm.so.4 |
|
151 libxcb-xfixes.so.0 |
|
152 libxcb-shm.so.0 |
|
153 libxcb-randr.so.0 |
|
154 libxcb-shape.so.0 |
|
155 libxcb-keysyms.so.1 |
|
156 libxcb-xkb.so.1 |
|
157 libxkbcommon-x11.so.0 |
|
158 libxkbcommon.so.0 |
|
159 libfontconfig.so.1 |
|
160 libuuid.so.1 |
|
161 libxcb-util.so.0 |
|
162 libssl.so.1.0.0 |
|
163 libcrypto.so.1.0.0 |
|
164 libpcre.so.3 |
|
165 libdbus-1.so.3 |
|
166 libprotobuf.so.9 |
|
167 " |
|
168 # don't unbundle libav |
|
169 # libavutil.so.51 |
|
170 # libswscale.so.2 |
|
171 |
|
172 src_unpack() { |
|
173 mkdir "${S}" |
|
174 skip=$(awk '/^__TARFILE_FOLLOWS__/ { print NR + 1; exit 0; }' "${DISTDIR}/${A}") |
|
175 tail -n +$skip "${DISTDIR}/${A}" | tar -xj -C "${S}" |
|
176 } |
|
177 |
|
178 src_install() { |
|
179 dodir "/opt/genymotion" |
|
180 if use unbundled-libs ; then |
|
181 rm -r sqldrivers || die |
|
182 rm -r platforms || die |
|
183 rm -r QtGraphicalEffects || die |
|
184 rm -r QtQuick || die |
|
185 rm -r QtQuick.2 || die |
|
186 # should be deleted and use the system one provided by qtsvg |
|
187 # but it does not work |
|
188 # rm -r imageformats || die |
|
189 # delete all other qt dependencies |
|
190 rm $EMBEDDED_LIBS || die |
|
191 rm qt.conf || die |
|
192 fi |
|
193 |
|
194 cp -R "${S}"/* "${D}opt/genymotion" |
|
195 pax-mark -m "${D}opt/genymotion/genymotion" |
|
196 pax-mark -m "${D}opt/genymotion/gmtool" |
|
197 |
|
198 dodir "/opt/bin" |
|
199 dosym "/opt/genymotion/genymotion" "/opt/bin/genymotion" |
|
200 dosym "/opt/genymotion/genymotion-shell" "/opt/bin/genymotion-shell" |
|
201 dosym "/opt/genymotion/gmtool" "/opt/bin/gmtool" |
|
202 } |
|