CC=cc
CFLAGS=-I/usr/local/include -I./deps/
DEPS = bbs.h
JAMLIB = deps/jamlib/jamlib.a
ZMODEM = deps/Xmodem/libzmodem.a
LUA = deps/lua/liblua.a
all: magicka magimail
${LUA}:
cd deps/lua && $(MAKE) -f Makefile linux MAKEFLAGS=
${JAMLIB}:
cd deps/jamlib && $(MAKE) -f Makefile.linux MAKEFLAGS=
${ZMODEM}:
cd deps/Xmodem && $(MAKE) MAKEFLAGS=
OBJ = inih/ini.o bbs.o main.o users.o main_menu.o mail_menu.o doors.o bbs_list.o chat_system.o email.o files.o settings.o lua_glue.o strings.o bluewave.o hashmap/hashmap.o
%.o: %.c $(DEPS)
$(CC) -c -o $@ $< $(CFLAGS)
magicka: $(OBJ) ${LUA} ${ZMODEM} ${JAMLIB}
$(CC) -o magicka -o $@ $^ $(CFLAGS) -L/usr/local/lib -lsqlite3 $(JAMLIB) $(ZMODEM) $(LUA) -lutil -lm -ldl -lssl -lcrypto -lssh
magimail: $(JAMLIB)
cd utils/magimail && $(MAKE) linux
.PHONY: clean
clean:
rm -f $(OBJ) magicka
cd deps/lua && $(MAKE) clean
cd deps/jamlib && $(MAKE) -f Makefile.linux clean
cd deps/Xmodem && $(MAKE) clean
cd utils/magimail && $(MAKE) cleanlinux