# # A sample Makefile for compiling Haggis test programs # SRCS = Main.lhs all: main main: Main.o $(HC) $(HC_SWITCHES) Main.o -L$(LIB_HAGGIS) -lhaggis $(LD_XLIB_SWITCHES) prefix = /afs/informatik.uni-tuebingen.de/sos5/pu/haggis-0.1c exec_prefix = ${prefix} datadir = ${prefix}/share HC = ghc HC_INCLUDES = $(X11_INCLUDES) HC_IMPORTS = $(HI_HAGGIS_DIR) HI_HAGGIS_DIR = ${prefix}/share LIB_HAGGIS = $(exec_prefix)/lib HC_SWITCHES = -concurrent -fvia-C -fglasgow-exts -fhaskell-1.3 -hi-diffs -syslib ghc -syslib hbc -O -H20m $(EXTRA_HC_OPTS) -i$(HC_IMPORTS) $(HC_INCLUDES) LD_XLIB_SWITCHES = -L/afs/wsi/@sys/X11R6.1/lib -lX11 -lsocket -lnsl X11_INCLUDES = -I/afs/wsi/@sys/X11R6.1/include #---------------------------------------------------------------- # The information below should be usable as is. The configure # script won't modify it and you shouldn't need to modify it # either. #---------------------------------------------------------------- CC = gcc CC_SWITCHES = ${CFLAGS} ${X11_INCLUDES} ${AC_FLAGS} ${PROTO_FLAGS} HS_DEPEND_SWITCHES = -i${SRC_DIR}:${UTILS_DIR}:${XLIB_DIR}:${HXLIB_DIR} \ -i${CORE_DIR}:${PIC_DIR}:${COMPONENTS_DIR}:${COMPOSITE_DIR}:${COMBINATORS_DIR} \ -i${XEXT_DIR}:${ABSTRACT_DIR} ${X11_INCLUDES} ${HC_SWITCHES} # CWD = $(shell pwd) .SUFFIXES: .hi .lhs .hs # # Some pattern rules for Haskell files # %.hi: %.lhs @if [ ! -f $@ ] ; then \ echo $(RM) $*.o ; \ $(RM) $*.o ; \ set +e ; \ echo $(MAKE) $*.o ; \ $(MAKE) $*.o ; \ if [ $$? -ne 0 ] ; then \ exit 1; \ fi ; \ fi %.o: %.lhs $(HC) $(HC_SWITCHES) -c $< %.hi: %.hs @if [ ! -f $@ ] ; then \ echo $(RM) $*.o ; \ $(RM) $*.o ; \ set +e ; \ echo $(MAKE) $*.o ; \ $(MAKE) $*.o ; \ if [ $$? -ne 0 ] ; then \ exit 1; \ fi ; \ fi %.o: %.hs $(HC) $(HC_SWITCHES) -c $<