[libsoup] Visual Studio builds: Generate .pc files upon "install"



commit b627c10c88e7aaefc869a1c1f6d700c339d044ef
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Thu Mar 9 17:16:17 2017 +0800

    Visual Studio builds: Generate .pc files upon "install"
    
    This generates the .pc files for libsoup upon completion of the build
    process, so that one will have ready-to-use .pc files for the package.

 win32/vs10/Makefile.am                  |    1 +
 win32/vs10/soup-install.propsin         |   12 +++++++-
 win32/vs10/soup-install.vcxproj         |   12 +++++++-
 win32/vs10/soup-install.vcxproj.filters |   13 ++++++++
 win32/vs11/Makefile.am                  |    1 +
 win32/vs12/Makefile.am                  |    1 +
 win32/vs14/Makefile.am                  |    1 +
 win32/vs15/Makefile.am                  |    1 +
 win32/vs9/soup-install.vcproj           |   48 ++++++++++++++++++++++++++++--
 win32/vs9/soup-install.vspropsin        |    8 ++++-
 10 files changed, 91 insertions(+), 7 deletions(-)
---
diff --git a/win32/vs10/Makefile.am b/win32/vs10/Makefile.am
index f52fc7a..78bd5f8 100644
--- a/win32/vs10/Makefile.am
+++ b/win32/vs10/Makefile.am
@@ -13,6 +13,7 @@ EXTRA_DIST = \
        simple-httpd.vcxproj            \
        simple-proxy.vcxproj            \
        soup-install.vcxproj            \
+       soup-install.vcxproj.filters    \
        get.vcxproj.filters             \
        simple-httpd.vcxproj.filters    \
        simple-proxy.vcxproj.filters    \
diff --git a/win32/vs10/soup-install.propsin b/win32/vs10/soup-install.propsin
index e9cbaa7..1160892 100644
--- a/win32/vs10/soup-install.propsin
+++ b/win32/vs10/soup-install.propsin
@@ -21,6 +21,8 @@ copy $(SolutionDir)\$(Configuration)\$(Platform)\bin\simple-proxy.pdb $(CopyDir)
 mkdir $(CopyDir)\lib
 copy $(SolutionDir)\$(Configuration)\$(Platform)\bin\soup-$(ApiVersion).lib $(CopyDir)\lib
 copy $(SolutionDir)\$(Configuration)\$(Platform)\bin\soup-gnome-$(ApiVersion).lib $(CopyDir)\lib
+copy ..\libsoup-$(ApiVersion).pc $(CopyDir)\lib\pkgconfig
+copy ..\libsoup-gnome-$(ApiVersion).pc $(CopyDir)\lib\pkgconfig
 
 mkdir $(CopyDir)\include\libsoup-$(ApiVersion)\libsoup
 #include "soup.vs10.headers"
@@ -28,14 +30,22 @@ mkdir $(CopyDir)\include\libsoup-$(ApiVersion)\libsoup
 mkdir $(CopyDir)\include\libsoup-gnome-$(ApiVersion)\libsoup
 #include "soup-gnome.vs10.headers"
     </SoupDoInstall>
+    <SoupPCFiles>..\libsoup-$(ApiVersion).pc;..\libsoup-gnome-$(ApiVersion).pc</SoupPCFiles>
+    <SoupGenPC>(if not exist $(CopyDir)\lib\pkgconfig mkdir $(CopyDir)\lib\pkgconfig) &amp; 
($(PythonPath)\python.exe ..\souppc.py --prefix=$(CopyDir) 
--version=$(SoupMajorVersion).$(SoupMinorVersion).$(SoupMicroVersion))</SoupGenPC>
   </PropertyGroup>
   <PropertyGroup>
-    <_PropertySheetDisplayName>pangoinstallprops</_PropertySheetDisplayName>
+    <_PropertySheetDisplayName>soupinstallprops</_PropertySheetDisplayName>
   </PropertyGroup>
   <ItemDefinitionGroup />
   <ItemGroup>
     <BuildMacro Include="SoupDoInstall">
       <Value>$(SoupDoInstall)</Value>
     </BuildMacro>
+    <BuildMacro Include="SoupPCFiles">
+      <Value>$(SoupPCFiles)</Value>
+    </BuildMacro>
+    <BuildMacro Include="SoupGenPC">
+      <Value>$(SoupGenPC)</Value>
+    </BuildMacro>
   </ItemGroup>
 </Project>
