#
# pppd makefile for Linux
# $Id: Makefile.linux,v 1.31 1999/05/13 00:35:14 paulus Exp $
#

# Default installation locations
BINDIR = /usr/sbin
MANDIR = /usr/man

PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
	   ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c cbcp.c \
	   demand.c utils.c ppp_syslog_init.c
HEADERS =  callout.h pathnames.h patchlevel.h chap.h md5.h chap_ms.h md4.h \
	   ipxcp.h cbcp.h
MANPAGES = pppd.8
PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
	   auth.o options.o demand.o utils.o sys-linux.o ipxcp.o \
	   ppp_syslog_init.o

all: pppd-radius

#
# include dependancies if present and backup if as a header file
ifeq (.depend,$(wildcard .depend))
include .depend
endif

# CC = gcc
#
#COPTS = -O2 -pipe -Wall -g
COPTS = -O2 -pipe -Wall -Dlint
LIBS = -ldl

ifneq ($(wildcard /usr/lib/libcrypt*),)
LIBS += -lcrypt
endif

# Uncomment the next 2 lines to include support for Microsoft's
# MS-CHAP authentication protocol.
#CHAPMS=y
#USE_CRYPT=y
ifneq ($(wildcard /usr/lib/libcrypt*),)
HAVE_CRYPT_H=y
endif


HAS_SHADOW=y
#USE_PAM=y
USELIB_SUPPORT=y

INCLUDE_DIRS= -I../include -I ../../src

COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE

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
PPPDOBJS += md4.o chap_ms.o
ifdef MSLANMAN
CFLAGS   += -DMSLANMAN=1
endif
endif

ifdef HAS_SHADOW
CFLAGS   += -DHAS_SHADOW
#LIBS     := -lshadow $(LIBS)
endif

# For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/.
ifdef USE_PAM
CFLAGS   += -DUSE_PAM
LIBS     := -lpam -ldl $(LIBS)
endif

# Lock library binary for Linux is included in 'linux' subdirectory.
ifdef LOCKLIB
LIBS     := -llock $(LIBS)
CFLAGS   += -DLOCKLIB=1
endif

# Portslave RADIUS lib
ifdef USELIB_SUPPORT
CFLAGS += -DUSELIB_SUPPORT=1
LDFLAGS += -rdynamic
endif  

install: pppd-radius
	mkdir -p $(BINDIR) $(MANDIR)
	install -s -c -m 4550 -o root pppd-radius $(BINDIR)/pppd-radius
	if ! chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \
	  chmod o+rx $(BINDIR)/pppd; fi
	install -c -m 444 -o root pppd.8 $(MANDIR)/man8

pppd-radius: $(PPPDOBJS)
	$(CC) $(LDFLAGS) $(CFLAGS) -o pppd-radius $(PPPDOBJS) $(LIBS)
	strip pppd-radius

clean:
	rm -f $(PPPDOBJS) pppd-radius *~ #* core

depend:
	$(CPP) -M $(CFLAGS) $(PPPDSRCS) >.depend
