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}-linux_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-libs/icu |
|
25 dev-qt/qtcore:5[icu] |
|
26 dev-qt/qtgui:5 |
|
27 dev-qt/qtnetwork:5 |
|
28 dev-qt/qtopengl:5 |
|
29 dev-qt/qtprintsupport:5 |
|
30 dev-qt/qtquickcontrols:5 |
|
31 dev-qt/qtsql:5 |
|
32 dev-qt/qtsvg:5 |
|
33 dev-qt/qtwebkit:5 |
|
34 dev-qt/qtwebsockets:5 |
|
35 dev-qt/qtwidgets:5 |
|
36 dev-qt/qtx11extras:5 |
|
37 dev-qt/qtgraphicaleffects:5 |
|
38 =dev-libs/protobuf-2.6* |
|
39 )" |
|
40 |
|
41 # don't unbundle libav to avoid downgrade |
|
42 # media-video/libav:0/9 |
|
43 |
|
44 QA_PRESTRIPPED=" |
|
45 /opt/genymotion/device-upgrade |
|
46 /opt/genymotion/genymotion |
|
47 /opt/genymotion/genymotion-tool |
|
48 /opt/genymotion/genymotionadbtunneld |
|
49 /opt/genymotion/genyshell |
|
50 /opt/genymotion/gmtool |
|
51 /opt/genymotion/imageformats/libqsvg.so |
|
52 /opt/genymotion/imageformats/libqgif.so |
|
53 /opt/genymotion/imageformats/libqjpeg.so |
|
54 /opt/genymotion/lib64EGL_translator.so |
|
55 /opt/genymotion/lib64GLES_CM_translator.so |
|
56 /opt/genymotion/lib64GLES_V2_translator.so |
|
57 /opt/genymotion/lib64OpenglRender.so |
|
58 /opt/genymotion/libavutil.so.51 |
|
59 /opt/genymotion/libcrypto.so.1.0.0 |
|
60 /opt/genymotion/libicudata.so.53 |
|
61 /opt/genymotion/libicui18n.so.53 |
|
62 /opt/genymotion/libicuuc.so.53 |
|
63 /opt/genymotion/libminicrypt.so.1.0.0 |
|
64 /opt/genymotion/libprotobuf.so.9 |
|
65 /opt/genymotion/libQt5Concurrent.so.5 |
|
66 /opt/genymotion/libQt5Core.so.5 |
|
67 /opt/genymotion/libQt5DBus.so.5 |
|
68 /opt/genymotion/libQt5Gui.so.5 |
|
69 /opt/genymotion/libQt5Network.so.5 |
|
70 /opt/genymotion/libQt5OpenGL.so.5 |
|
71 /opt/genymotion/libQt5PrintSupport.so.5 |
|
72 /opt/genymotion/libQt5Qml.so.5 |
|
73 /opt/genymotion/libQt5Quick.so.5 |
|
74 /opt/genymotion/libQt5Sql.so.5 |
|
75 /opt/genymotion/libQt5Svg.so.5 |
|
76 /opt/genymotion/libQt5WebKit.so.5 |
|
77 /opt/genymotion/libQt5WebKitWidgets.so.5 |
|
78 /opt/genymotion/libQt5Widgets.so.5 |
|
79 /opt/genymotion/libswscale.so.2 |
|
80 /opt/genymotion/platforms/libqxcb.so |
|
81 /opt/genymotion/player |
|
82 /opt/genymotion/plugins/libvboxmanage.so.1.0.0 |
|
83 /opt/genymotion/sqldrivers/libqsqlite.so |
|
84 /opt/genymotion/tools/aapt |
|
85 /opt/genymotion/tools/adb |
|
86 /opt/genymotion/tools/glewinfo " |
|
87 |
|
88 EMBEDDED_LIBS=" |
|
89 libXcomposite.so.1 |
|
90 libxslt.so.1 |
|
91 libQt5WebKitWidgets.so.5 |
|
92 libQt5WebSockets.so.5 |
|
93 libQt5Concurrent.so.5 |
|
94 libQt5Svg.so.5 |
|
95 libQt5Gui.so.5 |
|
96 libQt5Core.so.5 |
|
97 libQt5Network.so.5 |
|
98 libQt5Widgets.so.5 |
|
99 libQt5Sql.so.5 |
|
100 libQt5WebKit.so.5 |
|
101 libQt5X11Extras.so.5 |
|
102 libQt5PrintSupport.so.5 |
|
103 libQt5Positioning.so.5 |
|
104 libQt5Sensors.so.5 |
|
105 libQt5WebChannel.so.5 |
|
106 libQt5OpenGL.so.5 |
|
107 libQt5Quick.so.5 |
|
108 libQt5Qml.so.5 |
|
109 libQt5DBus.so.5 |
|
110 liborc-0.4.so.0 |
|
111 libssl.so.1.0.0 |
|
112 libcrypto.so.1.0.0 |
|
113 libprotobuf.so.9 |
|
114 libgstapp-0.10.so.0 |
|
115 libgstbase-0.10.so.0 |
|
116 libgstinterfaces-0.10.so.0 |
|
117 libgstpbutils-0.10.so.0 |
|
118 libgstreamer-0.10.so.0 |
|
119 libgstvideo-0.10.so.0 |
|
120 libicudata.so.53 |
|
121 libicui18n.so.53 |
|
122 libicuuc.so.53 |
|
123 " |
|
124 # don't unbundle libav |
|
125 # libavutil.so.51 |
|
126 # libswscale.so.2 |
|
127 |
|
128 src_unpack() { |
|
129 mkdir "${S}" |
|
130 skip=$(awk '/^__TARFILE_FOLLOWS__/ { print NR + 1; exit 0; }' "${DISTDIR}/${A}") |
|
131 tail -n +$skip "${DISTDIR}/${A}" | tar -xj -C "${S}" |
|
132 } |
|
133 |
|
134 src_install() { |
|
135 dodir "/opt/genymotion" |
|
136 if use unbundled-libs ; then |
|
137 rm -r sqldrivers || die |
|
138 rm -r platforms || die |
|
139 rm -r QtGraphicalEffects || die |
|
140 rm -r QtQuick || die |
|
141 rm -r QtQuick.2 || die |
|
142 # should be deleted and use the system one provided by qtsvg |
|
143 # but it does not work |
|
144 # rm -r imageformats || die |
|
145 # delete all other qt dependencies |
|
146 rm $EMBEDDED_LIBS || die |
|
147 rm qt.conf || die |
|
148 fi |
|
149 |
|
150 cp -R "${S}"/* "${D}opt/genymotion" |
|
151 pax-mark -m "${D}opt/genymotion/genymotion" |
|
152 pax-mark -m "${D}opt/genymotion/gmtool" |
|
153 |
|
154 dodir "/opt/bin" |
|
155 dosym "/opt/genymotion/genymotion" "/opt/bin/genymotion" |
|
156 dosym "/opt/genymotion/genymotion-shell" "/opt/bin/genymotion-shell" |
|
157 dosym "/opt/genymotion/gmtool" "/opt/bin/gmtool" |
|
158 } |
|