diff --git a/win32/vs10/soup-install.vcxproj b/win32/vs10/soup-install.vcxproj
index 726c39b..07da506 100644
--- a/win32/vs10/soup-install.vcxproj
+++ b/win32/vs10/soup-install.vcxproj
@@ -74,14 +74,24 @@
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
   </ItemDefinitionGroup>
   <ItemGroup>
-    <CustomBuild Include="config.h.win32">
+    <CustomBuild Include="install_stub">
       <Message Condition="'$(Configuration)'=='Debug'">Copying build results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Debug'">$(SoupPCFiles)</AdditionalInputs>
       <Command Condition="'$(Configuration)'=='Debug'">$(SoupDoInstall)</Command>
       <Outputs Condition="'$(Configuration)'=='Debug'">some_file;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Copying build results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Release'">$(SoupPCFiles)</AdditionalInputs>
       <Command Condition="'$(Configuration)'=='Release'">$(SoupDoInstall)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">some_file;%(Outputs)</Outputs>
     </CustomBuild>
+    <CustomBuild Include="..\..\libsoup-2.4.pc.in">
+      <Message Condition="'$(Configuration)'=='Debug'">Generating .pc files...</Message>
+      <Command Condition="'$(Configuration)'=='Debug'">$(SoupGenPC)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug'">$(SoupPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release'">Generating .pc files...</Message>
+      <Command Condition="'$(Configuration)'=='Release'">$(SoupGenPC)</Command>
+      <Outputs Condition="'$(Configuration)'=='Release'">$(SoupPCFiles);%(Outputs)</Outputs>
+    </CustomBuild>
   </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="get.vcxproj">
diff --git a/win32/vs10/soup-install.vcxproj.filters b/win32/vs10/soup-install.vcxproj.filters
new file mode 100644
index 0000000..2627f42
--- /dev/null
+++ b/win32/vs10/soup-install.vcxproj.filters
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <ItemGroup>
+    <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="install_stub"><Filter>Resource Files</Filter></CustomBuild>
+    <CustomBuild Include="..\..\libsoup-2.4.pc.in"><Filter>Resource Files</Filter></CustomBuild>
+  </ItemGroup>
+</Project>
diff --git a/win32/vs11/Makefile.am b/win32/vs11/Makefile.am
index d67496b..3f913e6 100644
--- a/win32/vs11/Makefile.am
+++ b/win32/vs11/Makefile.am
@@ -4,6 +4,7 @@ EXTRA_DIST = \
        simple-httpd.vcxproj            \
        simple-proxy.vcxproj            \
        soup-install.vcxproj            \
+       soup-install.vcxproj.filters    \
        get.vcxproj.filters             \
        simple-httpd.vcxproj.filters    \
        simple-proxy.vcxproj.filters    \
diff --git a/win32/vs12/Makefile.am b/win32/vs12/Makefile.am
index dd6a7e5..a86d179 100644
--- a/win32/vs12/Makefile.am
+++ b/win32/vs12/Makefile.am
@@ -4,6 +4,7 @@ EXTRA_DIST = \
        simple-httpd.vcxproj            \
        simple-proxy.vcxproj            \
        soup-install.vcxproj            \
+       soup-install.vcxproj.filters    \
        get.vcxproj.filters             \
        simple-httpd.vcxproj.filters    \
        simple-proxy.vcxproj.filters    \
diff --git a/win32/vs14/Makefile.am b/win32/vs14/Makefile.am
index 87bd1b5..43db09d 100644
--- a/win32/vs14/Makefile.am
+++ b/win32/vs14/Makefile.am
@@ -5,6 +5,7 @@ EXTRA_DIST = \
        simple-proxy.vcxproj            \
        get.vcxproj.filters             \
        soup-install.vcxproj            \
+       soup-install.vcxproj.filters    \
        simple-httpd.vcxproj.filters    \
        simple-proxy.vcxproj.filters    \
        soup-build-defines.props        \
diff --git a/win32/vs15/Makefile.am b/win32/vs15/Makefile.am
index 9820a88..efb3c88 100644
--- a/win32/vs15/Makefile.am
+++ b/win32/vs15/Makefile.am
@@ -5,6 +5,7 @@ EXTRA_DIST = \
        simple-proxy.vcxproj            \
        get.vcxproj.filters             \
        soup-install.vcxproj            \
