You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
435 lines
10 KiB
435 lines
10 KiB
##########################################################################
|
|
#
|
|
# Microsoft Confidential
|
|
# Copyright (C) Microsoft Corporation 1997-1999
|
|
# All Rights Reserved.
|
|
#
|
|
##########################################################################
|
|
|
|
#
|
|
# Common include file 'sources' files in the imagein project.
|
|
#
|
|
#
|
|
# These definitions are required in your sources file:
|
|
#
|
|
# FREEBUILD
|
|
# Set by makefile.def file for you. One of the following:
|
|
# 0 - build debug
|
|
# 1 - build retail
|
|
#
|
|
# Definitions used if defined:
|
|
#
|
|
# CHICAGO_PRODUCT
|
|
# Build component explicitly for the Win95 platform. If this is
|
|
# not defined, default is NT or both.
|
|
#
|
|
# TARGET_BOTH
|
|
# Build component to run on both platforms.
|
|
#
|
|
# NO_PRIVATE_HEADERS
|
|
# If set to 1, this is defined as a manifest constant, so the
|
|
# stub headers in shell\inc\stubs do not include the private
|
|
# companion headers.
|
|
#
|
|
# Environment Variables and their meanings
|
|
#
|
|
# ATL_DEBUG_QI
|
|
# When set to 1, debug builds will also have _ATL_DEBUG_QI
|
|
# defined. ATL code spews a bunch of debug stuff during QueryInterface.
|
|
#
|
|
# ATL_DEBUG_REFCOUNT
|
|
# When set to 1, debug builds will also have _ATL_DEBUG_REFCOUNT
|
|
# defined. ATL code spews a bunch of debug stuff during AddRef
|
|
# and Release.
|
|
#
|
|
# MAXDEBUG
|
|
# If set to 1, then debug builds will also have MAXDEBUG defined.
|
|
# Retail builds unaffected. This is highly encouraged for regular
|
|
# development purposes. Not to be set or used by the build labs.
|
|
#
|
|
# MEASURE_PERF
|
|
# If set to 1, enables performance timing code for both debug and
|
|
# retail builds. This code squirts the timings for interesting
|
|
# events to the debug terminal.
|
|
#
|
|
|
|
#
|
|
# As this include file is used only for user mode windows components - set
|
|
# components IDs appropriately
|
|
#
|
|
MAJORCOMP=windows
|
|
MINORCOMP=imagein
|
|
|
|
WIN32_IE_VERSION=0x0500
|
|
|
|
#
|
|
# Set up related directories
|
|
#
|
|
!IFNDEF WDMROOT
|
|
#remove WDMROOT=$(BASEDIR)\private\ntos\dd\wdm
|
|
!ENDIF
|
|
|
|
!IFNDEF SCANCAMDIR
|
|
#remove SCANCAMDIR=$(WDMROOT)\scancam
|
|
!ENDIF
|
|
|
|
!IF "$(BUILD_PRODUCT)"=="millen"
|
|
CHICAGO_PRODUCT=1
|
|
!ENDIF
|
|
|
|
#
|
|
# Set private paths
|
|
#
|
|
|
|
WIA_INC_PATH=$(PROJECT_ROOT)\wia\inc
|
|
WIA_LIB_DEST=$(PROJECT_ROOT)\wia\lib\$(PLATFORM_SUFFIX)\$(_OBJ_DIR)
|
|
WIA_LIB_PATH=$(PROJECT_ROOT)\wia\lib\$(PLATFORM_SUFFIX)\$(_OBJ_DIR)\*
|
|
|
|
INCLUDES = .;..;\
|
|
$(WIA_INC_PATH);\
|
|
$(WIA_INC_PATH)\$(O);\
|
|
$(PRV_INC_PATH);\
|
|
$(SDK_INC_PATH)\gdiplus;\
|
|
$(PROJECT_ROOT)\inc\psutil;\
|
|
$(INCLUDES)
|
|
|
|
#
|
|
# We always want to sign our binaries , but need to set in environment
|
|
#
|
|
#NT_SIGNCODE=1
|
|
|
|
#
|
|
# Necessary for gdiplus
|
|
#
|
|
C_DEFINES=$(C_DEFINES) \
|
|
-DDCR_USE_NEW_105760 \
|
|
-DDCR_USE_NEW_125467 \
|
|
-DDCR_USE_NEW_127084 \
|
|
-DDCR_USE_NEW_135429 \
|
|
-DDCR_USE_NEW_137252 \
|
|
-DDCR_USE_NEW_140782 \
|
|
-DDCR_USE_NEW_140855 \
|
|
-DDCR_USE_NEW_140857 \
|
|
-DDCR_USE_NEW_140861 \
|
|
-DDCR_USE_NEW_145135 \
|
|
-DDCR_USE_NEW_145138 \
|
|
-DDCR_USE_NEW_145139 \
|
|
-DDCR_USE_NEW_145804 \
|
|
-DDCR_USE_NEW_146933 \
|
|
-DDCR_USE_NEW_152154 \
|
|
-DDCR_USE_NEW_168772 \
|
|
-DDCR_USE_NEW_174340 \
|
|
-DDCR_USE_NEW_175866 \
|
|
-DDCR_USE_NEW_186091 \
|
|
-DDCR_USE_NEW_186151 \
|
|
-DDCR_USE_NEW_186764 \
|
|
-DDCR_USE_NEW_188922 \
|
|
-DDCR_USE_NEW_197819 \
|
|
-DDCR_USE_NEW_202903 \
|
|
-DDCR_USE_NEW_235072 \
|
|
-DDCR_USE_NEW_250932 \
|
|
-DDCR_USE_NEW_284635 \
|
|
-DDCR_USE_NEW_284841 \
|
|
-DDCR_USE_NEW_293849 \
|
|
-DDCR_USE_NEW_299162
|
|
|
|
#
|
|
# For Server SKUs we do not support WIA Video.
|
|
#
|
|
C_DEFINES=$(C_DEFINES) \
|
|
-DWIA_DISABLE_VIDEO_SUPPORT
|
|
|
|
|
|
#
|
|
# Set platform dependent settings
|
|
#
|
|
# PLATFORM_SUFFIX is used for generating platform specific static libs path , a la public\sdk\lib\win98
|
|
#
|
|
!if !defined(CHICAGO_PRODUCT)
|
|
|
|
#
|
|
# Require v500 to use NT5 specific APIs
|
|
#
|
|
|
|
WIN32_WINNT_VERSION=0x0500
|
|
|
|
|
|
LIBRARY_PLATFORM_PATH = $(SDK_LIB_PATH); $(DDK_LIB_PATH)
|
|
|
|
PLATFORM_SUFFIX=.
|
|
|
|
USE_MSVCRT=1
|
|
|
|
!else
|
|
|
|
NOT_UNICODE =1
|
|
|
|
# (use 'chicago' since that is already used in the NT tree)
|
|
|
|
LIBRARY_PLATFORM_PATH = $(SDK_LIB_PATH); $(DDK_LIB_PATH)
|
|
ALT_PROJECT_TARGET = chicago
|
|
USE_MAPSYM = 1
|
|
|
|
# Where to put static libraries
|
|
PLATFORM_SUFFIX=chicago
|
|
|
|
#
|
|
# Cheat on version for Millenium
|
|
#
|
|
WIN32_WIN95_VERSION=0x500
|
|
|
|
|
|
#
|
|
# VC5 libs not shipped yet
|
|
#
|
|
USE_MSVCRT=1
|
|
#USE_MSVCRT40=1
|
|
#USE_LIBCMT=1
|
|
|
|
#
|
|
# Indicate target is not supporting robust RPC validation.
|
|
# Have to do if we run on Win9x or NT4
|
|
#
|
|
#MIDL_NO_ROBUST=1
|
|
|
|
#
|
|
# Indicate we fully support DCOM
|
|
#
|
|
C_DEFINES = $(C_DEFINES) -D_WIN32_DCOM
|
|
##-D_WIN32_WINDOWS
|
|
|
|
#
|
|
!endif
|
|
|
|
#
|
|
# Include and lib directories private to the PrintScan project
|
|
#
|
|
|
|
PRV_INC_PATH=$(PROJECT_ROOT)\inc
|
|
!if $(386)
|
|
PRV_LIB_PATH=$(PROJECT_ROOT)\lib\$(PLATFORM_SUFFIX)\i386
|
|
!elseif $(IA64)
|
|
PRV_LIB_PATH=$(PROJECT_ROOT)\lib\ia64
|
|
!elseif $(AXP64)
|
|
PRV_LIB_PATH=$(PROJECT_ROOT)\lib\axp64
|
|
!elseif $(ALPHA)
|
|
PRV_LIB_PATH=$(PROJECT_ROOT)\lib\alpha
|
|
!endif
|
|
|
|
|
|
#
|
|
# Set common options
|
|
#
|
|
|
|
# Defining this allows windows.h to include other headers
|
|
NOT_LEAN_AND_MEAN=1
|
|
|
|
# user mode executable type
|
|
UMTYPE = windows
|
|
|
|
# By default use CRT DLL, possibly we need to use IERT , it is smaller
|
|
#USE_CRTDLL=1
|
|
|
|
|
|
# Don't link to NTDLL if this runs on both platforms
|
|
!ifdef TARGET_BOTH
|
|
NO_NTDLL=1
|
|
!endif
|
|
|
|
#
|
|
# Additional compiler flags
|
|
#
|
|
|
|
C_DEFINES = $(C_DEFINES) -DWIN32 -D_WIN32 -D_NTSDK
|
|
|
|
!ifdef USE_ICECAP
|
|
C_DEFINES = $(C_DEFINES) -DPRODUCT_PROF
|
|
!endif
|
|
|
|
!if !defined(CHICAGO_PRODUCT )
|
|
|
|
C_DEFINES = $(C_DEFINES) -DNT -DWINNT
|
|
|
|
! if !defined(NOT_UNICODE)
|
|
UNICODE=1
|
|
C_DEFINES = $(C_DEFINES) -DUNICODE -D_UNICODE
|
|
! endif
|
|
|
|
!else
|
|
|
|
UNICODE=0
|
|
|
|
C_DEFINES = $(C_DEFINES) -DWIN9X
|
|
|
|
!endif
|
|
|
|
!ifdef BROWSERDB
|
|
#
|
|
# Generating browser databases if needed
|
|
#
|
|
BROWSER_INFO=1
|
|
BROWSERFILE=$(IMAGE_DIR)\imagein.bsc
|
|
!endif
|
|
|
|
|
|
|
|
# ------ Debug Only Defines --------
|
|
|
|
#
|
|
# For source level debugging
|
|
#
|
|
!ifndef NTBBT
|
|
#NTDBGFILES=1
|
|
!endif
|
|
|
|
!IFDEF MAXDEBUG
|
|
|
|
MAXDEBUG=1
|
|
|
|
#DEBUG_CRTS=1
|
|
|
|
NTDEBUG=ntsd
|
|
NTDEBUGTYPE=windbg
|
|
MSC_OPTIMIZATION=/Od
|
|
|
|
C_DEFINES = $(C_DEFINES) /DMAXDEBUG /DDEBUG /DDBG=1
|
|
|
|
!ENDIF
|
|
|
|
#
|
|
# Set obj directory correctly
|
|
#
|
|
|
|
OBJ_DIR=$(_OBJ_DIR)
|
|
|
|
#!IF "$(FREEBUILD)" == "1"
|
|
#BUILD_ALT_DIR=
|
|
#OBJ_DIR=obj
|
|
#!ELSE
|
|
#BUILD_ALT_DIR=
|
|
#OBJ_DIR=obj
|
|
#!ENDIF
|
|
|
|
!if "$(FREEBUILD)" == "0"
|
|
C_DEFINES = $(C_DEFINES) -DDEBUG
|
|
LINKER_NOICF = 1 # ICF is s-l-o-w
|
|
|
|
# Check for missing PURE directives in interface decls (debug only)
|
|
C_DEFINES = $(C_DEFINES) -DNO_NOVTABLE
|
|
|
|
# Define MAXDEBUG for asserts to break by default
|
|
! if "$(MAXDEBUG)" == "1"
|
|
C_DEFINES = $(C_DEFINES) -DMAXDEBUG
|
|
! endif
|
|
|
|
# Allow someone to have ATL_DEBUG_REFCOUNT and ATL_DEBUG_QI set
|
|
# in their environment to turn this on
|
|
! if "$(ATL_DEBUG_REFCOUNT)" == "1"
|
|
C_DEFINES = $(C_DEFINES) -D_ATL_DEBUG_REFCOUNT
|
|
! endif
|
|
|
|
! if "$(ATL_DEBUG_QI)" == "1"
|
|
C_DEFINES = $(C_DEFINES) -D_ATL_DEBUG_QI
|
|
! endif
|
|
|
|
!endif
|
|
# ------ End Debug Only Defines --------
|
|
|
|
|
|
!if "$(MEASURE_PERF)" == "1"
|
|
C_DEFINES = $(C_DEFINES) -DMEASURE_PERF
|
|
!endif
|
|
|
|
!if "$(NO_PRIVATE_HEADERS)" == "1"
|
|
C_DEFINES = $(C_DEFINES) -DNO_PRIVATE_HEADERS
|
|
!endif
|
|
|
|
#
|
|
# Make warnings equivalent to errors
|
|
#
|
|
!if !defined(MSC_WARNING_LEVEL)
|
|
MSC_WARNING_LEVEL= /W3
|
|
!endif
|
|
MSC_WARNING_LEVEL= $(MSC_WARNING_LEVEL) /WX
|
|
|
|
!if defined(CHICAGO_PRODUCT ) || defined(TARGET_BOTH)
|
|
USE_MAPSYM = 1
|
|
!endif
|
|
|
|
#
|
|
# make us completely self contained
|
|
#
|
|
COFFBASE_TXT_FILE=$(PROJECT_ROOT)\wia\coffbase.txt
|
|
BINPLACE_PLACEFILE=$(PROJECT_ROOT)\wia\placefil.txt
|
|
|
|
#
|
|
# Commonly used libraries
|
|
#
|
|
!if !defined(DONT_DO_COMMON_LIBS)
|
|
!if !defined(CHICAGO_PRODUCT)
|
|
TARGETLIBS= \
|
|
$(SDK_LIB_PATH)\ADVAPI32.lib \
|
|
$(SDK_LIB_PATH)\GDI32.lib \
|
|
$(SDK_LIB_PATH)\KERNEL32.lib \
|
|
$(SDK_LIB_PATH)\user32.lib \
|
|
$(SDK_LIB_PATH)\comdlg32.lib \
|
|
$(SDK_LIB_PATH)\oleaut32.lib \
|
|
$(SDK_LIB_PATH)\shlwapi.lib \
|
|
$(SDK_LIB_PATH)\ole32.lib \
|
|
$(SDK_LIB_PATH)\rpcns4.lib \
|
|
$(SDK_LIB_PATH)\rpcrt4.lib \
|
|
$(SDK_LIB_PATH)\uuid.lib \
|
|
$(SDK_LIB_PATH)\cfgmgr32.lib \
|
|
$(SDK_LIB_PATH)\setupapi.lib
|
|
!else
|
|
TARGETLIBS= \
|
|
$(SDK_LIB_PATH)\cfgmgr32.lib \
|
|
$(SDK_LIB_PATH)\setupapi.lib \
|
|
$(SDK_LIB_PATH)\iprop.lib \
|
|
$(SDK_LIB_PATH)\ADVAPI32.lib \
|
|
$(SDK_LIB_PATH)\GDI32.lib \
|
|
$(SDK_LIB_PATH)\KERNEL32.lib \
|
|
$(SDK_LIB_PATH)\user32.lib \
|
|
$(SDK_LIB_PATH)\comdlg32.lib \
|
|
$(SDK_LIB_PATH)\oleaut32.lib \
|
|
$(SDK_LIB_PATH)\shlwapi.lib \
|
|
$(SDK_LIB_PATH)\ole32.lib \
|
|
$(SDK_LIB_PATH)\rpcns4.lib \
|
|
$(SDK_LIB_PATH)\rpcrt4.lib \
|
|
$(SDK_LIB_PATH)\uuid.lib
|
|
!endif
|
|
!endif
|
|
|
|
#
|
|
# Skip these files when determining dependencies
|
|
#
|
|
CONDITIONAL_INCLUDES = $(CONDITIONAL_INCLUDES) \
|
|
atlbase.h \
|
|
atlcom.h \
|
|
atlconv.h \
|
|
atlctl.h \
|
|
atlctl.cpp \
|
|
atliface.h \
|
|
atlimpl.cpp \
|
|
atlwin.h \
|
|
atlwin.cpp \
|
|
ia64inst.h \
|
|
macapi.h \
|
|
macname1.h \
|
|
macname2.h \
|
|
macocidl.h \
|
|
macpub.h \
|
|
macwin32.h \
|
|
mainwin.h \
|
|
mwversion.h \
|
|
penwin.h \
|
|
pshpck16.h \
|
|
rpcerr.h \
|
|
rpcmac.h \
|
|
setupx.h \
|
|
skbapi.h \
|
|
statreg.h \
|
|
statreg.cpp \
|
|
unixstuff.h \
|
|
version.h \
|
|
winwlm.h \
|