hookk up harfbuzz
This commit is contained in:
parent
8e8bc6c745
commit
726d27866c
2 changed files with 747 additions and 0 deletions
310
build.bat
Normal file
310
build.bat
Normal file
|
@ -0,0 +1,310 @@
|
|||
@echo off
|
||||
|
||||
::git clone https://chromium.googlesource.com/external/gyp.git
|
||||
::CALL "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86
|
||||
::SET PATH=C:\Python27;%PATH%
|
||||
|
||||
::ddt ..\mapnik-sdk
|
||||
::IF ERRORLEVEL NEQ 0 GOTO ERROR
|
||||
::ddt build\Release
|
||||
::IF ERRORLEVEL NEQ 0 GOTO ERROR
|
||||
|
||||
if NOT EXIST gyp (
|
||||
CALL git clone https://chromium.googlesource.com/external/gyp.git gyp
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
)
|
||||
|
||||
:: run find command and bail on error
|
||||
:: this ensures we have the unix find command on path
|
||||
:: before trying to run gyp
|
||||
find deps/clipper/src/ -name "*.cpp"
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
CALL gyp\gyp.bat mapnik.gyp --depth=. ^
|
||||
-Dincludes=%CD%/../mapnik-sdk/includes ^
|
||||
-Dlibs=%CD%/../mapnik-sdk/libs ^
|
||||
-f msvs -G msvs_version=2013 ^
|
||||
--generator-output=build ^
|
||||
--no-duplicate-basename-check
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
if NOT EXIST ..\mapnik-sdk (
|
||||
mkdir ..\mapnik-sdk
|
||||
mkdir ..\mapnik-sdk\bin
|
||||
mkdir ..\mapnik-sdk\includes
|
||||
mkdir ..\mapnik-sdk\share
|
||||
mkdir ..\mapnik-sdk\libs
|
||||
mkdir ..\mapnik-sdk\libs\mapnik\input
|
||||
mkdir ..\mapnik-sdk\libs\mapnik\fonts
|
||||
)
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
SET DEPSDIR=..
|
||||
|
||||
:: includes
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz-build\harfbuzz\hb-version.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
::xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-icu.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
::IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-shape-plan.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-shape.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-set.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-ft.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-buffer.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-unicode.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-common.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-blob.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-font.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-face.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz\src\hb-deprecated.h ..\mapnik-sdk\includes\harfbuzz\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\boost_1_56_0\boost ..\mapnik-sdk\includes\boost /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\include\unicode ..\mapnik-sdk\includes\unicode /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\freetype\include ..\mapnik-sdk\includes\freetype2 /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libxml2\include ..\mapnik-sdk\includes\libxml2 /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\zlib-1.2.5\zlib.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\zlib-1.2.5\zconf.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libpng\png.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libpng\pnglibconf.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libpng\pngconf.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\jpeg\jpeglib.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\jpeg\jconfig.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\jpeg\jmorecfg.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\webp\src\webp ..\mapnik-sdk\includes\webp /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\proj\src\proj_api.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\tiff.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\tiffvers.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\tiffconf.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\tiffio.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\cairo-version.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-features.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-deprecated.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-svg.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-svg-surface-private.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-pdf.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-ft.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\cairo-ps.h ..\mapnik-sdk\includes\cairo\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\protobuf\vsprojects\include ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: libs
|
||||
xcopy /i /d /s /q %DEPSDIR%\harfbuzz-build\Release\harfbuzz.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\freetype\freetype.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\lib\icuuc.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\lib\icuin.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\bin\icuuc53.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\bin\icudt53.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\icu\bin\icuin53.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libxml2\win32\bin.msvc\libxml2_a.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libxml2\win32\bin.msvc\libxml2_a_dll.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libxml2\win32\bin.msvc\libxml2.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libxml2\win32\bin.msvc\libxml2.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\libtiff.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
::xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\libtiff.lib ..\mapnik-sdk\libs\ /Y
|
||||
::IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libtiff\libtiff\libtiff_i.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\zlib-1.2.5\zlib.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\proj\src\proj.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\webp\output\release-dynamic\x86\lib\libwebp_dll.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\webp\output\release-dynamic\x86\bin\libwebp.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libpng\projects\vstudio\Release\libpng16.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\libpng\projects\vstudio\Release\libpng16.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\jpeg\libjpeg.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\release\cairo-static.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\release\cairo.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\cairo\src\release\cairo.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\boost_1_56_0\stage\lib\* ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\protobuf\vsprojects\Release\libprotobuf-lite.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: data
|
||||
xcopy /i /d /s /q %DEPSDIR%\proj\nad ..\mapnik-sdk\share\proj /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\data ..\mapnik-sdk\share\gdal
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: bin
|
||||
xcopy /i /d /s /q %DEPSDIR%\protobuf\vsprojects\Release\protoc.exe ..\mapnik-sdk\bin /Y
|
||||
xcopy /i /d /s /q mapnik-config.bat ..\mapnik-sdk\bin /Y
|
||||
|
||||
:: headers for plugins
|
||||
xcopy /i /d /s /q %DEPSDIR%\postgresql\src\interfaces\libpq\libpq-fe.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\postgresql\src\include\postgres_ext.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\postgresql\src\include\pg_config_ext.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\sqlite\sqlite3.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
::xcopy /i /d /s /q %DEPSDIR%\gdal\gcore\*h ..\mapnik-sdk\includes\gdal\ /Y
|
||||
::IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_feature.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_spatialref.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_geometry.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_core.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_featurestyle.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogrsf_frmts\ogrsf_frmts.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\ogr\ogr_srs_api.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gcore\gdal_priv.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gcore\gdal_frmts.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gcore\gdal.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gcore\gdal_version.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_minixml.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_atomic_ops.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_string.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_conv.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_vsi.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_virtualmem.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_error.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_progress.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_port.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\port\cpl_config.h ..\mapnik-sdk\includes\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: libs for plugins
|
||||
xcopy /i /d /s /q %DEPSDIR%\postgresql\src\interfaces\libpq\Release\libpq.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\postgresql\src\interfaces\libpq\Release\libpq.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\sqlite\sqlite3.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gdal_i.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
:: NOTE: impossible to statically link gdal due to:
|
||||
:: http://stackoverflow.com/questions/4596212/c-odbc-refuses-to-statically-link-to-libcmt-lib-under-vs2010
|
||||
::xcopy /i /d /s /q %DEPSDIR%\gdal\gdal.lib ..\mapnik-sdk\libs\ /Y
|
||||
::IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\gdal\gdal111.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\expat\win32\bin\Release\libexpat.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q %DEPSDIR%\expat\win32\bin\Release\libexpat.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: detect trouble with mimatched linking
|
||||
dumpbin /directives ..\mapnik-sdk\libs\*lib | grep LIBCMT
|
||||
|
||||
::msbuild /m:2 /t:mapnik /p:BuildInParellel=true .\build\mapnik.sln /p:Configuration=Release
|
||||
|
||||
msbuild /m:2 /p:BuildInParellel=true .\build\mapnik.sln /p:Configuration=Release
|
||||
:: /t:rebuild
|
||||
:: /v:diag > build.log
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: run tests
|
||||
SET PATH=%CD%\..\mapnik-sdk\libs;%PATH%
|
||||
for %%t in (build\Release\*test.exe) do ( %%t -d %CD% )
|
||||
|
||||
:: install mapnik libs
|
||||
xcopy /i /d /s /q .\build\Release\mapnik.lib ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q .\build\Release\mapnik.dll ..\mapnik-sdk\libs\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: plugins
|
||||
xcopy /i /d /s /q .\build\Release\*input ..\mapnik-sdk\libs\mapnik\input\ /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
|
||||
:: install mapnik headers
|
||||
xcopy /i /d /s /q .\deps\mapnik\sparsehash ..\mapnik-sdk\includes\mapnik\sparsehash /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q .\deps\agg\include ..\mapnik-sdk\includes\mapnik\agg /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q .\deps\clipper\include ..\mapnik-sdk\includes\mapnik\agg /Y
|
||||
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
|
||||
xcopy /i /d /s /q .\include\mapnik ..\mapnik-sdk\includes\mapnik /Y
|
||||
|
||||
|
||||
GOTO DONE
|
||||
|
||||
:ERROR
|
||||
echo ----------ERROR MAPNIK --------------
|
||||
echo ERRORLEVEL %ERRORLEVEL%
|
||||
|
||||
:DONE
|
||||
|
||||
EXIT /b %ERRORLEVEL%
|
437
mapnik.gyp
Normal file
437
mapnik.gyp
Normal file
|
@ -0,0 +1,437 @@
|
|||
{
|
||||
'includes': [
|
||||
'./common.gypi'
|
||||
],
|
||||
'variables': {
|
||||
'includes%':'',
|
||||
'libs%':'',
|
||||
'common_defines': [
|
||||
'BIGINT',
|
||||
'BOOST_REGEX_HAS_ICU',
|
||||
'HAVE_JPEG',
|
||||
'MAPNIK_USE_PROJ4',
|
||||
'HAVE_PNG',
|
||||
'HAVE_TIFF',
|
||||
'HAVE_WEBP',
|
||||
'MAPNIK_THREADSAFE',
|
||||
'HAVE_CAIRO',
|
||||
'GRID_RENDERER',
|
||||
'SVG_RENDERER'
|
||||
],
|
||||
'common_includes': [
|
||||
'./include', # mapnik
|
||||
'./deps/', # mapnik/sparsehash
|
||||
'./deps/agg/include/', # agg
|
||||
'./deps/clipper/include/', # clipper
|
||||
'./', # boost shim
|
||||
'<@(includes)/',
|
||||
'<@(includes)/freetype2',
|
||||
'<@(includes)/libxml2',
|
||||
'<@(includes)/cairo'
|
||||
],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'common_defines': ['LIBXML_STATIC'], # static libxml: libxml2_a.lib
|
||||
'common_libraries': []
|
||||
}, {
|
||||
'common_defines': ['SHAPE_MEMORY_MAPPED_FILE','U_CHARSET_IS_UTF8=1'],
|
||||
'common_libraries': [
|
||||
'-Wl,-search_paths_first',
|
||||
'-stdlib=libstdc++',
|
||||
'-L<@(libs)'
|
||||
]
|
||||
}]
|
||||
]
|
||||
},
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'mapnik',
|
||||
'product_name': 'mapnik',
|
||||
'type': 'shared_library',
|
||||
'sources': [
|
||||
'<!@(find deps/agg/src/ -name "*.cpp")',
|
||||
'<!@(find deps/clipper/src/ -name "*.cpp")',
|
||||
'<!@(find src -name "*.cpp")'
|
||||
],
|
||||
'xcode_settings': {
|
||||
'SDKROOT': 'macosx',
|
||||
'SUPPORTED_PLATFORMS':['macosx'],
|
||||
'PUBLIC_HEADERS_FOLDER_PATH': 'include',
|
||||
'OTHER_CPLUSPLUSFLAGS':[
|
||||
'-ftemplate-depth-300'
|
||||
]
|
||||
},
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'AdditionalLibraryDirectories': [
|
||||
'<@(libs)/'
|
||||
]
|
||||
}
|
||||
},
|
||||
'defines': [
|
||||
'<@(common_defines)'
|
||||
],
|
||||
'libraries': [
|
||||
'<@(common_libraries)'
|
||||
],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'defines': ['MAPNIK_EXPORTS'],
|
||||
'libraries':[
|
||||
'libboost_filesystem-vc120-mt-1_56.lib',
|
||||
'libboost_regex-vc120-mt-1_56.lib',
|
||||
'libboost_thread-vc120-mt-1_56.lib',
|
||||
'libboost_system-vc120-mt-1_56.lib',
|
||||
'libpng16.lib',
|
||||
'proj.lib',
|
||||
'libtiff_i.lib',
|
||||
'libwebp_dll.lib',
|
||||
#'libxml2.lib', #dynamic
|
||||
'libxml2_a.lib', #static
|
||||
# needed if libxml2 is static
|
||||
'ws2_32.lib',
|
||||
'libjpeg.lib',
|
||||
'icuuc.lib',
|
||||
'icuin.lib',
|
||||
'freetype.lib',
|
||||
'zlib.lib',
|
||||
'cairo.lib',
|
||||
'harfbuzz.lib'
|
||||
]
|
||||
},{
|
||||
'libraries':[
|
||||
'-lboost_filesystem',
|
||||
'-lboost_regex',
|
||||
'-lboost_thread',
|
||||
'-lboost_system',
|
||||
'-lcairo',
|
||||
'-lpixman-1',
|
||||
'-lexpat',
|
||||
'-lpng',
|
||||
'-lproj',
|
||||
'-ltiff',
|
||||
'-lwebp',
|
||||
'-lxml2',
|
||||
'-licui18n',
|
||||
'-ljpeg',
|
||||
'-licuuc',
|
||||
'-lfreetype',
|
||||
'-licudata',
|
||||
'-lz'
|
||||
]
|
||||
}
|
||||
]
|
||||
],
|
||||
'include_dirs':[
|
||||
'<@(common_includes)'
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
'<@(common_includes)'
|
||||
],
|
||||
'defines': [
|
||||
'<@(common_defines)'
|
||||
],
|
||||
'libraries':[
|
||||
'<@(common_libraries)'
|
||||
],
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'AdditionalLibraryDirectories': [
|
||||
'<@(libs)/'
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"target_name": "shape",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/shape/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'libraries':[
|
||||
'libboost_thread-vc120-mt-1_56.lib',
|
||||
'libboost_system-vc120-mt-1_56.lib',
|
||||
'icuuc.lib'
|
||||
],
|
||||
},{
|
||||
'libraries':[
|
||||
'-lboost_thread'
|
||||
]
|
||||
}
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "csv",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/csv/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'libraries':[
|
||||
'libboost_thread-vc120-mt-1_56.lib',
|
||||
'libboost_system-vc120-mt-1_56.lib',
|
||||
'icuuc.lib'
|
||||
],
|
||||
},{
|
||||
'libraries':[
|
||||
'-lboost_thread'
|
||||
]
|
||||
}
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "raster",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/raster/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "gdal",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/gdal/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'gdal_i.lib',
|
||||
'libexpat.lib',
|
||||
'libboost_thread-vc120-mt-1_56.lib',
|
||||
'libboost_system-vc120-mt-1_56.lib',
|
||||
'icuuc.lib',
|
||||
'odbccp32.lib'
|
||||
]
|
||||
} , {
|
||||
'libraries': [ '<!@(gdal-config --libs)', '<!@(gdal-config --dep-libs)']
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "ogr",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/ogr/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'gdal_i.lib',
|
||||
'libexpat.lib',
|
||||
'libboost_thread-vc120-mt-1_56.lib',
|
||||
'libboost_system-vc120-mt-1_56.lib',
|
||||
'icuuc.lib',
|
||||
'odbccp32.lib'
|
||||
]
|
||||
} , {
|
||||
'libraries': [ '<!@(gdal-config --libs)', '<!@(gdal-config --dep-libs)']
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "postgis",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/postgis/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'libpq.lib',
|
||||
'wsock32.lib',
|
||||
'advapi32.lib',
|
||||
'shfolder.lib',
|
||||
'secur32.lib',
|
||||
'icuuc.lib',
|
||||
'ws2_32.lib',
|
||||
],
|
||||
# TODO - ideally we find a way to avoid this
|
||||
# currently needed to dodge double-linking
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'AdditionalOptions': [
|
||||
'/NODEFAULTLIB:libcmt.lib'
|
||||
],
|
||||
}
|
||||
}
|
||||
} , {
|
||||
'libraries': [ '<!@(pkg-config libpq --libs --static)']
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "pgraster",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/pgraster/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'libpq.lib',
|
||||
'wsock32.lib',
|
||||
'advapi32.lib',
|
||||
'shfolder.lib',
|
||||
'secur32.lib',
|
||||
'icuuc.lib',
|
||||
'ws2_32.lib',
|
||||
],
|
||||
# TODO - ideally we find a way to avoid this
|
||||
# currently needed to dodge double-linking
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'AdditionalOptions': [
|
||||
'/NODEFAULTLIB:libcmt.lib'
|
||||
],
|
||||
}
|
||||
}
|
||||
} , {
|
||||
'libraries': [ '<!@(pkg-config libpq --libs --static)']
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "sqlite",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/sqlite/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'sqlite3.lib',
|
||||
'icuuc.lib',
|
||||
]
|
||||
} , {
|
||||
'libraries': [ '<!@(pkg-config sqlite3 --libs)']
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "geojson",
|
||||
"type": "loadable_module",
|
||||
"product_extension": "input",
|
||||
"sources": [ '<!@(find plugins/input/geojson/ -name "*.cpp")' ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'libraries': [
|
||||
'icuuc.lib',
|
||||
]
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "agg_blend_src_over_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/agg_blend_src_over_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "clipping_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/clipping_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "conversions_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/conversions_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "exceptions_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/exceptions_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "font_registration_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/font_registration_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "fontset_runtime_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/fontset_runtime_test.cpp"],
|
||||
"dependencies": [ "mapnik" ],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'libraries':[
|
||||
'icuuc.lib'
|
||||
],
|
||||
}]
|
||||
]
|
||||
},
|
||||
{
|
||||
"target_name": "geometry_converters_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/geometry_converters_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "image_io_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/image_io_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "label_algo_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/label_algo_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "map_request_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/map_request_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "params_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/params_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
{
|
||||
"target_name": "wkb_formats_test",
|
||||
"type": "executable",
|
||||
"sources": [ "./tests/cpp_tests/wkb_formats_test.cpp"],
|
||||
"dependencies": [ "mapnik" ]
|
||||
},
|
||||
],
|
||||
'conditions': [
|
||||
# won't link yet on windows
|
||||
["OS!='win'", {
|
||||
'targets': [
|
||||
{
|
||||
"target_name": "test_rendering",
|
||||
"type": "executable",
|
||||
"sources": [ "./benchmark/test_rendering.cpp" ],
|
||||
"dependencies": [ "mapnik" ],
|
||||
"conditions": [
|
||||
["OS=='win'", {
|
||||
'libraries':[
|
||||
'libboost_thread-vc120-mt-1_56.lib'
|
||||
],
|
||||
'defines': ['MAPNIK_EXPORTS']
|
||||
},{
|
||||
'libraries':[
|
||||
'-lboost_thread'
|
||||
]
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
]}
|
||||
]
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue