Gentoo Archives: gentoo-commits

From: "Vadim Kuznetsov (vadimk)" <vadimk@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/vmware-server: vmware-server-2.0.2.203138-r1.ebuild ChangeLog
Date: Thu, 22 Apr 2010 19:28:13
Message-Id: 20100422185151.6F06329635@corvid.gentoo.org
1 vadimk 10/04/22 18:51:51
2
3 Modified: ChangeLog
4 Added: vmware-server-2.0.2.203138-r1.ebuild
5 Log:
6 Bug 292771
7 (Portage version: 2.1.8.3/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.63 app-emulation/vmware-server/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/vmware-server/ChangeLog?rev=1.63&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/vmware-server/ChangeLog?rev=1.63&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/vmware-server/ChangeLog?r1=1.62&r2=1.63
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/ChangeLog,v
19 retrieving revision 1.62
20 retrieving revision 1.63
21 diff -u -r1.62 -r1.63
22 --- ChangeLog 9 Mar 2010 12:03:47 -0000 1.62
23 +++ ChangeLog 22 Apr 2010 18:51:51 -0000 1.63
24 @@ -1,6 +1,12 @@
25 # ChangeLog for app-emulation/vmware-server
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/ChangeLog,v 1.62 2010/03/09 12:03:47 abcd Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/ChangeLog,v 1.63 2010/04/22 18:51:51 vadimk Exp $
29 +
30 +*vmware-server-2.0.2.203138-r1 (22 Apr 2010)
31 +
32 + 22 Apr 2010; Vadim Kuznetsov <vadimk@g.o>
33 + +vmware-server-2.0.2.203138-r1.ebuild:
34 + Bug 292771. Use system libxml2 and libexpat.
35
36 09 Mar 2010; Jonathan Callen <abcd@g.o>
37 vmware-server-2.0.1.156745-r3.ebuild, vmware-server-2.0.2.203138.ebuild:
38
39
40
41 1.1 app-emulation/vmware-server/vmware-server-2.0.2.203138-r1.ebuild
42
43 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/vmware-server/vmware-server-2.0.2.203138-r1.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/vmware-server/vmware-server-2.0.2.203138-r1.ebuild?rev=1.1&content-type=text/plain
45
46 Index: vmware-server-2.0.2.203138-r1.ebuild
47 ===================================================================
48 # Copyright 1999-2010 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/vmware-server-2.0.2.203138-r1.ebuild,v 1.1 2010/04/22 18:51:51 vadimk Exp $
51
52 # Unlike many other binary packages the user doesn't need to agree to a licence
53 # to download VMWare. The agreeing to a licence is part of the configure step
54 # which the user must run manually.
55
56 EAPI="2"
57
58 inherit eutils pam pax-utils versionator
59
60 MY_PV=$(replace_version_separator 3 '-' )
61 MY_PN="VMware-server-${MY_PV}"
62
63 DESCRIPTION="VMware Server for Linux"
64 HOMEPAGE="http://www.vmware.com/"
65 DOWNLOAD_URL="http://downloads.vmware.com/d/info/datacenter_downloads/vmware_server/2_0"
66 SRC_URI=" x86? ( mirror://vmware/software/vmserver/${MY_PN}.i386.tar.gz )
67 amd64? ( mirror://vmware/software/vmserver/${MY_PN}.x86_64.tar.gz ) "
68
69 LICENSE="vmware"
70 IUSE=""
71 SLOT="0"
72 KEYWORDS="-* ~x86 ~amd64"
73 RESTRICT="fetch strip"
74
75 CDEPEND="
76 >=dev-lang/perl-5
77 >=sys-libs/glibc-2.3.5
78 sys-apps/pciutils"
79 DEPEND="${CDEPEND}
80 sys-apps/findutils
81 x11-misc/shared-mime-info
82 virtual/os-headers"
83 # vmware-server should not use virtual/libc as this is a
84 # precompiled binary package thats linked to glibc.
85 RDEPEND="${CDEPEND}
86 ~app-emulation/vmware-modules-1.0.0.24
87 dev-libs/expat
88 dev-libs/glib
89 dev-libs/libxml2
90 sys-apps/hal
91 sys-fs/fuse
92 sys-libs/zlib
93 virtual/pam
94 x11-libs/libICE
95 x11-libs/libSM
96 x11-libs/libX11
97 x11-libs/libXau
98 x11-libs/libXdmcp
99 x11-libs/libXext
100 x11-libs/libXft
101 x11-libs/libXt
102 x11-libs/libXtst
103 x11-misc/xdg-utils
104 !<sys-apps/dbus-0.62
105 !app-emulation/vmware-player
106 !app-emulation/vmware-workstation
107 "
108
109 PDEPEND="app-emulation/vmware-vix"
110
111 S=${WORKDIR}/vmware-server-distrib
112
113 pkg_setup() {
114 if use x86; then
115 MY_P="${MY_PN}.i386"
116 elif use amd64; then
117 MY_P="${MY_PN}.x86_64"
118 fi
119 }
120
121 pkg_nofetch() {
122 if use x86; then
123 MY_P="${MY_PN}.i386"
124 elif use amd64; then
125 MY_P="${MY_PN}.x86_64"
126 fi
127
128 einfo "Please download the ${MY_P}.bundle from"
129 einfo "${DOWNLOAD_URL}"
130 einfo "and place it in ${DISTDIR}"
131 }
132
133 src_prepare() {
134 VMWARE_GROUP=${VMWARE_GROUP:-vmware}
135 VMWARE_INSTALL_DIR=/opt/${PN//-//}
136
137 shortname="wgs"
138 product="vmware"
139 config_program="vmware-config.pl"
140 config_dir="/etc/vmware"
141 product_name="VMware Server 2"
142
143 enewgroup ${VMWARE_GROUP}
144
145 # Remove PAX MPROTECT flag from all applicable files in /bin, /sbin for
146 # the vmware package only (since modules, tools and console should not
147 # need to generate code on the fly in memory).
148 pax-mark -m $(list-paxables "${S}"/{bin{,-debug},sbin}/{vmware-serverd,vmware-vmx})
149
150 EPATCH_SOURCE="${FILESDIR}"/${PV} EPATCH_SUFFIX="patch" epatch
151
152 # Proper lsmod
153 sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${S}"/installer/services.sh || die "sed"
154 sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${S}"/lib/net-services.sh || die "sed"
155
156 # Set the name
157 sed -i -e "s:%LONGNAME%:${product_name}:" "${S}"/installer/services.sh || die "sed"
158 sed -i -e "s:%SHORTNAME%:${shortname}:" "${S}"/installer/services.sh || die "sed"
159
160 # We won't want any perl scripts from VMware once we've finally got all
161 # of the configuration done, but for now, they're necessary.
162 #rm -f *.pl bin/*.pl
163 rm -f *.pl
164 rm -f etc/installer.sh
165
166 # Since with Gentoo we compile everthing it doesn't make sense to keep
167 # the precompiled modules arround. Saves about 4 megs of disk space too.
168 rm -rf "${S}"/lib/modules/binary
169 # We also don't need to keep the icons around, or do we?
170 #rm -rf ${S}/lib/share/icons
171
172 rm -rf "${S}"/etc/pam.d/
173 sed -i -e "s:configure_wgs_pam_d():#&:" "${S}"/bin/vmware-config.pl || die "sed pam_d"
174 }
175
176 src_install() {
177 # We loop through our directories and copy everything to our system.
178 for x in bin lib sbin
179 do
180 if [[ -e "${S}/${x}" ]]
181 then
182 dodir "${VMWARE_INSTALL_DIR}"/${x}
183 cp -pPR "${S}"/${x}/* "${D}""${VMWARE_INSTALL_DIR}"/${x} \
184 || die "copying ${x}"
185 fi
186 done
187
188 # Bug 282213
189 mv "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libpng12.so.0/libpng12.so.0 \
190 "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libpng12.so.0/libpng12.so.0.old
191 dosym /usr/lib/libpng12.so.0 "${VMWARE_INSTALL_DIR}"/lib/lib/libpng12.so.0/libpng12.so.0
192
193 # Bug 292771
194 mv "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libexpat.so.0/libexpat.so.0 \
195 "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libexpat.so.0/libexpat.so.0.old
196 dosym /usr/lib/libexpat.so.1 "${VMWARE_INSTALL_DIR}"/lib/lib/libexpat.so.0/libexpat.so.0
197 mv "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libxml2.so.2/libxml2.so.2 \
198 "${D}"/"${VMWARE_INSTALL_DIR}"/lib/lib/libxml2.so.2/libxml2.so.2.old
199 dosym /usr/lib/libxml2.so.2 "${VMWARE_INSTALL_DIR}"/lib/lib/libxml2.so.2/libxml2.so.2
200
201 # If we have an /etc directory, we copy it.
202 if [[ -e "${S}/etc" ]]
203 then
204 dodir "${config_dir}"
205 cp -pPR "${S}"/etc/* "${D}""${config_dir}"
206 fowners root:${VMWARE_GROUP} "${config_dir}"
207 fperms 770 "${config_dir}"
208 fi
209
210 # If we have any helper files, we install them. First, we check for an
211 # init script.
212 if [[ -e "${FILESDIR}/${PN}.rc" ]]
213 then
214 newinitd "${FILESDIR}"/${PN}.rc ${product} || die "newinitd"
215 fi
216 # Then we check for an environment file.
217 if [[ -e "${FILESDIR}/90${PN}" ]]
218 then
219 doenvd "${FILESDIR}"/90${PN} || die "doenvd"
220 fi
221 # Last, we check for any mime files.
222 if [[ -e "${FILESDIR}/${PN}.xml" ]]
223 then
224 insinto /usr/share/mime/packages
225 doins "${FILESDIR}"/${PN}.xml || die "mimetypes"
226 fi
227
228 # Blame bug #91191 for this one.
229 if [[ -e doc/EULA ]]
230 then
231 insinto "${VMWARE_INSTALL_DIR}"/doc
232 doins doc/EULA || die "copying EULA"
233 fi
234
235 # Do we have vmware-ping/vmware-vmx? If so, make them setuid.
236 for p in /bin/vmware-ping /lib/bin/vmware-vmx /lib/bin-debug/vmware-vmx /lib/bin/vmware-vmx-debug /sbin/vmware-authd;
237 do
238 if [ -x "${D}${VMWARE_INSTALL_DIR}${p}" ]
239 then
240 fowners root:${VMWARE_GROUP} "${VMWARE_INSTALL_DIR}"${p}
241 fperms 4750 "${VMWARE_INSTALL_DIR}"${p}
242 fi
243 done
244
245 # This removed the user/group warnings
246 # But also broke vmware-server with FEATURES="userpriv" since it removes
247 # the set-UID bit
248 #chown -R root:${VMWARE_GROUP} ${D} || die
249
250 # We like desktop icons.
251 # TODO: Fix up the icon creation, across the board.
252 #make_desktop_entry ${PN} "${product_name}" ${PN}.png
253
254 # Now, we copy in our services.sh file
255 exeinto "${config_dir}"/init.d
256 newexe installer/services.sh ${product} || die "services.sh"
257
258 newinitd "${FILESDIR}/vmware-server-2.rc" vmware
259
260 # startup symlinks
261 dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-autostart
262 dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-core
263 dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-mgmt
264
265 # pam
266 pamd_mimic_system vmware-authd auth account
267
268 # Man pages and docs
269 dodoc doc/*
270 doman man/man1/*
271
272 # VMware authorization service
273 insinto ${config_dir}/hostd
274 doins "${FILESDIR}/authorization.xml"
275
276 # Finally, we run the "Questions"
277 einfo "Adding answers to ${config_dir}/locations"
278 locations="${D}${config_dir}/locations"
279 echo "answer BINDIR ${VMWARE_INSTALL_DIR}/bin" >> ${locations}
280 echo "answer LIBDIR ${VMWARE_INSTALL_DIR}/lib" >> ${locations}
281 echo "answer MANDIR ${VMWARE_INSTALL_DIR}/man" >> ${locations}
282 echo "answer DOCDIR ${VMWARE_INSTALL_DIR}/doc" >> ${locations}
283 echo "answer SBINDIR ${VMWARE_INSTALL_DIR}/sbin" >> ${locations}
284 echo "answer RUN_CONFIGURATOR no" >> ${locations}
285 echo "answer INITDIR ${config_dir}/init.d" >> ${locations}
286 echo "answer INITSCRIPTSDIR ${config_dir}/init.d" >> ${locations}
287 echo "answer VMCI_CONFED yes" >> ${locations}
288 echo "answer VSOCK_CONFED yes" >> ${locations}
289 }
290
291 pkg_config() {
292 einfo "Running ${VMWARE_INSTALL_DIR}/bin/vmware-config.pl"
293 "${VMWARE_INSTALL_DIR}/bin/vmware-config.pl"
294 }
295
296 pkg_preinst() {
297 # This must be done after the install to get the mtimes on each file
298 # right.
299
300 #Note: it's a bit weird to use ${D} in a preinst script but it should work
301 #(drobbins, 1 Feb 2002)
302
303 einfo "Generating ${config_dir}/locations file."
304 d=`echo ${D} | wc -c`
305 for x in `find ${D}${VMWARE_INSTALL_DIR} ${D}${config_dir}` ; do
306 x="`echo ${x} | cut -c ${d}-`"
307 if [ -d "${D}/${x}" ] ; then
308 echo "directory ${x}" >> "${D}${config_dir}"/locations
309 else
310 echo -n "file ${x}" >> "${D}${config_dir}"/locations
311 if [ "${x}" == "${config_dir}/locations" ] ; then
312 echo "" >> "${D}${config_dir}"/locations
313 elif [ "${x}" == "${config_dir}/not_configured" ] ; then
314 echo "" >> "${D}${config_dir}"/locations
315 else
316 echo -n " " >> "${D}${config_dir}"/locations
317 find "${D}${x}" -printf %T@ >> "${D}${config_dir}"/locations
318 echo "" >> "${D}${config_dir}"/locations
319 fi
320 fi
321 done
322 }
323
324 pkg_postinst() {
325 update-mime-database /usr/share/mime
326 [[ -d "${config_dir}" ]] && chown -R root:${VMWARE_GROUP} ${config_dir}
327
328 # This is to fix the problem where the not_configured file doesn't get
329 # removed when the configuration is run. This doesn't remove the file
330 # It just tells the vmware-config.pl script it can delete it.
331 einfo "Updating ${config_dir}/locations"
332 for x in "${config_dir}"/._cfg????_locations ; do
333 if [ -f $x ] ; then
334 cat $x >> "${config_dir}"/locations
335 rm $x
336 fi
337 done
338
339 ewarn "Use "
340 ewarn " emerge vmware-server --config"
341 ewarn "to configure your installation of ${product_name}."
342
343 ewarn "In order to run ${product_name}, you have to"
344 ewarn "be in the '${VMWARE_GROUP}' group."
345
346 #ewarn "By default xinetd only allows connections from localhost"
347 #ewarn "To allow external users access to vmware-server you must edit"
348 #ewarn " /etc/xinetd.d/vmware-authd"
349 #ewarn "and specify a new 'only_from' line"
350
351 ewarn "VMWare Server also has issues when running on a JFS filesystem. For more"
352 ewarn "information see http://bugs.gentoo.org/show_bug.cgi?id=122500#c94"
353 }
354
355 pkg_prerm() {
356 einfo "Stopping ${product_name} for safe unmerge"
357 /etc/init.d/vmware stop
358 }
359
360 pkg_postrm() {
361 if ! has_version app-emulation/${PN}; then
362 elog "To remove all traces of ${product} you will need to remove the files"
363 elog "in ${config_dir} and /etc/init.d/${product}."
364 elog "If the vmware-modules package is installed, you may no longer need it."
365 fi
366 }