New version of winex released.
authorTilman Klar <phoenix@gentoo.org>
Fri, 11 Oct 2002 18:27:26 +0000 (18:27 +0000)
committerTilman Klar <phoenix@gentoo.org>
Fri, 11 Oct 2002 18:27:26 +0000 (18:27 +0000)
app-emulation/winex/ChangeLog
app-emulation/winex/files/digest-winex-20021011 [new file with mode: 0644]
app-emulation/winex/files/winex-20021011-config [new file with mode: 0644]
app-emulation/winex/files/winex-20021011-regedit [new file with mode: 0644]
app-emulation/winex/files/winex-20021011-winex [new file with mode: 0644]
app-emulation/winex/winex-20021011.ebuild [new file with mode: 0644]

index a19b66feb0910bfeb5b838ac4c13e0e60255169c..8437e9e80a3640da3bde658125a90219d72f6b31 100644 (file)
@@ -1,6 +1,17 @@
 # ChangeLog for app-emulation/wine
 # Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/winex/ChangeLog,v 1.12 2002/09/13 14:49:38 phoenix Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/winex/ChangeLog,v 1.13 2002/10/11 18:27:26 phoenix Exp $
+
+
+*winex-20021011 (11 Oct 2002)
+  
+  11 Oct 2002; phoen][x <phoenix@gentoo.org> winex-20021011.ebuild, 
+  files/digest-winex-20021011, files/winex-20021011-config,
+  files/winex-20021011-regedit, files/winex-20021011-winex :
+
+  New version of winex (2.2). Disabled the build of programs/ because there
+  were some major problems with the rc-files. If you find a way to work around
+  that, tell me how you did it. I gave up after one hour.
 
 *winex-20020807-r1 (13 Sep 2002)
   
diff --git a/app-emulation/winex/files/digest-winex-20021011 b/app-emulation/winex/files/digest-winex-20021011
new file mode 100644 (file)
index 0000000..9bfa00b
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 8d5a72d4a384d86ec59e5b1f0ed4386e winex-20021011.tar.bz2 6499507
+MD5 af8da46a0e51578ff1e18e399141d628 winex-20021011-fake_windows.tar.bz2 500
diff --git a/app-emulation/winex/files/winex-20021011-config b/app-emulation/winex/files/winex-20021011-config
new file mode 100644 (file)
index 0000000..cf57c93
--- /dev/null
@@ -0,0 +1,262 @@
+WINE REGISTRY Version 2
+;; All keys relative to \\Machine\\Software\\Wine\\Wine\\Config
+
+;; If you think it is nescessary to show others your complete config for a 
+;; bug report, filter out empty lines and comments with
+;; grep -v "^;" ~/.wine/config | grep '.' 
+;;
+;; MS-DOS drives configuration
+;;
+;; Each section has the following format:
+;; [Drive X]
+;; "Path"="xxx"       (Unix path for drive root)
+;; "Type"="xxx"       (supported types are 'floppy', 'hd', 'cdrom' and 'network')
+;; "Label"="xxx"      (drive label, at most 11 characters)
+;; "Serial"="xxx"     (serial number, 8 characters hexadecimal number)
+;; "Filesystem"="xxx" (supported types are 'msdos'/'dos'/'fat', 'win95'/'vfat', 'unix')
+;;   This is the FS Wine is supposed to emulate on a certain
+;;   directory structure.
+;;   Recommended:
+;;   - "win95" for ext2fs, VFAT and FAT32
+;;   - "msdos" for FAT16 (ugly, upgrading to VFAT driver strongly recommended)
+;;   DON'T use "unix" unless you intend to port programs using Winelib !
+;; "Device"="/dev/xx" (only if you want to allow raw device access)
+;;
+[Drive C]
+"Path" = "${HOME}/.winex/fake_windows"
+"Type" = "hd"
+"Label" = "MS-DOS"
+"Filesystem" = "win95"
+
+#[Drive D]
+#"Path" = "/path/to/drive_d"
+#"Type" = "hd"
+#"Label" = "LABEL"
+#"Filesystem" = "win95"
+
+#[Drive E]
+#"Path" = "/path/to/cdrom"
+#"Type" = "cdrom"
+#"Label" = "LABEL"
+#"Filesystem" = "win95"
+
+[Drive F]
+"Path" = "/tmp"
+"Type" = "hd"
+"Label" = "Tmp Drive"
+"Filesystem" = "win95"
+
+[Drive G]
+"Path" = "${HOME}"
+"Type" = "network"
+"Label" = "Home"
+"Filesystem" = "win95"
+
+[Drive H]
+"Path" = "/usr/lib/winex/bin"
+"Type" = "hd"
+"Label" = "WineX"
+"Filesystem" = "win95"
+
+[wine]
+"Windows" = "c:\\Windows"
+"System" = "c:\\Windows\\System"
+"Temp" = "f:\\"
+"Path" = "c:\\Windows;c:\\Windows\\System;f:\\;g:\\"
+"Profile" = "c:\\Windows\\Profiles\\Administrator"
+"GraphicsDriver" = "x11drv"
+; Wine doesn't pass directory symlinks to Windows programs by default.
+; Enabling this may crash some programs that do recursive lookups of a whole
+; subdir tree in case of a symlink pointing back to itself.
+;"ShowDirSymlinks" = "1"
+"ShellLinker" = "wineshelllink"
+
+# <wineconf>
+
+; Be careful here, wrong DllOverrides settings have the potential
+; to pretty much kill your setup.
+[DllOverrides]
+"commdlg"      = "builtin, native"
+"comdlg32"     = "builtin, native"
+"ver"          = "builtin, native"
+"version"      = "builtin, native"
+"shell"        = "builtin, native"
+"shell32"      = "builtin, native"
+"shfolder"     = "builtin, native"
+"shlwapi"      = "builtin, native"
+"shdocvw"      = "builtin, native"
+"lzexpand"     = "builtin, native"
+"lz32"         = "builtin, native"
+"comctl32"     = "builtin, native"
+"commctrl"     = "builtin, native"
+"advapi32"     = "builtin, native"
+"crtdll"       = "builtin, native"
+"mpr"          = "builtin, native"
+"winspool.drv" = "builtin, native"
+"ddraw"        = "builtin, native"
+"dinput"       = "builtin, native"
+"dsound"       = "builtin, native"
+"opengl32"     = "builtin, native"
+"msvcrt"       = "native, builtin"
+"rpcrt4"       = "native, builtin"
+"msvideo"      = "builtin, native"
+"msvfw32"      = "builtin, native"
+"mcicda.drv"   = "builtin, native"
+"mciseq.drv"   = "builtin, native"
+"mciwave.drv"  = "builtin, native"
+"mciavi.drv"   = "native, builtin"
+"mcianim.drv"  = "native, builtin"
+"msacm.drv"    = "builtin, native"
+"msacm"        = "builtin, native"
+"msacm32"      = "builtin, native"
+"midimap.drv"  = "builtin, native"
+; default for all other dlls
+"*" = "native, builtin, so"
+
+[x11drv]
+; Number of colors to allocate from the system palette
+"AllocSystemColors" = "100"
+; Use a private color map
+"PrivateColorMap" = "N"
+; Favor correctness over speed in some graphics operations
+"PerfectGraphics" = "N"
+; Color depth to use on multi-depth screens
+;;"ScreenDepth" = "16"
+; Name of X11 display to use
+;;"Display" = ":0.0"
+; Allow the window manager to manage created windows
+"Managed" = "Y"
+; Use a desktop window of 640x480 for Wine
+;"Desktop" = "640x480"
+; Use XFree86 DGA extension if present
+; (make sure /dev/mem is accessible by you !)
+"UseDGA" = "N"
+; Use XShm extension if present
+"UseXShm" = "Y"
+; Use XVidMode extension if present
+"UseXVidMode" = "Y"
+; Enable DirectX mouse grab
+"DXGrab" = "Y"
+; Create the desktop window with a double-buffered visual
+; (useful to play OpenGL games)
+"DesktopDoubleBuffered" = "N"
+; Code page used for captions in managed mode
+; 0 means default ANSI code page (CP_ACP == 0)
+"TextCP" = "0"
+; Use this if you have more than one port for video on your setup 
+; (Wine uses for now the first 'input image' it finds).
+;; "XVideoPort" = "43"
+; Run in synchronous mode (useful for debugging X11 problems)
+;;"Synchronous" = "Y"
+
+[fonts]
+;Read documentation/fonts before adding aliases
+;See a couple of examples for russian users below
+"Resolution" = "96"
+"Default" = "-adobe-helvetica-"
+"DefaultFixed" = "fixed"
+"DefaultSerif" = "-adobe-times-"
+"DefaultSansSerif" = "-adobe-helvetica-"
+
+;; default TrueType fonts with russian koi8-r encoding
+;"Default" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
+;"DefaultFixed" = "-monotype-courier new-*-*-*--*-*-*-*-*-*-koi8-r"
+;"DefaultSerif" = "-monotype-times new roman-*-*-*--*-*-*-*-*-*-koi8-r"
+;"DefaultSansSerif" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
+;; default cyrillic bitmap X fonts
+;"Default" = "-cronyx-helvetica-"
+;"DefaultFixed" = "fixed"
+;"DefaultSerif" = "-cronyx-times-"
+;"DefaultSansSerif" = "-cronyx-helvetica-"
+
+[serialports]
+"Com1" = "/dev/ttyS0"
+"Com2" = "/dev/ttyS1"
+"Com3" = "/dev/ttyS2"
+"Com4" = "/dev/modem"
+
+[parallelports]
+"Lpt1" = "/dev/lp0"
+
+[ppdev]
+;; key:  io-base of the emulated port
+;; value : parport-device{,timeout}
+;; timeout for auto closing an open device ( not yet implemented)
+;"378" = "/dev/parport0"
+;"278" = "/dev/parport1"
+;"3bc" = "/dev/parport2"
+
+[spooler]
+"FILE:" = "tmp.ps"
+"LPT1:" = "|lpr"
+"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
+"LPT3:" = "/dev/lp3"
+
+[ports]
+;"read"  = "0x779,0x379,0x280-0x2a0"
+;"write" = "0x779,0x379,0x280-0x2a0"
+
+[spy]
+"Exclude" = "WM_SIZE;WM_TIMER;"
+
+[registry]
+;These are all booleans.  Y/y/T/t/1 are true, N/n/F/f/0 are false.
+;Defaults are read all, write to Home
+; Global registries (stored in /etc)
+"LoadGlobalRegistryFiles" = "Y"
+; Home registries (stored in ~user/.wine/)
+"LoadHomeRegistryFiles" = "Y"
+; Load Windows registries from the Windows directory
+"LoadWindowsRegistryFiles" = "Y"
+; TRY to write all changes to home registries
+"WritetoHomeRegistryFiles" = "Y"
+; Registry periodic save timeout in seconds
+; "PeriodicSave" = "600"
+; Save only modified keys
+"SaveOnlyUpdatedKeys" = "Y"
+
+[Tweak.Layout]
+;; supported styles are 'Win31'(default), 'Win95', 'Win98'
+;; this has *nothing* to do with the windows version Wine returns:
+;; use cmdline option --winver if you want that.
+"WineLook" = "Win95"
+
+[Console]
+;"Drivers" = "tty"
+;"XtermProg" = "nxterm"
+;"InitialRows" = "25"
+;"InitialColumns" = "80"
+;"TerminalType" = "nxterm"
+
+[Clipboard]
+"ClearAllSelections" = "0"
+"PersistentSelection" = "1"
+
+; List of all directories directly contain .AFM files
+[afmdirs]
+"1" = "/usr/share/ghostscript/fonts"
+"2" = "/usr/share/a2ps/afm"
+"3" = "/usr/share/enscript"
+"4" = "/usr/X11R6/lib/X11/fonts/Type1"
+
+[WinMM]
+"Drivers" = "wineoss.drv"
+"WaveMapper" = "msacm.drv"
+"MidiMapper" = "midimap.drv"
+
+;; sample AppDefaults entries
+;[AppDefaults\\iexplore.exe\\DllOverrides]
+;"shlwapi" = "native"
+;"rpcrt4" = "native"
+;"ole32" = "native"
+;"shdocvw" = "native"
+;"wininet" = "native"
+;"shfolder" = "native"
+;"shell32" = "native"
+;"shell" = "native"
+;"comctl32" = "native"
+;
+;[AppDefaults\\setup.exe\\x11drv]
+;"Desktop" = "800x600"
+
+# </wineconf>
diff --git a/app-emulation/winex/files/winex-20021011-regedit b/app-emulation/winex/files/winex-20021011-regedit
new file mode 100644 (file)
index 0000000..3b56404
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/bash
+# The wineX regapi wrapper
+
+# Kindly distributed by Martin Schlemmer
+# Modified by phoen][x
+
+export INSTALLDIR="/usr/lib/winex"
+
+export WINEPREFIX="$HOME/.winex"
+
+export LD_LIBRARY_PATH="$INSTALLDIR/lib/wine:$INSTALLDIR/lib:$LD_LIBRARY_PATH"
+export WINEDLLPATH="$LD_LIBRARY_PATH"
+
+export WINE_LOADER=wine
+
+export RUNWINE="$INSTALLDIR/bin/wine" 
+export REGAPI="$INSTALLDIR/bin/regapi" 
+
+if([ -z ${1} ]) then
+       echo "Usage: regedit foo.reg"
+else
+       "$REGAPI" setValue < ${1} &> /dev/null
+fi
diff --git a/app-emulation/winex/files/winex-20021011-winex b/app-emulation/winex/files/winex-20021011-winex
new file mode 100644 (file)
index 0000000..541213b
--- /dev/null
@@ -0,0 +1,48 @@
+#!/bin/bash
+# The wineX wrapper
+
+# Kindly distributed by Martin Schlemmer
+# Modified by phoen][x
+
+export INSTALLDIR="/usr/lib/winex"
+
+export WINEPREFIX="$HOME/.winex"
+
+export LD_LIBRARY_PATH="$INSTALLDIR/lib/wine:$INSTALLDIR/lib:$LD_LIBRARY_PATH"
+export WINEDLLPATH="$LD_LIBRARY_PATH"
+
+export WINE_LOADER=wine
+
+export RUNWINE="$INSTALLDIR/bin/wine" 
+export REGAPI="$INSTALLDIR/bin/regapi" 
+
+if [ ! -f $WINEPREFIX/config ]
+then
+       echo "!! ~/.winex/config misses"
+       echo "!! Setting up a config file"
+
+       mkdir -p $WINEPREFIX/fake_windows
+
+       # First copy in the new config file.
+       cp "$INSTALLDIR/.data/config" "$WINEPREFIX/config"
+
+       echo "!! Setting up ~/.winex/fake_windows/"
+       cp -R $INSTALLDIR/.data/fake_windows/* $WINEPREFIX/fake_windows
+
+       echo "!! Setting up default registry."  
+       "$REGAPI" setValue < "$INSTALLDIR/.data/winedefault.reg" &> /dev/null
+
+       echo "!! Installation complete."
+       echo "!! Set the correct path for drive D and E in ~/.wine/config and uncomment the sections, please"
+       exit
+fi
+
+# Force the use of the more memory-efficient MSVC 5 allocator with
+# any programs that use MSVCRT.  This reduces memory consumption
+# significantly.
+export __MSVCRT_HEAP_SELECT=__GLOBAL_HEAP_SELECTED,2
+
+
+PATH="$INSTALLDIR/bin:$PATH"
+
+"$RUNWINE" --debugmsg -all "$@"
diff --git a/app-emulation/winex/winex-20021011.ebuild b/app-emulation/winex/winex-20021011.ebuild
new file mode 100644 (file)
index 0000000..65cdcb0
--- /dev/null
@@ -0,0 +1,127 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/winex/winex-20021011.ebuild,v 1.1 2002/10/11 18:27:26 phoenix Exp $
+
+IUSE="cups opengl"
+
+S=${WORKDIR}/wine
+DESCRIPTION="WineX is a distribution of Wine with enhanced DirectX for gaming"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+       mirror://gentoo/${P}-fake_windows.tar.bz2"
+HOMEPAGE="http://www.transgaming.com/"
+
+SLOT="0"
+KEYWORDS="x86 -ppc"
+LICENSE="Aladdin"
+
+DEPEND="virtual/x11
+       sys-devel/gcc
+       sys-devel/flex
+       dev-util/yacc
+       opengl? ( virtual/opengl )
+       >=sys-libs/ncurses-5.2
+       cups? ( net-print/cups )
+       >=media-libs/freetype-2.0.0
+       dev-lang/tcl dev-lang/tk"
+
+RDEPEND="${DEPEND}"
+
+src_compile() {
+       # Azarah's patches
+       #patch -p0 < ${FILESDIR}/${P}-opengl.patch || die "opengl-patch failed"
+    
+       cd ${S}
+       local myconf
+
+       use opengl && myconf="--enable-opengl" || myconf="--disable-opengl"
+       [ -z $DEBUG ] && myconf="$myconf --disable-trace --disable-debug" || myconf="$myconf --enable-trace --enable-debug"
+
+       # the folks at #winehq were really angry about custom optimization
+       unset CFLAGS
+       unset CXXFLAGS
+       
+       ./configure --prefix=/usr/lib/winex \
+               --sysconfdir=/etc/winex \
+               --host=${CHOST} \
+               --enable-curses \
+               --with-x \
+               ${myconf} || die "configure failed"
+
+       # Fixes a winetest issue
+       cd ${S}/programs/winetest
+       cp Makefile 1
+       sed -e 's:wine.pm:include/wine.pm:' 1 > Makefile
+
+       # This persuades wineshelllink that "winex" is a better loader :)
+       cd ${S}/tools
+       cp wineshelllink 1
+       sed -e 's/\(WINE_LOADER=\)\(\${WINE_LOADER:-wine}\)/\1winex/' 1 > wineshelllink
+
+       cd ${S} 
+       make depend all || die "make depend all failed"
+       
+       ##### borked really bad ###############################################
+       #cd programs && make || die "make died"                               #
+       #######################################################################
+}
+
+src_install () {
+
+       local WINEXMAKEOPTS="prefix=${D}/usr/lib/${PN}"
+       
+       # Installs winex to ${D}/usr/lib/${PN}
+       cd ${S}
+       make ${WINEXMAKEOPTS} install || die "make install failed"
+       
+       ##### borked really bad ###############################################
+       # cd ${S}/programs                                                    #
+       # make ${WINEXMAKEOPTS} install || die "make install failed"          #
+       #######################################################################
+
+
+       # Creates /usr/lib/${PN}/.data with fake_windows in it
+       # This is needed for ~/.${PN} initialization by our 
+       # winex wrapper script
+       mkdir ${D}/usr/lib/${PN}/.data
+       cp -R ${WORKDIR}/fake_windows ${D}/usr/lib/${PN}/.data
+       cp ${FILESDIR}/${P}-config ${D}/usr/lib/${PN}/.data/config
+
+       # winedefault.reg -- standard registry setup
+       cp ${WORKDIR}/wine/winedefault.reg ${D}/usr/lib/${PN}/.data/winedefault.reg
+
+       # Install the wrapper script
+       mkdir ${D}/usr/bin
+       cp ${FILESDIR}/${P}-winex ${D}/usr/bin/winex
+       cp ${FILESDIR}/${P}-regedit ${D}/usr/bin/regedit-winex
+
+       # Take care of the other stuff
+       cd ${S}
+       dodoc ANNOUNCE AUTHORS BUGS ChangeLog DEVELOPERS-HINTS LICENSE README
+
+       insinto /usr/lib/winex/.data/fake_windows/Windows
+       doins documentation/samples/system.ini
+       doins documentation/samples/generic.ppd
+
+       # Manpage setup
+       cp ${D}/usr/lib/${PN}/man/man1/wine.1 ${D}/usr/lib/${PN}/man/man1/${PN}.1
+       doman ${D}/usr/lib/${PN}/man/man1/${PN}.1
+       rm ${D}/usr/lib/${PN}/man/man1/${PN}.1
+       
+       # Remove the executable flag from those libraries.
+       cd ${D}/usr/lib/${PN}/bin
+       chmod a-x *.so
+               
+}
+
+pkg_postinst() {
+       einfo "**********************************************************************"
+       einfo "* NOTE: Use /usr/bin/winex to start winex.                           *"
+       einfo "*       This is a wrapper-script which will take care of everything  *"
+       einfo "*       else. If you have further questions, enhancements or patches *"
+       einfo "*       send an email to phoenix@gentoo.org                          *"
+       einfo "*                                                                    *"
+       einfo "*       Manpage has been installed to the system.                    *"
+       einfo "*       \"man winex\" should show it.                                  *"
+       einfo "**********************************************************************"
+}
+