xref: /illumos-gate/usr/src/cmd/modload/Makefile.com (revision e4a991eb)
17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
52e107de7SJerry Gilliam# Common Development and Distribution License (the "License").
62e107de7SJerry Gilliam# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
217c478bd9Sstevel@tonic-gate#
222e107de7SJerry Gilliam# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate# Use is subject to license terms.
247c478bd9Sstevel@tonic-gate#
255661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc.
26*e4a991ebSAndy Fiddaman# Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
277c478bd9Sstevel@tonic-gate#
287c478bd9Sstevel@tonic-gate# makefile for loadable module utilities
297c478bd9Sstevel@tonic-gate
307c478bd9Sstevel@tonic-gateDRVPROG = add_drv rem_drv update_drv
317c478bd9Sstevel@tonic-gateMODPROG = modinfo modunload modload
327c478bd9Sstevel@tonic-gatePROG = $(MODPROG) $(DRVPROG)
337c478bd9Sstevel@tonic-gate
347c478bd9Sstevel@tonic-gateinclude ../../Makefile.cmd
357c478bd9Sstevel@tonic-gate
367c478bd9Sstevel@tonic-gateMODCOMMONOBJ = modsubr.o
377c478bd9Sstevel@tonic-gateMODCOMMONSRC = $(MODCOMMONOBJ:%.o=../%.c)
387c478bd9Sstevel@tonic-gate
397c478bd9Sstevel@tonic-gatePLCYOBJ = plcysubr.o
407c478bd9Sstevel@tonic-gatePLCYSRC = $(PLCYOBJ:%.o=../%.c)
417c478bd9Sstevel@tonic-gate
427c478bd9Sstevel@tonic-gate$(PLCYOBJ) := CPPFLAGS += -D_REENTRANT
437c478bd9Sstevel@tonic-gate
447c478bd9Sstevel@tonic-gateROOTDRVPROG = $(DRVPROG:%=$(ROOTUSRSBIN)/%)
457c478bd9Sstevel@tonic-gate
467c478bd9Sstevel@tonic-gateDRVCOMMONOBJ = drvsubr.o $(PLCYOBJ)
477c478bd9Sstevel@tonic-gateDRVCOMMONSRC = $(DRVCOMMONOBJ:%.o=../%.c)
487c478bd9Sstevel@tonic-gate
497c478bd9Sstevel@tonic-gateOBJECTS = $(MODCOMMONOBJ) $(DRVCOMMONOBJ) $(PROG:%=%.o)
507c478bd9Sstevel@tonic-gateSRCS = $(OBJECTS:%.o=../%.c)
517c478bd9Sstevel@tonic-gate
522e107de7SJerry GilliamCOMMONSRC = $(DRVCOMMONSRC) $(MODCOMMONSRC)
532e107de7SJerry Gilliam
547c478bd9Sstevel@tonic-gateCLOBBERFILES = $(PROG)
557c478bd9Sstevel@tonic-gate
567c478bd9Sstevel@tonic-gate# install specifics
577c478bd9Sstevel@tonic-gate
587c478bd9Sstevel@tonic-gate$(ROOTDRVPROG) := FILEMODE = 0555
597c478bd9Sstevel@tonic-gate
602e107de7SJerry Gilliamadd_drv			:= LDLIBS += -ldevinfo -lelf
612e107de7SJerry Gilliamrem_drv			:= LDLIBS += -ldevinfo
622e107de7SJerry Gilliamupdate_drv		:= LDLIBS += -ldevinfo
632e107de7SJerry Gilliam
647c478bd9Sstevel@tonic-gate.KEEP_STATE:
657c478bd9Sstevel@tonic-gate
667c478bd9Sstevel@tonic-gate%.o:	../%.c
677c478bd9Sstevel@tonic-gate	$(COMPILE.c) $<
687c478bd9Sstevel@tonic-gate
697c478bd9Sstevel@tonic-gateall: $(PROG)
707c478bd9Sstevel@tonic-gate
717c478bd9Sstevel@tonic-gateadd_drv:	add_drv.o $(DRVCOMMONOBJ)
727c478bd9Sstevel@tonic-gate	$(LINK.c)  -o $@ add_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
737c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
747c478bd9Sstevel@tonic-gate
757c478bd9Sstevel@tonic-gaterem_drv:	rem_drv.o $(DRVCOMMONOBJ)
767c478bd9Sstevel@tonic-gate	$(LINK.c)  -o $@ rem_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
777c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
787c478bd9Sstevel@tonic-gate
797c478bd9Sstevel@tonic-gateupdate_drv:	update_drv.o $(DRVCOMMONOBJ)
807c478bd9Sstevel@tonic-gate	$(LINK.c)  -o $@ update_drv.o $(DRVCOMMONOBJ) $(LDLIBS)
817c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
827c478bd9Sstevel@tonic-gate
837c478bd9Sstevel@tonic-gatemodload:	modload.o $(MODCOMMONOBJ)
847c478bd9Sstevel@tonic-gate	 $(LINK.c)  -o $@ modload.o $(MODCOMMONOBJ) $(LDLIBS)
857c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
867c478bd9Sstevel@tonic-gate
877c478bd9Sstevel@tonic-gatemodunload:	modunload.o $(MODCOMMONOBJ)
887c478bd9Sstevel@tonic-gate	 $(LINK.c)  -o $@ modunload.o $(MODCOMMONOBJ) $(LDLIBS)
897c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
907c478bd9Sstevel@tonic-gate
917c478bd9Sstevel@tonic-gatemodinfo:	modinfo.o $(MODCOMMONOBJ)
927c478bd9Sstevel@tonic-gate	 $(LINK.c)  -o $@ modinfo.o $(MODCOMMONOBJ) $(LDLIBS)
937c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
947c478bd9Sstevel@tonic-gate
957c478bd9Sstevel@tonic-gateclean:
96b6805bf7SGordon Ross	$(RM) $(OBJECTS)
977c478bd9Sstevel@tonic-gate
987c478bd9Sstevel@tonic-gateinclude ../../Makefile.targ
99