mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-03-10 07:50:19 +00:00
Switched hardcoded DLL names to wildcard patterns (ex: atk-1.0-0.dll → *atk-1.0-0.dll, iconv.dll → *iconv*.dll, etc.) so it correctly picks up lib* prefixed builds. Made Enchant provider copying resilient by copying lib\enchant\*.dll instead of a single hardcoded libenchant_myspell.dll. Added optional copy support for LuaJIT DLLs (luajit*.dll) alongside lua51.dll. win32/installer/zoitechat.iss.tt Updated DLL Source: entries to match real-world names from dependency bundles using wildcards (*glib-2*.dll, *gtk-3*.dll, etc.). Added optional LuaJIT inclusion (skip if missing) and wildcarded girepository. win32/zoitechat.props Added env overrides so CI (and humans) can actually control paths: ZOITECHAT_DEPS_PATH ZOITECHAT_PYTHON3_PATH already supported ISCC_EXE and now it actually matters. Fixed glib-genmarshal handling to prefer glib-genmarshal.exe if present (and only use Python script path if needed). Added library-name auto-detection for MSVC import libs (gtk-3.lib vs gtk-3.0.lib vs libgtk-3.lib, etc.) so linking doesn’t die just because the bundle names differ. Ensured InstallerEnabled gets re-evaluated after IsccPath is resolved (GTK3 had the order wrong, so installer builds could be silently disabled). .github/workflows/windows-build.yml Made artifact collection and plugin validation tolerate win32 vs Win32 output directory naming, instead of assuming humans are consistent (they aren’t).
114 lines
6.3 KiB
XML
114 lines
6.3 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup Label="Configuration">
|
|
<PlatformToolset>v143</PlatformToolset>
|
|
<ConfigurationType>Application</ConfigurationType>
|
|
</PropertyGroup>
|
|
<ItemGroup Label="ProjectConfigurations">
|
|
<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>{C9B735E4-75BC-45AC-A5E3-39A6D076F912}</ProjectGuid>
|
|
<RootNamespace>copy</RootNamespace>
|
|
</PropertyGroup>
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
<Import Project="..\zoitechat.props" />
|
|
<ItemGroup>
|
|
<None Include="$(DepsRoot)\bin\cert.pem" />
|
|
<None Include="$(DepsRoot)\bin\*atk-1.0-0.dll" />
|
|
<None Include="$(DepsRoot)\bin\*cairo*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*freetype*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*fribidi*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*fontconfig*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gdk_pixbuf*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gdk-3*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gio-2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*glib-2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gmodule-2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gobject-2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\gspawn-win$(PlatformArchitecture)-helper.exe" />
|
|
<None Include="$(DepsRoot)\bin\gspawn-win$(PlatformArchitecture)-helper-console.exe" />
|
|
<None Include="$(DepsRoot)\bin\*gthread-2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*gtk-3*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*iconv*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*crypto*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*ssl*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*enchant*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*ffi*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*intl*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*jpeg*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*png*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*jpeg*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*xml2*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*pango-1.0-0.dll" />
|
|
<None Include="$(DepsRoot)\bin\*pangocairo-1.0-0.dll" />
|
|
<None Include="$(DepsRoot)\bin\*pangoft2-1.0-0.dll" />
|
|
<None Include="$(DepsRoot)\bin\*pangowin32-1.0-0.dll" />
|
|
<None Include="$(DepsRoot)\bin\*zlib*.dll" />
|
|
<None Include="$(WinSparklePath)\WinSparkle.dll" />
|
|
<None Include="changelog.url" />
|
|
<None Include="readme.url" />
|
|
|
|
<None Include="$(DepsRoot)\bin\lua51.dll" />
|
|
<None Include="$(DepsRoot)\bin\luajit*.dll" />
|
|
<None Include="$(DepsRoot)\bin\*girepository*.dll" />
|
|
<LuaLib Include="$(DepsRoot)\lib\lua\**\*.dll" />
|
|
<LuaShare Include="$(DepsRoot)\share\lua\*.lua" />
|
|
<LuaShare Include="$(DepsRoot)\share\lua\**\*.lua" />
|
|
<LuaShare Include="$(DepsRoot)\share\lua\**\**\*.lua" />
|
|
<Typelib Include="$(DepsRoot)\lib\girepository-1.0\*.typelib" />
|
|
<EnchantProviders Include="$(DepsRoot)\lib\enchant\*.dll" />
|
|
<None Include="$(Python3Path)\Lib\site-packages\_cffi_backend.*.pyd" />
|
|
|
|
<Gtk3Immodules Include="$(DepsRoot)\lib\gtk-3.0\3.0.0\immodules\**\*" />
|
|
<Gtk3PrintBackends Include="$(DepsRoot)\lib\gtk-3.0\3.0.0\printbackends\**\*" />
|
|
|
|
<FontConfig Include="$(DepsRoot)\etc\fonts\*"/>
|
|
|
|
<Share Include="share\**\*" />
|
|
|
|
<DepsRootDocs Include="$(DepsRoot)\share\doc\**\*" />
|
|
|
|
<Locale Include="$(ZoiteChatBin)locale\**\*;$(DepsRoot)\share\locale\**\*" />
|
|
|
|
<MSWindowsTheme Include="$(DepsRoot)\share\themes\MS-Windows\**\*" />
|
|
</ItemGroup>
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
<Target Name="Build">
|
|
<Copy SourceFiles="@(None)" DestinationFolder="$(ZoiteChatRel)" />
|
|
<Copy SourceFiles="@(FontConfig)" DestinationFolder="$(ZoiteChatRel)\etc\fonts" />
|
|
<Copy SourceFiles="@(Gtk3Immodules)" DestinationFiles="@(Gtk3Immodules->'$(ZoiteChatRel)\lib\gtk-3.0\3.0.0\immodules\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(Gtk3PrintBackends)" DestinationFiles="@(Gtk3PrintBackends->'$(ZoiteChatRel)\lib\gtk-3.0\3.0.0\printbackends\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(Share)" DestinationFiles="@(Share->'$(ZoiteChatRel)\share\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="..\..\COPYING" DestinationFolder="$(ZoiteChatRel)\share\doc\zoitechat" />
|
|
<Copy SourceFiles="$(WinSparklePath)\COPYING" DestinationFolder="$(ZoiteChatRel)\share\doc\WinSparkle" />
|
|
<Copy SourceFiles="@(EnchantProviders)" DestinationFolder="$(ZoiteChatRel)\lib\enchant" />
|
|
<Copy SourceFiles="@(Locale)" DestinationFiles="@(Locale->'$(ZoiteChatRel)\share\locale\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(MSWindowsTheme)" DestinationFiles="@(MSWindowsTheme->'$(ZoiteChatRel)\share\themes\MS-Windows\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(LuaShare)" DestinationFiles="@(LuaShare->'$(ZoiteChatRel)\share\lua\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(LuaLib)" DestinationFiles="@(LuaLib->'$(ZoiteChatRel)\lib\lua\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="@(Typelib)" DestinationFiles="@(Typelib->'$(ZoiteChatRel)\lib\girepository-1.0\%(Filename)%(Extension)')" />
|
|
<Copy SourceFiles="..\..\plugins\python\xchat.py" DestinationFolder="$(ZoiteChatRel)\python" />
|
|
<Copy SourceFiles="..\..\plugins\python\zoitechat.py" DestinationFolder="$(ZoiteChatRel)\python" />
|
|
<Copy SourceFiles="..\..\plugins\python\_zoitechat.py" DestinationFolder="$(ZoiteChatRel)\python" />
|
|
|
|
<WriteLinesToFile File="$(ZoiteChatRel)portable-mode" Lines="2" Overwrite="true" />
|
|
|
|
<Copy SourceFiles="@(DepsRootDocs)" DestinationFiles="@(DepsRootDocs->'$(ZoiteChatRel)\share\doc\%(RecursiveDir)%(Filename)%(Extension)')" />
|
|
</Target>
|
|
</Project>
|
|
|
|
|
|
|
|
|
|
|