hi all here are a couple of patches for the wineinstall and wineconf scripts. the wineinstall patch fixes the find windows registry function by reading a tempfile with the windows mount point and the wineconf patch exports the tempfile to be read. it also includes the root directory as a dos drive so the regapi and wine debugger can be found. if anyone knows how to do it without using a tempfile i would be glad to know. wineinstall Changelog Shane Shields locutus@all.at changed the find windows registry function small code cleanup wineconf Changelog Shane Shields locutus@all.at exports temp file with windows mount point added / as a dos drive Shane
--- ./tools/wineinstall.orig Fri Jan 25 23:33:43 2002 +++ ./tools/wineinstall Fri Jan 25 23:04:03 2002 @@ -389,7 +389,6 @@ } else { echo " found." - conf_reset_question windows_found conf_question low windows_found \ "Created $LCONF using your existing Windows installation." \ @@ -511,16 +510,14 @@ if [ "$DOREG" = 'auto' ] then { echo "Checking for real Windows registry..." + read </tmp/windir CROOT + rm -f /tmp/windir if [ -f "$CROOT/windows/system.dat" ] then DOREG=no elif [ -f "$CROOT/windows/system32/config/system" ] then DOREG=no else DOREG=yes fi - if [ "$DOREG" = 'yes' ] - then echo "Not found, default Wine registry will be installed." - else echo "Windows registry found, will not install default Wine registry." - fi echo } fi @@ -528,10 +525,11 @@ # install default registry entries if [ "$DOREG" = 'yes' ] then { + echo "Not found, default Wine registry will be installed." if [ "$BINDIST" = 'no' ] then { echo "Compiling regapi..." - (cd programs/regapi; make) + (cd programs/regapi; make) > /dev/null echo } fi @@ -598,6 +596,7 @@ sed "s/\"GraphicsDriver\" = .*/\"GraphicsDriver\" = \"x11drv\"/" $LCONF > $LCONF.new mv $LCONF.new $LCONF } +else echo "Windows registry found, will not install default Wine registry." fi # make root's registry global, if desired
--- ./tools/wineconf.orig Fri Jan 25 23:33:41 2002 +++ ./tools/wineconf Fri Jan 25 22:02:11 2002 @@ -96,6 +96,7 @@ warn "cannot help you (yet)\n"; exit(1); } + push(@::UnixDrives, ['', '/', 'hd']); push(@::UnixDrives, ['', '/tmp', 'hd']); push(@::UnixDrives, ['', '${HOME}', 'network']); my $MagicDrive = 'C'; @@ -170,7 +171,7 @@ chomp $winini; } my ($winini_cnt) = $#wininis+1; - if ($::opt_debug) { + if ($::opt_debug) { print STDERR "DEBUG: Num wininis found: $winini_cnt\n";} if ($winini_cnt > 1) { warn "$winini_cnt win.ini files found:\n"; @@ -189,7 +190,13 @@ else { die "ERROR: None of -windir, -fast, or -thorough set\n"; } + $::windir = &ToDos(dirname($winini)); + + open WDIR,"> /tmp/windir" || die "ERROR: Can't open temporary file"; + print WDIR dirname(dirname($winini)); + close WDIR; + print "[wine]\n"; print "\"windows\" = ", &marshall ($::windir), "\n"; if ($::opt_sysdir) { @@ -340,6 +347,7 @@ my $TheTemp; warn "WARNING: Making assumptions for TEMP\n"; + warn "Looking for \\TEMP and then \\TMP on every drive\n"; # Watch out .. might pick CDROM drive :-) foreach my $DOSdrive (keys %::DOS2Unix) { @@ -393,7 +401,6 @@ my($FNunix) = @_; my(@MntList) = keys %::MntPoint2DOS; my ($TheMntPt, $FNdos); - foreach my $MntPt (@MntList) { # Scan mount point list to see if path matches if ($FNunix =~ /^$MntPt/) { $TheMntPt = $MntPt;