1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
#
# makefile.vc - MSVC++ makefile for the PHP/MapScript extension
#
# This VC++ makefile will build the PHP module PHP_MAPSCRIPT.DLL
#
# To use the makefile:
# - Open a DOS prompt window
# - Run the VCVARS32.BAT script to initialize the VC++ environment variables
# - Start the build with: nmake /f makefile.vc
#
# $Id: Makefile.vc 11455 2011-04-04 16:42:42Z aboudreault $
#
# Flag indicating to the option files that this is the build of PHP/MapScript
PHP_BUILD_CALL=TRUE
!INCLUDE ../../nmake.opt
!INCLUDE nmake.opt
PDB_FILE=/Fdphpms.pdb
#DZEND_DEBUG=0 was added for #2717
PHP4_FLAGS=/DZEND_WIN32 /DPHP_WIN32 /DPHP4 /DZTS /PHP_COMPILER_ID=VC9 /DZEND_DEBUG=0
#OPTFLAGS = /nologo /Zi $(WARNING_LEVEL) $(DEBUG) $(PDB_FILE)
#BASE_CFLAGS = $(OPTFLAGS) -DWIN32 -D_WIN32 $(PHP4_FLAGS)
#LDFLAGS = /NODEFAULTLIB:msvcrt /dll $(LDEBUG)
#LDFLAGS = /NODEFAULTLIB:libcd /dll $(LDEBUG)
# Set flag for Visual Studio > 2003 & PHP < 5.3
# see http://bugs.php.net/bug.php?id=39130
!IF $(MSVC_VER) >= 1400
VCFLAGS = -D_USE_32BIT_TIME_T
!ENDIF
BASE_CFLAGS = $(OPTFLAGS) -DWIN32 -D_WIN32 $(PHP4_FLAGS) $(VCFLAGS)
OPTFLAGS = /nologo /Zi /MD $(WARNING_LEVEL) $(DEBUG) /EHsc
LDFLAGS = /NODEFAULTLIB:libc /dll /FORCE:MULTIPLE $(LDEBUG)
#
# Set PHP_HOME to point to the root of the PHP source tree
#
PHP_INC = -I$(PHP_HOME) -I$(PHP_HOME)/main -I$(PHP_HOME)/zend -I$(PHP_HOME)/include -I$(PHP_HOME)/tsrm
!IFDEF DLLBUILD
MS_LIBS = ../../mapserver_i.lib $(EXTERNAL_LIBS)
!ELSE
MS_LIBS = $(EXTERNAL_LIBS) ../../mapserver.lib
!ENDIF
#
# The rest of the file should not have to be edited...
#
PHPMS_CLASS_OBJS = mapscript_error.obj color.obj rect.obj hashtable.obj web.obj grid.obj error.obj referencemap.obj querymap.obj outputformat.obj scalebar.obj label.obj legend.obj symbol.obj style.obj image.obj class.obj projection.obj line.obj shape.obj shapefile.obj point.obj labelcache.obj labelcachemember.obj result.obj owsrequest.obj cluster.obj layer.obj map.obj
PHPMS_OBJS = php_mapscript_util.obj $(PHPMS_CLASS_OBJS) php_mapscript.obj mapscript_i.obj
PHPPROJ_OBJS = php_mapscript_util.obj php_proj.obj
PHPMS_DLL = php_mapscript.dll
PHPPROJ_DLL = php_proj.dll
CFLAGS = $(BASE_CFLAGS) $(MS_CFLAGS) -I../.. $(PHP_INC)
default: all
all: $(PHPMS_DLL)
mapscript: $(PHPMS_DLL)
proj: $(PHPPROJ_DLL)
install: all
copy $(PHPMS_DLL) $(PHP_INSTALL_DIR)\$(PHP_INSTALL_DLL_NAME)
$(PHPMS_DLL): $(PHPMS_OBJS)
link $(LDFLAGS) /out:$(PHPMS_DLL) $(PHPMS_OBJS) $(MS_LIBS) \
$(PHP_HOME)\lib\$(PHP_TS_LIB_NAME)
$(PHPPROJ_DLL): $(PHPPROJ_OBJS)
link $(LDFLAGS) /out:$(PHPPROJ_DLL) $(PHPPROJ_OBJS) $(MS_LIBS) \
$(PHP_HOME)\lib\$(PHP_TS_LIB_NAME)
$(PHPMS_OBJS): php_mapscript_util.h php_mapscript.h $(MS_LIBS)
.c.obj:
$(CC) $(CFLAGS) /DCOMPILE_DL=1 /c $*.c /Fo$*.obj
clean:
del *.obj
del $(PHPMS_OBJS)
del $(PHPPROJ_OBJS)
del $(PHPMS_DLL)
del $(PHPPROJ_DLL)
del *.lib
del *.pdb
del *.exp
del *.ilk
|