<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup Label="UserMacros">
    <VSVer>10</VSVer>
    <GlibEtcInstallRoot>$(SolutionDir)\..\..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
    <GlibEtcInstallRootFromBuildWin32>..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRootFromBuildWin32>
    <ApiVersion>1.0</ApiVersion>
    <BaseBuildDefines>_WIN32_WINNT=0x0500;COGL_ENABLE_DEBUG</BaseBuildDefines>
    <LibBuildDefines>HAVE_CONFIG_H;COGL_COMPILATION;$(BaseBuildDefines)</LibBuildDefines>
    <ReleaseLibBuildDefines>$(LibBuildDefines);G_DISABLE_CHECKS;G_DISABLE_CAST_CHECKS</ReleaseLibBuildDefines>
    <DebugLibBuildDefines>_DEBUG;$(LibBuildDefines);COGL_GL_DEBUG;COGL_OBJECT_DEBUG;COGL_HANDLE_DEBUG</DebugLibBuildDefines>
    <CoglBuildDefines>G_LOG_DOMAIN="Cogl";COGL_HAS_WIN32_SUPPORT;COGL_BUILD_EXP;COGL_GL_LIBNAME="";COGL_LOCALEDIR="/some/random/dir"</CoglBuildDefines>
    <CoglPathBuildDefines>G_LOG_DOMAIN="CoglPath"</CoglPathBuildDefines>
    <CoglPangoBuildDefines>G_LOG_DOMAIN="Cogl-Pango"</CoglPangoBuildDefines>
    <TestProgDef>COGL_COMPILATION</TestProgDef>
    <CopyDir>$(GlibEtcInstallRoot)</CopyDir>
    <DefDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</DefDir>
    <DoDefinesSDL>
if exist ..\..\..\cogl\SDL_DEFINES goto DONE_COGL_DEFINES_H
if not exist ..\..\..\cogl\WGL_DEFINES goto DO_COGL_DEFINES_H
del ..\..\..\cogl\cogl-defines.h
del ..\..\..\cogl\WGL_DEFINES
:DO_COGL_DEFINES_H
copy ..\..\..\cogl\cogl-defines.h.win32_sdl ..\..\..\cogl\SDL_DEFINES
copy ..\..\..\cogl\SDL_DEFINES ..\..\..\cogl\cogl-defines.h
:DONE_COGL_DEFINES_H
    </DoDefinesSDL>
    <DoDefines>
if exist ..\..\..\cogl\WGL_DEFINES goto DONE_COGL_DEFINES_H
if not exist ..\..\..\cogl\SDL_DEFINES goto DO_COGL_DEFINES_H
del ..\..\..\cogl\cogl-defines.h
del ..\..\..\cogl\SDL_DEFINES
:DO_COGL_DEFINES_H
copy ..\..\..\cogl\cogl-defines.h.win32 ..\..\..\cogl\WGL_DEFINES
copy ..\..\..\cogl\WGL_DEFINES ..\..\..\cogl\cogl-defines.h
:DONE_COGL_DEFINES_H
    </DoDefines>
    <PreBuildCmd>
if exist ..\..\..\config.h goto DONE_CONFIG_H

copy ..\..\..\config.h.win32 ..\..\..\config.h

:DONE_CONFIG_H

if not exist ..\..\..\cogl\cogl-gl-header.h copy ..\..\..\cogl\cogl-gl-header.h.win32 ..\..\..\cogl\cogl-gl-header.h
    </PreBuildCmd>

<GenCoglPathEnumsH>
if exist ..\..\..\cogl-path\cogl-path-enum-types.h goto DONE_COGLPATH_ENUMS_H

cd ..\..\..\cogl-path

perl $(GlibEtcInstallRoot)\bin\glib-mkenums --template cogl-path-enum-types.h.in cogl-path-types.h cogl1-path-functions.h &gt; cogl-path-enum-types.h

cd $(SolutionDir)

:DONE_COGLPATH_ENUMS_H
</GenCoglPathEnumsH>

<GenCoglPathEnumsC>
if exist ..\..\..\cogl-path\cogl-path-enum-types.c goto DONE_COGLPATH_ENUMS_C

cd ..\..\..\cogl-path

perl $(GlibEtcInstallRoot)\bin\glib-mkenums --template cogl-path-enum-types.c.in cogl-path-types.h cogl1-path-functions.h &gt; cogl-path-enum-types.c

cd $(SolutionDir)

:DONE_COGLPATH_ENUMS_C
</GenCoglPathEnumsC>

<GenCoglEnumsH>
if exist ..\..\..\cogl\cogl-enum-types.h goto DONE_COGL_ENUMS_H

cd ..\..\..\cogl

perl $(GlibEtcInstallRoot)\bin\glib-mkenums --template cogl-enum-types.h.in cogl1-context.h cogl-bitmap.h cogl-color.h cogl-fixed.h cogl-material-compat.h cogl-matrix.h cogl-offscreen.h cogl-primitives.h cogl-shader.h cogl-texture.h cogl-types.h cogl-vertex-buffer.h cogl-clutter.h cogl.h cogl-win32-renderer.h &gt; cogl-enum-types.h

