1 # 2 # Copyright 2009 Sun Microsystems, Inc. All rights reserved. 3 # Use is subject to license terms. 4 # 5 # cmd/cmd-inet/usr.bin/pppd/Makefile 6 # 7 8 include ../../../Makefile.cmd 9 include Makefile.def 10 11 PROG= pppd 12 SUBDIRS= plugins 13 OBJS= auth.o ccp.o chap.o demand.o fsm.o ipcp.o ipv6cp.o \ 14 lcp.o magic.o main.o options.o sys-solaris.o upap.o utils.o \ 15 multilink.o cbcp.o 16 17 # Object tdb.o used only for Multilink; not supported yet. 18 19 all:= TARGET= all 20 install:= TARGET= install 21 clean:= TARGET= clean 22 clobber:= TARGET= clobber 23 lint:= TARGET= lint 24 25 LDLIBS += -lpam -lmd -lsocket -lnsl -ldlpi 26 27 # 28 # We need absolute path to /etc/ppp/plugins and /usr/lib/inet/ppp, not 29 # that of the proto area 30 # 31 LDFLAGS += -R$(ETCPPPPLUGINDIR_ABS) -R$(LIBPPPPLUGINDIR_ABS) 32 33 CPPFLAGS += -DPLUGIN -DSVR4 -DSOL2 -DINET6 34 CPPFLAGS += -D_PATH_VARRUN='"/var/run/"' 35 CPPFLAGS += -DNEGOTIATE_FCS -DCBCP_SUPPORT -DALLOW_PAM -DHAS_SHADOW 36 CPPFLAGS += -DHAVE_MMAP -DCOMP_TUNE -DMUX_FRAME 37 $(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 38 39 .KEEP_STATE: 40 41 .PARALLEL: $(SUBDIRS) 42 43 all: $(PROG) $(SUBDIRS) 44 45 # MS-CHAP support 46 CPPFLAGS += -DHAVE_CRYPT_H -DUSE_CRYPT -DHAVE_LIBMD 47 CPPFLAGS += -DCHAPMS -DMSLANMAN 48 CPPFLAGS += -DCHAPMSV2 49 OBJS += chap_ms.o 50 EXOBJS += mschap_test.o 51 CLOBBERFILES += mschap_test 52 53 # This is used *only* for testing the portability of the libraries 54 # required for MS-CHAPv1. It is not needed in any normal system and 55 # is not built by default. 56 mschap_test: mschap_test.o chap_ms.o 57 $(LINK.c) -o mschap_test mschap_test.o chap_ms.o $(LDFLAGS) -lmd 58 @echo "Run with 'mschap_test 00000000000000000000000000000000 hello'" 59 @echo 60 @echo "Output should be:" 61 @echo 62 @echo " MS-CHAPv1 with LAN Manager -- 49 bytes:" 63 @echo " C9 CA EE 9B 1C A7 87 04" 64 @echo " 79 36 8C 55 AB 88 EC 5A" 65 @echo " 57 E9 A1 B7 95 40 C3 74" 66 @echo " F4 D9 9D AF 82 64 DC 3C" 67 @echo " 53 F9 BC 92 14 B5 5D 9E" 68 @echo " 78 C4 21 48 9D B7 A8 B4" 69 @echo " 01" 70 @echo " MS-CHAPv2 -- 49 bytes:" 71 @echo " xx xx xx xx xx xx xx xx" 72 @echo " xx xx xx xx xx xx xx xx" 73 @echo " 00 00 00 00 00 00 00 00" 74 @echo " xx xx xx xx xx xx xx xx" 75 @echo " xx xx xx xx xx xx xx xx" 76 @echo " xx xx xx xx xx xx xx xx" 77 @echo " 00" 78 79 LINTFLAGS += -erroff=E_NAME_DEF_NOT_USED2 80 81 SRCS= $(OBJS:%.o=%.c) 82 83 .PARALLEL: $(OBJS) 84 85 $(PROG): $(OBJS) 86 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 87 $(POST_PROCESS) 88 89 $(ROOTPROG):= FILEMODE = 04555 90 91 ASPPP2PPPD= $(ROOTUSRSBIN)/asppp2pppd 92 $(ASPPP2PPPD):= FILEMODE = 0550 93 94 install: $(PROG) .WAIT $(SUBDIRS) $(ROOTPROG) $(ETCPPPDIR) $(ASPPP2PPPD) 95 96 $(ETCPPPDIR)/%: % 97 $(INS.file) 98 99 $(ETCPPPDIR): 100 $(INS.dir) 101 102 $(SUBDIRS): FRC 103 @cd $@; pwd; $(MAKE) $(TARGET) 104 105 FRC: 106 107 LINTOBJS=$(OBJS:%.o=%.ln) 108 CLOBBERFILES += $(LINTOBJS) 109 110 clean: $(SUBDIRS) 111 $(RM) $(OBJS) $(EXOBJS) 112 113 sha1.ln:= LINTFLAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED 114 115 # Not using the default lint target here so that we can disable 116 # warnings per module as needed. 117 lint: $(SUBDIRS) $(LINTOBJS) 118 $(LINT.c) $(LINTOBJS) $(LDLIBS) 119 120 clobber: $(SUBDIRS) 121 122 include ../../../Makefile.targ 123