[librsvg/librsvg-2.40] Visual Studio builds: Generate .pc files upon "install"



commit 26ae646cecb743c5e2dd9031ebc7fdd19b9ab7e0
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Mon Mar 6 15:24:48 2017 +0800

    Visual Studio builds: Generate .pc files upon "install"
    
    This makes it easier for build systems that demand for the presence of .pc
    files (such as Meson) to find packages.

 build/win32/vs10/Makefile.am                  |    1 +
 build/win32/vs10/rsvg-install.propsin         |   10 ++++++
 build/win32/vs10/rsvg-install.vcxproj         |   28 ++++++++++-------
 build/win32/vs10/rsvg-install.vcxproj.filters |   21 +++++++++++++
 build/win32/vs10/rsvg-version-paths.props.in  |    4 ++
 build/win32/vs11/Makefile.am                  |    1 +
 build/win32/vs12/Makefile.am                  |    1 +
 build/win32/vs14/Makefile.am                  |    1 +
 build/win32/vs15/Makefile.am                  |    1 +
 build/win32/vs9/rsvg-install.vcproj           |   40 +++++++++++++++++++++++++
 build/win32/vs9/rsvg-install.vspropsin        |    6 ++++
 build/win32/vs9/rsvg-version-paths.vsprops.in |    4 ++
 12 files changed, 106 insertions(+), 12 deletions(-)
---
diff --git a/build/win32/vs10/Makefile.am b/build/win32/vs10/Makefile.am
index edbc440..3a1c7b9 100644
--- a/build/win32/vs10/Makefile.am
+++ b/build/win32/vs10/Makefile.am
@@ -19,6 +19,7 @@ EXTRA_DIST =  \
        rsvg-convert.vcxprojin                  \
        rsvg-convert.vcxproj.filtersin          \
        rsvg-install.vcxproj                    \
+       rsvg-install.vcxproj.filters            \
        rsvg-view-3.vcxproj                     \
        rsvg-view-3.vcxproj.filters             \
        README.txt                              \
