# # 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$ # # 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 PHP4_FLAGS=/DZEND_WIN32 /DPHP_WIN32 /DPHP4 /DZTS /PHP_COMPILER_ID=VC9 #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_OBJS = php_mapscript_util.obj 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