Skip to content
This repository has been archived by the owner on Sep 22, 2018. It is now read-only.

Commit

Permalink
gobject-introspection: Added version 1.48.0
Browse files Browse the repository at this point in the history
  • Loading branch information
TingPing committed Apr 8, 2016
1 parent 6c13e93 commit 1fff134
Show file tree
Hide file tree
Showing 15 changed files with 1,733 additions and 1 deletion.
5 changes: 5 additions & 0 deletions README.md
Expand Up @@ -61,6 +61,11 @@ These are the libraries in the bundle:
<td>2.46.2</td> <td>2.46.2</td>
<td><a href="https://dl.hexchat.net/gtk-win32/src/glib-2.46.2.tar.xz">Source</a></td> <td><a href="https://dl.hexchat.net/gtk-win32/src/glib-2.46.2.tar.xz">Source</a></td>
</tr> </tr>
<tr>
<td>GObject-Introspection</td>
<td>1.48.0</td>
<td><a href="https://dl.hexchat.net/gtk-win32/src/gobject-introspection-1.48.0.tar.xz">Source</a></td>
</tr>
<tr> <tr>
<td>GTK+</td> <td>GTK+</td>
<td>2.24.30</td> <td>2.24.30</td>
Expand Down
59 changes: 58 additions & 1 deletion build.ps1
Expand Up @@ -115,7 +115,7 @@ param (
[string] [string]
$PerlDirectory = "$BuildDirectory\perl-5.20", $PerlDirectory = "$BuildDirectory\perl-5.20",


[string[]][ValidateSet('atk', 'cairo', 'enchant', 'fontconfig', 'freetype', 'gdk-pixbuf', 'gettext-runtime', 'glib', 'gtk', 'harfbuzz', 'libffi', 'libpng', 'libxml2', 'openssl', 'pango', 'pixman', 'pkg-config', 'win-iconv', 'zlib')] [string[]][ValidateSet('atk', 'cairo', 'enchant', 'fontconfig', 'freetype', 'gdk-pixbuf', 'gettext-runtime', 'glib', 'gobject-introspection', 'gtk', 'harfbuzz', 'libffi', 'libpng', 'libxml2', 'openssl', 'pango', 'pixman', 'pkg-config', 'win-iconv', 'zlib')]
$OnlyBuild = @() $OnlyBuild = @()
) )


Expand Down Expand Up @@ -168,6 +168,11 @@ $items = @{
'Dependencies' = @('gettext-runtime', 'libffi', 'zlib') 'Dependencies' = @('gettext-runtime', 'libffi', 'zlib')
}; };


'gobject-introspection' = @{
'ArchiveUrl' = 'http://dl.hexchat.net/gtk-win32/src/gobject-introspection-1.48.0.tar.xz'
'Dependencies' = @('glib', 'cairo', 'pkg-config')
};

