Home | History | Annotate | Download | only in iscsi
      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 src/sun_nws/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 src/sun_nws/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	"@(#)Makefile	1.14	07/01/19 SMI"
     26 #
     27 # src/sun_nws/iscsi/Makefile
     28 #
     29 
     30 include ../Makefile.config
     31 include ../Makefile.drvrs
     32 
     33 # The following two lines make sure that on sparc the 64 bit version is the
     34 # only one built (sparcv9) and or x86 the 32 bit and 64 bit versions are both
     35 # built.
     36 BUILD32	= $(MACH32:sparc=$(POUND_SIGN))
     37 BUILD32	= $(MACH32:i386=)
     38 
     39 sparc_STAGING32  = $(PROTO_ROOT)/kernel/drv
     40 sparc_STAGING64  = $(STAGING32)/sparcv9
     41 
     42 i386_STAGING32   = $(PROTO_ROOT)/kernel/drv
     43 i386_STAGING64   = $(STAGING32)/amd64
     44 
     45 STAGING32        = $($(MACH)_STAGING32)
     46 STAGING64        = $($(MACH)_STAGING64)
     47 
     48 # Kernel Module Dependencies
     49 LDFLAGS += -dy -N"misc/scsi" -N"fs/sockfs" -N"sys/doorfs"
     50 
     51 MODULE  	 = iscsi
     52 
     53 CONFFILE	 = iscsi.conf
     54 
     55 MODULE_PKGS	 = SUNWiscsir
     56 
     57 PKG_PROJ_DEPENDS = iscsid
     58 
     59 CLASS_ACTIONS    = $(ON_REF_GATE)/usr/src/pkgdefs/common_files/i.manifest
     60 CLASS_ACTIONS   += $(ON_REF_GATE)/usr/src/pkgdefs/common_files/r.manifest
     61 CLASS_ACTIONS   += $(ON_REF_GATE)/usr/src/pkgdefs/common_files/i.rbac
     62 CLASS_ACTIONS   += $(ON_REF_GATE)/usr/src/pkgdefs/common_files/r.rbac
     63 CLASS_ACTIONS   += $(CLASS_ACTIONS_DIR)/i.iscsiconf
     64 
     65 MODULE_SRC	 = iscsi.c 
     66 MODULE_SRC	+= iscsi_io.c 
     67 MODULE_SRC	+= iscsi_login.c 
     68 MODULE_SRC	+= iscsiAuthClient.c 
     69 MODULE_SRC	+= iscsiAuthClientGlue.c 
     70 MODULE_SRC	+= md5.c
     71 MODULE_SRC	+= iscsi_crc.c
     72 MODULE_SRC      += iscsi_queue.c
     73 MODULE_SRC      += iscsid.c nvfile.c
     74 MODULE_SRC	+= persistent.c
     75 MODULE_SRC      += iscsi_stats.c
     76 MODULE_SRC	+= chap.c
     77 MODULE_SRC	+= radius_auth.c radius_packet.c
     78 MODULE_SRC      += iscsi_net.c
     79 MODULE_SRC      += iscsi_doorclt.c
     80 MODULE_SRC      += iscsi_sess.c
     81 MODULE_SRC      += iscsi_conn.c
     82 MODULE_SRC      += iscsi_lun.c
     83 MODULE_SRC      += iscsi_cmd.c
     84 MODULE_SRC      += iscsi_targetparam.c
     85 MODULE_SRC      += iscsi_thread.c
     86 MODULE_SRC      += iscsi_ioctl.c
     87 MODULE_SRC      += isns_client.c
     88 COMMON_SRC      += $(COM_SRC_ISCSI)/utils.c
     89 
     90 MODULE_OBJ_32    = $(MODULE_SRC:%.c=$(OBJ32)/%.o)
     91 MODULE_OBJ_32   += $(COMMON_SRC:$(COM_SRC_ISCSI)/%.c=$(OBJ32)/%.o)
     92 MODULE_OBJ_64    = $(MODULE_SRC:%.c=$(OBJ64)/%.o)
     93 MODULE_OBJ_64   += $(COMMON_SRC:$(COM_SRC_ISCSI)/%.c=$(OBJ64)/%.o)
     94 
     95 
     96 $(BUILD32)BINARY32        = $(OBJ32)/$(MODULE)
     97 $(BUILD64)BINARY64        = $(OBJ64)/$(MODULE)
     98 BINARIES      		  = $(BINARY32) $(BINARY64)
     99 
    100 $(BUILD32)LINT_TARGETS    = lint32
    101 $(BUILD64)LINT_TARGETS   += lint64
    102 
    103 COMMON_INCLUDES	 = -I$(HDRS_DIR)
    104 COMMON_INCLUDES	+= -I$(COM_INC_ISCSI)
    105 COMMON_INCLUDES += -I$(COMMON_ISCSI_IMPL_HDRS_DIR)
    106 
    107 $(BUILD32)ALLPREQ 	+= $(OBJ32)
    108 $(BUILD64)ALLPREQ 	+= $(OBJ64)
    109 ALLPREQ 		+= .WAIT
    110 ALLPREQ 		+= $(BINARIES)
    111 
    112 INSTALLPREQ		   = all
    113 INSTALLPREQ		  += .WAIT
    114 $(BUILD32)INSTALLPREQ     += $(STAGING32) 
    115 $(BUILD64)INSTALLPREQ     += $(STAGING64) 
    116 INSTALLPREQ		  += .WAIT
    117 INSTALLPREQ		  += $(STAGING32)/$(CONFFILE)
    118 $(BUILD32)INSTALLPREQ     += $(STAGING32)/$(MODULE)
    119 $(BUILD64)INSTALLPREQ     += $(STAGING64)/$(MODULE)
    120 
    121 PKGPREQ		 = install
    122 PKGPREQ		+= .WAIT
    123 PKGPREQ         += $(PKG_PROJ_DEPENDS:%=%_installed)
    124 PKGPREQ         += $(PKGAREA)
    125 PKGPREQ         += .WAIT
    126 PKGPREQ         += $(MODULE_PKGS:%=$(PKGAREA)/%)
    127 
    128 CLEANFILES  = $(MODULE_OBJ_32) $(MODULE_OBJ_64)
    129 
    130 CLEANWARFILES    = iscsi.ll
    131 CLEANWARFILES   += iscsi.ok
    132 
    133 CLOBBERFILES  = $(CLEANFILES)
    134 CLOBBERFILES += $(CLEANWARFILES)
    135 CLOBBERFILES += $(MOD_LINT_LIB)
    136 
    137 NUKEFILES  = $(CLOBBERFILES)
    138 NUKEFILES += $(STAGING32)/$(CONFFILE)
    139 NUKEFILES += $(STAGING32)/$(MODULE)
    140 NUKEFILES += $(STAGING64)/$(MODULE)
    141 NUKEFILES += $(MODULE_PKGS:%=$(PKGAREA)/%)
    142 
    143 include ../Makefile.common
    144 
    145 #
    146 #       Builddate
    147 #
    148 BUILD_DATE:sh=  date +%\Y%m%d
    149 CPPFLAGS32     += -DBUILD_DATE=\"$(BUILD_DATE)\"
    150 CPPFLAGS64     += -DBUILD_DATE=\"$(BUILD_DATE)\"
    151 
    152