[project @ 1996-11-21 16:45:53 by simonm]
[ghc-hetmet.git] / ghc / includes / Makefile
1 TOP = ../..
2 UnlitSuffixRules = YES
3 include $(TOP)/ghc/mk/ghc.mk
4
5 # Literate header files
6 HLIT = $(patsubst %.lh, %.h, $(wildcard *.lh))
7
8 # Header files built by configure
9 HCONFIG = config.h platform.h
10
11 # Everything else
12 HFILES = stgdefs.h rtsdefs.h StgDirections.h StgMachDeps.h error.h \
13   ieee-flpt.h gmp.h LLC.h HLC.h
14
15 ifeq ($(GhcWithNativeCodeGen),YES)
16   ALLFILES = $(HLIT) $(HFILES) $(TARGETPLATFORM).h
17 else
18   ALLFILES = $(HLIT) $(HFILES)
19 endif
20
21 $(TARGETPLATFORM).h : mkNativeHdr
22         $(RM) $@
23         ./mkNativeHdr > $@ || ( rm $@ && exit 1 )
24
25 mkNativeHdr : mkNativeHdr.c $(HLIT) $(HFILES)
26         $(GHC) -c mkNativeHdr.c
27         $(CC) $(CFLAGS) -o mkNativeHdr mkNativeHdr.c
28
29 all :: $(ALLFILES)
30
31 install :: $(ALLFILES) $(HCONFIG)
32         $(INSTALL) $(INSTDATAFLAGS) $(ALLFILES) $(INSTDATADIR_GHC)/includes
33         $(INSTALL) $(INSTDATAFLAGS) $(HCONFIG) $(INSTLIBDIR_GHC)/includes
34
35 ifeq ($(GhcWithNativeCodeGen),YES)
36   clean ::
37         $(RM) $(HLIT) mkNativeHdr mkNativeHdr.c $(TARGETPLATFORM).h
38 else
39   clean ::
40         $(RM) $(HLIT) mkNativeHdr mkNativeHdr.c
41 endif