#-----------------------------------------------------------------------------
-# $Id: Makefile,v 1.5 1997/03/24 04:33:30 sof Exp $
+# $Id: Makefile,v 1.6 1997/05/19 06:02:14 sof Exp $
TOP=..
CURRENT_DIR=ghc/driver
ifeq "$(BIN_DIST)" "1"
SCRIPT_PREFIX_FILES=prefix.txt
else
-SCRIPT_SUBST_VARS += libdir datadir bindir TOP_PWD
+SCRIPT_SUBST_VARS += libdir libexecdir datadir bindir TOP_PWD
endif
all :: $(DYN_LOADABLE_BITS)
local($major_version, $minor_version);
local($phase, $infile, $opts);
- $executable = "${executable}.exe" if $TargetPlatform eq 'i386-unknown-cygwin32';
+ # append .exe if it's not there under cygwin32
+ $executable = "${executable}.exe" if $TargetPlatform eq 'i386-unknown-cygwin32' &&
+ $executable !~ /\.exe$/ ;
print STDERR "Checking consistency of: $executable\n" if $Verbose;
} elsif ($idecl ne $Decl{"old:$item"}) { # Old decl differs from new decl
local($odecl) = $Decl{"old:$item"};
- if ($show_hi_diffs) {print STDERR "changed: $item\nOld: $odecl\nNew: $idecl\n";}
+ if ($show_hi_diffs) {print STDERR "changed: $item\nOld: $odeclNew: $idecl";}
print $hifile "$mod_version "; # Use module version
} elsif (! defined($OldVersion{"$item"}) ) {
TOP_PWD
-bindir libdir datadir
+bindir libdir libexecdir datadir
CURRENT_DIR TMPDIR
$TopPwd = "${TOP_PWD}";
$InstBinDirGhc = "${bindir}";
$InstLibDirGhc = "${libdir}";
-$InstLibexecDirGhc = "${libexecdir}";
+#
+# Normally the same as InstLibDirGhc, but we accommodate
+# for it being separate.
+#
+$InstLibExecDirGhc = "${libexecdir}";
$InstDataDirGhc = "${datadir}";
-$InstSysLibDir = ( $INSTALLING ) ? "${InstLibDirGhc}/hslibs" :
- "$TopPwd/hslibs";
+$InstSysLibDir = ( $INSTALLING ) ? "${InstLibDirGhc}/hslibs" : "$TopPwd/hslibs";
$Status = 0; # just used for exit() status
$Verbose = '';
@Files_to_tidy = (); # files we nuke in the case of abnormal termination
-$Unlit = ( $INSTALLING ) ? "$InstLibexecDirGhc/unlit"
+$Unlit = ( $INSTALLING ) ? "$InstLibExecDirGhc/unlit"
: "$TopPwd/${CURRENT_DIR}/${GHC_UNLIT}";
$Cp = $CP;
@HsCpp_flags = ();
$genSPECS_flag = ''; # See ../utils/hscpp/hscpp.prl
-$HsC = ( $INSTALLING ) ? "$InstLibexecDirGhc/hsc"
+$HsC = ( $INSTALLING ) ? "$InstLibExecDirGhc/hsc"
: "$TopPwd/${CURRENT_DIR}/${GHC_HSC}";
# For PVM fiends only
-$SysMan = ( $INSTALLING ) ? "$InstLibexecDirGhc/SysMan"
+$SysMan = ( $INSTALLING ) ? "$InstLibExecDirGhc/SysMan"
: "$TopPwd/${CURRENT_DIR}/${GHC_SYSMAN}";
@Unlit_flags = ();
the effective resolution of the context switch timer, so it is
affected by the RTS -C option.)
-@threadWait@ delays rescheduling of a thread until input on the
+@threadWaitRead@ delays rescheduling of a thread until input on the
specified file descriptor is available for reading (just like select).
+@threadWaitWrite@ is similar, but for writing on a file descriptor.
\begin{code}
threadDelay, threadWaitRead, threadWaitWrite :: Int -> IO ()
-- (an instance of ST):
PrimIO,
ST, RealWorld,
- module Monad, -- ST is an instance
thenPrimIO, --
returnPrimIO,