X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2FMakefile.linux;h=b52a1292e179298c98ea8f8725b237bce0842abe;hp=a8d01a4a3cf68b59dc80c20eb29c819278e65863;hb=2b5045a7886d713db96eb21d4ac544dd2c117d98;hpb=fd25394d146bb83043189608d30dd0eeb983186d diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux index a8d01a4..b52a129 100644 --- a/pppd/Makefile.linux +++ b/pppd/Makefile.linux @@ -1,6 +1,6 @@ # # pppd makefile for Linux -# $Id: Makefile.linux,v 1.53 2002/10/27 12:56:26 fcusack Exp $ +# $Id: Makefile.linux,v 1.60 2003/11/27 21:55:19 paulus Exp $ # # Default installation locations @@ -8,19 +8,20 @@ BINDIR = $(DESTDIR)/usr/sbin MANDIR = $(DESTDIR)/usr/man INCDIR = $(DESTDIR)/usr/include -PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c ecp.c \ - ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c cbcp.c \ - demand.c utils.c tty.c sha1.c +TARGETS = pppd -HEADERS = cbcp.h ccp.h chap.h chap_ms.h ecp.h fsm.h ipcp.h \ - ipxcp.h lcp.h magic.h md4.h md5.h patchlevel.h pathnames.h pppd.h \ - sha1.h tdb.h upap.h +PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap-new.c md5.c ccp.c \ + ecp.c ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c \ + demand.c utils.c tty.c eap.c chap-md5.c -MANPAGES = pppd.8 -PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o ecp.o \ - auth.o options.o demand.o utils.o sys-linux.o ipxcp.o tty.o sha1.o +HEADERS = ccp.h chap-new.h ecp.h fsm.h ipcp.h \ + ipxcp.h lcp.h magic.h md5.h patchlevel.h pathnames.h pppd.h \ + upap.h eap.h -all: pppd +MANPAGES = pppd.8 +PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap-new.o md5.o ccp.o \ + ecp.o auth.o options.o demand.o utils.o sys-linux.o ipxcp.o tty.o \ + eap.o chap-md5.o # # include dependencies if present @@ -33,26 +34,20 @@ endif COPTS = -O2 -pipe -Wall -g LIBS = -ifneq ($(wildcard /usr/lib/libcrypt.*),) -LIBS += -lcrypt -endif - # Uncomment the next 2 lines to include support for Microsoft's # MS-CHAP authentication protocol. Also, edit plugins/radius/Makefile.linux. CHAPMS=y USE_CRYPT=y +# Don't use MSLANMAN unless you really know what you're doing. +#MSLANMAN=y # Uncomment the next line to include support for MPPE. CHAPMS (above) must # also be enabled. Also, edit plugins/radius/Makefile.linux. MPPE=y -ifneq ($(wildcard /usr/lib/libcrypt.*),) -HAVE_CRYPT_H=y -endif # Uncomment the next line to include support for PPP packet filtering. # This requires that the libpcap library and headers be installed -# and that the kernel driver support PPP packet filtering, which it -# doesn't yet. -#FILTER=y +# and that the kernel driver support PPP packet filtering. +FILTER=y # Uncomment the next line to enable multilink PPP (enabled by default) # Linux distributions: Please leave multilink ENABLED in your builds @@ -68,10 +63,15 @@ HAS_SHADOW=y #USE_PAM=y #HAVE_INET6=y +# Enable plugins PLUGIN=y +# Enable Microsoft proprietary Callback Control Protocol #CBCP=y +# Enable EAP SRP-SHA1 authentication (requires libsrp) +#USE_SRP=y + MAXOCTETS=y INCLUDE_DIRS= -I../include @@ -82,15 +82,9 @@ CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS) ifdef CHAPMS CFLAGS += -DCHAPMS=1 -ifndef USE_CRYPT -LIBS := -ldes $(LIBS) -else -CFLAGS += -DUSE_CRYPT=1 -ifneq ($(wildcard /usr/include/crypt.h),) -CFLAGS += -DHAVE_CRYPT_H=1 -endif -endif +NEEDDES=y PPPDOBJS += md4.o chap_ms.o +HEADERS += md4.h chap_ms.h ifdef MSLANMAN CFLAGS += -DMSLANMAN=1 endif @@ -99,15 +93,50 @@ CFLAGS += -DMPPE=1 endif endif +# EAP SRP-SHA1 +ifdef USE_SRP +CFLAGS += -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include +LIBS += -lsrp -L/usr/local/ssl/lib -lcrypto +TARGETS += srp-entry +EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry +MANPAGES += srp-entry.8 +EXTRACLEAN += srp-entry.o +NEEDDES=y +else +# OpenSSL has an integrated version of SHA-1, and its implementation +# is incompatible with this local SHA-1 implementation. We must use +# one or the other, not both. +PPPDSRCS += sha1.c +HEADERS += sha1.h +PPPDOBJS += sha1.o +endif + ifdef HAS_SHADOW CFLAGS += -DHAS_SHADOW -#LIBS := -lshadow $(LIBS) +#LIBS += -lshadow $(LIBS) +endif + +ifneq ($(wildcard /usr/include/crypt.h),) +CFLAGS += -DHAVE_CRYPT_H=1 +endif +ifneq ($(wildcard /usr/lib/libcrypt.*),) +LIBS += -lcrypt +endif + +ifdef NEEDDES +ifndef USE_CRYPT +LIBS += -ldes $(LIBS) +else +CFLAGS += -DUSE_CRYPT=1 +endif +PPPDOBJS += pppcrypt.o +HEADERS += pppcrypt.h endif # For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/. ifdef USE_PAM CFLAGS += -DUSE_PAM -LIBS := -lpam -ldl $(LIBS) +LIBS += -lpam -ldl endif # Multi-linnk @@ -125,11 +154,12 @@ ifdef USE_TDB CFLAGS += -DUSE_TDB=1 PPPDSRCS += tdb.c PPPDOBJS += tdb.o + HEADERS += tdb.h endif # Lock library binary for Linux is included in 'linux' subdirectory. ifdef LOCKLIB -LIBS := -llock $(LIBS) +LIBS += -llock CFLAGS += -DLOCKLIB=1 endif @@ -152,8 +182,10 @@ ifdef HAVE_INET6 endif ifdef CBCP + PPPDSRCS += cbcp.c PPPDOBJS += cbcp.o CFLAGS += -DCBCP_SUPPORT + HEADERS += cbcp.h endif ifdef MAXOCTETS @@ -162,8 +194,11 @@ endif INSTALL= install -o root +all: $(TARGETS) + install: pppd mkdir -p $(BINDIR) $(MANDIR) + $(EXTRAINSTALL) $(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \ chmod o-rx,u+s $(BINDIR)/pppd; fi @@ -172,12 +207,15 @@ install: pppd pppd: $(PPPDOBJS) $(CC) $(CFLAGS) $(LDFLAGS) -o pppd $(PPPDOBJS) $(LIBS) +srp-entry: srp-entry.c + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ srp-entry.c $(LIBS) + install-devel: mkdir -p $(INCDIR)/pppd $(INSTALL) -c -m 644 $(HEADERS) $(INCDIR)/pppd clean: - rm -f $(PPPDOBJS) pppd *~ #* core + rm -f $(PPPDOBJS) $(EXTRACLEAN) $(TARGETS) *~ #* core depend: $(CPP) -M $(CFLAGS) $(PPPDSRCS) >.depend