[commit: ghc] wip/nfs-locking: Add comments/todos. (5e0734b)
git at git.haskell.org
git at git.haskell.org
Fri Oct 27 00:09:47 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : wip/nfs-locking
Link : http://ghc.haskell.org/trac/ghc/changeset/5e0734bc2bfafc15e6b2de692a5b1f22a73217ec/ghc
>---------------------------------------------------------------
commit 5e0734bc2bfafc15e6b2de692a5b1f22a73217ec
Author: Andrey Mokhov <andrey.mokhov at gmail.com>
Date: Sat Sep 26 22:56:01 2015 +0100
Add comments/todos.
>---------------------------------------------------------------
5e0734bc2bfafc15e6b2de692a5b1f22a73217ec
doc/meeting-25-September-2015.txt | 23 ++++++++++++++++++++---
src/Settings/Builders/Alex.hs | 7 +++++++
src/Stage.hs | 1 +
src/Target.hs | 4 ++--
4 files changed, 30 insertions(+), 5 deletions(-)
diff --git a/doc/meeting-25-September-2015.txt b/doc/meeting-25-September-2015.txt
index dde2e45..166c3d8 100644
--- a/doc/meeting-25-September-2015.txt
+++ b/doc/meeting-25-September-2015.txt
@@ -14,11 +14,12 @@ Done:
* Improve complexity when searching for module files (40x)
Todo: Target:
-* Build utils, rts October
+* Build utils, rts & put in GHC tree October
* Better dependencies (.hs-incl etc.) November
* Support command line options December
-* Validate November-December (GHC 8.0?)
+* Validate November-December
* Documentation December-January
+* Journal paper + provenance December-February
Notes:
* Zero build: under 7 seconds
@@ -26,6 +27,14 @@ Notes:
* Limited parallelism: ghc-cabal/ghc-pkg not thread-safe, ghc fails on > 4 cores
* Codebase growing: 50 files
+Things to do:
+-- Use OrderOnly for ordering ghc-cabal's
+-- Fix parallel invokations of ghc-cabal
+-- Fix GHC -M to handle .hs-incl (--make already knows how to do that) instead of writing a new parser. Maybe already done -- find a flag!
+-- Rename files -> outputs, sources -> inputs
+-- Start separating general bits from GHC bits. A separate package for Args maybe
+-- Look up Bazel and Buck
+-- Decompose args into builder-specific and package-specific
2. Seemingly dead-code
----------------------
@@ -46,7 +55,7 @@ ifeq "$(TargetOS_CPP)" "irix"
@echo "#endif" >> $@
endif
-But IRIX_MAJOR is never set anywhere in the build system. Dead code?
+But IRIX_MAJOR is never set anywhere in the build system. Dead code? YES
3. Command line options
@@ -56,6 +65,12 @@ Discuss the need for command line options, e.g. 'make GhcDebugged=YES'. Do we ne
Settings.User is fairly readable, so perhaps some options may be changeable only by editing this file and recompiling the build system (typically takes negligible time compared to building). This will simplify things. Can we come up with a must-have list for command line options?
+-- Try to support these first:
+* EXTRA_HC_OPTS = file "asd" ? arg ".."
+* EXTRA_CC_OPTS
+* GhcDebugged = True
+* make 2
+
4. Better names for build stages
--------------------------------
@@ -79,3 +94,5 @@ Stage3 -> Selftest
build system' is overly verbose. Calling it 'shake' is confusing.
* I haven't thought about any names yet, just checking whether we want to.
+
+-- Use mk2
\ No newline at end of file
diff --git a/src/Settings/Builders/Alex.hs b/src/Settings/Builders/Alex.hs
index 1e0f87b..257fd58 100644
--- a/src/Settings/Builders/Alex.hs
+++ b/src/Settings/Builders/Alex.hs
@@ -12,3 +12,10 @@ alexArgs = builder Alex ? do
, package compiler ? arg "--latin1"
, arg src
, arg "-o", arg file ]
+
+-- TODO:
+-- compilierArgs = package compiler ? builder Alex ? arg "awe"
+
+-- args = mconcat
+-- [ alexArgs
+-- , compilerArgs ]
diff --git a/src/Stage.hs b/src/Stage.hs
index edddb6f..e0a6124 100644
--- a/src/Stage.hs
+++ b/src/Stage.hs
@@ -5,6 +5,7 @@ import Base
import GHC.Generics (Generic)
-- TODO: rename to something more meaningful, e.g. 'Stage0' -> 'Boot'.
+-- TODO: explain stages
data Stage = Stage0 | Stage1 | Stage2 | Stage3 deriving (Eq, Enum, Generic)
instance Show Stage where
diff --git a/src/Target.hs b/src/Target.hs
index 8e2a44e..257a896 100644
--- a/src/Target.hs
+++ b/src/Target.hs
@@ -22,8 +22,8 @@ data Target = Target
package :: Package,
builder :: Builder,
way :: Way,
- sources :: [FilePath],
- files :: [FilePath]
+ sources :: [FilePath], -- input
+ files :: [FilePath] -- output
}
deriving (Show, Eq, Generic)
More information about the ghc-commits
mailing list