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

Commit

Permalink
libxml2: Updated to version 2.9.4
Browse files Browse the repository at this point in the history
  • Loading branch information
Arnavion committed Jun 11, 2016
1 parent de43592 commit ec7db38
Show file tree
Hide file tree
Showing 9 changed files with 62 additions and 486 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -37,7 +37,7 @@ These are the libraries in the bundle:
| lgi | 0.9.1 | [Source](https://dl.hexchat.net/gtk-win32/src/lgi-0.9.1.tar.gz) | lgi | 0.9.1 | [Source](https://dl.hexchat.net/gtk-win32/src/lgi-0.9.1.tar.gz)
| libffi | 3.2.1 | [Source](https://dl.hexchat.net/gtk-win32/src/libffi-3.2.1.tar.gz) | libffi | 3.2.1 | [Source](https://dl.hexchat.net/gtk-win32/src/libffi-3.2.1.tar.gz)
| libpng | 1.6.22 | [Source](https://dl.hexchat.net/gtk-win32/src/libpng-1.6.22.tar.xz) | libpng | 1.6.22 | [Source](https://dl.hexchat.net/gtk-win32/src/libpng-1.6.22.tar.xz)
| libxml2 | 2.9.3 | [Source](https://dl.hexchat.net/gtk-win32/src/libxml2-2.9.3.tar.gz) | libxml2 | 2.9.4 | [Source](https://dl.hexchat.net/gtk-win32/src/libxml2-2.9.4.tar.gz)
| luajit | 2.0.4 | [Source](https://dl.hexchat.net/gtk-win32/src/luajit-2.0.4.tar.gz) | luajit | 2.0.4 | [Source](https://dl.hexchat.net/gtk-win32/src/luajit-2.0.4.tar.gz)
| OpenSSL | 1.0.2g | [Source](https://dl.hexchat.net/gtk-win32/src/openssl-1.0.2g.tar.gz) | OpenSSL | 1.0.2g | [Source](https://dl.hexchat.net/gtk-win32/src/openssl-1.0.2g.tar.gz)
| Pango | 1.39.0 | [Source](https://dl.hexchat.net/gtk-win32/src/pango-1.39.0.tar.xz) | Pango | 1.39.0 | [Source](https://dl.hexchat.net/gtk-win32/src/pango-1.39.0.tar.xz)
Expand Down
10 changes: 4 additions & 6 deletions build.ps1
Expand Up @@ -218,7 +218,7 @@ $items = @{
}; };


'libxml2' = @{ 'libxml2' = @{
'ArchiveUrl' = 'http://dl.hexchat.net/gtk-win32/src/libxml2-2.9.3.tar.gz' 'ArchiveUrl' = 'https://dl.hexchat.net/gtk-win32/src/libxml2-2.9.4.tar.gz'
'Dependencies' = @('win-iconv') 'Dependencies' = @('win-iconv')
}; };


Expand Down Expand Up @@ -803,21 +803,19 @@ $items['libxml2'].BuildScript = {


$originalEnvironment = Swap-Environment $vcvarsEnvironment $originalEnvironment = Swap-Environment $vcvarsEnvironment


Exec msbuild win32\vc12\libxml2.sln /p:Platform=$platform /p:Configuration=Release /maxcpucount /nodeReuse:True $windowsTargetPlatformVersion Exec msbuild win32\VC14\libxml2.vcxproj /p:Platform=$platform /p:Configuration=Release /maxcpucount /nodeReuse:True $windowsTargetPlatformVersion


[void] (Swap-Environment $originalEnvironment) [void] (Swap-Environment $originalEnvironment)


New-Item -Type Directory $packageDestination\bin New-Item -Type Directory $packageDestination\bin
Copy-Item ` Copy-Item `
.\lib\libxml2.dll, ` .\lib\libxml2.dll, `
.\lib\libxml2.pdb, ` .\lib\libxml2.pdb `
.\lib\runsuite.exe, `
.\lib\runsuite.pdb `
$packageDestination\bin $packageDestination\bin


New-Item -Type Directory $packageDestination\include\libxml New-Item -Type Directory $packageDestination\include\libxml
Copy-Item ` Copy-Item `
.\win32\VC12\config.h, ` .\win32\VC14\config.h, `
.\include\wsockcompat.h, ` .\include\wsockcompat.h, `
.\include\libxml\*.h ` .\include\libxml\*.h `
$packageDestination\include\libxml $packageDestination\include\libxml
Expand Down
98 changes: 50 additions & 48 deletions libxml2/mod.md
@@ -1,66 +1,68 @@
* Download [libxml2 2.9.3](ftp://xmlsoft.org/libxml2/libxml2-2.9.3.tar.gz) * Download [libxml2 2.9.3](ftp://xmlsoft.org/libxml2/libxml2-2.9.4.tar.gz)
* Copy win32\VC10 to win32\VC12 * Copy `win32\VC10` to `win32\VC14`
* Remove the `iconv` project and its references from `win32\VC12\libxml2.sln`, `win32\VC12\libxml2.vcxproj` and `win32\VC12\runsuite.vcxproj` * In `libxml2.vcxproj`:
* Open `win32\VC12\libxml2.sln` with VS * Add
* Add x64 configuration ```
* For the `libxml2` and `runsuite` projects: <ProjectConfiguration Include="Release|x64">
* Set `<AdditionalIncludeDirectories>' to `$(ProjectDir);$(ProjectDir)..\..\include;$(ProjectDir)..\..\include;$(ProjectDir)..\..\..\..\..\gtk\$(Platform)\include;%(AdditionalIncludeDirectories)` <Configuration>Release</Configuration>
* Add `<DisableSpecificWarnings>4996</DisableSpecificWarnings>` <Platform>x64</Platform>
* For the `libxml2` project: </ProjectConfiguration>
* Change _Configuration Type_ to _Dynamic Library (.dll)_ under _Configuration Properties_ `->` _General_ ```
* Set `<AdditionalLibraryDirectories>` to `..\..\..\..\..\gtk\$(Platform)\lib` * Add `<PlatformToolset>v140</PlatformToolset>` to all `<PropertyGroup>` elements that have `Label="Configuration"`
* Set `<AdditionalDependencies>` to `ws2_32.lib;iconv.lib` * Replace `<ConfigurationType>Application</ConfigurationType>` with `<ConfigurationType>DynamicLibrary</ConfigurationType>`
* Add
```
<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" />
</ImportGroup>
```
* Add `<Import Project="..\..\..\stack.props" />`
* Replace * Replace
``` ```
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(ProjectDir)..\..\lib\</OutDir> <OutDir>$(ProjectDir)..\..\lib\</OutDir>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<IntDir>build\$(ProjectName)$(Configuration)\</IntDir> <IntDir>build\$(ProjectName)$(Configuration)\</IntDir>
</PropertyGroup>
```
with
```
<PropertyGroup>
<OutDir>$(ProjectDir)..\..\lib\</OutDir>
<IntDir>build\$(ProjectName)$(Configuration)\</IntDir>
</PropertyGroup>
```
* Add to libxml2.vcxproj.filters:
```
<ClCompile Include="..\..\buf.c">
<Filter>Source Files</Filter>
</ClCompile>
```
* For the `runsuites` project:
* Replace
```
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(ProjectDir)..\..\lib\</OutDir>
<IntDir>build\$(ProjectName)$(Configuration)\</IntDir>
</PropertyGroup> </PropertyGroup>
``` ```
with with
``` ```
<PropertyGroup> <PropertyGroup>
<OutDir>$(ProjectDir)..\..\lib\</OutDir> <OutDir>$(ProjectDir)..\..\lib\</OutDir>
<IntDir>build\$(ProjectName)$(Configuration)\</IntDir> <IntDir>build\$(ProjectName)$(Configuration)\</IntDir>
</PropertyGroup> </PropertyGroup>
``` ```
* In `win32\VC12\config.h` * Remove all `<Optimization>` elements
* Add `<DisableSpecificWarnings>4996</DisableSpecificWarnings>`
* In the `<ItemDefinitionGroup>` elements' `<Link>` tags for `Release|Win32` and `Release|x64`:
* Under `<Compile>`, add:
```
<AdditionalIncludeDirectories>$(ProjectDir);$(ProjectDir)..\..\include;$(ProjectDir)..\..\include;$(ProjectDir)..\..\..\..\..\gtk\$(Platform)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
```
* Under `<Link>`, add:
```
<AdditionalLibraryDirectories>..\..\..\..\..\gtk\$(Platform)\lib;$(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;iconv.lib;%(AdditionalDependencies)</AdditionalDependencies>
```
* Remove
```
<ItemGroup>
<ProjectReference Include="..\..\..\libiconv-1.14.vc10\windows\VC10\iconv.vcxproj">
<Project>{bec03130-a64c-48f8-863c-52da83cfb3ae}</Project>
<Private>true</Private>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
<LinkLibraryDependencies>true</LinkLibraryDependencies>
<UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>
</ProjectReference>
</ItemGroup>
```
* In `win32\VC14\config.h`
* Add * Add
``` ```
#define SEND_ARG2_CAST #define SEND_ARG2_CAST
#define GETHOSTBYNAME_ARG_CAST #define GETHOSTBYNAME_ARG_CAST
``` ```
* Replace
```
#define snprintf _snprintf
```
with
```
#if _MSC_VER < 1900
#define snprintf _snprintf
#endif
```
* Add `#undef LIBXML_LZMA_ENABLED` * Add `#undef LIBXML_LZMA_ENABLED`
56 changes: 0 additions & 56 deletions libxml2/win32/VC12/libxml2.sln

This file was deleted.

174 changes: 0 additions & 174 deletions libxml2/win32/VC12/libxml2.vcxproj.filters

This file was deleted.

0 comments on commit ec7db38

Please sign in to comment.