92 lines
2.6 KiB
PHP
92 lines
2.6 KiB
PHP
# Common 'sources' file for gdiplus
|
|
|
|
# [agodfrey] Guard against multiple inclusion. When I fixed this file to
|
|
# add to C_DEFINES instead of stomping on it, I found that multiple inclusion
|
|
# caused C_DEFINES to be duplicated.
|
|
|
|
# For release build, turn this on. It disables things like Monitor tracking.
|
|
GP_RELEASE_BUILD=1
|
|
|
|
!ifndef GDIPROOT_SOURCES
|
|
GDIPROOT_SOURCES=moo
|
|
|
|
!ifndef GDIPROOT
|
|
GDIPROOT=$(ADVCORE_PATH)\gdiplus
|
|
!endif
|
|
|
|
GDIPIMG=$(GDIPROOT)\engine\imaging
|
|
|
|
C_DEFINES=$(C_DEFINES) -DUNICODE -D_UNICODE
|
|
MSC_WARNING_LEVEL=/W3
|
|
|
|
# GP_ICECAP:
|
|
# 0: Normal GDI+ build
|
|
# 1: IceCAP-enabled build. This means you can run gppick.bat on our binary.
|
|
# You should be able to keep this set permanently.
|
|
# 2: IceCAP-enabled build, plus we link to ICECAP.DLL. Use this during
|
|
# profiling work if you want to call the IceCAP API's.
|
|
|
|
!ifndef GP_ICECAP
|
|
GP_ICECAP=0
|
|
!endif
|
|
|
|
!if $(GP_ICECAP) > 0
|
|
NTBBT=1
|
|
|
|
!if $(GP_ICECAP) > 1
|
|
INCLUDES=$(INCLUDES);$(ICECAP)\Include
|
|
!endif
|
|
|
|
!endif
|
|
|
|
# PROFILE_MEMORY_USAGE
|
|
# Enables logging of memory usage for our IceCAP user counter
|
|
# See gdiplus\tools\memcounter\memcounter.cpp
|
|
|
|
!ifndef PROFILE_MEMORY_USAGE
|
|
PROFILE_MEMORY_USAGE=0
|
|
!endif
|
|
|
|
# The "monitors" are a performance measurement tool, designed to be
|
|
# lightweight enough to leave enabled all the time during development.
|
|
# They're currently disabled in preparation for shipping V1.
|
|
|
|
# GP_ENABLE_MONITORS=1
|
|
|
|
!ifdef GP_ENABLE_MONITORS
|
|
C_DEFINES=$(C_DEFINES) -DGP_ENABLE_MONITORS
|
|
!endif
|
|
|
|
!if $(PROFILE_MEMORY_USAGE)
|
|
# There's trouble with "cross-jumping" (a compiler optimization which replaces
|
|
# "call foo; ret" with "jmp foo" if possible.)
|
|
# First, if a non-instrumented app calls GdipFree, which cross-jumps to
|
|
# GpFree, which cross-jumps to LocalFree, IceCAP screws up and thinks that
|
|
# LocalFree calls loads of other GDI+ exports.
|
|
#
|
|
# Second, my -EXCLUDE:GpMalloc trick (which folds allocation information
|
|
# into the caller's exclusive count) doesn't work when GdipAlloc cross-jumps
|
|
# to GpMalloc.
|
|
#
|
|
# So, we want to disable cross-jumping. The only way I know is to disable
|
|
# most optimizations. So, don't do performance testing on this build! Ignore
|
|
# IceCAP's performance data if you use this switch!
|
|
|
|
MSC_OPTIMIZATION=/Odib1
|
|
|
|
!endif
|
|
|
|
!ifndef HW_ACCELERATION_SUPPORT
|
|
HW_ACCELERATION_SUPPORT=0
|
|
!endif
|
|
|
|
C_DEFINES=$(C_DEFINES) -DHW_ACCELERATION_SUPPORT=$(HW_ACCELERATION_SUPPORT) -DGP_ICECAP=$(GP_ICECAP) -DPROFILE_MEMORY_USAGE=$(PROFILE_MEMORY_USAGE)
|
|
|
|
!ifndef GDIPPRIVATEBUILD
|
|
GDIPPRIVATEBUILD=0
|
|
!endif
|
|
|
|
C_DEFINES=$(C_DEFINES) -DGDIPPRIVATEBUILD=$(GDIPPRIVATEBUILD) -DUSERNAME=\"$(USERNAME)\"
|
|
|
|
!endif
|