de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# CDDL HEADER START
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# The contents of this file are subject to the terms of the
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Common Development and Distribution License (the "License").
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# You may not use this file except in compliance with the License.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# or http://www.opensolaris.org/os/licensing.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# See the License for the specific language governing permissions
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# and limitations under the License.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# When distributing Covered Code, include this CDDL HEADER in each
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# If applicable, add the following below this CDDL HEADER, with the
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# fields enclosed by brackets "[]" replaced with your own identifying
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# information: Portions Copyright [yyyy] [name of copyright owner]
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# CDDL HEADER END
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# uts/intel/usbftdi/Makefile
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Use is subject to license terms.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
e2c88f0c2610f16de7b639746b40dea5f3e2256eGarrett D'Amore# Copyright 2014 Garrett D'Amore <garrett@damore.org>
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# This makefile drives the production of the FT232R USB Serial
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Adapter driver.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Path to the base of the uts directory tree (usually /usr/src/uts).
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandUTSBASE = ../..
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Define the module and object file sets.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandMODULE = usbftdi
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandOBJECTS = $(USBFTDI_OBJS:%=$(OBJS_DIR)/%)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandLINTS = $(USBFTDI_OBJS:%.o=$(LINTS_DIR)/%.ln)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWARLOCK_OUT = $(USBFTDI_OBJS:%.o=%.ll)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWARLOCK_OK = $(MODULE).ok
40a3f5ceaf3ada360988c7cbb70c66f2d5588da4Tim MarslandROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandCONF_SRCDIR = $(UTSBASE)/common/io/usb/clients/usbser/usbftdi
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWLCMD_DIR = $(UTSBASE)/common/io/warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Include common rules.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandinclude $(UTSBASE)/intel/Makefile.intel
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
7014882c6a3672fd0e5d60200af8643ae53c5928Richard LoweCERRWARN += -_gcc=-Wno-uninitialized
7014882c6a3672fd0e5d60200af8643ae53c5928Richard Lowe
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandLDFLAGS += -dy -Nmisc/usba -Nmisc/usbser
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Define targets
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandALL_TARGET = $(BINARY) $(SRC_CONFFILE)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandLINT_TARGET = $(MODULE).lint
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland.KEEP_STATE:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandall: $(ALL_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslanddef: $(DEF_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandclean: $(CLEAN_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandclobber: $(CLOBBER_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandlint: $(LINT_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandmodlintlib: $(MODLINTLIB_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandclean.lint: $(CLEAN_LINT_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandinstall: $(INSTALL_DEPS)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Include common targets.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandinclude $(UTSBASE)/intel/Makefile.targ
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# Defines for local commands.
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWLCC = wlcc
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandTOUCH = touch
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWARLOCK = warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandTEST = test
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland# warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland#
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandWARLOCK_CMD = $(WLCMD_DIR)/$(MODULE).wlcmd
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandUSBSER_FILES = $(USBSER_OBJS:%.o=../usbser/%.ll)
e2c88f0c2610f16de7b639746b40dea5f3e2256eGarrett D'AmoreUSBA_FILES = $(USBA_OBJS:%.o=../usba/%.ll)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandUHCI_FILES = $(UHCI_OBJS:%.o=../uhci/%.ll)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandOHCI_FILES = $(OHCI_OBJS:%.o=../ohci/%.ll)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim MarslandEHCI_FILES = $(EHCI_OBJS:%.o=../ehci/%.ll)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandwarlock: $(WARLOCK_OK)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland$(WARLOCK_OK): warlock_with_usba warlock_with_usbser
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(TOUCH) $@
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland%.ll: $(UTSBASE)/common/io/usb/clients/usbser/usbftdi/%.c
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandwarlock_with_usbser: $(WARLOCK_OUT) usbser_files warlock_ddi.files \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WARLOCK_CMD)
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WARLOCK) -c $(WARLOCK_CMD) $(WARLOCK_OUT) \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(USBSER_FILES) -l ../warlock/ddi_dki_impl.ll
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandwarlock_with_usba: $(WARLOCK_OUT) usbser_files \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WLCMD_DIR)/usbftdi_with_usba.wlcmd usba_files ohci_files uhci_files \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland ehci_files warlock_ddi.files
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WARLOCK) -c $(WLCMD_DIR)/usbftdi_with_usba.wlcmd \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(USBA_FILES) $(OHCI_FILES) $(EHCI_FILES) $(UHCI_FILES) \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(USBSER_FILES) \
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland $(WARLOCK_OUT) -l ../warlock/ddi_dki_impl.ll
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandusbser_files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland @cd ../usbser; pwd; $(MAKE) warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandusba_files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland @cd ../usba;pwd; $(MAKE) warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslanduhci_files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland @cd ../uhci;pwd; $(MAKE) warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandohci_files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland @cd ../ohci;pwd; $(MAKE) warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandehci_files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland @cd ../ehci;pwd; $(MAKE) warlock
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marslandwarlock_ddi.files:
de81e71e031139a0a7f13b7bf64152c3faa76698Tim Marsland cd ../warlock; pwd; $(MAKE) warlock