CPPFLAGS = -D_XOPEN_SOURCE=500 -D_GNU_SOURCE
CFLAGS = -O2 -g -Wall -W
ver=1.3

PROGRAMS = retronohup redirectfd pfiles retrotee inject
MANPAGES = retronohup.1 redirectfd.1 pfiles.1 retrotee.1 inject.1

BINDIR = /usr/local/bin
MANDIR = /usr/local/man

COMMON_OBJS = util.o interfere.o
INJECT_OBJS= $(COMMON_OBJS) inject.o
RETRONOHUP_OBJS= $(COMMON_OBJS) retronohup.o
REDIRECTFD_OBJS= $(COMMON_OBJS) redirectfd.o
PFILES_OBJS= $(COMMON_OBJS) pfiles.o
RETROTEE_OBJS= $(COMMON_OBJS) retrotee.o

all: $(PROGRAMS)

inject: $(INJECT_OBJS)
	$(LINK.c) -o $@ $(INJECT_OBJS)

retronohup: $(RETRONOHUP_OBJS)
	$(LINK.c) -o $@ $(RETRONOHUP_OBJS)

redirectfd: $(REDIRECTFD_OBJS)
	$(LINK.c) -o $@ $(REDIRECTFD_OBJS)

pfiles: $(PFILES_OBJS)
	$(LINK.c) -o $@ $(PFILES_OBJS)

retrotee: $(RETROTEE_OBJS)
	$(LINK.c) -o $@ $(RETROTEE_OBJS)

strip: all
	strip $(PROGRAMS)

install: all strip
	mkdir -p $(BINDIR) $(MANDIR)/man1
	for i in $(PROGRAMS); do cp $$i $(BINDIR)/$$i.new && mv $(BINDIR)/$$i.new $(BINDIR)/$$i; done
	for i in $(MANPAGES); do cp $$i $(MANDIR)/$$i.new && mv $(MANDIR)/man1/$$i.new $(MANDIR)/man1/$$i; done

clean:
	$(RM) ./*.o

distclean: clean
	$(RM) -rf $(PROGRAMS) core ./*~ interfereproc-* interfereproc-*.tar.bz2

dist: distclean
	mkdir interfereproc-$(ver)
	tar -cf - --exclude CVS --exclude interfereproc-$(ver) . | tar -C interfereproc-$(ver) -xf -
	tar -cf interfereproc-$(ver).tar interfereproc-$(ver)
	$(RM) -rf interfereproc-$(ver)
	bzip2 -9 interfereproc-$(ver).tar
