include config.h

exe = yagirc
version = 0.52
objs = dcc.o network.o irc.o commands.o events-named.o events-numeric.o ctcp.o os.o misc.o

ifdef USE_GUI
objs += gui.o gui_join.o gui_connect.o gui_setup.o gui_setup_outlook.o gui_setup_lists.o gui_setup_alias.o gui_setup_server.o gui_setup_dcc.o gui_menu.o gui_menufactory.o gui_channels.o gui_dcc.o gui_nicklist.o
gui_cflags += -DUSE_GUI
else
objs += no_ui.o
gui_lflags = -lglib
endif

ifdef USE_SCRIPT
perl_cflags = -DUSE_SCRIPT -I$(perl_path)
perl_lflags = -L$(perl_path) -lperl
ifdef USE_CRYPT
perl_lflags += -lcrypt
endif
objs += script.o
endif

ifdef USE_GNOME
gnome_cflags += -DUSE_GNOME
endif

cp = $(cc)
cflags = -Wall -g -O2 -m486 -pipe -DPREFIX=\"$(PREFIX)\" $(gui_cflags) $(perl_cflags) $(gui_cflags) $(gnome_cflags)

ld = cc
lflags = $(gui_lflags) $(perl_lflags) $(gnome_lflags) -lm

.SUFFIXES: .c .cpp .o

.c.o:
	$(cc) $(cflags) -c $< -o $*.o
.cpp.o:
	$(cp) $(cflags) -c $< -o $*.o
.cc.o:
	$(cp) $(cflags) -c $< -o $*.o

$(exe): $(objs)
	$(ld) $(objs) -o $(exe) $(lflags)

config.h:
	./configure

all: $(exe)

install: all
	install -s $(exe) $(PREFIX)/bin
	install -m 0644 yagirc.conf $(PREFIX)/etc

clean:
	/bin/rm -f core *.o $(objs) $(exe) config.h

distclean: clean
	/bin/rm -f *~

dist: distclean
	/bin/sh -c "cd .. ; tar czf yagirc-$(version).tar.gz yagirc-$(version)"

