RC_ARCHS = -arch m68k -arch i386 -arch hppa -arch sparc
CC = gcc #$(RC_ARCHS)
CFLAGS = -pipe -Wall -g -x objective-c -Wno-import -I../regex-0.12 -I. -DNS_TARGET_MAJOR=4 #-O2
LDFLAGS = -g
LIBS = -lNeXT_s
prefix = /usr/local
BINDIR = $(prefix)/bin
MANDIR = $(prefix)/man/man1
ELISPDIR = $(prefix)/lib/emacs/site-lisp
LIBDIR = $(prefix)/lib

BINS  = nextmail appnmail compactmail listmail #searchmail
MANS  = nextmail.1 appnmail.1 compactmail.1 listmail.1 #searchmail.1
ELISP = gnus-mailapp.el gnus-mailapp.elc
LIB   = sendmail-addheadsig sendmail-remote

UTILOBJS = mailtoc.o mailutil.o optutil.o
UTILHDRS = mailtoc.h mailutil.h optutil.h

all: appnmail #$(BINS) $(MANS) $(ELISP) 

searchmail: searchmail.o MailMessage.o MailBox.o $(UTILOBJS) 
	$(CC) $(LDFLAGS) -o $@ searchmail.o MailMessage.o MailBox.o $(UTILOBJS) $(LIBS) 

nextmail: nextmail.o MailSpeaker.o $(UTILOBJS)
	$(CC) $(LDFLAGS) -o $@ nextmail.o MailSpeaker.o $(UTILOBJS) $(LIBS)

appnmail: appnmail.o optutil.o mailutil.o mailtoc.o ../regex-0.12/regex.o #$(UTILOBJS)
	$(CC) $(LDFLAGS) -o $@ appnmail.o mailutil.o mailtoc.o optutil.o ../regex-0.12/regex.o #$(UTILOBJS) $(LIBS)

compactmail: compactmail.o $(UTILOBJS)
	$(CC) $(LDFLAGS) -o $@ compactmail.o $(UTILOBJS) $(LIBS)

listmail: listmail.o $(UTILOBJS)
	$(CC) $(LDFLAGS) -o $@ listmail.o $(UTILOBJS) $(LIBS)

gnus-compile.el:
	echo '(byte-compile-file "gnus-mailapp.el")' >gnus-compile.el

gnus-mailapp.elc: gnus-mailapp.el gnus-compile.el
	-emacs -batch -l gnus-compile.el

clean:
	-/bin/rm *.o *.elc gnus-compile.el

spotless: clean
	-/bin/rm $(BINS)

install: installbin installman installelisp installlib

installbin: #$(BINS)
	for i in $(BINS) ; do install -c -m 775 $$i $(BINDIR); done

installman: #$(MANS) 
	for i in $(MANS) ; do install -c -m 664 $$i $(MANDIR); done

installelisp: #$(ELISP)
	for i in $(ELISP) ; do install -c -m 664 $$i $(ELISPDIR); done

installlib: #$(LIB)
	for i in $(LIB) ; do install -c -m 775 $$i $(LIBDIR); done

%.o: %.c
	$(CC) $(CPPFLAGS) $(CFLAGS) -c $<

%.o: %.m
	$(CC) $(CPPFLAGS) $(CFLAGS) -c $<
