include Makefile.inc DIR=Mk OBJDIR=${BUILDDIR}/${OBJ}/runtime/${DIR} SRCS_PROG = \ mkBlockBuffering.c mkComplex.c mkCons.c mkExitFailure.c \ mkIO.c mkIOErrorEOF.c mkIOErrorHFileSize.c mkIOErrorHFlush.c \ mkIOErrorHGetBuffering.c mkIOErrorHGetPosn.c mkIOErrorHIsEOF.c \ mkIOErrorHSeek.c mkIOErrorHSetBuffering.c mkIOErrorHSetPosn.c \ mkIOErrorOpen.c mkIOErrorSystem.c mkIOErrorUser.c \ mkJust.c mkLeft.c mkRight.c \ mkMkArray.c mkRatio.c \ mkTuple2.c mkTuple3.c mkTuple4.c mkTuple5.c \ mkTuple6.c mkTuple7.c mkTuple8.c mkTuple9.c \ mkTuple10.c mkTuple11.c mkTuple12.c mkTuple13.c \ mkTuple14.c mkTuple15.c SRCS_HAND = \ mkHandlePosn.c \ mkSmallIntegerU.c mkInt.c mkFloat.c mkDouble.c \ mkPackedString.c \ mkForeign.c mkStablePtr.c \ mkCInt.c OBJS_PROG = $(patsubst %.c,${OBJDIR}/%.o,${SRCS_PROG}) OBJS_HAND = $(patsubst %.c,${OBJDIR}/%.o,${SRCS_HAND}) OBJS = ${OBJS_PROG} ${OBJS_HAND} DATA2C = ../../data2c/data2c CFLAGS= -I../Kernel -I${INCDIR} ${DCFG} ${OPT} ${ENDIAN} ${ARCH} \ $(shell echo ${COPTS}) ${OBJS}: ${OBJDIR}/%.o: %.c ${CC} -c ${CFLAGS} -o $@ $< LINKS = mk.h mkByHand.h mkByProg.h ULINKS = mutlib.h links: @cd ${INCDIR}; \ for f in ${LINKS}; do \ ln -s ../src/runtime/${DIR}/$$f >/dev/null 2>&1 || \ echo "Link ${INCDIR}/$$f already exists."; \ done @for f in ${ULINKS}; do \ ln -s ${INCDIR}/$$f $$f >/dev/null 2>&1 || echo "Link $$f already exists."; \ done nolinks: @for f in ${LINKS}; do \ rm -f ${INCDIR}/$$f; \ done @rm -f ${ULINKS} all: links ${OBJS} ${OBJDIR}: mkdir -p ${OBJDIR} objdir: ${OBJDIR} rebuild: $(DATA2C) ../../prelude/Prelude/D2.hs >> log $(DATA2C) ../../prelude/Prelude/D3.hs >> log $(DATA2C) ../../prelude/Prelude/D4.hs >> log $(DATA2C) ../../prelude/Prelude/D5.hs >> log $(DATA2C) ../../prelude/Prelude/D6.hs >> log $(DATA2C) ../../prelude/Prelude/D7.hs >> log $(DATA2C) ../../prelude/Prelude/D8.hs >> log $(DATA2C) ../../prelude/Prelude/D9.hs >> log $(DATA2C) ../../prelude/Prelude/D10.hs >> log $(DATA2C) ../../prelude/Prelude/DBool.hs >> log $(DATA2C) ../../prelude/Prelude/DEither.hs >> log $(DATA2C) ../../prelude/Prelude/DList.hs >> log $(DATA2C) ../../prelude/Prelude/DMaybe.hs >> log $(DATA2C) ../../prelude/Prelude/DOrdering.hs >> log $(DATA2C) ../../prelude/Prelude/DRatio.hs >> log $(DATA2C) ../../prelude/Prelude/DUnit.hs >> log $(DATA2C) ../../prelude/Prelude/DVoid.hs >> log $(DATA2C) ../../prelude/PreludeIO/DIO.hs >> log $(DATA2C) ../../prelude/PreludeIO/DIOError.hs >> log $(DATA2C) ../../prelude/Array/DArray.hs >> log $(DATA2C) ../../prelude/Complex/DComplex.hs >> log $(DATA2C) ../../prelude/IO/BufferMode.hs >> log $(DATA2C) ../../prelude/IO/IOMode.hs >> log $(DATA2C) ../../prelude/IO/SeekMode.hs >> log $(DATA2C) ../../prelude/IO/DSocket.hs >> log $(DATA2C) ../../prelude/System/DExitCode.hs >> log clean: rm -f ${OBJDIR}/*.o