#-----------------------------------------------------------------------------
-# $Id: Makefile.libHSrts,v 1.2 1996/11/21 16:48:19 simonm Exp $
+# $Id: Makefile.libHSrts,v 1.4 1997/01/21 09:15:23 sof Exp $
# The is the makefile for libHSrts, invoked once for each different build.
@$(RM) $@
$(RTS_GHC) $(GHC_OPTS_$(suffix)) $*.c
+%.o : %.hc
+ @$(RM) $@
+ $(RTS_GHC) $*.hc
+
%.$(suffix)_o : %.hc
@$(RM) $@
$(RTS_GHC) $(GHC_OPTS_$(suffix)) $*.hc
#-----------------------------------------------------------------------------
# creating and installing libHSrts.a (in its many flavors)
-
+#
+# Special pleading for way `norm', archive does not have _way appended, nor
+# do the object files. -- SOF 1/97
+#
ifeq ($(suffix), norm)
-RTS_LIB = libHSrts.a # this one is special
+ARCHIVE = libHSrts.a # this one is special
else
-RTS_LIB = libHSrts_$(suffix).a
+ARCHIVE = libHSrts_$(suffix).a
endif
+ifeq ($(suffix), norm)
+RTS_OBJS = $(RTS_LC:.lc=.o) $(RTS_LHC:.lhc=.o)
+else
RTS_OBJS = $(RTS_LC:.lc=.$(suffix)_o) $(RTS_LHC:.lhc=.$(suffix)_o)
+endif
all :: $(RTS_LIB)
$(INSTALL) $(INSTLIBFLAGS) $(RTS_LIB) $(INSTLIBDIR_GHC)/$(RTS_LIB)
$(RANLIB) $(INSTLIBDIR_GHC)/$(RTS_LIB)
-cleanobj ::
- $(RM) $(RTS_OBJS)
- $(RM) $(RTS_LIB)
+LIBOBJS = $(RTS_LC:.lc=.$(suffix)_o) $(RTS_LHC:.lhc=.$(suffix)_o)
+DESTDIR = $(INSTLIBDIR_GHC)
-$(RTS_LIB) :: $(H_FILES) $(RTS_OBJS)
- $(RM) $@
- $(AR) $@ $(RTS_OBJS)
- $(RANLIB) $@
+MKDEPENDC_OPTS= -I$(GHC_INCLUDES)
+C_DEP_SRCS = $(RTS_LC) $(RTS_LHC) $(CLIB_LC)
+
+include $(TOP)/mk/lib.mk
+
+#-----------------------------------------------------------------------------
c-as-asm/PerformIO_flags = -optc-DIN_GHC_RTS=1
gum/FetchMe_flags = -optc-DIN_GHC_RTS=1
# /* this is not the way we should do this [WDP [lazy] 94/09] */
# CTagsTarget( $(RTS_LC) $($RTS_LHC) $(CLIB_LC) )
# CTagsTarget( gmp/[a-z]*.c )
-
-#-----------------------------------------------------------------------------
-# Do dependencies
-
-MKDEPENDC_OPTS= -I$(GHC_INCLUDES)
-
-C_DEP_SRCS = $(RTS_LC) $(RTS_LHC) $(CLIB_LC)
-include $(TOP)/mk/cdepend.mk