Home | History | Annotate | Download | only in av1394
      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 2007 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 # ident	"%Z%%M%	%I%	%E% SMI"
     26 #
     27 
     28 #
     29 #	Path to the base of the uts directory tree.
     30 #
     31 UTSBASE	= ../..
     32 
     33 #
     34 #	Define the module and object file sets.
     35 #
     36 MODULE		= av1394
     37 OBJECTS		= $(AV1394_OBJS:%=$(OBJS_DIR)/%)
     38 LINTS		= $(AV1394_OBJS:%.o=$(LINTS_DIR)/%.ln)
     39 ROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
     40 WARLOCK_OUT     = $(AV1394_OBJS:%.o=%.ll)
     41 WARLOCK_OK      = $(MODULE).ok
     42 WLCMD_DIR       = $(UTSBASE)/common/io/warlock
     43 
     44 #
     45 #	Include common rules.
     46 #
     47 include $(UTSBASE)/intel/Makefile.intel
     48 
     49 #
     50 #	Define targets
     51 #
     52 ALL_TARGET	= $(BINARY)
     53 LINT_TARGET	= $(MODULE).lint
     54 INSTALL_TARGET	= $(BINARY) $(ROOTMODULE)
     55 
     56 #
     57 #       Overrides
     58 #
     59 DEBUG_DEFS_DBG32	+= -DTNF_DEBUG
     60 
     61 #
     62 # lint pass one enforcement
     63 #
     64 CFLAGS += $(CCVERBOSE)
     65 
     66 #
     67 # For now, disable these lint checks; maintainers should endeavor
     68 # to investigate and remove these for maximum lint coverage.
     69 # Please do not carry these forward to new Makefiles.
     70 #
     71 LINTTAGS	+= -erroff=E_SUSPICIOUS_COMPARISON
     72 LINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
     73 LINTTAGS	+= -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
     74 LINTTAGS	+= -erroff=E_STATIC_UNUSED
     75 LINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
     76 LINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
     77 
     78 #
     79 # depends on misc/s1394
     80 LDFLAGS		+= -dy -Nmisc/s1394
     81 
     82 #	Default build targets.
     83 #
     84 .KEEP_STATE:
     85 
     86 def:		$(DEF_DEPS)
     87 
     88 all:		$(ALL_DEPS)
     89 
     90 clean:		$(CLEAN_DEPS)
     91 		$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
     92 
     93 clobber:	$(CLOBBER_DEPS)
     94 		$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
     95 
     96 lint:		$(LINT_DEPS)
     97 
     98 modlintlib:	$(MODLINTLIB_DEPS)
     99 
    100 clean.lint:	$(CLEAN_LINT_DEPS)
    101 
    102 install:	$(INSTALL_DEPS)
    103 
    104 #
    105 #	Include common targets.
    106 #
    107 include $(UTSBASE)/intel/Makefile.targ
    108 
    109 #
    110 #	Defines for local commands.
    111 #
    112 WARLOCK		= warlock
    113 WLCC		= wlcc
    114 TOUCH		= touch
    115 TEST		= test
    116 
    117 #
    118 #	Warlock targets
    119 #
    120 warlock: $(WARLOCK_OK)
    121 
    122 $(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files $(WLCMD_DIR)/av1394.wlcmd
    123 	$(WARLOCK) -c $(WLCMD_DIR)/av1394.wlcmd $(WARLOCK_OUT) \
    124 		-l ../warlock/ddi_dki_impl.ll
    125 	$(TOUCH) $@
    126 
    127 %.ll: $(UTSBASE)/common/io/1394/targets/av1394/%.c
    128 	$(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $<
    129 
    130 warlock_ddi.files:
    131 	@cd ../warlock; pwd; $(MAKE) warlock
    132