diff --git a/build/win32/vs10/rsvg-install.propsin b/build/win32/vs10/rsvg-install.propsin
index 4ffeedc..22fab04 100644
--- a/build/win32/vs10/rsvg-install.propsin
+++ b/build/win32/vs10/rsvg-install.propsin
@@ -22,8 +22,12 @@ mkdir $(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders
 copy $(SolutionDir)$(Configuration)\$(Platform)\bin\rsvg-$(ApiVersion).lib $(CopyDir)\lib
 copy $(SolutionDir)$(Configuration)\$(Platform)\bin\libpixbufloader-svg.dll 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders
 copy $(SolutionDir)$(Configuration)\$(Platform)\bin\libpixbufloader-svg.pdb 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders
+
+if exist ..\librsvg-2.0.pc copy ..\librsvg-2.0.pc $(CopyDir)\lib\pkgconfig
     </RsvgDoInstall>
     <RsvgPostInstall>$(GlibEtcInstallRoot)\bin\gdk-pixbuf-query-loaders.exe &gt; 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders.cache</RsvgPostInstall>
+    <RsvgPCFiles>..\librsvg-2.0.pc</RsvgPCFiles>
+    <RsvgGenPC>(if not exist $(CopyDir) mkdir $(CopyDir)) &amp; (if exist $(PythonPath)\python.exe 
$(PythonPath)\python.exe ..\rsvgpc.py --prefix=$(CopyDir) 
--version=$(RsvgMajorVersion).$(RsvgMinorVersion).$(RsvgMicroVersion))</RsvgGenPC>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>rsvginstallprops</_PropertySheetDisplayName>
@@ -36,5 +40,11 @@ copy $(SolutionDir)$(Configuration)\$(Platform)\bin\libpixbufloader-svg.pdb $(Co
     <BuildMacro Include="RsvgPostInstall">
       <Value>$(RsvgPostInstall)</Value>
     </BuildMacro>
+    <BuildMacro Include="RsvgPCFiles">
+      <Value>$(RsvgPCFiles)</Value>
+    </BuildMacro>
+    <BuildMacro Include="RsvgGenPC">
+      <Value>$(RsvgGenPC)</Value>
+    </BuildMacro>
   </ItemGroup>
 </Project>
diff --git a/build/win32/vs10/rsvg-install.vcxproj b/build/win32/vs10/rsvg-install.vcxproj
index b077233..991cdec 100644
--- a/build/win32/vs10/rsvg-install.vcxproj
+++ b/build/win32/vs10/rsvg-install.vcxproj
@@ -75,18 +75,22 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <CustomBuild Include="placeholder">
-      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying Build Results...</Message>
-      <Command 
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">placeholder;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying Build Results...</Message>
-      <Command 
Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">placeholder;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying Build Results...</Message>
-      <Command 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">placeholder;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying Build Results...</Message>
-      <Command 
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">placeholder;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug'">Copying Build Results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Debug'">$(RsvgPCFiles)</AdditionalInputs>
+      <Command Condition="'$(Configuration)'=='Debug'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug'">install_placeholder;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release'">Copying Build Results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Release'">$(RsvgPCFiles)</AdditionalInputs>
+      <Command Condition="'$(Configuration)'=='Release'">$(RsvgDoInstall)$(RsvgPostInstall)</Command>
+      <Outputs Condition="'$(Configuration)'=='Release'">install_placeholder;%(Outputs)</Outputs>
+    </CustomBuild>
+    <CustomBuild Include="..\..\..\librsvg.pc.in">
+      <Message Condition="'$(Configuration)'=='Debug'">Generating .pc file...</Message>
+      <Command Condition="'$(Configuration)'=='Debug'">$(RsvgGenPC)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug'">$(RsvgPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release'">Generating .pc file...</Message>
+      <Command Condition="'$(Configuration)'=='Release'">$(RsvgGenPC)</Command>
+      <Outputs Condition="'$(Configuration)'=='Release'">$(RsvgPCFiles);%(Outputs)</Outputs>
     </CustomBuild>
   </ItemGroup>
   <ItemGroup>
diff --git a/build/win32/vs10/rsvg-install.vcxproj.filters b/build/win32/vs10/rsvg-install.vcxproj.filters
new file mode 100644
index 0000000..636c2ab
--- /dev/null
+++ b/build/win32/vs10/rsvg-install.vcxproj.filters
@@ -0,0 +1,21 @@
+<?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="Headers">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+   <CustomBuild Include="placeholder"><Filter>Resource Files</Filter></CustomBuild>
+   <CustomBuild Include="..\..\..\librsvg.pc.in"><Filter>Resource Files</Filter></CustomBuild>
+  </ItemGroup>
+</Project>
diff --git a/build/win32/vs10/rsvg-version-paths.props.in b/build/win32/vs10/rsvg-version-paths.props.in
index 9fbd987..239b151 100644
--- a/build/win32/vs10/rsvg-version-paths.props.in
+++ b/build/win32/vs10/rsvg-version-paths.props.in
@@ -17,6 +17,7 @@
     <RsvgSeparateVSDllSuffix>-$(ApiVersion)-vs$(VSVer)</RsvgSeparateVSDllSuffix>
     <RsvgDllPrefix>$(RsvgSeparateVSDllPrefix)</RsvgDllPrefix>
     <RsvgDllSuffix>$(RsvgSeparateVSDllSuffix)</RsvgDllSuffix>
+    <PythonPath>c:\python34</PythonPath>
   </PropertyGroup>
   <PropertyGroup>
     <_PropertySheetDisplayName>rsvgversionpathsprops</_PropertySheetDisplayName>
@@ -65,5 +66,8 @@
     <BuildMacro Include="RsvgDllSuffix">
       <Value>$(RsvgDllSuffix)</Value>
     </BuildMacro>
+    <BuildMacro Include="PythonPath">
+      <Value>$(PythonPath)</Value>
+    </BuildMacro>
   </ItemGroup>
 </Project>
diff --git a/build/win32/vs11/Makefile.am b/build/win32/vs11/Makefile.am
index 95d1a20..e53d87e 100644
--- a/build/win32/vs11/Makefile.am
+++ b/build/win32/vs11/Makefile.am
@@ -11,6 +11,7 @@ EXTRA_DIST =    \
        rsvg-convert.vcxproj                    \
        rsvg-convert.vcxproj.filters            \
        rsvg-install.vcxproj                    \
+       rsvg-install.vcxproj.filters            \
        rsvg-view-3.vcxproj                     \
        rsvg-view-3.vcxproj.filters             \
        README.txt                              \
diff --git a/build/win32/vs12/Makefile.am b/build/win32/vs12/Makefile.am
index 6b350fa..48d44c0 100644
--- a/build/win32/vs12/Makefile.am
+++ b/build/win32/vs12/Makefile.am
@@ -11,6 +11,7 @@ EXTRA_DIST =    \
        rsvg-convert.vcxproj                    \
        rsvg-convert.vcxproj.filters            \
        rsvg-install.vcxproj                    \
+       rsvg-install.vcxproj.filters            \
        rsvg-view-3.vcxproj                     \
        rsvg-view-3.vcxproj.filters             \
        README.txt 
diff --git a/build/win32/vs14/Makefile.am b/build/win32/vs14/Makefile.am
index a3fdc20..829383f 100644
--- a/build/win32/vs14/Makefile.am
+++ b/build/win32/vs14/Makefile.am
@@ -11,6 +11,7 @@ EXTRA_DIST =    \
        rsvg-convert.vcxproj                    \
        rsvg-convert.vcxproj.filters            \
        rsvg-install.vcxproj                    \
+       rsvg-install.vcxproj.filters            \
        rsvg-view-3.vcxproj                     \
        rsvg-view-3.vcxproj.filters             \
        README.txt 
diff --git a/build/win32/vs15/Makefile.am b/build/win32/vs15/Makefile.am
index 7f1721e..6cd4d93 100644
--- a/build/win32/vs15/Makefile.am
+++ b/build/win32/vs15/Makefile.am
@@ -11,6 +11,7 @@ EXTRA_DIST =    \
        rsvg-convert.vcxproj                    \
        rsvg-convert.vcxproj.filters            \
        rsvg-install.vcxproj                    \
+       rsvg-install.vcxproj.filters            \
        rsvg-view-3.vcxproj                     \
        rsvg-view-3.vcxproj.filters             \
        README.txt 
diff --git a/build/win32/vs9/rsvg-install.vcproj b/build/win32/vs9/rsvg-install.vcproj
index d64e2e9..4456a08 100644
--- a/build/win32/vs9/rsvg-install.vcproj
+++ b/build/win32/vs9/rsvg-install.vcproj
@@ -68,6 +68,46 @@
        <References>
        </References>
        <Files>
+               <Filter
+                       Name="Resource Files"
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+                       >
+                       <File RelativePath="..\rsvgpc.py">
+                               <FileConfiguration Name="Debug|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(RsvgGenPC)"
+                                               Outputs="..\librsvg-2.0.pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(RsvgGenPC)"
+                                               Outputs="..\librsvg-2.0.pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Debug|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(RsvgGenPC)"
+                                               Outputs="..\librsvg-2.0.pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(RsvgGenPC)"
+                                               Outputs="..\librsvg-2.0.pc"
+                                       />
+                               </FileConfiguration>
+                       </File>
+               </Filter>
        </Files>
        <Globals>
        </Globals>
diff --git a/build/win32/vs9/rsvg-install.vspropsin b/build/win32/vs9/rsvg-install.vspropsin
index 41e7d25..05aba2e 100644
--- a/build/win32/vs9/rsvg-install.vspropsin
+++ b/build/win32/vs9/rsvg-install.vspropsin
@@ -25,10 +25,16 @@ mkdir $(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\rsvg-$(ApiVersion).lib $(CopyDir)\lib&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\libpixbufloader-svg.dll 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders&#x0D;&#x0A;
 copy $(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin\libpixbufloader-svg.pdb 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders&#x0D;&#x0A;
+
+if exist ..\librsvg-$(ApiVersion).pc copy ..\librsvg-$(ApiVersion).pc $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
                      "
        />
        <UserMacro
                Name="RsvgPostInstall"
                Value="$(GlibEtcInstallRoot)\bin\gdk-pixbuf-query-loaders.exe &gt; 
$(CopyDir)\lib\gdk-pixbuf-2.0\2.10.0\loaders.cache"
        />
+       <UserMacro
+               Name="RsvgGenPC"
+               Value="(if not exist $(CopyDir) mkdir $(CopyDir)) &amp; (if exist $(PythonPath)\python.exe 
$(PythonPath)\python.exe ..\rsvgpc.py --prefix=$(CopyDir) 
--version=$(RsvgMajorVersion).$(RsvgMinorVersion).$(RsvgMicroVersion))"
+       />
 </VisualStudioPropertySheet>
diff --git a/build/win32/vs9/rsvg-version-paths.vsprops.in b/build/win32/vs9/rsvg-version-paths.vsprops.in
index 7fa415a..7175324 100644
--- a/build/win32/vs9/rsvg-version-paths.vsprops.in
+++ b/build/win32/vs9/rsvg-version-paths.vsprops.in
@@ -62,4 +62,8 @@
                Name="RsvgDllSuffix"
                Value="$(RsvgSeparateVSDllSuffix)"
        />
+       <UserMacro
+               Name="PythonPath"
+               Value="c:\python27"
+       />
 </VisualStudioPropertySheet>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]