UNAME=$(shell uname -s)

ifeq ($(UNAME),Darwin)
	CC=clang
else
	CC=gcc
endif
CFLAGS=--std=c++17 -Os
CDEFINES=-D__STDC_WANT_LIB_EXT1__=1
BOOSTLIB=$(BOOST)/stage/lib/libboost_program_options.a


OBJS=func_dump.o

all: dump_funcs

clean:
	rm -f *.o
	rm -f func_dump

%.o: %.cpp
	$(CC) $(CFLAGS) $(CDEFINES) -c -o $@ $<

func_dump: $(OBJS)
	$(CC) $(CFLAGS) -o $@ $^ -lstdc++ $(BOOSTLIB)

dump_funcs: func_dump
	echo date > dump_funcs
	./func_dump -i ../mdlfun/roomdefs.h -r 1 > ../mdlfun/roomfns.h
	./func_dump -i ../mdlfun/objdefs.h -j ../mdlfun/gobject.h -r 0 > ../mdlfun/objfns.h
