packages feed

IrrHaskell-0.1: Makefile

MainProgramm = sample
FalApplication = Fal

IrrlichtHome = /home/maciek/Desktop/irrlicht-1.6
HaskellHome = /usr/lib/ghc-6.8.2

USERCPPFLAGS = 
USERCXXFLAGS = -O3 -ffast-math -Wno-deprecated -Wno-write-strings
USERLDFLAGS =

CPPFLAGS = -I$(IrrlichtHome)/include -I$(HaskellHome)/include -I/usr/X11R6/include $(USERCPPFLAGS)
CXXFLAGS = $(USERCXXFLAGS)

LDFLAGS = $(USERLDFLAGS)
LDFLAGS += -L$(IrrlichtHome)/lib/Linux -lIrrlicht
LDFLAGS += -lopengl32 -lm
LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32

SYSTEM=Linux

HASKLIB = -L$(HaskellHome) -lHSrts -L$(HaskellHome)/base-4.1.0.0 -lHSbase-4.1.0.0

TARGET = main

main: $(MainProgramm) aux_files

$(MainProgramm): $(MainProgramm).hs irrlicht.hs irrlicht_interface_ffi.o irrlicht_interface.o
	rm -f $(MainProgramm).o Irrlicht.o
	ghc --make $(MainProgramm).hs -L$(IrrlichtHome)/lib/Linux -package greencard irrlicht.hs -lIrrlicht irrlicht_interface_ffi.o irrlicht_interface.o -lstdc++ -lXxf86vm -lXext -lglut -lGL -lX11
	
irlicht.hs irrlicht_interface_ffi.c irrlicht_interface_ffi.h: irrlicht_interface.hs irrlicht_interface.h
	greencard irrlicht_interface.hs -o irrlicht.hs -c irrlicht_interface_ffi.c
	
irrlicht_interface_ffi.o: irrlicht_interface_ffi.c irrlicht_interface_ffi.h
	$(CXX) -c -xc $(CPPFLAGS) $(CXXFLAGS) $< 

irrlicht_interface.o: irrlicht_interface.cpp irrlicht_interface.h
	$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $< 

aux_files: Irrlicht.a

Irrlicht.a:
	cp $(IrrlichtHome)/lib/Linux/libIrrlicht.a libIrrlicht.a
	
.cpp.o:
	$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $< 

.c.o:
	$(CXX) -c -xc $(CPPFLAGS) $(CXXFLAGS) $< 
	
clean:
	rm -f *.o *.hi 
	rm -f irrlicht_interface_ffi.*
	rm -f irrlicht.hs
	

.PHONY: main aux_files clean