#-----------------------------------------------------------------------------
-# $Id: Makefile.libHS,v 1.3 1996/12/19 09:13:56 simonpj Exp $
+# $Id: Makefile.libHS,v 1.6 1997/01/07 13:20:35 simonm Exp $
TOP = ../..
include $(TOP)/ghc/mk/ghc.mk
# The driver will give warnings if -split-objs, but that's cool...
GHC_OPTS = \
- -recomp -cpp -dcore-lint -fglasgow-exts -fvia-C \
+ -recomp -cpp -fglasgow-exts -fvia-C \
$(HcMaxHeapFlag) $(EXTRA_HC_OPTS)
-SRCS = $(wildcard ghc/*.lhs required/*.lhs glaExts/*.lhs concurrent/*.lhs)
-ifeq ($(suffix), norm)
-OBJS = $(SRCS:.lhs=.o)
-else
-OBJS = $(SRCS:.lhs=.$(suffix)_o)
-endif
-
#-----------------------------------------------------------------------------
# Rules for building various types of objects from HS files
# build the library itself...
ifeq ($(suffix), norm)
-LIB = libHS.a # this one is special
+ARCHIVE = libHS.a # this one is special
else
-LIB = libHS_$(suffix).a
+ARCHIVE = libHS_$(suffix).a
endif
-$(LIB) : $(OBJS)
- @$(RM) $@
- $(AR) $@ $^
+SRCS = $(wildcard prelude/*.hs required/*.hs concurrent/*.hs)
+LIBOBJS = $(SRCS:.hs=.$(suffix)_o)
+DESTDIR = $(INSTLIBDIR_GHC)
-all :: $(LIB)
-
-clean ::
- $(RM) $(LIB)
- $(RM) $(OBJS)
-
-install :: $(LIB)
- $(INSTALL) $(INSTLIBFLAGS) $(LIB) $(INSTLIBDIR_GHC)
- $(RANLIB) $(INSTLIBDIR_GHC)/$(LIB)
-
-veryclean ::
- $(RM) */*.hc */*.hi
+include $(TOP)/mk/lib.mk
#-----------------------------------------------------------------------------
# per-module flags
required/Directory_flags = '-\#include"cbits/stgio.h"' -monly-3-regs
required/System_flags = '-\#include"cbits/stgio.h"'
+ghc/ArrBase_flags = '-fno-implicit-prelude'
+ghc/IOBase_flags = '-fno-implicit-prelude'
+ghc/IOHandle_flags = '-fno-implicit-prelude'
+ghc/PrelBase_flags = '-fno-implicit-prelude'
+ghc/PrelIO_flags = '-fno-implicit-prelude'
+ghc/PrelList_flags = '-fno-implicit-prelude'
+ghc/PrelNum_flags = '-fno-implicit-prelude'
+ghc/PrelRead_flags = '-fno-implicit-prelude'
+ghc/PrelTup_flags = '-fno-implicit-prelude'
+ghc/STBase_flags = '-fno-implicit-prelude'
+glaExts/Foreign_flags = '-fno-implicit-prelude'
+glaExts/PackedString_flags = '-fno-implicit-prelude'
+glaExts/ST_flags = '-fno-implicit-prelude'
+required/Array_flags = '-fno-implicit-prelude'
+required/Char_flags = '-fno-implicit-prelude'
+required/IO_flags = '-fno-implicit-prelude'
+required/Ix_flags = '-fno-implicit-prelude'
+required/Maybe_flags = '-fno-implicit-prelude'
+required/Monad_flags = '-fno-implicit-prelude'
+required/Ratio_flags = '-fno-implicit-prelude'
+
concurrent/Merge_flags = -iconcurrent
concurrent/Parallel_flags = -fglasgow-exts
concurrent/Concurrent_flags = -iconcurrent