EXE = bsIRC

CFLAGS = -c -O2 -Wall -Wextra -Werror -I./ -I./libnet
LFLAGS = -lstdc++ -lsyllable -L./libnet -lnet

APPBIN = /Applications/$(EXE)
OBJS = main.o application.o mainwindow.o commthread.o

OBJDIR := objs
OBJS	:= $(addprefix $(OBJDIR)/,$(OBJS))

# Rules
$(OBJDIR)/%.o : %.c
	@echo Compiling : $<
	@$(CC) $(CFLAGS) $< -o $@

$(OBJDIR)/%.o : %.cpp
	@echo Compiling : $<
	@$(CC) $(CFLAGS) $< -o $@

$(OBJDIR)/%.o : %.s
	@echo Assembling : $<
	@$(CC) $(CFLAGS) -x assembler-with-cpp $< -o $@

all : translations objs
	@cd libnet && $(MAKE)
	@$(MAKE) $(EXE)

translations:

objs:
	@mkdir -p objs

$(EXE): $(OBJS)
	@echo Linking...
	@gcc $(OBJS) -o $(EXE)  $(LFLAGS)
	@echo Adding resources...
	@rescopy $(EXE) -r resources/remove.png 
	@addattrib $(EXE) os::Category Internet

clean:
	@echo Cleaning...
	@cd libnet && $(MAKE) clean
	@rm -f $(OBJDIR)/*
	@rm -f $(EXE)

deps:

dist: all
	@echo Distribution...
	@mkdir -p $(DIST_DIR)/Applications/$(EXE)
	@cp $(EXE) $(DIST_DIR)/Applications/$(EXE)/$(EXE)

install: all
	@echo Installing...
	@mkdir -p /Applications/$(EXE)
	@cp $(EXE) /Applications/$(EXE)/$(EXE)