1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# ident "%Z%%M% %I% %E% SMI" 26# 27 28MINCONN = minconn.so 29PASSPROMPT = passprompt.so 30PPPOE = pppoe.so 31 32LIBRARIES = minconn.so passprompt.so pppoe.so 33OBJECTS = minconn.o passprompt.o pppoe.o 34 35# The rest of the sources are GPL 36LINTSRCS = pppoe.c 37 38include $(SRC)/lib/Makefile.lib 39include ../Makefile.def 40 41# Express objects in terms of "pics" thus triggering the appropriate CPPFLAGS, 42# CFLAGS and DYNFLAGS settings from lib/Makefile.lib to build shared objects. 43$(MINCONN):= PICS = pics/minconn.o 44$(PASSPROMPT):= PICS = pics/passprompt.o 45$(PPPOE):= PICS = pics/pppoe.o 46 47# Suppress -h setting from DYNFLAGS as these libraries aren't linked against. 48# Establish external references through mapfiles and dependencies to allow 49# use of -zdefs. 50HSONAME= 51$(MINCONN):= MAPFILES = mapfile-minconn 52$(PASSPROMPT):= MAPFILES = mapfile-passprompt 53$(PPPOE):= MAPFILES = mapfile-pppoe 54 55# A bug in pmake causes redundancy when '+=' is conditionally assigned, so 56# '=' is used with extra variables. 57XXXLDLIBS = 58$(PASSPROMPT):= XXXLDLIBS = -lc 59LDLIBS += $(XXXLDLIBS) 60 61CPPFLAGS += -I.. -I$(SRC)/uts/common 62# XX64 -- this should not be needed -- fix me 63DYNFLAGS += -_gcc=-nostdlib 64 65CLOBBERFILES += $(LIBRARIES) 66 67LIBPPPPLUGIN= $(LIBRARIES:%=$(LIBPPPPLUGINDIR)/%) 68 69$(LIBPPPPLUGIN):= FILEMODE = 0544 70$(LIBPPPPLUGIN):= OWNER = root 71$(LIBPPPPLUGIN):= GROUP = bin 72 73$(LIBPPPPLUGINDIR):= FILEMODE = 0755 74$(LIBPPPPLUGINDIR):= OWNER = root 75$(LIBPPPPLUGINDIR):= GROUP = bin 76 77# This is needed because install doesn't handle -g well. 78UTILDIR= $(ROOT)/usr/share/src/ppputil 79$(UTILDIR):= OWNER = root 80$(UTILDIR):= GROUP = bin 81ROOTSRC= $(UTILDIR)/plugins 82SRCFILES= Makefile minconn.c passprompt.c pppd.h 83ROOTSRCFILES= $(SRCFILES:%=$(ROOTSRC)/%) 84$(ROOTSRC):= OWNER = root 85$(ROOTSRC):= GROUP = bin 86$(ROOTSRCFILES):= FILEMODE= 0444 87$(ROOTSRCFILES):= OWNER = root 88$(ROOTSRCFILES):= GROUP = bin 89 90.KEEP_STATE: 91 92all: $(LIBRARIES) 93 94$(MINCONN): pics .WAIT $$(PICS) 95 $(BUILD.SO) 96 $(POST_PROCESS_SO) 97 98$(PASSPROMPT): pics .WAIT $$(PICS) 99 $(BUILD.SO) 100 $(POST_PROCESS_SO) 101 102$(PPPOE): pics .WAIT $$(PICS) 103 $(BUILD.SO) 104 $(POST_PROCESS_SO) 105 106install: all $(LIBPPPPLUGINDIR) $(LIBPPPPLUGIN) install_src 107 108$(LIBPPPPLUGINDIR): 109 $(INS.dir) 110 111$(LIBPPPPLUGINDIR)/%: % 112 $(INS.file) 113 114$(UTILDIR) $(ROOTSRC): 115 $(INS.dir) 116 117$(ROOTSRC)/Makefile%: Makefile%.dist 118 $(INS.rename) 119 120$(ROOTSRC)/%.h: ../%.h 121 $(INS.file) 122 123$(ROOTSRC)/%: % 124 $(INS.file) 125 126install_src: $(UTILDIR) .WAIT $(ROOTSRC) .WAIT $(ROOTSRCFILES) 127 128lint: 129 $(LINT.c) $(LINTSRCS) $(LDLIBS) 130 131include $(SRC)/lib/Makefile.targ 132