cd $(SolutionDir)

:DONE_COGL_ENUMS_H
</GenCoglEnumsH>

<GenCoglEnumsC>
if exist ..\..\..\cogl\cogl-enum-types.c goto DONE_COGL_ENUMS_C

cd ..\..\..\cogl

perl $(GlibEtcInstallRoot)\bin\glib-mkenums --template cogl-enum-types.c.in cogl1-context.h cogl-bitmap.h cogl-color.h cogl-fixed.h cogl-material-compat.h cogl-matrix.h cogl-offscreen.h cogl-primitives.h cogl-shader.h cogl-texture.h cogl-types.h cogl-vertex-buffer.h cogl-clutter.h cogl.h cogl-win32-renderer.h &gt; cogl-enum-types.c

cd $(SolutionDir)

:DONE_COGL_ENUMS_C
</GenCoglEnumsC>

<CoglDoInstall>
mkdir $(CopyDir)

mkdir $(CopyDir)\bin

copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*.dll $(CopyDir)\bin


copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*.exe $(CopyDir)\bin


copy ..\*.bat $(CopyDir)\bin


mkdir $(CopyDir)\share\cogl-$(ApiVersion)\examples-data

copy ..\..\..\examples\*.jpg $(CopyDir)\share\cogl-$(ApiVersion)\examples-data


mkdir $(CopyDir)\lib

copy $(SolutionDir)$(Configuration)\$(Platform)\bin\*-$(ApiVersion).lib $(CopyDir)\lib


mkdir $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-object.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-atlas-texture.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-attribute-buffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-bitmap.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-buffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-color.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-deprecated.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-depth-state.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-error.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-euler.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-fence.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-fixed.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-frame-info.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-glib-source.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-macros.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-material-compat.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-pipeline.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-vector.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-matrix.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-matrix-stack.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-offscreen.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-onscreen.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-output.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-primitives.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-primitive-texture.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-pipeline-layer-state.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-pipeline-state.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-pixel-buffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-poll.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-quaternion.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-shader.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-snippet.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture-2d.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture-2d-gl.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture-2d-sliced.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-sub-texture.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture-rectangle.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-meta-texture.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-texture-3d.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-types.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-vertex-buffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-index-buffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-indices.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-attribute.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-primitive.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-clip-state.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-framebuffer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-clutter.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-defines.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-enum-types.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-renderer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-swap-chain.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-onscreen-template.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-display.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-context.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-version.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl-win32-renderer.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl1-context.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl

copy ..\..\..\cogl\cogl2-experimental.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl


mkdir $(CopyDir)\include\cogl-$(ApiVersion)\cogl-pango

copy ..\..\..\cogl-pango\cogl-pango.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-pango


mkdir $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path

copy ..\..\..\cogl-path\cogl-path.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path

copy ..\..\..\cogl-path\cogl-path-types.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path

copy ..\..\..\cogl-path\cogl1-path-functions.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path

copy ..\..\..\cogl-path\cogl2-path-functions.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path

copy ..\..\..\cogl-path\cogl-path-enum-types.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl-path
</CoglDoInstall>
<CoglDoInstallSDL>
copy ..\..\..\cogl\cogl-sdl.h $(CopyDir)\include\cogl-$(ApiVersion)\cogl
</CoglDoInstallSDL>
<DoGenGir>
set VSVER=$(VSVer)

set CONF=$(Configuration)

set PLAT=$(Platform)

set BASEDIR=$(GlibEtcInstallRootFromBuildWin32)

cd ..

call gengir_pango.bat

