# Makefile for qd library for Lua

# change these to reflect your Lua installation
LUADIR= /var/tmp/lhf/lua-5.1.5
LUAINC= $(LUADIR)/src
LUABIN= $(LUADIR)/src

# ... or try these if Lua has been installed globally
#LUADIR= /usr/local
#LUAINC= $(LUADIR)/include
#LUABIN= $(LUADIR)/bin

CC= gcc -std=c99
CC= gcc
CXX= g++
CFLAGS= -Wall -Wextra -O2 -I$(LUAINC) -Isrc/include -Isrc

MYNAME= qd
MYFILE= l$(MYNAME).c
MYLIBS= src/libqd.a

all:	linux test

test:
	$(LUABIN)/lua test.lua

linux:
	$(MAKE) -C src PIC="-fPIC -DHAVE_FPU_CONTROL_H"
	$(CC) $(CFLAGS) -c -fPIC $(MYFILE)
	$(CXX) $(CFLAGS) -o $(MYNAME).so -shared -fPIC l$(MYNAME).o $(MYLIBS)

macosx:
	$(MAKE) -C src
	$(CC) $(CFLAGS) -o $(MYNAME).so -bundle -undefined dynamic_lookup $(MYFILE) $(MYLIBS)

generic:
	$(MAKE) -C src
	$(CC) $(CFLAGS) -c $(MYFILE)
	$(LD) -o $(MYNAME).o -r l$(MYNAME).o $(MYLIBS)

clean:
	rm -f *.o *.so

doc:
	@echo "$(MYNAME) library:"
	@fgrep '/**' $(MYFILE) | cut -f2 -d/ | tr -d '*' | sort | column