+       soup-install.vcxproj.filters    \
        simple-httpd.vcxproj.filters    \
        simple-proxy.vcxproj.filters    \
        soup-build-defines.props        \
diff --git a/win32/vs9/soup-install.vcproj b/win32/vs9/soup-install.vcproj
index dcf6832..665b91a 100644
--- a/win32/vs9/soup-install.vcproj
+++ b/win32/vs9/soup-install.vcproj
@@ -25,7 +25,7 @@
                        CharacterSet="2"
                        >
                        <Tool
-                               Name="VCPreBuildEventTool"
+                               Name="VCPostBuildEventTool"
                                CommandLine="$(SoupDoInstall)"
                        />
                </Configuration>
@@ -37,7 +37,7 @@
                        WholeProgramOptimization="1"
                        >
                        <Tool
-                               Name="VCPreBuildEventTool"
+                               Name="VCPostBuildEventTool"
                                CommandLine="$(SoupDoInstall)"
                        />
                </Configuration>
@@ -48,7 +48,7 @@
                        CharacterSet="2"
                        >
                        <Tool
-                               Name="VCPreBuildEventTool"
+                               Name="VCPostBuildEventTool"
                                CommandLine="$(SoupDoInstall)"
                        />
                </Configuration>
@@ -60,7 +60,7 @@
                        WholeProgramOptimization="1"
                        >
                        <Tool
-                               Name="VCPreBuildEventTool"
+                               Name="VCPostBuildEventTool"
                                CommandLine="$(SoupDoInstall)"
                        />
                </Configuration>
@@ -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="..\..\libsoup-2.4.pc.in">
+                               <FileConfiguration Name="Debug|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(SoupGenPC)"
+                                               
Outputs="..\libsoup-$(ApiVersion).pc;..\libsoup-gnome-$(ApiVersion).pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(SoupGenPC)"
+                                               
Outputs="..\libsoup-$(ApiVersion).pc;..\libsoup-gnome-$(ApiVersion).pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Debug|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(SoupGenPC)"
+                                               
Outputs="..\libsoup-$(ApiVersion).pc;..\libsoup-gnome-$(ApiVersion).pc"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration Name="Release|x64">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Generating .pc files..."
+                                               CommandLine="$(SoupGenPC)"
+                                               
Outputs="..\libsoup-$(ApiVersion).pc;..\libsoup-gnome-$(ApiVersion).pc"
+                                       />
+                               </FileConfiguration>
+                       </File>
+               </Filter>
        </Files>
        <Globals>
        </Globals>
diff --git a/win32/vs9/soup-install.vspropsin b/win32/vs9/soup-install.vspropsin
index 2052441..5948d77 100644
--- a/win32/vs9/soup-install.vspropsin
+++ b/win32/vs9/soup-install.vspropsin
@@ -23,6 +23,8 @@ copy $(SolutionDir)\$(ConfigurationName)\$(PlatformName)\bin\simple-proxy.pdb $(
 mkdir $(CopyDir)\lib&#x0D;&#x0A;
 copy $(SolutionDir)\$(ConfigurationName)\$(PlatformName)\bin\soup-$(ApiVersion).lib 
$(CopyDir)\lib&#x0D;&#x0A;
 copy $(SolutionDir)\$(ConfigurationName)\$(PlatformName)\bin\soup-gnome-$(ApiVersion).lib 
$(CopyDir)\lib&#x0D;&#x0A;
+copy ..\libsoup-$(ApiVersion).pc $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
+copy ..\libsoup-gnome-$(ApiVersion).pc $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
 
 mkdir $(CopyDir)\include\libsoup-$(ApiVersion)\libsoup&#x0D;&#x0A;
 #include "soup.headers"
@@ -30,5 +32,9 @@ mkdir $(CopyDir)\include\libsoup-$(ApiVersion)\libsoup&#x0D;&#x0A;
 mkdir $(CopyDir)\include\libsoup-gnome-$(ApiVersion)\libsoup&#x0D;&#x0A;
 #include "soup-gnome.headers"
                     "
- />
+       />
+       <UserMacro
+               Name="SoupGenPC"
+               Value="(if not exist $(CopyDir)\lib\pkgconfig mkdir $(CopyDir)\lib\pkgconfig) &amp; 
($(PythonPath)\python.exe ..\souppc.py --prefix=$(CopyDir) 
--version=$(SoupMajorVersion).$(SoupMinorVersion).$(SoupMicroVersion))"
+       />
 </VisualStudioPropertySheet>


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