X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2FMakefile.linux;h=44d47ad7f46f35bce09a86998cf4ebaab2ebd15f;hb=431469a02ce74e5fe4b9943e86b9bfc272882fcb;hp=b52a1292e179298c98ea8f8725b237bce0842abe;hpb=2b5045a7886d713db96eb21d4ac544dd2c117d98;p=ppp.git diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux index b52a129..44d47ad 100644 --- a/pppd/Makefile.linux +++ b/pppd/Makefile.linux @@ -1,27 +1,28 @@ # # pppd makefile for Linux -# $Id: Makefile.linux,v 1.60 2003/11/27 21:55:19 paulus Exp $ +# $Id: Makefile.linux,v 1.70 2007/06/19 02:08:34 carlsonj Exp $ # # Default installation locations -BINDIR = $(DESTDIR)/usr/sbin -MANDIR = $(DESTDIR)/usr/man -INCDIR = $(DESTDIR)/usr/include +DESTDIR = $(INSTROOT)@DESTDIR@ +BINDIR = $(DESTDIR)/sbin +MANDIR = $(DESTDIR)/share/man/man8 +INCDIR = $(DESTDIR)/include TARGETS = pppd 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 + demand.c utils.c tty.c eap.c chap-md5.c session.c -HEADERS = ccp.h chap-new.h ecp.h fsm.h ipcp.h \ +HEADERS = ccp.h session.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 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 + eap.o chap-md5.o session.o # # include dependencies if present @@ -32,12 +33,12 @@ endif # CC = gcc # COPTS = -O2 -pipe -Wall -g -LIBS = +LIBS = -lrt -# Uncomment the next 2 lines to include support for Microsoft's +# Uncomment the next line to include support for Microsoft's # MS-CHAP authentication protocol. Also, edit plugins/radius/Makefile.linux. CHAPMS=y -USE_CRYPT=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 @@ -59,9 +60,14 @@ HAVE_MULTILINK=y # Linux distributions: Please leave TDB ENABLED in your builds. USE_TDB=y +# Uncomment the next line to enable Type=notify services in systemd +# If enabled, and the user sets the up_sdnotify option, then +# pppd will not detach and will notify systemd when up. +#SYSTEMD=y + HAS_SHADOW=y #USE_PAM=y -#HAVE_INET6=y +HAVE_INET6=y # Enable plugins PLUGIN=y @@ -72,13 +78,19 @@ PLUGIN=y # Enable EAP SRP-SHA1 authentication (requires libsrp) #USE_SRP=y +# Use libutil +USE_LIBUTIL=y + +# Enable EAP-TLS authentication (requires MPPE support, libssl and libcrypto) +USE_EAPTLS=y + MAXOCTETS=y INCLUDE_DIRS= -I../include COMPILE_FLAGS= -DHAVE_PATHS_H -DIPX_CHANGE -DHAVE_MMAP -CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS) +CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS) '-DDESTDIR="@DESTDIR@"' ifdef CHAPMS CFLAGS += -DCHAPMS=1 @@ -90,13 +102,15 @@ CFLAGS += -DMSLANMAN=1 endif ifdef MPPE CFLAGS += -DMPPE=1 +HEADERS += mppe.h 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 +LIBS += -lsrp -L/usr/local/ssl/lib +NEEDCRYPTOLIB = y TARGETS += srp-entry EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry MANPAGES += srp-entry.8 @@ -111,21 +125,35 @@ HEADERS += sha1.h PPPDOBJS += sha1.o endif +# EAP-TLS +ifdef USE_EAPTLS +CFLAGS += -DUSE_EAPTLS=1 +LIBS += -lssl +NEEDCRYPTOLIB = y +PPPDSRC += eap-tls.c +HEADERS += eap-tls.h +PPPDOBJS += eap-tls.o +endif + ifdef HAS_SHADOW CFLAGS += -DHAS_SHADOW #LIBS += -lshadow $(LIBS) endif -ifneq ($(wildcard /usr/include/crypt.h),) -CFLAGS += -DHAVE_CRYPT_H=1 -endif -ifneq ($(wildcard /usr/lib/libcrypt.*),) +ifneq ($(wildcard $(shell $(CC) --print-sysroot)/usr/include/crypt.h),) +CFLAGS += -DHAVE_CRYPT_H=1 LIBS += -lcrypt endif +ifdef USE_LIBUTIL +CFLAGS += -DHAVE_LOGWTMP=1 +LIBS += -lutil +endif + ifdef NEEDDES ifndef USE_CRYPT -LIBS += -ldes $(LIBS) +CFLAGS += -I$(shell $(CC) --print-sysroot)/usr/include/openssl +NEEDCRYPTOLIB = y else CFLAGS += -DUSE_CRYPT=1 endif @@ -133,6 +161,10 @@ PPPDOBJS += pppcrypt.o HEADERS += pppcrypt.h endif +ifdef NEEDCRYPTOLIB +LIBS += -lcrypto +endif + # For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/. ifdef USE_PAM CFLAGS += -DUSE_PAM @@ -152,9 +184,9 @@ endif # TDB ifdef USE_TDB CFLAGS += -DUSE_TDB=1 - PPPDSRCS += tdb.c - PPPDOBJS += tdb.o - HEADERS += tdb.h + PPPDSRCS += tdb.c spinlock.c + PPPDOBJS += tdb.o spinlock.o + HEADERS += tdb.h spinlock.h endif # Lock library binary for Linux is included in 'linux' subdirectory. @@ -163,15 +195,22 @@ LIBS += -llock CFLAGS += -DLOCKLIB=1 endif +ifdef SYSTEMD +LIBS += -lsystemd +CFLAGS += -DSYSTEMD=1 +endif + ifdef PLUGIN CFLAGS += -DPLUGIN -LDFLAGS += -Wl,-E +LDFLAGS_PLUGIN += -Wl,-E LIBS += -ldl endif ifdef FILTER +ifneq ($(wildcard /usr/include/pcap-bpf.h),) LIBS += -lpcap -CFLAGS += -DPPP_FILTER -I/usr/include/pcap +CFLAGS += -DPPP_FILTER +endif endif ifdef HAVE_INET6 @@ -192,7 +231,7 @@ ifdef MAXOCTETS CFLAGS += -DMAXOCTETS endif -INSTALL= install -o root +INSTALL= install all: $(TARGETS) @@ -202,10 +241,10 @@ install: pppd $(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 - $(INSTALL) -c -m 444 pppd.8 $(MANDIR)/man8 + $(INSTALL) -c -m 444 pppd.8 $(MANDIR) pppd: $(PPPDOBJS) - $(CC) $(CFLAGS) $(LDFLAGS) -o pppd $(PPPDOBJS) $(LIBS) + $(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_PLUGIN) -o pppd $(PPPDOBJS) $(LIBS) srp-entry: srp-entry.c $(CC) $(CFLAGS) $(LDFLAGS) -o $@ srp-entry.c $(LIBS)