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.
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.
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]
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
25 # cmd/modload/Makefile.com
27 # makefile for loadable module utilities
29 DRVPROG = add_drv rem_drv update_drv
30 MODPROG = modinfo modunload modload
31 PROG = $(MODPROG) $(DRVPROG)
33 include ../../Makefile.cmd
35 MODCOMMONOBJ = modsubr.o
36 MODCOMMONSRC = $(MODCOMMONOBJ:%.o=../%.c)
39 PLCYSRC = $(PLCYOBJ:%.o=../%.c)
41 $(PLCYOBJ) := CPPFLAGS += -D_REENTRANT
43 ROOTDRVPROG = $(DRVPROG:%=$(ROOTUSRSBIN)/%)
45 DRVCOMMONOBJ = drvsubr.o $(PLCYOBJ)
46 DRVCOMMONSRC = $(DRVCOMMONOBJ:%.o=../%.c)
48 OBJECTS = $(MODCOMMONOBJ) $(DRVCOMMONOBJ) $(PROG:%=%.o)
49 SRCS = $(OBJECTS:%.o=../%.c)
51 COMMONSRC = $(DRVCOMMONSRC) $(MODCOMMONSRC)
53 CLOBBERFILES = $(PROG)
55 # lint is complicated here by the fact that we
56 # build multiple commands and with differing
57 # common source, drvsubr vs modsubr/plcysubr
59 LINT_PROG= $(PROG:%=lint_%.c)
60 LINTFLAGS += -erroff=E_NAME_DEF_NOT_USED2
62 CERRWARN += -_gcc=-Wno-parentheses
66 $(ROOTDRVPROG) := FILEMODE = 0555
68 add_drv := LDLIBS += -ldevinfo -lelf
69 rem_drv := LDLIBS += -ldevinfo
70 update_drv := LDLIBS += -ldevinfo
72 lint_add_drv.c := LDLIBS += -ldevinfo -lelf
73 lint_rem_drv.c := LDLIBS += -ldevinfo
74 lint_update_drv.c := LDLIBS += -ldevinfo
83 add_drv: add_drv.o $(DRVCOMMONOBJ)
84 $(LINK.c) -o $@ add_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
87 rem_drv: rem_drv.o $(DRVCOMMONOBJ)
88 $(LINK.c) -o $@ rem_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
91 update_drv: update_drv.o $(DRVCOMMONOBJ)
92 $(LINK.c) -o $@ update_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
95 modload: modload.o $(MODCOMMONOBJ)
96 $(LINK.c) -o $@ modload.o $(MODCOMMONOBJ) $(LDLIBS)
99 modunload: modunload.o $(MODCOMMONOBJ)
100 $(LINK.c) -o $@ modunload.o $(MODCOMMONOBJ) $(LDLIBS)
103 modinfo: modinfo.o $(MODCOMMONOBJ)
104 $(LINK.c) -o $@ modinfo.o $(MODCOMMONOBJ) $(LDLIBS)
111 $(LINT.c) $(@:lint_%.c=../%.c) $(COMMONSRC) $(LDLIBS)
115 include ../../Makefile.targ