1!IF 0 2 3Copyright (C) 2007 The Android Open Source Project 4 5Licensed under the Apache License, Version 2.0 (the "License"); 6you may not use this file except in compliance with the License. 7You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11Unless required by applicable law or agreed to in writing, software 12distributed under the License is distributed on an "AS IS" BASIS, 13WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14See the License for the specific language governing permissions and 15limitations under the License. 16 17Module Name: 18 19 sources. 20 21Abstract: 22 23 This file specifies the target component being built and the list of 24 sources files needed to build that driver. Also specifies optional 25 compiler switches and libraries that are unique for the component being 26 built. 27 28!ENDIF 29 30TARGETNAME=androidusb 31!IF "$(DDKBUILDENV)"=="chk" 32TARGETPATH=..\build\Debug 33!ELSE 34TARGETPATH=..\build\Release 35!ENDIF 36TARGETTYPE=DRIVER 37KMDF_VERSION=1 38USECXX_FLAG=/TP 39USER_C_FLAGS=$(USER_C_FLAGS) /wd4100 /wd4002 /wd4509 /wd4390 /TP 40 41INCLUDES=$(INCLUDES); \ 42 $(IFSKIT_INC_PATH); \ 43 ..\..\api; 44 45TARGETLIBS=$(DDK_LIB_PATH)\usbd.lib 46 47MSC_WARNING_LEVEL=/W4 /WX /Wp64 48MSC_OPTIMIZATION = /Oi /Ob1 49C_DEFINES=$(C_DEFINES) -DEXPLODE_POOLTAGS -DRTL_USE_AVL_TABLES 50 51RCOPTIONS=$(RCOPTIONS) /dVER_COMPANYNAME_STR="\"Google Inc\"" 52RCOPTIONS=$(RCOPTIONS) /dVER_LEGALCOPYRIGHT_YEARS="\"2007\"" 53RCOPTIONS=$(RCOPTIONS) /dVER_LEGALCOPYRIGHT_STR="\"\251 Google Inc. All rights reserved.\"" 54RCOPTIONS=$(RCOPTIONS) /dVER_PRODUCTNAME_STR="\"Google Android USB Driver\"" 55RCOPTIONS=$(RCOPTIONS) /dVER_PRODUCTVERSION="1,00,01,001" 56RCOPTIONS=$(RCOPTIONS) /dVER_PRODUCTVERSION_STR="\"1.00\"" 57 58!IF 0 59 60By overriding .rsrc section properties (!D removes Discardable attribute) 61we make sure that all our vtables will be placed properly into non-discardable 62data segment. Because of the nature of this driver we don't need to have 63vtables in NonPaged data sections because all our objects can be paged. 64Otherwise we may want to add /SECTION:.rsrc,X option that locks section in memory 65 66!ENDIF 67 68LINKER_FLAGS=$(LINKER_FLAGS) /MAP /MAPINFO:LINES /SECTION:.rsrc,!D 69 70MOST_SOURCES= \ 71 android_usb_driver_object.cpp \ 72 android_usb_wdf_object.cpp \ 73 android_usb_device_object.cpp \ 74 android_usb_file_object.cpp \ 75 android_usb_device_file_object.cpp \ 76 android_usb_pipe_file_object.cpp \ 77 android_usb_bulk_file_object.cpp \ 78 android_usb_interrupt_file_object.cpp 79 80PRECOMPILED_INCLUDE=precomp.h 81PRECOMPILED_PCH=precomp.pch 82PRECOMPILED_OBJ=precomp.obj 83 84