diff options
author | joe <joe@FreeBSD.org> | 2000-01-26 22:06:13 +0000 |
---|---|---|
committer | joe <joe@FreeBSD.org> | 2000-01-26 22:06:13 +0000 |
commit | 04fb81e5f18ccb33c583af058a162a453d52434d (patch) | |
tree | 6de2c831f934a1fc9c36a70de4b7636030eb7020 /emulators/vmware3 | |
parent | 97d7517244e8a16e368cf77f8df9b019c3462437 (diff) | |
download | FreeBSD-ports-04fb81e5f18ccb33c583af058a162a453d52434d.zip FreeBSD-ports-04fb81e5f18ccb33c583af058a162a453d52434d.tar.gz |
Virgin import of Vladimir N. Silyaev's port of the linux version of the
VMWare virtual machine.
PR: ports/16337
Submitted by: vsilyaev@mindspring.com
Diffstat (limited to 'emulators/vmware3')
-rw-r--r-- | emulators/vmware3/Makefile | 132 | ||||
-rw-r--r-- | emulators/vmware3/distinfo | 3 | ||||
-rw-r--r-- | emulators/vmware3/files/Makefile | 4 | ||||
-rw-r--r-- | emulators/vmware3/files/README.FreeBSD | 84 | ||||
-rw-r--r-- | emulators/vmware3/files/config | 8 | ||||
-rw-r--r-- | emulators/vmware3/files/df | 28 | ||||
-rw-r--r-- | emulators/vmware3/files/vmware.sh | 38 | ||||
-rw-r--r-- | emulators/vmware3/pkg-comment | 1 | ||||
-rw-r--r-- | emulators/vmware3/pkg-descr | 2 | ||||
-rw-r--r-- | emulators/vmware3/pkg-plist | 126 | ||||
-rw-r--r-- | emulators/vmware3/scripts/configure | 5 | ||||
-rw-r--r-- | emulators/vmware3/scripts/pre-install | 24 |
12 files changed, 455 insertions, 0 deletions
diff --git a/emulators/vmware3/Makefile b/emulators/vmware3/Makefile new file mode 100644 index 0000000..824f067 --- /dev/null +++ b/emulators/vmware3/Makefile @@ -0,0 +1,132 @@ +# ports collection makefile for: VMware For Linux +# Version required: 1.1.1 +# Date created: Fri 26 Nov 19:16:47 EST 1999 +# Whom: vns@delta.odessa.ua +# +# $FreeBSD$ +# $vmFreeBSD: vmware/vmmon-only/freebsd/port/Makefile,v 1.8 1999/12/17 00:38:27 vsilyaev Exp $ +# + +VERSION= 1.1.2 +BUILD= 364 +VMMON_FREEBSD_VERSION = 0.94 +VMNET_FREEBSD_VERSION = 0.10 +LINUX_DIR= /compat/linux + +CATEGORIES= emulators +MAINTAINER= vns@delta.odessa.ua +ONLY_FOR_ARCHS= i386 +RUN_DEPENDS= ${LINUX_DIR}/lib/libc.so.6:${PORTSDIR}/emulators/linux_base +USE_XLIB= yes +VMWARE_BINMODE= 4555 + + +DISTNAME= VMware-${VERSION}-${BUILD} +PKGNAME= vmware-${VERSION} +MASTER_SITES= http://www4.vmware.com/software/ \ + http://vmware-svca.www.conxion.com/software/ \ + http://vmware-chil.www.conxion.com/software/ \ + http://vmware-heva.www.conxion.com/software/ \ + http://www.vmware.co.uk/software/ \ + http://mirror.aarnet.edu.au/pub/vmware/software/ \ + ftp://mirror.aarnet.edu.au/pub/vmware/software/ + +WRKSRC= ${WRKDIR}/vmware-distrib + +VMMON_PATCH= vmmon-freebsd-${VMMON_FREEBSD_VERSION}.tar.gz \ + vmnet-freebsd-${VMNET_FREEBSD_VERSION}.tar.gz +PATCH_SITES= http://www.mindspring.com/~vsilyaev/vmware/files/ \ + ftp://mirror.aarnet.edu.au/pub/vmware/freebsd/ \ + http://mirror.aarnet.edu.au/pub/vmware/freebsd/ + +PATCHFILES= ${VMMON_PATCH} + +.include <bsd.port.pre.mk> + +.if ${OSVERSION} < 400013 +BROKEN= YES +.endif + +.if exists(${MASTERDIR}/Makefile.inc.net) +.include "${MASTERDIR}/Makefile.inc.net" +.endif + +.if exists(${MASTERDIR}/Makefile.inc.linproc) +.include "${MASTERDIR}/Makefile.inc.linproc" +.endif + +VMSUBDIR=lib/vmware +VMDIR=${PREFIX}/${VMSUBDIR} +SCRIPTS_ENV+=LINUX_DIR=${LINUX_DIR} \ + VMNET_HOST_IP=${VMNET_HOST_IP} \ + VMNET_NETMASK=${VMNET_NETMASK} + +MAKE_ARGS="KMODDIR=${VMDIR}/lib/modules" + +# +# Small hack for alternate processing patchfiles +# +GZCAT=${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/extract + +MAN1= vmware.1 + +post-patch: + @${CP} ${FILESDIR}/Makefile ${WRKSRC} + +setoptions: + ${SED} -e 's;@@PREFIX@@;${PREFIX};' ${FILESDIR}/vmware > ${WRKDIR}/vmware + ${SED} -e 's;@@PREFIX@@;${PREFIX};' \ + -e 's;@@HOST_IP@@;${VMNET_HOST_IP};' \ + -e 's;@@NETMASK@@;${VMNET_NETMASK};' \ + ${FILESDIR}/config > ${WRKDIR}/config + + ${SED} -e 's;@@PREFIX@@;${PREFIX};' \ + -e 's;@@NETWORKING@@;${VMNET_NETWORKING};' \ + -e 's;@@HOST_IP@@;${VMNET_HOST_IP};' \ + -e 's;@@NETMASK@@;${VMNET_NETMASK};' \ + ${FILESDIR}/vmware.sh> ${WRKDIR}/vmware.sh + +pre-install: setoptions + ${INSTALL_MAN} ${WRKSRC}/man/man1/vmware.1 ${MANPREFIX}/man/man1 + ${MKDIR} ${VMDIR}/lib/modules + + ${MKDIR} ${PREFIX}/etc/vmware + ${INSTALL_DATA} ${WRKDIR}/config ${PREFIX}/etc/vmware + + ${INSTALL_SCRIPT} ${WRKDIR}/vmware.sh ${PREFIX}/etc/rc.d + + ${MKDIR} ${VMDIR}/bin + ${INSTALL_SCRIPT} ${FILESDIR}/fakeprocfs.sh ${VMDIR}/bin + ${INSTALL_SCRIPT} ${FILESDIR}/df ${VMDIR}/bin + [ -f ${LINUX_DIR}/bin/df ] || ${LN} -s ${VMDIR}/bin/df ${LINUX_DIR}/bin/ + ${INSTALL_SCRIPT} ${WRKSRC}/bin/*.pl ${VMDIR}/bin + for i in \ + vmnet-bridge vmnet-dhcpd vmnet-sniffer \ + vmware-loop vmware-ping vmware-wizard \ + ; do \ + ${INSTALL_SCRIPT} ${WRKSRC}/bin/$${i} ${VMDIR}/bin; \ + done +.if defined(USE_LINPROC) + ${INSTALL_SCRIPT} -m ${VMWARE_BINMODE} ${WRKSRC}/bin/vmware ${VMDIR}/bin + ${LN} -s ${VMDIR}/bin/vmware ${PREFIX}/bin/ +.else + ${INSTALL_SCRIPT} ${WRKSRC}/bin/vmware ${VMDIR}/bin + ${INSTALL_SCRIPT} ${WRKDIR}/vmware ${PREFIX}/bin +.endif + ${MKDIR} ${VMDIR}/lib + ${INSTALL_DATA} ${WRKSRC}/lib/config ${VMDIR}/lib + ${MKDIR} ${VMDIR}/lib/help + ${INSTALL_DATA} ${WRKSRC}/lib/help/* ${VMDIR}/lib/help + ${MKDIR} ${VMDIR}/lib/xkeymap + ${INSTALL_DATA} ${WRKSRC}/lib/xkeymap/* ${VMDIR}/lib/xkeymap +.if !defined(NOPORTDOCS) + ${MKDIR} ${PREFIX}/share/doc/vmware + ${INSTALL_DATA} ${WRKSRC}/doc/* ${PREFIX}/share/doc/vmware + ${INSTALL_DATA} ${FILESDIR}/README.FreeBSD ${PREFIX}/share/doc/vmware +.endif + +post-install: + ${LN} -s ${PREFIX}/etc/vmware /etc/vmware + +.include <bsd.port.post.mk> + diff --git a/emulators/vmware3/distinfo b/emulators/vmware3/distinfo new file mode 100644 index 0000000..3c18df7 --- /dev/null +++ b/emulators/vmware3/distinfo @@ -0,0 +1,3 @@ +MD5 (VMware-1.1.2-364.tar.gz) = c0c6f4a172cefd8a0cd838d65f9633d4 +MD5 (vmmon-freebsd-0.94.tar.gz) = 741b47111d4e826a7cdbc61ecc868594 +MD5 (vmnet-freebsd-0.10.tar.gz) = 1da694a7a1952c25d6d1dafcf7c361de diff --git a/emulators/vmware3/files/Makefile b/emulators/vmware3/files/Makefile new file mode 100644 index 0000000..600b818 --- /dev/null +++ b/emulators/vmware3/files/Makefile @@ -0,0 +1,4 @@ +SUBDIR= vmmon-only vmnet-only/freebsd + +.include <bsd.subdir.mk> + diff --git a/emulators/vmware3/files/README.FreeBSD b/emulators/vmware3/files/README.FreeBSD new file mode 100644 index 0000000..66e673b --- /dev/null +++ b/emulators/vmware3/files/README.FreeBSD @@ -0,0 +1,84 @@ +VMware 1.1 for Linux on FreeBSD. +$Date: 1999/12/17 00:36:01 $ + +Introduction. + +This piece of software provides some basic support for running +the VMware 1.1 for Linux on FreeBSD. + +I'm using FreeBSD 4.0 -current system and don't know whether +this software will work on the 3.X branch. + +=== + +What's done. + +At this time I was able to successfully run the following operation systems +under VMware on FreeBSD: + + - FreeBSD 4.0 Current + - Linux (Debian 2.1) + - Windows NT + - Windows 95 OSR2 (in safe mode :) + - MS DOS 7.0 (Part of Win'95) + +I think that all platforms supported by VMware should work under FreeBSD. + + +Installation procedure. + +The easiest solution is to obtain the vmware port and try to build it. +The name of the port is vmware.tar.gz, and it can be downloaded from the +following location: + +http://www.mindspring.com/~vsilyaev/vmware/files/vmware.tar.gz + +If you are like to use the linux proc filesystem emulator, you are need +to install the next port: + +http://www.mindspring.com/~vsilyaev/vmware/files/linuxproc.tar.gz + +At build time, you will get further instructions on how to proceed. + +After a successful port installation you will need to obtain a license key +to run VMware (you can use an old one for Linux). If you want to obtain +a new key from http://www.vmware.com , you will have to select Linux as the +'server' platform. + +Features currently unsupported + + - Fullscreen text mode + + - Mounting vmware virtual drive + + - Parallel ports were never tested. However, to support bidirectional + transfers, we will need a FreeBSD version of the vmppuser driver. + +Caveats. + + - Onle one guest may be runned at one time. + + - Floppy disk detection currently doesn't work. It is assumed that + a disk is always present in the floppy drive. Because of that, if you + have enabled both IDE and floppy drives in the same VMware session, you + _must_ select the right booting order in the Phoenix BIOS Setup. + + - Doesn't work on a SMP kernel. + + - Support only for Host networking. Doesn't have a bridgink networking + But really this mean, that you are need to enable gateway on + our FreeBSD box. And after that virtual machine can communicate + with a rest of the world. + +Copyright issue. + + Unclear. My own code has a BSD-style copyright license, + but in order to write it, I used VMware-copyrighted sources. + In any case, I'm distributing only my own patch set, and all + modified files retain the original copyright information. + +Author. + + Vladimir N. Silyaev. + E-Mail: vsilyaev@mindspring.com + diff --git a/emulators/vmware3/files/config b/emulators/vmware3/files/config new file mode 100644 index 0000000..bb1a52d --- /dev/null +++ b/emulators/vmware3/files/config @@ -0,0 +1,8 @@ +vmware.fullpath = "@@PREFIX@@/lib/vmware/bin/vmware" +wizard.fullpath = "@@PREFIX@@/lib/vmware/bin/vmware-wizard" +dhcpd.fullpath = "@@PREFIX@@/lib/vmware/bin/vmnet-dhcpd" +loop.fullpath = ""@@PREFIX@@/lib/vmware/bin/vmware-loop" +libdir = "@@PREFIX@@/lib/vmware/lib" +vmnet1.HostOnlyAddress = "@@HOST_IP@@" +vmnet1.HostOnlyNetMask = "@@NETMASK@@" + diff --git a/emulators/vmware3/files/df b/emulators/vmware3/files/df new file mode 100644 index 0000000..a0911b3 --- /dev/null +++ b/emulators/vmware3/files/df @@ -0,0 +1,28 @@ +#!/usr/bin/perl +# Hacky emulation of GNU df. +# Intented to use with vmware wizard. +# Depend from the _absence_ linux version perl in the dir /compat/linux/usr/bin/ +@NARGV=('-n'); +$type=0; +foreach (@ARGV) { + exit if $_ eq '-n'; # Aargh it's me again, exit immediatly + next if $_ eq '-P'; + $type=1,next if $_ eq '-T'; + push @NARGV, $_; +} + +$line = 0; + +open(DF,"-|") or exec '/bin/df', @NARGV; +while(<DF>) { + + unless ($type) { print $_; next;} + @cols = split(); + if ($line++) { + $col = 'ext2fs'; + } else { + $col = 'Type'; + } + @cols = (@cols[0], $col, @cols[1..$#cols]); + print join("\t", @cols),"\n"; +} diff --git a/emulators/vmware3/files/vmware.sh b/emulators/vmware3/files/vmware.sh new file mode 100644 index 0000000..b3fa842 --- /dev/null +++ b/emulators/vmware3/files/vmware.sh @@ -0,0 +1,38 @@ +#!/bin/sh +# +# Start or stop vmware +# + +vmware_dir=@@PREFIX@@/lib/vmware +networking=@@NETWORKING@@ +host_ip=@@HOST_IP@@ +netmask=@@NETMASK@@ + +[ -x $vmware_dir/bin/vmware ] || exit +exec >/dev/null + +case $1 in + start) + kldload ${vmware_dir}/lib/modules/vmmon.ko + if [ $networking -eq 1 ]; then + kldload ${vmware_dir}/lib/modules/vmnet.ko + echo -n >/dev/vmnet1 + ifconfig vmnet1 $host_ip netmask $netmask + fi + echo -n " VMware" >/dev/tty + ;; + + stop) + kldunload vmmon + if [ $networking -eq 1 ]; then + ifconfig vmnet1 down + ifconfig vmnet1 delete $host_ip + kldunload vmnet + fi + ;; + + *) + echo "usage: `basename $0` {start|stop}" >&2 + exit 64 + ;; +esac diff --git a/emulators/vmware3/pkg-comment b/emulators/vmware3/pkg-comment new file mode 100644 index 0000000..71c5894 --- /dev/null +++ b/emulators/vmware3/pkg-comment @@ -0,0 +1 @@ +Linux version VMware diff --git a/emulators/vmware3/pkg-descr b/emulators/vmware3/pkg-descr new file mode 100644 index 0000000..3977bc5 --- /dev/null +++ b/emulators/vmware3/pkg-descr @@ -0,0 +1,2 @@ +VMware + diff --git a/emulators/vmware3/pkg-plist b/emulators/vmware3/pkg-plist new file mode 100644 index 0000000..e265ed7 --- /dev/null +++ b/emulators/vmware3/pkg-plist @@ -0,0 +1,126 @@ +bin/vmware +etc/vmware/config +lib/vmware/bin/df +lib/vmware/bin/fakeprocfs.sh +lib/vmware/bin/vmware +lib/vmware/bin/vmnet-bridge +lib/vmware/bin/vmnet-dhcpd +lib/vmware/bin/vmnet-sniffer +lib/vmware/bin/vmware-config.pl +lib/vmware/bin/vmware-mount.pl +lib/vmware/bin/vmware-uninstall.pl +lib/vmware/bin/vmware-loop +lib/vmware/bin/vmware-ping +lib/vmware/bin/vmware-wizard +lib/vmware/lib/config +lib/vmware/lib/help/AutoFit.htm +lib/vmware/lib/help/ConfigDiskPartition.htm +lib/vmware/lib/help/ConfigDisks.htm +lib/vmware/lib/help/ConfigEditor.htm +lib/vmware/lib/help/ConfigEthernet.htm +lib/vmware/lib/help/ConfigFloppy.htm +lib/vmware/lib/help/ConfigMemory.htm +lib/vmware/lib/help/ConfigMisc.htm +lib/vmware/lib/help/ConfigParallel.htm +lib/vmware/lib/help/ConfigSerial.htm +lib/vmware/lib/help/ConfigSound.htm +lib/vmware/lib/help/ConfigWiz.htm +lib/vmware/lib/help/Configuration.htm +lib/vmware/lib/help/Fit.htm +lib/vmware/lib/help/FullScreen.gif +lib/vmware/lib/help/Fullscreen.htm +lib/vmware/lib/help/GeneralInput.htm +lib/vmware/lib/help/GeneralMemory.htm +lib/vmware/lib/help/GeneralPreferences.htm +lib/vmware/lib/help/Glossary.htm +lib/vmware/lib/help/Help.gif +lib/vmware/lib/help/Interacting.htm +lib/vmware/lib/help/Introduction.htm +lib/vmware/lib/help/Power.htm +lib/vmware/lib/help/PowerOff.gif +lib/vmware/lib/help/PowerOff.htm +lib/vmware/lib/help/PowerOn.gif +lib/vmware/lib/help/PowerOn.htm +lib/vmware/lib/help/PowerReset.gif +lib/vmware/lib/help/PowerReset.htm +lib/vmware/lib/help/Resume.gif +lib/vmware/lib/help/Resume.htm +lib/vmware/lib/help/RunVM.htm +lib/vmware/lib/help/SendCtlAltDel.htm +lib/vmware/lib/help/Setremdev.htm +lib/vmware/lib/help/Settings.htm +lib/vmware/lib/help/ShowAllHints.htm +lib/vmware/lib/help/StatusBar.htm +lib/vmware/lib/help/Suspend.gif +lib/vmware/lib/help/Suspend.htm +lib/vmware/lib/help/ToolbarButtons.htm +lib/vmware/lib/help/View.htm +lib/vmware/lib/help/Wizcd.htm +lib/vmware/lib/help/Wizcongrats.htm +lib/vmware/lib/help/Wizdisk.htm +lib/vmware/lib/help/Wizdisk3.htm +lib/vmware/lib/help/WizdiskType.htm +lib/vmware/lib/help/Wizfloppy.htm +lib/vmware/lib/help/Wiznetwork.htm +lib/vmware/lib/help/Wizos.htm +lib/vmware/lib/help/Wizpath.htm +lib/vmware/lib/help/toc.htm +lib/vmware/lib/modules/vmmon.ko +lib/vmware/lib/modules/vmnet.ko +lib/vmware/lib/xkeymap/be101 +lib/vmware/lib/xkeymap/be104 +lib/vmware/lib/xkeymap/chde101 +lib/vmware/lib/xkeymap/chde104 +lib/vmware/lib/xkeymap/chfr101 +lib/vmware/lib/xkeymap/chfr104 +lib/vmware/lib/xkeymap/de101 +lib/vmware/lib/xkeymap/de104 +lib/vmware/lib/xkeymap/dk101 +lib/vmware/lib/xkeymap/dk104 +lib/vmware/lib/xkeymap/es101 +lib/vmware/lib/xkeymap/es104 +lib/vmware/lib/xkeymap/fi101 +lib/vmware/lib/xkeymap/fi104 +lib/vmware/lib/xkeymap/fr101 +lib/vmware/lib/xkeymap/fr104 +lib/vmware/lib/xkeymap/gb101 +lib/vmware/lib/xkeymap/gb104 +lib/vmware/lib/xkeymap/is101 +lib/vmware/lib/xkeymap/is104 +lib/vmware/lib/xkeymap/it101 +lib/vmware/lib/xkeymap/it104 +lib/vmware/lib/xkeymap/jp106 +lib/vmware/lib/xkeymap/jp109 +lib/vmware/lib/xkeymap/no101 +lib/vmware/lib/xkeymap/no104 +lib/vmware/lib/xkeymap/pt101 +lib/vmware/lib/xkeymap/pt104 +lib/vmware/lib/xkeymap/se101 +lib/vmware/lib/xkeymap/se104 +lib/vmware/lib/xkeymap/us101 +lib/vmware/lib/xkeymap/us104 +share/doc/vmware/CHANGES +share/doc/vmware/DHCP-COPYRIGHT +share/doc/vmware/EULA +share/doc/vmware/INSTALL +share/doc/vmware/README +share/doc/vmware/README.FreeBSD +@exec mkdir /compat/linux/dev;for n in 0 1 2 3 4 5 6 7 8 9; do ln -s /dev/ttyv$n /compat/linux/dev/tty$n;done +@exec ln -s /dev/ttyva /compat/linux/dev/tty10 +@exec ln -s /dev/ttyvb /compat/linux/dev/tty11 +@exec ln -s /dev/wd0 /compat/linux/dev/hda +@exec ln -s /dev/wd1 /compat/linux/dev/hdb +@exec ln -s /dev/wd2 /compat/linux/dev/hdc +@exec ln -s /dev/wd3 /compat/linux/dev/hdd +@exec ln -s %D/etc/vmware /etc/vmware +@exec mknod /dev/vmmon c 200 0 +@exec mknod /dev/vmnet1 c 201 1 +@unexec rm -f /etc/vmware /dev/vmmon /dev/vmnet1 /compat/linux/dev/tty[0-9]* /compat/linux/dev/hd? +@dirrm etc/vmware +@dirrm lib/vmware/bin +@dirrm lib/vmware/lib/help +@dirrm lib/vmware/lib/modules +@dirrm lib/vmware/lib/xkeymap +@dirrm lib/vmware/lib +@dirrm lib/vmware +@dirrm share/doc/vmware diff --git a/emulators/vmware3/scripts/configure b/emulators/vmware3/scripts/configure new file mode 100644 index 0000000..cebd8aa --- /dev/null +++ b/emulators/vmware3/scripts/configure @@ -0,0 +1,5 @@ +#!/bin/sh +mkdir -p ${WRKDIRPREFIX}${CURDIR} +. `dirname $0`/configure.linproc +. `dirname $0`/configure.net + diff --git a/emulators/vmware3/scripts/pre-install b/emulators/vmware3/scripts/pre-install new file mode 100644 index 0000000..7a97e40 --- /dev/null +++ b/emulators/vmware3/scripts/pre-install @@ -0,0 +1,24 @@ +#!/bin/sh +echo Setup Linux compatible /dev directory +linux_dev=${LINUX_DIR}/dev +if [ \! -d $linux_dev ]; then + echo Creating $linux_dev + mkdir $linux_dev + chown root:wheel $linux_dev + chmod 755 $linux_dev +fi +echo Creating $linux_dev/tty\? +for n in 0 1 2 3 4 5 6 7 8 9; do + ln -s /dev/ttyv$n $linux_dev/tty`expr 1 + $n`; +done +ln -s /dev/ttyva ${linux_dev}/tty11 +ln -s /dev/ttyvb ${linux_dev}/tty12 +ln -s ${linux_dev}/tty1 ${linux_dev}/tty0 +echo Creating $linux_dev/hd\? +mknod ${linux_dev}/hda b 0 0x00010002 +mknod ${linux_dev}/hdb b 0 0x0001000a +# Not enable wd2-3, because vmware-wizard locked, when +# doing something like access("/dev/hdc"...) +#mknod ${linux_dev}/hdc b 0 0x00010012 +#mknod ${linux_dev}/hdd b 0 0x0001001a +echo Done |