diff options
author | Berke Viktor <bviktor@hexchat.org> | 2012-10-02 10:26:01 +0200 |
---|---|---|
committer | Berke Viktor <bviktor@hexchat.org> | 2012-10-02 10:26:01 +0200 |
commit | 94ad6dc01283cf61fee2bc884b9f1856433af579 (patch) | |
tree | 6cb7f8fa392b971021d0ead14507597fde076463 /win32 | |
parent | 2d2afd9a59f82f9dbb7dde756d7fd5fa8f7b6203 (diff) |
Add cairo solution, release scripts and patches
Diffstat (limited to 'win32')
-rw-r--r-- | win32/deps/cairo/cairo-gobject.vcxproj | 263 | ||||
-rw-r--r-- | win32/deps/cairo/cairo-gobject.vcxproj.filters | 17 | ||||
-rw-r--r-- | win32/deps/cairo/cairo.patch | 139 | ||||
-rw-r--r-- | win32/deps/cairo/cairo.props | 26 | ||||
-rw-r--r-- | win32/deps/cairo/cairo.sln | 36 | ||||
-rw-r--r-- | win32/deps/cairo/cairo.vcxproj | 524 | ||||
-rw-r--r-- | win32/deps/cairo/cairo.vcxproj.filters | 284 | ||||
-rw-r--r-- | win32/deps/cairo/release-x64.bat | 21 | ||||
-rw-r--r-- | win32/deps/cairo/release-x86.bat | 21 |
9 files changed, 1331 insertions, 0 deletions
diff --git a/win32/deps/cairo/cairo-gobject.vcxproj b/win32/deps/cairo/cairo-gobject.vcxproj new file mode 100644 index 00000000..4e13f8d5 --- /dev/null +++ b/win32/deps/cairo/cairo-gobject.vcxproj @@ -0,0 +1,263 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|x64"> + <Configuration>Debug</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|x64"> + <Configuration>Release</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectName>cairo-gobject</ProjectName> + <ProjectGuid>{C8D08F82-700E-4ACE-A766-A52C4048B5F7}</ProjectGuid> + <RootNamespace>cairogobject</RootNamespace> + <Keyword>Win32Proj</Keyword> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>Unicode</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>Unicode</CharacterSet> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CAIROGOBJECT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>EditAndContinue</DebugInformationFormat> + </ClCompile> + <Link> + <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX86</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\util\cairo-gobject\cairo-gobject.h $(CopyDir)\include +</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <PreBuildEvent> + <Command> + </Command> + </PreBuildEvent> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CAIROGOBJECT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + <CompileAs>CompileAsC</CompileAs> + </ClCompile> + <Link> + <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <RandomizedBaseAddress>false</RandomizedBaseAddress> + <DataExecutionPrevention> + </DataExecutionPrevention> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\util\cairo-gobject\cairo-gobject.h $(CopyDir)\include +</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <Optimization>MaxSpeed</Optimization> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CAIROGOBJECT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <FunctionLevelLinking>true</FunctionLevelLinking> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + </ClCompile> + <Link> + <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <TargetMachine>MachineX86</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\util\cairo-gobject\cairo-gobject.h $(CopyDir)\include +</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <PreBuildEvent> + <Command> + </Command> + </PreBuildEvent> + <ClCompile> + <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CAIROGOBJECT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + <CompileAs>CompileAsC</CompileAs> + </ClCompile> + <Link> + <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <RandomizedBaseAddress>false</RandomizedBaseAddress> + <DataExecutionPrevention> + </DataExecutionPrevention> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\util\cairo-gobject\cairo-gobject.h $(CopyDir)\include +</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="util\cairo-gobject\cairo-gobject-enums.c" /> + <ClCompile Include="util\cairo-gobject\cairo-gobject-structs.c" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="cairo.vcxproj"> + <Project>{e82f3508-c849-4d33-86af-13300224a169}</Project> + <ReferenceOutputAssembly>false</ReferenceOutputAssembly> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> \ No newline at end of file diff --git a/win32/deps/cairo/cairo-gobject.vcxproj.filters b/win32/deps/cairo/cairo-gobject.vcxproj.filters new file mode 100644 index 00000000..d7b51947 --- /dev/null +++ b/win32/deps/cairo/cairo-gobject.vcxproj.filters @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Sources"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="util\cairo-gobject\cairo-gobject-enums.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="util\cairo-gobject\cairo-gobject-structs.c"> + <Filter>Sources</Filter> + </ClCompile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/win32/deps/cairo/cairo.patch b/win32/deps/cairo/cairo.patch new file mode 100644 index 00000000..9b4f6983 --- /dev/null +++ b/win32/deps/cairo/cairo.patch @@ -0,0 +1,139 @@ +diff -ruN --strip-trailing-cr cairo-1.10.2.orig/src/cairo-win32-surface.c cairo-1.10.2/src/cairo-win32-surface.c +--- cairo-1.10.2.orig/src/cairo-win32-surface.c 2010-12-25 14:21:34 +0000 ++++ cairo-1.10.2/src/cairo-win32-surface.c 2012-10-02 06:57:37 +0000 +@@ -545,6 +545,79 @@ + return CAIRO_STATUS_SUCCESS; + } + ++static const unsigned char mirror[256] = { ++ 0x00, 0x80, 0x40, 0xc0, 0x20, 0xa0, 0x60, 0xe0, ++ 0x10, 0x90, 0x50, 0xd0, 0x30, 0xb0, 0x70, 0xf0, ++ 0x08, 0x88, 0x48, 0xc8, 0x28, 0xa8, 0x68, 0xe8, ++ 0x18, 0x98, 0x58, 0xd8, 0x38, 0xb8, 0x78, 0xf8, ++ 0x04, 0x84, 0x44, 0xc4, 0x24, 0xa4, 0x64, 0xe4, ++ 0x14, 0x94, 0x54, 0xd4, 0x34, 0xb4, 0x74, 0xf4, ++ 0x0c, 0x8c, 0x4c, 0xcc, 0x2c, 0xac, 0x6c, 0xec, ++ 0x1c, 0x9c, 0x5c, 0xdc, 0x3c, 0xbc, 0x7c, 0xfc, ++ 0x02, 0x82, 0x42, 0xc2, 0x22, 0xa2, 0x62, 0xe2, ++ 0x12, 0x92, 0x52, 0xd2, 0x32, 0xb2, 0x72, 0xf2, ++ 0x0a, 0x8a, 0x4a, 0xca, 0x2a, 0xaa, 0x6a, 0xea, ++ 0x1a, 0x9a, 0x5a, 0xda, 0x3a, 0xba, 0x7a, 0xfa, ++ 0x06, 0x86, 0x46, 0xc6, 0x26, 0xa6, 0x66, 0xe6, ++ 0x16, 0x96, 0x56, 0xd6, 0x36, 0xb6, 0x76, 0xf6, ++ 0x0e, 0x8e, 0x4e, 0xce, 0x2e, 0xae, 0x6e, 0xee, ++ 0x1e, 0x9e, 0x5e, 0xde, 0x3e, 0xbe, 0x7e, 0xfe, ++ 0x01, 0x81, 0x41, 0xc1, 0x21, 0xa1, 0x61, 0xe1, ++ 0x11, 0x91, 0x51, 0xd1, 0x31, 0xb1, 0x71, 0xf1, ++ 0x09, 0x89, 0x49, 0xc9, 0x29, 0xa9, 0x69, 0xe9, ++ 0x19, 0x99, 0x59, 0xd9, 0x39, 0xb9, 0x79, 0xf9, ++ 0x05, 0x85, 0x45, 0xc5, 0x25, 0xa5, 0x65, 0xe5, ++ 0x15, 0x95, 0x55, 0xd5, 0x35, 0xb5, 0x75, 0xf5, ++ 0x0d, 0x8d, 0x4d, 0xcd, 0x2d, 0xad, 0x6d, 0xed, ++ 0x1d, 0x9d, 0x5d, 0xdd, 0x3d, 0xbd, 0x7d, 0xfd, ++ 0x03, 0x83, 0x43, 0xc3, 0x23, 0xa3, 0x63, 0xe3, ++ 0x13, 0x93, 0x53, 0xd3, 0x33, 0xb3, 0x73, 0xf3, ++ 0x0b, 0x8b, 0x4b, 0xcb, 0x2b, 0xab, 0x6b, 0xeb, ++ 0x1b, 0x9b, 0x5b, 0xdb, 0x3b, 0xbb, 0x7b, 0xfb, ++ 0x07, 0x87, 0x47, 0xc7, 0x27, 0xa7, 0x67, 0xe7, ++ 0x17, 0x97, 0x57, 0xd7, 0x37, 0xb7, 0x77, 0xf7, ++ 0x0f, 0x8f, 0x4f, 0xcf, 0x2f, 0xaf, 0x6f, 0xef, ++ 0x1f, 0x9f, 0x5f, 0xdf, 0x3f, 0xbf, 0x7f, 0xff ++}; ++ ++static void ++mirror_a1_bits (cairo_surface_t *image_surface) ++{ ++ int w, h, stride, x, y; ++ unsigned char *data; ++ ++ h = cairo_image_surface_get_height (image_surface); ++ stride = cairo_image_surface_get_stride (image_surface); ++ data = cairo_image_surface_get_data (image_surface); ++ ++ for (y = 0; y < h; y++) { ++ for (x = 0; x < stride; x++) { ++ *data = mirror[*data]; ++ data++; ++ } ++ } ++} ++ ++static cairo_bool_t ++_cairo_win32_surface_is_gdi_format (cairo_surface_t *image_surface) ++{ ++ return cairo_image_surface_get_format (image_surface) != CAIRO_FORMAT_A1; ++} ++ ++static void ++_cairo_win32_surface_convert_from_gdi_format (cairo_surface_t *image_surface) ++{ ++ if (cairo_image_surface_get_format (image_surface) == CAIRO_FORMAT_A1) ++ mirror_a1_bits (image_surface); ++} ++ ++static void ++_cairo_win32_surface_convert_to_gdi_format (cairo_surface_t *image_surface) ++{ ++ if (cairo_image_surface_get_format (image_surface) == CAIRO_FORMAT_A1) ++ mirror_a1_bits (image_surface); ++} ++ + static cairo_status_t + _cairo_win32_surface_acquire_source_image (void *abstract_surface, + cairo_image_surface_t **image_out, +@@ -554,7 +627,7 @@ + cairo_win32_surface_t *local; + cairo_status_t status; + +- if (surface->image) { ++ if (surface->image && _cairo_win32_surface_is_gdi_format (surface->image)) { + *image_out = (cairo_image_surface_t *)surface->image; + *image_extra = NULL; + return CAIRO_STATUS_SUCCESS; +@@ -566,6 +639,8 @@ + if (status) + return status; + ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + *image_out = (cairo_image_surface_t *)local->image; + *image_extra = local; + return CAIRO_STATUS_SUCCESS; +@@ -593,7 +668,7 @@ + cairo_win32_surface_t *local = NULL; + cairo_status_t status; + +- if (surface->image) { ++ if (surface->image && _cairo_win32_surface_is_gdi_format (surface->image)) { + GdiFlush(); + + *image_out = (cairo_image_surface_t *) surface->image; +@@ -611,6 +686,8 @@ + if (status) + return status; + ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + *image_out = (cairo_image_surface_t *) local->image; + *image_extra = local; + *image_rect = *interest_rect; +@@ -630,6 +707,10 @@ + if (!local) + return; + ++ _cairo_win32_surface_set_clip_region (surface, NULL); ++ ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + if (!BitBlt (surface->dc, + image_rect->x, image_rect->y, + image_rect->width, image_rect->height, +@@ -1313,7 +1394,7 @@ + + UNSUPPORTED: + /* Fall back to image surface directly, if this is a DIB surface */ +- if (dst->image) { ++ if (dst->image && _cairo_win32_surface_is_gdi_format (dst->image)) { + GdiFlush(); + + return dst->image->backend->composite (op, pattern, mask_pattern, diff --git a/win32/deps/cairo/cairo.props b/win32/deps/cairo/cairo.props new file mode 100644 index 00000000..c228e6bc --- /dev/null +++ b/win32/deps/cairo/cairo.props @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup Label="UserMacros"> + <CairoEtcInstallRoot>..\build\$(Platform)</CairoEtcInstallRoot> + <CopyDir>..\cairo-1.10.2-rel</CopyDir> + </PropertyGroup> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>.\;.\src;$(CairoEtcInstallRoot)\include;$(CairoEtcInstallRoot)\include\glib-2.0;$(CairoEtcInstallRoot)\lib\glib-2.0\include;$(CairoEtcInstallRoot)\include\pixman-1;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <AdditionalLibraryDirectories>$(CairoEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <BuildMacro Include="ApiVersion"> + <Value>$(ApiVersion)</Value> + </BuildMacro> + <BuildMacro Include="PixmanEtcInstallRoot"> + <Value>$(PixmanEtcInstallRoot)</Value> + </BuildMacro> + <BuildMacro Include="PixmanDoInstall"> + <Value>$(PixmanDoInstall)</Value> + </BuildMacro> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/win32/deps/cairo/cairo.sln b/win32/deps/cairo/cairo.sln new file mode 100644 index 00000000..82225914 --- /dev/null +++ b/win32/deps/cairo/cairo.sln @@ -0,0 +1,36 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Express 2012 for Windows Desktop +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cairo", "cairo.vcxproj", "{E82F3508-C849-4D33-86AF-13300224A169}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cairo-gobject", "cairo-gobject.vcxproj", "{C8D08F82-700E-4ACE-A766-A52C4048B5F7}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {E82F3508-C849-4D33-86AF-13300224A169}.Debug|Win32.ActiveCfg = Debug|Win32 + {E82F3508-C849-4D33-86AF-13300224A169}.Debug|Win32.Build.0 = Debug|Win32 + {E82F3508-C849-4D33-86AF-13300224A169}.Debug|x64.ActiveCfg = Debug|x64 + {E82F3508-C849-4D33-86AF-13300224A169}.Debug|x64.Build.0 = Debug|x64 + {E82F3508-C849-4D33-86AF-13300224A169}.Release|Win32.ActiveCfg = Release|Win32 + {E82F3508-C849-4D33-86AF-13300224A169}.Release|Win32.Build.0 = Release|Win32 + {E82F3508-C849-4D33-86AF-13300224A169}.Release|x64.ActiveCfg = Release|x64 + {E82F3508-C849-4D33-86AF-13300224A169}.Release|x64.Build.0 = Release|x64 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Debug|Win32.ActiveCfg = Debug|Win32 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Debug|Win32.Build.0 = Debug|Win32 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Debug|x64.ActiveCfg = Debug|x64 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Debug|x64.Build.0 = Debug|x64 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Release|Win32.ActiveCfg = Release|Win32 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Release|Win32.Build.0 = Release|Win32 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Release|x64.ActiveCfg = Release|x64 + {C8D08F82-700E-4ACE-A766-A52C4048B5F7}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/win32/deps/cairo/cairo.vcxproj b/win32/deps/cairo/cairo.vcxproj new file mode 100644 index 00000000..d306c305 --- /dev/null +++ b/win32/deps/cairo/cairo.vcxproj @@ -0,0 +1,524 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|x64"> + <Configuration>Debug</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|x64"> + <Configuration>Release</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectName>cairo</ProjectName> + <ProjectGuid>{E82F3508-C849-4D33-86AF-13300224A169}</ProjectGuid> + <RootNamespace>cairo</RootNamespace> + <Keyword>Win32Proj</Keyword> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>Unicode</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>Unicode</CharacterSet> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>true</WholeProgramOptimization> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v110</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="cairo.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Configuration)\</IntDir> + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <PreBuildEvent> + <Message>Generating src/cairo-features.h...</Message> + <Command>if exist .\src\cairo-features.h goto END + + echo /* Generated by Makefile.win32. Do not edit. */ > .\src\cairo-features.h + + echo #ifndef CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PNG_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FT_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FC_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PS_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PDF_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_SVG_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_GOBJECT_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #endif >> .\src\cairo-features.h + + :END +</Command> + </PreBuildEvent> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CAIRO_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DISABLE_SOME_FLOATING_POINT;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>EditAndContinue</DebugInformationFormat> + <DisableSpecificWarnings>4244;4146;%(DisableSpecificWarnings)</DisableSpecificWarnings> + </ClCompile> + <Link> + <AdditionalDependencies>gdi32.lib;msimg32.lib;user32.lib;zlib1d.lib;libpng15d.lib;pixman-1.lib;freetype.lib;fontconfig.lib;%(AdditionalDependencies)</AdditionalDependencies> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <TargetMachine>MachineX86</TargetMachine> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\cairo-version.h $(CopyDir)\include + + copy .\src\cairo.h $(CopyDir)\include + + copy .\src\cairo-deprecated.h $(CopyDir)\include + + copy .\src\cairo-features.h $(CopyDir)\include + + copy .\src\cairo-ft.h $(CopyDir)\include + + copy .\src\cairo-pdf.h $(CopyDir)\include + + copy .\src\cairo-ps.h $(CopyDir)\include + + copy .\src\cairo-svg.h $(CopyDir)\include + + copy .\src\cairo-win32.h $(CopyDir)\include</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <PreBuildEvent> + <Message>Generating src/cairo-features.h...</Message> + <Command>if exist .\src\cairo-features.h goto END + + echo /* Generated by Makefile.win32. Do not edit. */ > .\src\cairo-features.h + + echo #ifndef CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PNG_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FT_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FC_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PS_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PDF_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_SVG_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_GOBJECT_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #endif >> .\src\cairo-features.h + + :END +</Command> + </PreBuildEvent> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CAIRO_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DISABLE_SOME_FLOATING_POINT;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + <CompileAs>CompileAsC</CompileAs> + </ClCompile> + <Link> + <AdditionalDependencies>gdi32.lib;msimg32.lib;user32.lib;zlib1d.lib;libpng15d.lib;pixman-1.lib;freetype.lib;fontconfig.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <RandomizedBaseAddress>false</RandomizedBaseAddress> + <DataExecutionPrevention> + </DataExecutionPrevention> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\cairo-version.h $(CopyDir)\include + + copy .\src\cairo.h $(CopyDir)\include + + copy .\src\cairo-deprecated.h $(CopyDir)\include + + copy .\src\cairo-features.h $(CopyDir)\include + + copy .\src\cairo-ft.h $(CopyDir)\include + + copy .\src\cairo-pdf.h $(CopyDir)\include + + copy .\src\cairo-ps.h $(CopyDir)\include + + copy .\src\cairo-svg.h $(CopyDir)\include + + copy .\src\cairo-win32.h $(CopyDir)\include</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <PreBuildEvent> + <Message>Generating src/cairo-features.h...</Message> + <Command>if exist .\src\cairo-features.h goto END + + echo /* Generated by Makefile.win32. Do not edit. */ > .\src\cairo-features.h + + echo #ifndef CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PNG_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FT_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FC_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PS_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PDF_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_SVG_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_GOBJECT_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #endif >> .\src\cairo-features.h + + :END +</Command> + </PreBuildEvent> + <ClCompile> + <Optimization>MaxSpeed</Optimization> + <IntrinsicFunctions>false</IntrinsicFunctions> + <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CAIRO_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DISABLE_SOME_FLOATING_POINT;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <FunctionLevelLinking>true</FunctionLevelLinking> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + <DisableSpecificWarnings>4244;4146;%(DisableSpecificWarnings)</DisableSpecificWarnings> + </ClCompile> + <Link> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <AdditionalDependencies>gdi32.lib;msimg32.lib;user32.lib;zdll.lib;libpng15.lib;pixman-1.lib;freetype.lib;fontconfig.lib;%(AdditionalDependencies)</AdditionalDependencies> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX86</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\cairo-version.h $(CopyDir)\include + + copy .\src\cairo.h $(CopyDir)\include + + copy .\src\cairo-deprecated.h $(CopyDir)\include + + copy .\src\cairo-features.h $(CopyDir)\include + + copy .\src\cairo-ft.h $(CopyDir)\include + + copy .\src\cairo-pdf.h $(CopyDir)\include + + copy .\src\cairo-ps.h $(CopyDir)\include + + copy .\src\cairo-svg.h $(CopyDir)\include + + copy .\src\cairo-win32.h $(CopyDir)\include</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <PreBuildEvent> + <Message>Generating src/cairo-features.h...</Message> + <Command>if exist .\src\cairo-features.h goto END + + echo /* Generated by Makefile.win32. Do not edit. */ > .\src\cairo-features.h + + echo #ifndef CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_FEATURES_H >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_WIN32_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PNG_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FT_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_FC_FONT 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PS_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_PDF_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_SVG_SURFACE 1 >> .\src\cairo-features.h + + echo #define CAIRO_HAS_GOBJECT_FUNCTIONS 1 >> .\src\cairo-features.h + + echo #endif >> .\src\cairo-features.h + + :END +</Command> + </PreBuildEvent> + <ClCompile> + <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CAIRO_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DISABLE_SOME_FLOATING_POINT;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + <CompileAs>CompileAsC</CompileAs> + </ClCompile> + <Link> + <AdditionalDependencies>gdi32.lib;msimg32.lib;user32.lib;zdll.lib;libpng15.lib;pixman-1.lib;freetype.lib;fontconfig.lib;%(AdditionalDependencies)</AdditionalDependencies> + <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile> + <GenerateDebugInformation>true</GenerateDebugInformation> + <SubSystem>Windows</SubSystem> + <OptimizeReferences>true</OptimizeReferences> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <RandomizedBaseAddress>false</RandomizedBaseAddress> + <DataExecutionPrevention> + </DataExecutionPrevention> + <ImportLibrary>$(OutDir)$(ProjectName).lib</ImportLibrary> + <TargetMachine>MachineX64</TargetMachine> + </Link> + <PostBuildEvent> + <Command>mkdir $(CopyDir)\bin + + copy $(OutDir)$(ProjectName).dll $(CopyDir)\bin + + + mkdir $(CopyDir)\lib + + copy $(OutDir)$(ProjectName).lib $(CopyDir)\lib + + + mkdir $(CopyDir)\include + + copy .\cairo-version.h $(CopyDir)\include + + copy .\src\cairo.h $(CopyDir)\include + + copy .\src\cairo-deprecated.h $(CopyDir)\include + + copy .\src\cairo-features.h $(CopyDir)\include + + copy .\src\cairo-ft.h $(CopyDir)\include + + copy .\src\cairo-pdf.h $(CopyDir)\include + + copy .\src\cairo-ps.h $(CopyDir)\include + + copy .\src\cairo-svg.h $(CopyDir)\include + + copy .\src\cairo-win32.h $(CopyDir)\include</Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="src\cairo-analysis-surface.c" /> + <ClCompile Include="src\cairo-arc.c" /> + <ClCompile Include="src\cairo-array.c" /> + <ClCompile Include="src\cairo-atomic.c" /> + <ClCompile Include="src\cairo-base85-stream.c" /> + <ClCompile Include="src\cairo-bentley-ottmann-rectangular.c" /> + <ClCompile Include="src\cairo-bentley-ottmann-rectilinear.c" /> + <ClCompile Include="src\cairo-bentley-ottmann.c" /> + <ClCompile Include="src\cairo-boxes.c" /> + <ClCompile Include="src\cairo-cache.c" /> + <ClCompile Include="src\cairo-clip.c" /> + <ClCompile Include="src\cairo-color.c" /> + <ClCompile Include="src\cairo-composite-rectangles.c" /> + <ClCompile Include="src\cairo-debug.c" /> + <ClCompile Include="src\cairo-device.c" /> + <ClCompile Include="src\cairo-fixed.c" /> + <ClCompile Include="src\cairo-font-face-twin-data.c" /> + <ClCompile Include="src\cairo-font-face-twin.c" /> + <ClCompile Include="src\cairo-font-face.c" /> + <ClCompile Include="src\cairo-font-options.c" /> + <ClCompile Include="src\cairo-freelist.c" /> + <ClCompile Include="src\cairo-gstate.c" /> + <ClCompile Include="src\cairo-hash.c" /> + <ClCompile Include="src\cairo-hull.c" /> + <ClCompile Include="src\cairo-image-info.c" /> + <ClCompile Include="src\cairo-image-surface.c" /> + <ClCompile Include="src\cairo-lzw.c" /> + <ClCompile Include="src\cairo-matrix.c" /> + <ClCompile Include="src\cairo-misc.c" /> + <ClCompile Include="src\cairo-mutex.c" /> + <ClCompile Include="src\cairo-observer.c" /> + <ClCompile Include="src\cairo-output-stream.c" /> + <ClCompile Include="src\cairo-paginated-surface.c" /> + <ClCompile Include="src\cairo-path-bounds.c" /> + <ClCompile Include="src\cairo-path-fill.c" /> + <ClCompile Include="src\cairo-path-fixed.c" /> + <ClCompile Include="src\cairo-path-in-fill.c" /> + <ClCompile Include="src\cairo-path-stroke.c" /> + <ClCompile Include="src\cairo-path.c" /> + <ClCompile Include="src\cairo-pattern.c" /> + <ClCompile Include="src\cairo-pen.c" /> + <ClCompile Include="src\cairo-polygon.c" /> + <ClCompile Include="src\cairo-recording-surface.c" /> + <ClCompile Include="src\cairo-rectangle.c" /> + <ClCompile Include="src\cairo-rectangular-scan-converter.c" /> + <ClCompile Include="src\cairo-region.c" /> + <ClCompile Include="src\cairo-rtree.c" /> + <ClCompile Include="src\cairo-scaled-font.c" /> + <ClCompile Include="src\cairo-slope.c" /> + <ClCompile Include="src\cairo-spans.c" /> + <ClCompile Include="src\cairo-spline.c" /> + <ClCompile Include="src\cairo-stroke-style.c" /> + <ClCompile Include="src\cairo-surface-clipper.c" /> + <ClCompile Include="src\cairo-surface-fallback.c" /> + <ClCompile Include="src\cairo-surface-offset.c" /> + <ClCompile Include="src\cairo-surface-snapshot.c" /> + <ClCompile Include="src\cairo-surface-subsurface.c" /> + <ClCompile Include="src\cairo-surface-wrapper.c" /> + <ClCompile Include="src\cairo-surface.c" /> + <ClCompile Include="src\cairo-system.c" /> + <ClCompile Include="src\cairo-tor-scan-converter.c" /> + <ClCompile Include="src\cairo-toy-font-face.c" /> + <ClCompile Include="src\cairo-traps.c" /> + <ClCompile Include="src\cairo-unicode.c" /> + <ClCompile Include="src\cairo-user-font.c" /> + <ClCompile Include="src\cairo-version.c" /> + <ClCompile Include="src\cairo-wideint.c" /> + <ClCompile Include="src\cairo.c" /> + <ClCompile Include="src\cairo-cff-subset.c" /> + <ClCompile Include="src\cairo-scaled-font-subsets.c" /> + <ClCompile Include="src\cairo-truetype-subset.c" /> + <ClCompile Include="src\cairo-type1-fallback.c" /> + <ClCompile Include="src\cairo-type1-subset.c" /> + <ClCompile Include="src\cairo-type3-glyph-surface.c" /> + <ClCompile Include="src\cairo-png.c" /> + <ClCompile Include="src\cairo-ps-surface.c" /> + <ClCompile Include="src\cairo-deflate-stream.c" /> + <ClCompile Include="src\cairo-pdf-operators.c" /> + <ClCompile Include="src\cairo-pdf-surface.c" /> + <ClCompile Include="src\cairo-svg-surface.c" /> + <ClCompile Include="src\cairo-ft-font.c" /> + <ClCompile Include="src\cairo-win32-font.c" /> + <ClCompile Include="src\cairo-win32-printing-surface.c" /> + <ClCompile Include="src\cairo-win32-surface.c" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> \ No newline at end of file diff --git a/win32/deps/cairo/cairo.vcxproj.filters b/win32/deps/cairo/cairo.vcxproj.filters new file mode 100644 index 00000000..b09b5d88 --- /dev/null +++ b/win32/deps/cairo/cairo.vcxproj.filters @@ -0,0 +1,284 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Sources"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Sources\font_subset"> + <UniqueIdentifier>{341c014f-3605-4989-ac83-283d41bb6603}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\png"> + <UniqueIdentifier>{2f1441dc-7150-4262-9a07-cbaa3499ab79}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\ps"> + <UniqueIdentifier>{cd1af522-932f-45ac-b256-f4184aa837ba}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\pdf"> + <UniqueIdentifier>{5f35fb5b-b444-4a70-8f05-97c5fa6f7095}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\svg"> + <UniqueIdentifier>{8c402037-b911-4b03-ab65-a17fd064a475}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\freetype"> + <UniqueIdentifier>{bb015e7a-e395-489d-ba2f-d8cb5622c186}</UniqueIdentifier> + </Filter> + <Filter Include="Sources\win32"> + <UniqueIdentifier>{5db6f534-7946-44eb-acfc-cfd45b333154}</UniqueIdentifier> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="src\cairo-analysis-surface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-arc.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-array.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-atomic.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-base85-stream.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-bentley-ottmann-rectangular.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-bentley-ottmann-rectilinear.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-bentley-ottmann.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-boxes.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-cache.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-clip.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-color.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-composite-rectangles.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-debug.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-device.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-fixed.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-font-face-twin-data.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-font-face-twin.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-font-face.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-font-options.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-freelist.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-gstate.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-hash.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-hull.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-image-info.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-image-surface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-lzw.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-matrix.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-misc.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-mutex.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-observer.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-output-stream.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-paginated-surface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path-bounds.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path-fill.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path-fixed.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path-in-fill.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path-stroke.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-path.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-pattern.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-pen.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-polygon.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-recording-surface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-rectangle.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-rectangular-scan-converter.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-region.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-rtree.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-scaled-font.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-slope.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-spans.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-spline.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-stroke-style.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-clipper.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-fallback.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-offset.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-snapshot.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-subsurface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface-wrapper.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-surface.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-system.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-tor-scan-converter.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-toy-font-face.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-traps.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-unicode.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-user-font.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-version.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-wideint.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo.c"> + <Filter>Sources</Filter> + </ClCompile> + <ClCompile Include="src\cairo-cff-subset.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-scaled-font-subsets.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-truetype-subset.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-type1-fallback.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-type1-subset.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-type3-glyph-surface.c"> + <Filter>Sources\font_subset</Filter> + </ClCompile> + <ClCompile Include="src\cairo-png.c"> + <Filter>Sources\png</Filter> + </ClCompile> + <ClCompile Include="src\cairo-ps-surface.c"> + <Filter>Sources\ps</Filter> + </ClCompile> + <ClCompile Include="src\cairo-deflate-stream.c"> + <Filter>Sources\pdf</Filter> + </ClCompile> + <ClCompile Include="src\cairo-pdf-operators.c"> + <Filter>Sources\pdf</Filter> + </ClCompile> + <ClCompile Include="src\cairo-pdf-surface.c"> + <Filter>Sources\pdf</Filter> + </ClCompile> + <ClCompile Include="src\cairo-svg-surface.c"> + <Filter>Sources\svg</Filter> + </ClCompile> + <ClCompile Include="src\cairo-ft-font.c"> + <Filter>Sources\freetype</Filter> + </ClCompile> + <ClCompile Include="src\cairo-win32-font.c"> + <Filter>Sources\win32</Filter> + </ClCompile> + <ClCompile Include="src\cairo-win32-printing-surface.c"> + <Filter>Sources\win32</Filter> + </ClCompile> + <ClCompile Include="src\cairo-win32-surface.c"> + <Filter>Sources\win32</Filter> + </ClCompile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/win32/deps/cairo/release-x64.bat b/win32/deps/cairo/release-x64.bat new file mode 100644 index 00000000..8155ca85 --- /dev/null +++ b/win32/deps/cairo/release-x64.bat @@ -0,0 +1,21 @@ +:: run this from a command prompt +@echo off + +SET PACKAGE_NAME=cairo-1.10.2 + +set CAIRO_SRC=%cd% +set CAIRO_DEST=%cd%-rel +echo.Press return when ready to install! +pause + +copy COPYING %CAIRO_DEST%\LICENSE.CAIRO + +cd %CAIRO_DEST% +set PATH=%PATH%;%ProgramFiles%\7-zip +del ..\%PACKAGE_NAME%-x64.7z +7z a ..\%PACKAGE_NAME%-x64.7z * +cd %CAIRO_SRC% +rmdir /q /s %CAIRO_DEST% + +echo.Finished! +pause diff --git a/win32/deps/cairo/release-x86.bat b/win32/deps/cairo/release-x86.bat new file mode 100644 index 00000000..dcd0ed82 --- /dev/null +++ b/win32/deps/cairo/release-x86.bat @@ -0,0 +1,21 @@ +:: run this from a command prompt +@echo off + +SET PACKAGE_NAME=cairo-1.10.2 + +set CAIRO_SRC=%cd% +set CAIRO_DEST=%cd%-rel +echo.Press return when ready to install! +pause + +copy COPYING %CAIRO_DEST%\LICENSE.CAIRO + +cd %CAIRO_DEST% +set PATH=%PATH%;%ProgramFiles%\7-zip +del ..\%PACKAGE_NAME%-x86.7z +7z a ..\%PACKAGE_NAME%-x86.7z * +cd %CAIRO_SRC% +rmdir /q /s %CAIRO_DEST% + +echo.Finished! +pause |