[project @ 2003-04-22 10:20:30 by malcolm]
[ghc-base.git] / Makefile.nhc98
1 THISPKG = base
2 SEARCH  = -I$(TOPDIR)/targets/$(MACHINE)
3
4 DIRS    = $(shell ${LOCAL}pkgdirlist ${THISPKG})
5
6 SRCS    = \
7         Data/Bits.hs Data/Bool.hs Data/Char.hs Data/Complex.hs \
8         Data/Either.hs Data/FiniteMap.hs Data/IORef.hs Data/Int.hs \
9         Data/Ix.hs Data/List.hs Data/Maybe.hs Data/PackedString.hs \
10         Data/Ratio.hs Data/Set.hs Data/Tuple.hs Data/Word.hs Data/Array.hs \
11         Control/Monad.hs Control/Monad/Fix.hs Control/Monad/Trans.hs \
12         Control/Arrow.hs Debug/Trace.hs \
13         System/IO.hs System/IO/Error.hs System/IO/Unsafe.hs \
14         System/Environment.hs System/Exit.hs System/Locale.hs \
15         System/Directory.hs System/Mem.hs System/Cmd.hs System/Info.hs \
16         System/Console/GetOpt.hs System/Random.hs \
17         Foreign/Ptr.hs Foreign/StablePtr.hs Foreign/Storable.hs \
18         Foreign/ForeignPtr.hs Foreign/C/Types.hs Foreign/C/TypesISO.hs \
19         Foreign/Marshal/Alloc.hs Foreign/Marshal/Array.hs \
20         Foreign/Marshal/Utils.hs Foreign/Marshal/Error.hs \
21         Foreign/Marshal/Pool.hs Foreign/Marshal.hs \
22         Foreign/C/String.hs Foreign/C/Error.hs Foreign/C.hs Foreign.hs \
23         Text/ParserCombinators/Parsec/Char.hs \
24         Text/ParserCombinators/Parsec/Combinator.hs \
25         Text/ParserCombinators/Parsec/Error.hs \
26         Text/ParserCombinators/Parsec/Expr.hs \
27         Text/ParserCombinators/Parsec/Perm.hs \
28         Text/ParserCombinators/Parsec/Pos.hs \
29         Text/ParserCombinators/Parsec/Prim.hs \
30         Text/ParserCombinators/Parsec.hs \
31         Text/PrettyPrint/HughesPJ.hs Text/PrettyPrint.hs \
32         Text/Html/BlockTable.hs Text/Html.hs \
33         Text/Read.hs Text/Show.hs Text/Show/Functions.hs
34
35 #       Data/Dynamic.hs \
36 #       [Data/Dynamic.hs] Data/Generics.hs Data/STRef.hs Data/Unique.hs
37 #       Control/Monad/Identity.hs
38 #       Debug/QuickCheck.hs
39 #       System/CPUTime.hsc System/Time.hsc
40 #       System/Mem.hs System/Mem/StableName.hs System/Mem/Weak.hs
41 #       System/Posix/Types.hs System/Posix/Signals.hsc
42 #       Text/ParserCombinators/Parsec/Token.hs \
43 #       Text/ParserCombinators/Parsec/Language.hs \
44 #       Text/ParserCombinators/ReadP.hs Text/ParserCombinators/ReadPrec.hs
45 #       Text/Read/Lex.hs
46 #       Text/Regex/* Text/Regex.hs
47
48
49 # Here are the main rules.
50 include ../Makefile.common
51
52
53 # Here are the dependencies.
54 $(OBJDIR)/Data/FiniteMap.$O: $(OBJDIR)/Data/Maybe.$O
55 $(OBJDIR)/Data/Set.$O: $(OBJDIR)/Data/Maybe.$O $(OBJDIR)/Data/FiniteMap.$O
56 $(OBJDIR)/Data/Array.$O: $(OBJDIR)/Data/Ix.$O
57 $(OBJDIR)/Data/Dynamic.$O: $(OBJDIR)/Foreign/Ptr.$O \
58         $(OBJDIR)/Foreign/StablePtr.$O
59 $(OBJDIR)/System/IO.$O: $(OBJDIR)/System/IO/Error.$O
60 $(OBJDIR)/System/Random.$O: $(OBJDIR)/Data/Char.$O $(OBJDIR)/Data/IORef.$O \
61         $(OBJDIR)/System/IO/Unsafe.$O
62 $(OBJDIR)/Debug/Trace.$O: $(OBJDIR)/System/IO.$O $(OBJDIR)/System/IO/Unsafe.$O
63 $(OBJDIR)/Control/Monad/Fix.$O: $(OBJDIR)/System/IO.$O
64 $(OBJDIR)/Control/Monad/Identity.$O: $(OBJDIR)/Control/Monad.$O \
65         $(OBJDIR)/Control/Monad/Fix.$O
66 $(OBJDIR)/Foreign/Marshal/Alloc.$O:  $(OBJDIR)/Data/Maybe.$O \
67         $(OBJDIR)/Foreign/Ptr.$O $(OBJDIR)/Foreign/Storable.$O \
68         $(OBJDIR)/Foreign/C/Types.$O
69 $(OBJDIR)/Foreign/Marshal/Array.$O:  $(OBJDIR)/Control/Monad.$O \
70         $(OBJDIR)/Foreign/Ptr.$O $(OBJDIR)/Foreign/Storable.$O \
71         $(OBJDIR)/Foreign/Marshal/Alloc.$O $(OBJDIR)/Foreign/Marshal/Utils.$O
72 $(OBJDIR)/Foreign/Marshal/Utils.$O:  $(OBJDIR)/Data/Maybe.$O \
73         $(OBJDIR)/Foreign/Ptr.$O $(OBJDIR)/Foreign/Storable.$O \
74         $(OBJDIR)/Foreign/Marshal/Alloc.$O $(OBJDIR)/Foreign/C/Types.$O
75 $(OBJDIR)/Foreign/Marshal/Error.$O: $(OBJDIR)/Foreign/Ptr.$O
76 $(OBJDIR)/Foreign/C/String.$O: $(OBJDIR)/Data/Word.$O $(OBJDIR)/Foreign/Ptr.$O \
77         $(OBJDIR)/Foreign/Marshal/Array.$O $(OBJDIR)/Foreign/C/Types.$O 
78 $(OBJDIR)/Text/ParserCombinators/Parsec/Char.$O: \
79         $(OBJDIR)/Text/ParserCombinators/Parsec/Pos.$O \
80         $(OBJDIR)/Text/ParserCombinators/Parsec/Prim.$O
81 $(OBJDIR)/Text/ParserCombinators/Parsec/Combinator.$O: \
82         $(OBJDIR)/Text/ParserCombinators/Parsec/Prim.$O
83 $(OBJDIR)/Text/ParserCombinators/Parsec/Error.$O: \
84         $(OBJDIR)/Text/ParserCombinators/Parsec/Pos.$O
85 $(OBJDIR)/Text/ParserCombinators/Parsec/Expr.$O: \
86         $(OBJDIR)/Text/ParserCombinators/Parsec/Prim.$O \
87         $(OBJDIR)/Text/ParserCombinators/Parsec/Combinator.$O
88 $(OBJDIR)/Text/ParserCombinators/Parsec/Language.$O: \
89         $(OBJDIR)/Text/ParserCombinators/Parsec.$O \
90         $(OBJDIR)/Text/ParserCombinators/Parsec/Token.$O
91 $(OBJDIR)/Text/ParserCombinators/Parsec/Perm.$O: \
92         $(OBJDIR)/Text/ParserCombinators/Parsec.$O
93 $(OBJDIR)/Text/ParserCombinators/Parsec/Prim.$O: \
94         $(OBJDIR)/Text/ParserCombinators/Parsec/Pos.$O \
95         $(OBJDIR)/Text/ParserCombinators/Parsec/Error.$O
96 $(OBJDIR)/Text/ParserCombinators/Parsec/Token.$O: \
97         $(OBJDIR)/Text/ParserCombinators/Parsec.$O
98
99 # C-files dependencies.
100 Data/FiniteMap.$C: Data/Maybe.$C
101 Data/Set.$C:       Data/Maybe.$C Data/FiniteMap.$C
102 Data/Array.$C:     Data/Ix.$C
103 Data/Dynamic.$C:   Foreign/Ptr.$C
104 System/IO.$C:      System/IO/Error.$C
105 System/Random.$C:  Data/Char.$C Data/IORef.$C System/IO/Unsafe.$C
106 Debug/Trace.$C:    System/IO.$C System/IO/Unsafe.$C
107 Control/Monad/Fix.$C:      System/IO.$C
108 Control/Monad/Identity.$C: Control/Monad.$C Control/Monad/Fix.$C
109 Control/Monad/Trans.$C:    System/IO.$C
110 Foreign/Marshal/Alloc.$C:  Data/Maybe.$C Foreign/Ptr.$C Foreign/Storable.$C \
111         Foreign/C/Types.$C
112 Foreign/Marshal/Array.$C:  Control/Monad.$C Foreign/Ptr.$C Foreign/Storable.$C \
113         Foreign/Marshal/Alloc.$C Foreign/Marshal/Utils.$C
114 Foreign/Marshal/Utils.$C:  Data/Maybe.$C Foreign/Ptr.$C Foreign/Storable.$C \
115         Foreign/C/Types.$C Foreign/Marshal/Alloc.$C
116 Foreign/Marshal/Error.$C:  Foreign/Ptr.$C
117 Foreign/C/String.$C:       Data/Word.$C Foreign/Ptr.$C Foreign/C/Types.$C \
118         Foreign/Marshal/Array.$C
119 Text/ParserCombinators/Parsec/Char.$C: \
120         Text/ParserCombinators/Parsec/Pos.$C \
121         Text/ParserCombinators/Parsec/Prim.$C
122 Text/ParserCombinators/Parsec/Combinator.$C: \
123         Text/ParserCombinators/Parsec/Prim.$C
124 Text/ParserCombinators/Parsec/Error.$C: \
125         Text/ParserCombinators/Parsec/Pos.$C
126 Text/ParserCombinators/Parsec/Expr.$C: \
127         Text/ParserCombinators/Parsec/Prim.$C \
128         Text/ParserCombinators/Parsec/Combinator.$C
129 Text/ParserCombinators/Parsec/Language.$C: \
130         Text/ParserCombinators/Parsec.$C \
131         Text/ParserCombinators/Parsec/Token.$C
132 Text/ParserCombinators/Parsec/Perm.$C: \
133         Text/ParserCombinators/Parsec.$C
134 Text/ParserCombinators/Parsec/Prim.$C: \
135         Text/ParserCombinators/Parsec/Pos.$C \
136         Text/ParserCombinators/Parsec/Error.$C
137 Text/ParserCombinators/Parsec/Token.$C: \
138         Text/ParserCombinators/Parsec.$C
139