'gtk' = @{ 'gtk' = @{
'ArchiveUrl' = 'http://dl.hexchat.net/gtk-win32/src/gtk+-2.24.30.tar.xz' 'ArchiveUrl' = 'http://dl.hexchat.net/gtk-win32/src/gtk+-2.24.30.tar.xz'
'Dependencies' = @('atk', 'gdk-pixbuf', 'pango') 'Dependencies' = @('atk', 'gdk-pixbuf', 'pango')
Expand Down Expand Up @@ -486,6 +491,58 @@ $items['glib'].BuildScript = {
Package $packageDestination Package $packageDestination
} }


$items['gobject-introspection'].BuildScript = {
$packageDestination = "$PWD-rel"
Remove-Item -Recurse $packageDestination -ErrorAction Ignore
New-Item -Type Directory $packageDestination

$originalEnvironment = Swap-Environment $vcvarsEnvironment

# Avoid gi-introspect target
Exec msbuild build\win32\vs14\gobject-introspection.sln /p:Platform=$platform /p:Configuration=Release /nodeReuse:True /target:gi-install

[void] (Swap-Environment $originalEnvironment)

New-Item -Type Directory $packageDestination\share\doc\gobject-introspection
Copy-Item .\COPYING $packageDestination\share\doc\gobject-introspection

Package $packageDestination

# This process is split into two parts.
# This is because:
# - The project files are broken
# - The build process outputs libraries and tools that are depended
# upon for the second phase, this requires properly setting up various
# paths which is just easier if it is already installed.

$packageDestination = "$PWD-data-rel"
Remove-Item -Recurse $packageDestination -ErrorAction Ignore

$originalEnvironment = Swap-Environment $vcvarsEnvironment

Exec $patch -p1 -i pkg-config-env-var.patch

$env:PREFIX = "..\..\..\..\..\gtk\$platform"
$env:PKG_CONFIG = "..\..\..\..\..\gtk\$platform\bin\pkg-config.exe"
$env:PYTHON = "..\..\..\..\..\python-2.7\$platform\python.exe"

Push-Location .\build\win32

Exec nmake -f .\gi-introspection-msvc.mak CFG=release

[void] (Swap-Environment $originalEnvironment)

New-Item -Type Directory $packageDestination\share\gir-1.0
Copy-Item .\*.gir $packageDestination\share\gir-1.0

New-Item -Type Directory $packageDestination\lib\girepository-1.0
Copy-Item .\*.typelib $packageDestination\lib\girepository-1.0

Pop-Location

Package $packageDestination
}

$items['gtk'].BuildScript = { $items['gtk'].BuildScript = {
$packageDestination = "$PWD-rel" $packageDestination = "$PWD-rel"
Remove-Item -Recurse $packageDestination -ErrorAction Ignore Remove-Item -Recurse $packageDestination -ErrorAction Ignore
Expand Down
5 changes: 5 additions & 0 deletions deps-graph.txt
Expand Up @@ -9,6 +9,11 @@
[GLib]->[GDK-PixBuf] [GLib]->[GDK-PixBuf]
[libpng]->[GDK-PixBuf] [libpng]->[GDK-PixBuf]
[win-iconv]->[gettext-runtime] [win-iconv]->[gettext-runtime]
[Cairo]->[GObject-Introspection]
[Fontconfig]->[GObject-Introspection]
[FreeType]->[GObject-Introspection]
[GLib]->[GObject-Introspection]
[libxml2]->[GObject-Introspection]
[gettext-runtime]->[GLib] [gettext-runtime]->[GLib]
[libffi]->[GLib] [libffi]->[GLib]
[zlib]->[GLib] [zlib]->[GLib]
Expand Down
185 changes: 185 additions & 0 deletions gobject-introspection/build/win32/vs14/_giscanner.vcxproj
@@ -0,0 +1,185 @@
<?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">
<ProjectGuid>{8311394F-9114-4C97-80F2-51BCABA054C9}</ProjectGuid>
<RootNamespace>_giscanner</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v140</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="gi-build-defines.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="gi-build-defines.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="gi-build-defines.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="gi-build-defines.props" />
</ImportGroup>
<Import Project="..\..\..\..\stack.props" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
<PreprocessorDefinitions>_DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
<AdditionalLibraryDirectories>$(PythonDir)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
<PreprocessorDefinitions>YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
<AdditionalLibraryDirectories>$(PythonDir)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
<PreprocessorDefinitions>_DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
<AdditionalLibraryDirectories>$(PythonDirX64)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<ForcedIncludeFiles>%(ForcedIncludeFiles);io.h</ForcedIncludeFiles>
<PreprocessorDefinitions>YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).pyd</OutputFile>
<AdditionalLibraryDirectories>$(PythonDirX64)\libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\giscanner\giscannermodule.c" />
<ClCompile Include="..\..\..\scannerlexer.c" />
<ClCompile Include="..\..\..\scannerparser.c" />
<ClCompile Include="..\..\..\giscanner\sourcescanner.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gi-prebuild.vcxproj">
<Project>{2093d218-190e-4194-9421-3ba7cbf33b11}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

4 comments on commit 1fff134

@nacho
Copy link
Contributor

@nacho nacho commented on 1fff134 Apr 10, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fanc999 how about taking this patch upstream?

@TingPing
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also note this makefile is used in every project.

@fanc999
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi** @nacho,

Makes sense for the .mak patch. I will do this a bit later today.


Hi @TingPing,

Yes, this is used in every project. Note that from your previous e-mail projects such as Pango, ATK, GDK-Pixbuf and up do not have their .pc files generated, nor the cairo*.pc's, since doing so would be too close to the GNOME 3.20 release for comfort. I am intending to do this ASAP, and switch the introspection generation stuff to use the mechanism that is done like upstream libsoup and GtkSourceView as well. This is done as introspection building depends a lot on pkg-config.


With blessings, thank you!

@fanc999
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @nacho, @TingPing,

I have pushed the patch for introspection-msvc.mak upstream for gobject-introspection.

With blessings!

Please sign in to comment.