Makefile revision 489b7c4ab76ae8df137fbfcc2214f7baa52883a0
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# CDDL HEADER START
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# The contents of this file are subject to the terms of the
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Common Development and Distribution License (the "License").
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# You may not use this file except in compliance with the License.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# or http://www.opensolaris.org/os/licensing.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# See the License for the specific language governing permissions
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# and limitations under the License.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# When distributing Covered Code, include this CDDL HEADER in each
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# If applicable, add the following below this CDDL HEADER, with the
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# fields enclosed by brackets "[]" replaced with your own identifying
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# information: Portions Copyright [yyyy] [name of copyright owner]
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# CDDL HEADER END
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# uts/intel/hid/Makefile
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Use is subject to license terms.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# This makefile drives the production of the hid driver kernel module.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Path to the base of the uts directory tree (usually /usr/src/uts).
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorUTSBASE = ../..
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Define the module and object file sets.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorMODULE = hid
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorOBJECTS = $(HID_OBJS:%=$(OBJS_DIR)/%)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorLINTS = $(HID_OBJS:%.o=$(LINTS_DIR)/%.ln)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorWARLOCK_OUT = $(HID_OBJS:%.o=%.ll)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorWARLOCK_OK = $(MODULE).ok
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorWLCMD_DIR = $(UTSBASE)/common/io/warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Include common rules.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorinclude $(UTSBASE)/intel/Makefile.intel
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Define targets
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorALL_TARGET = $(BINARY)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorLINT_TARGET = $(MODULE).lint
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Override defaults to build a unique, local modstubs.o.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorMODSTUBS_DIR = $(OBJS_DIR)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorCLEANFILES += $(MODSTUBS_O)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# depends on misc/usba
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorLDFLAGS += -dy -Nmisc/usba -Nmisc/hidparser -Ndacf/consconfig_dacf
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# For now, disable these lint checks; maintainers should endeavor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# to investigate and remove these for maximum lint coverage.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Please do not carry these forward to new Makefiles.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Default build targets.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor.KEEP_STATE:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylordef: $(DEF_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorall: $(ALL_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorclean: $(CLEAN_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorclobber: $(CLOBBER_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorlint: $(LINT_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylormodlintlib: $(MODLINTLIB_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorclean.lint: $(CLEAN_LINT_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorinstall: $(INSTALL_DEPS)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Include common targets.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorinclude $(UTSBASE)/intel/Makefile.targ
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# Defines for local commands.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorWARLOCK = warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorWLCC = wlcc
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorTOUCH = touch
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorTEST = test
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor# lock_lint rules
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor#
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorUSBA_FILES = $(USBA_WITHOUT_WUSB_OBJS:%.o=../usba/%.ll)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorOHCI_FILES = $(OHCI_OBJS:%.o=../ohci/%.ll)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorUHCI_FILES = $(UHCI_OBJS:%.o=../uhci/%.ll)
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorEHCI_FILES = $(EHCI_OBJS:%.o=../ehci/%.ll)
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorwarlock: $(WARLOCK_OK) warlock_with_usba
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor$(WARLOCK_OK): $(WARLOCK_OUT) $(WLCMD_DIR)/hid.wlcmd warlock_ddi.files
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(WARLOCK) -c $(WLCMD_DIR)/hid.wlcmd $(WARLOCK_OUT) \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor -l ../warlock/ddi_dki_impl.ll
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(TOUCH) $@
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor%.ll: $(UTSBASE)/common/io/usb/clients/hid/%.c \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(UTSBASE)/common/sys/usb/clients/hid/hidvar.h
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorwarlock_with_usba: $(WLCMD_DIR)/hid_with_usba.wlcmd $(WARLOCK_OUT) usba_files \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor ohci_files ehci_files uhci_files warlock_ddi.files
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(WARLOCK) -c $(WLCMD_DIR)/hid_with_usba.wlcmd \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(USBA_FILES) \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(UHCI_FILES) $(OHCI_FILES) $(EHCI_FILES) \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor $(WARLOCK_OUT) \
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor -l ../warlock/ddi_dki_impl.ll
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorusba_files:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor @cd ../usba;pwd; $(MAKE) warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorohci_files:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor @cd ../ohci;pwd; $(MAKE) warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Tayloruhci_files:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor @cd ../uhci;pwd; $(MAKE) warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorehci_files:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor @cd ../ehci;pwd; $(MAKE) warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylorwarlock_ddi.files:
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor cd ../warlock; pwd; $(MAKE) warlock
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor