-#
-# Makefile for popclient
-# Carl Harris, ceharris@mal.com
-#
-# $Log: Makefile.in,v $
-# Revision 1.2 1996/06/26 19:08:55 esr
-# This is what I sent Harris.
-#
-# Revision 1.1 1996/06/25 14:29:44 esr
-# Initial revision
-#
-# Revision 1.5 1995/08/10 00:32:19 ceharris
-# Preparation for 3.0b3 beta release:
-# - added code for --kill/--keep, --limit, --protocol, --flush
-# options; --pop2 and --pop3 options now obsoleted by --protocol.
-# - added support for APOP authentication, including --with-APOP
-# argument for configure.
-# - provisional and broken support for RPOP
-# - added buffering to SockGets and SockRead functions.
-# - fixed problem of command-line options not being correctly
-# carried into the merged options record.
-#
-# Revision 1.4 1995/08/09 01:32:41 ceharris
-# Version 3.0 beta 2 release.
-# Added
-# - .poprc functionality
-# - GNU long options
-# - multiple servers on the command line.
-# Fixed
-# - Passwords showing up in ps output.
-#
-# Revision 1.3 1995/08/08 01:01:11 ceharris
-# Added GNU-style long options processing.
-# Fixed password in 'ps' output problem.
-# Fixed various RCS tag blunders.
-# Integrated .poprc parser, lexer, etc into Makefile processing.
-#
-#
+# Makefile for fetchmail
+
+# If you're running QNX, we can't assume a working autoconf.
+# So just uncomment all the lines marked QNX.
+
+VERS=3.1
+PL=0
# Ultrix 2.2 make doesn't expand the value of VPATH.
srcdir = @srcdir@
VPATH = @srcdir@
CC = @CC@
+# CC = cc # QNX
CFLAGS = @CFLAGS@
+# CFLAGS = -g2 -5 # QNX
LDFLAGS = @LDFLAGS@
+# LDLAGS = -g2 -5 # QNX
LEX = @LEX@
LEXFLAGS=
YACC = @YACC@
-YACCFLAGS=-d
+# YACC = yacc
+YACCFLAGS = -dt
# How to invoke ranlib. This is only used by the `glob' subdirectory.
RANLIB = @RANLIB@
# NeXT 1.0a uses an old version of GCC, which required -D__inline=inline.
# See also `config.h'.
-defines = @DEFS@
+DEFS = @DEFS@
+# DEFS = -DQNX -DHAVE_CONFIG_H -DHAVE_UNISTD_H -DHAVE_STDARG_H -DSTDC_HEADERS # QNX
+defines = -DRELEASE_ID=\"$(VERS)\" -DPATCHLEVEL=\"$(PL)\" $(DEFS)
# If your system needs extra libraries loaded in, define them here.
-LOADLIBES = @LIBS@ @LEXLIB@
+LOADLIBS = @LIBS@ @LEXLIB@
+# LOADLIBS = -lsocket3r -lunix3r # QNX
# Any extra object files your system needs.
extras = @LIBOBJS@
# Extra sources/objects for library functions not provided on the host system.
EXTRASRC = @EXTRASRC@
+# EXTRASRC = $(srcdir)/strcasecmp.c $(srcdir)/getopt.c $(srcdir)/getopt1.c $(srcdir)/alloca.c # QNX
EXTRAOBJ = @EXTRAOBJ@
+# EXTRAOBJS = strcasecmp.o getopt.o getopt1.o alloca.o
# Common prefix for machine-independent installed files.
-prefix = /usr/local
+prefix = @prefix@
# Common prefix for machine-dependent installed files.
-exec_prefix = $(prefix)
+exec_prefix = @exec_prefix@
-# Name under which to install popclient
-instname = popclient
+# Name under which to install fetchmail
+instname = fetchmail
# Directory in which to install.
-bindir = $(exec_prefix)/bin
+bindir = @bindir@
# Directory to install the Info files in.
-infodir = $(prefix)/info
-# Directory to install the man page in.
-mandir = $(prefix)/man/man$(manext)
+infodir = @infodir@
# Number to put on the man page filename.
manext = 1
+# Directory to install the man page in.
+mandir = @mandir@/man$(manext)
# Program to install `make'.
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@ -s
# Program to install the man page.
INSTALL_DATA = @INSTALL_DATA@
# Generic install program.
ETAGS = etags -tw
CTAGS = ctags -tw
-objs = socket.o getpass.o pop2.o pop3.o popclient.o options.o \
- poprc_l.o poprc_y.o poprc.o daemon.o xmalloc.o \
- $(EXTRAOBJ) $(extras)
+protobjs = socket.o getpass.o pop2.o pop3.o imap.o fetchmail.o options.o \
+ rcfile_l.o rcfile_y.o daemon.o smtp.o driver.o rfc822.o xmalloc.o \
+ uid.o mxget.o md5c.o md5ify.o interface.o netrc.o error.o
+
+objs = $(protobjs) $(extras) $(EXTRAOBJ)
srcs = $(srcdir)/socket.c $(srcdir)/getpass.c $(srcdir)/pop2.c \
- $(srcdir)/pop3.c $(srcdir)/popclient.c $(srcdir)/options.c \
- $(srcdir)/poprc.c $(srcdir)/daemon.c $(srcdir)/xmalloc.c \
- $(EXTRASRC)
+ $(srcdir)/pop3.c $(srcdir)/imap.c $(srcdir)/fetchmail.c \
+ $(srcdir)/options.c $(srcdir)/daemon.c $(srcdir)/driver.c \
+ $(srcdir)/rfc822.c $(srcdir)/smtp.c $(srcdir)/xmalloc.c \
+ $(srcdir)/uid.c $(srcdir)/mxget.c $(srcdir)/md5c.c \
+ $(srcdir)/md5ify.c $(srcdir)/interface.c $(srcdir)/netrc.c \
+ $(srcdir)/error.c
.SUFFIXES:
.SUFFIXES: .o .c .h .y .l .ps .dvi .info .texi
-all: popclient
-check: # No tests.
-depend:
- test -f config.h || touch config.h
- test -f poprc_y.h || touch poprc_y.h
- makedepend -fMakefile.in *.c
+all: fetchmail fetchmail.spec
-info: popclient.info
-dvi: popclient.dvi
-# Some makes apparently use .PHONY as the default goal is it is before `all'.
-.PHONY: all check info dvi
+# Some makes apparently use .PHONY as the default goal if it is before `all'.
+.PHONY: all check
-popclient.info: popclient.texi
- $(MAKEINFO) -I$(srcdir) $(srcdir)/popclient.texi -o popclient.info
+$(protobjs): fetchmail.h
-popclient.dvi: popclient.texi
- $(TEXI2DVI) $(srcdir)/popclient.texi
-
-popclient.ps: popclient.dvi
- dvi2ps popclient.dvi > popclient.ps
-
-popclient: $(srcdir)/poprc_l.c $(srcdir)/poprc_y.c $(objs)
- $(CC) $(LDFLAGS) $(objs) $(LOADLIBES) -o popclient
+fetchmail: $(srcdir)/rcfile_l.c $(srcdir)/rcfile_y.c $(objs)
+ $(CC) $(LDFLAGS) $(objs) $(LOADLIBS) -o fetchmail
# -I. is needed to find config.h in the build directory.
FORCE:
-tagsrcs = $(srcs) $(srcdir)/poprc_l.c $(srcdir)/poprc_y.c
+tagsrcs = $(srcs) $(srcdir)/rcfile_l.c $(srcdir)/rcfile_y.c
TAGS: $(tagsrcs)
$(ETAGS) $(tagsrcs)
tags: $(tagsrcs)
$(CTAGS) $(tagsrcs)
.PHONY: install installdirs
-install: installdirs \
- $(bindir)/$(instname) $(infodir)/popclient.info \
- $(mandir)/$(instname).$(manext)
+install: installdirs $(bindir)/$(instname) $(mandir)/$(instname).$(manext)
installdirs:
- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(mandir)
-
-$(bindir)/$(instname): popclient
- $(INSTALL_PROGRAM) popclient $@
-
-$(infodir)/popclient.info: popclient.info
- if [ -r ./popclient.info ]; then dir=.; else dir=$(srcdir); fi; \
- for file in $${dir}/popclient.info*; do \
- name="`basename $$file`"; \
- $(INSTALL_DATA) $$file \
- `echo $@ | sed "s,popclient.info\$$,$$name,"`; \
- done
-# Run install-info only if it exists.
-# Use `if' instead of just prepending `-' to the
-# line so we notice real errors from install-info.
-# We use `$(SHELL) -c' because some shells do not
-# fail gracefully when there is an unknown command.
- if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
- install-info --infodir=$(infodir) $$dir/popclient.info; \
- else true; fi
-
-$(mandir)/$(instname).$(manext): popclient.man
- $(INSTALL_DATA) $(srcdir)/popclient.man $@
+ $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(mandir)
+
+$(bindir)/$(instname): fetchmail
+ $(INSTALL_PROGRAM) fetchmail $@
+$(mandir)/$(instname).$(manext): fetchmail.man
+ $(INSTALL_DATA) $(srcdir)/fetchmail.man $@
+
+fetchmail.spec: $(srcdir)/Makefile.in $(srcdir)/specgen.sh
+ $(srcdir)/specgen.sh $(VERS) $(PL) >fetchmail.spec
.PHONY: clean realclean distclean mostlyclean
clean:
- -rm -f popclient *.o core popclient.dvi \
- poprc_l.c poprc_y.h poprc_y.c popclient.tar popclient.tar.gz
+ -rm -f fetchmail *.o core fetchmail.dvi \
+ rcfile_l.c rcfile_y.h rcfile_y.c \
+ fetchmail.tar fetchmail.tar.gz \
+ rfc822
distclean: clean
-rm -f Makefile config.h
-rm -f config.cache config.status config.log stamp-config
-rm -f TAGS tags
- -rm -f popclient.log popclient.toc popclient.*aux
+ -rm -f fetchmail.log fetchmail.toc fetchmail.*aux fetchmail.spec
-realclean: popclient.info* distclean
+realclean: distclean # fetchmail.info*
mostlyclean: clean
Makefile: config.status $(srcdir)/Makefile.in
$(SHELL) config.status
+ @echo "You can ignore any makedepend error messages"
+ -makedepend -I. -fMakefile *.c
config.h: stamp-config
configure: configure.in
autoconf $(ACFLAGS)
+config.h.in: acconfig.h
+ autoheader $(ACFLAGS)
+
# This tells versions [3.59,3.63) of GNU make not to export all variables.
.NOEXPORT:
# Special dependencies, not easily handled without explicit rules
-$(srcdir)/poprc_l.c: $(srcdir)/poprc_l.l
-$(srcdir)/poprc_y.c: $(srcdir)/poprc_y.y
-
-parser = $(srcdir)/poprc_l.l $(srcdir)/poprc_y.y
-headers = $(srcdir)/popclient.h $(srcdir)/socket.h $(srcdir)/poproto.h
-extra = $(srcdir)/alloca.c $(srcdir)/bzero.[ch] $(srcdir)/errorcodes \
- $(srcdir)/getopt.[ch] $(srcdir)/getopt1.c $(srcdir)/md5*.[ch] \
- $(srcdir)/strcasecmp.c $(srcdir)/strdup.c
-docs = $(srcdir)/README $(srcdir)/INSTALL $(srcdir)/RFC/*.txt \
- $(srcdir)/*.man $(srcdir)/*.texi $(srcdir)/*.info \
- $(srcdir)/sample.poprc $(srcdir)/TODO
-config = $(srcdir)/Makefile.in $(srcdir)/configure.in $(srcdir)/config.guess \
- $(srcdir)/config.h.in $(srcdir)/config.sub
-scripts = $(srcdir)/install.sh $(srcdir)/mkinstalldirs
-all = $(docs) $(config) $(srcs) $(parser) $(headers) $(extra) $(scripts)
-
-manifest:
- @echo $(all) | tr "[ \t]" '\n' | sort
-
-popclient.tar: $(all)
- tar -cf popclient.tar $(all)
-popclient.tar.gz: popclient.tar
- gzip -f popclient.tar
+$(srcdir)/rcfile_l.c: $(srcdir)/rcfile_l.l
+$(srcdir)/rcfile_y.c: $(srcdir)/rcfile_y.y
+
+parser = $(srcdir)/rcfile_l.l $(srcdir)/rcfile_y.y
+headers = $(srcdir)/fetchmail.h $(srcdir)/socket.h $(srcdir)/smtp.h \
+ $(srcdir)/mx.h $(srcdir)/md5.h $(srcdir)/md5global.h \
+ $(srcdir)/netrc.h $(srcdir)/tunable.h
+extra = $(srcdir)/alloca.c $(srcdir)/getopt.[ch] $(srcdir)/getopt1.c \
+ $(srcdir)/strcasecmp.c
+docs = $(srcdir)/COPYING $(srcdir)/README $(srcdir)/INSTALL $(srcdir)/NEWS \
+ $(srcdir)/NOTES $(srcdir)/fetchmail.lsm \
+ $(srcdir)/*.man $(srcdir)/sample.rcfile $(srcdir)/FAQ
+config = $(srcdir)/Makefile.in $(srcdir)/configure.in $(srcdir)/configure \
+ $(srcdir)/config.guess $(srcdir)/config.h.in $(srcdir)/config.sub \
+ $(srcdir)/acconfig.h
+scripts = $(srcdir)/install.sh $(srcdir)/mkinstalldirs $(srcdir)/specgen.sh
+all = $(docs) $(config) $(srcs) $(parser) $(headers) $(extra) $(scripts) \
+ $(srcdir)/MANIFEST
+
+MANIFEST: $(srcdir)
+ @echo $(all) | tr "[ \t]" '\n' | sort | sed "s/\\./fetchmail-$(VERS)/" >MANIFEST
+
+dist: fetchmail-$(VERS).tar.gz
+ ls -l fetchmail-$(VERS).tar.gz
+
+fetchmail-$(VERS).tar: $(all)
+ (cd ..; tar -cf fetchmail-$(VERS).tar `cat fetchmail-$(VERS)/MANIFEST`)
+ mv ../fetchmail-$(VERS).tar fetchmail-$(VERS).tar
+fetchmail-$(VERS).tar.gz: fetchmail-$(VERS).tar
+ gzip -f fetchmail-$(VERS).tar
+
+# Tester for address parsing
+rfc822: rfc822.c
+ gcc -DTESTMAIN -g rfc822.c -o rfc822
# The automatically generated dependencies below may omit config.h
# because it is included with ``#include <config.h>'' rather than
# ``#include "config.h"''. So we add the explicit dependency to make sure.
$(objs): config.h
-# Automatically generated dependencies will be put at the end of the file.
+# Automatically generated dependencies will be put at the end of the makefile.
+# DO NOT DELETE THIS LINE -- make depend depends on it.