cd vs$(VSVer)
</DoGenGir>
    <GenerateCoglDef>
         echo EXPORTS &gt; $(DefDir)\cogl.def

         cl -EP -D_COGL_SUPPORTS_GTYPE_INTEGRATION -DCOGL_HAS_WIN32_SUPPORT -DCOGL_HAS_GLIB_SUPPORT -DCOGL_ENABLE_EXPERIMENTAL_API ..\..\..\cogl\cogl.symbols &gt;&gt; $(DefDir)\cogl.def

    </GenerateCoglDef>
    <GenerateCoglSDLDef>
         echo EXPORTS &gt; $(DefDir)\cogl.def

         cl -EP -D_COGL_SUPPORTS_GTYPE_INTEGRATION -DCOGL_HAS_WIN32_SUPPORT -DCOGL_HAS_GLIB_SUPPORT -DCOGL_HAS_SDL_SUPPORT -DCOGL_ENABLE_EXPERIMENTAL_API ..\..\..\cogl\cogl.symbols &gt;&gt; $(DefDir)\cogl.def

    </GenerateCoglSDLDef>
    <GenerateCoglPangoDef>
         echo EXPORTS &gt; $(DefDir)\cogl-pango.def

      cl -EP ..\..\..\cogl-pango\cogl-pango.symbols &gt;&gt; $(DefDir)\cogl-pango.def

     </GenerateCoglPangoDef>
    <CoglLibtoolCompatibleDllPrefix>lib</CoglLibtoolCompatibleDllPrefix>
    <CoglLibtoolCompatibleDllSuffix>-$(ApiVersion)-0</CoglLibtoolCompatibleDllSuffix>
    <CoglSeparateVSDllPrefix />
    <CoglSeparateVSDllSuffix>-1-vs$(VSVer)</CoglSeparateVSDllSuffix>
    <CoglDllPrefix>$(CoglSeparateVSDllPrefix)</CoglDllPrefix>
    <CoglDllSuffix>$(CoglSeparateVSDllSuffix)</CoglDllSuffix>
  </PropertyGroup>
  <PropertyGroup>
    <_PropertySheetDisplayName>coglprops</_PropertySheetDisplayName>
    <OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir>
    <IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>..\..\..;..\..\..\cogl;..\..\..\cogl\winsys;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\gdk-pixbuf-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <PreprocessorDefinitions>G_DISABLE_SINGLE_INCLUDES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
      <DisableSpecificWarnings>%(DisableSpecificWarnings)</DisableSpecificWarnings>
    </ClCompile>
    <Link>
      <AdditionalDependencies>glib-2.0.lib;gobject-2.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
      <AdditionalLibraryDirectories>$(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup>
    <BuildMacro Include="GlibEtcInstallRoot">
      <Value>$(GlibEtcInstallRoot)</Value>
    </BuildMacro>
    <BuildMacro Include="CopyDir">
      <Value>$(CopyDir)</Value>
    </BuildMacro>
    <BuildMacro Include="DefDir">
      <Value>$(DefDir)</Value>
    </BuildMacro>
    <BuildMacro Include="ApiVersion">
      <Value>$(ApiVersion)</Value>
    </BuildMacro>
    <BuildMacro Include="BaseBuildDefines">
      <Value>$(BaseBuildDefines)</Value>
    </BuildMacro>
    <BuildMacro Include="LibBuildDefines">
      <Value>$(LibBuildDefines)</Value>
    </BuildMacro>
	<BuildMacro Include="ReleaseLibBuildDefines">
      <Value>$(ReleaseLibBuildDefines)</Value>
    </BuildMacro>
	<BuildMacro Include="DebugLibBuildDefines">
      <Value>$(DebugLibBuildDefines)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglBuildDefines">
      <Value>$(CoglBuildDefines)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglPathBuildDefines">
      <Value>$(CoglPathBuildDefines)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglPangoBuildDefines">
      <Value>$(CoglPangoBuildDefines)</Value>
    </BuildMacro>
    <BuildMacro Include="TestProgDef">
      <Value>$(TestProgDef)</Value>
    </BuildMacro>
    <BuildMacro Include="DoDefinesSDL">
      <Value>$(DoDefinesSDL)</Value>
    </BuildMacro>
    <BuildMacro Include="DoDefines">
      <Value>$(DoDefinesSDL)</Value>
    </BuildMacro>
    <BuildMacro Include="PreBuildCmd">
      <Value>$(PreBuildCmd)</Value>
    </BuildMacro>
    <BuildMacro Include="GenCoglPathEnumsH">
      <Value>$(GenCoglPathEnumsH)</Value>
    </BuildMacro>
    <BuildMacro Include="GenCoglPathEnumsC">
      <Value>$(GenCoglPathEnumsC)</Value>
    </BuildMacro>
    <BuildMacro Include="GenCoglEnumsH">
      <Value>$(GenCoglEnumsH)</Value>
    </BuildMacro>
    <BuildMacro Include="GenCoglEnumsC">
      <Value>$(GenCoglEnumsC)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglDoInstall">
      <Value>$(CoglDoInstall)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglDoInstallSDL">
      <Value>$(CoglDoInstallSDL)</Value>
    </BuildMacro>
    <BuildMacro Include="GenerateCoglDef">
      <Value>$(GenerateCoglDef)</Value>
    </BuildMacro>
    <BuildMacro Include="GenerateCoglSDLDef">
      <Value>$(GenerateCoglDef)</Value>
    </BuildMacro>
    <BuildMacro Include="GenerateCoglPangoDef">
      <Value>$(GenerateCoglPangoDef)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglLibtoolCompatibleDllPrefix">
      <Value>$(CoglLibtoolCompatibleDllPrefix)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglLibtoolCompatibleDllSuffix">
      <Value>$(CoglLibtoolCompatibleDllSuffix)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglSeparateVSDllPrefix">
      <Value>$(CoglSeparateVSDllPrefix)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglSeparateVSDllSuffix">
      <Value>$(CoglSeparateVSDllSuffix)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglDllPrefix">
      <Value>$(CoglDllPrefix)</Value>
    </BuildMacro>
    <BuildMacro Include="CoglDllSuffix">
      <Value>$(CoglDllSuffix)</Value>
    </BuildMacro>
  </ItemGroup>
</Project>
