mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-03-10 07:50:19 +00:00
Updated the Windows build to prefer glib-genmarshal executables with a Python fallback for marshal generation. Made GTK link dependencies more robust by selecting available ATK library names before assembling GTK libs.
146 lines
10 KiB
XML
146 lines
10 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup Label="UserMacros">
|
|
|
|
<!-- SPECIFY YOUR DEPENDENCY DIRECTORIES HERE -->
|
|
|
|
<YourDepsPath>c:\gtk-build\gtk</YourDepsPath>
|
|
<YourGendefPath>c:\gtk-build\gendef</YourGendefPath>
|
|
<YourPerlPath>c:\gtk-build\perl-5.20</YourPerlPath>
|
|
<YourPython3Path>c:\gtk-build\python-3.14</YourPython3Path>
|
|
<YourWinSparklePath>c:\gtk-build\WinSparkle</YourWinSparklePath>
|
|
|
|
<!-- YOU SHOULDN'T TOUCH ANYTHING BELOW -->
|
|
|
|
<!-- G_DISABLE_DEPRECATED is unfeasible due to g_completion_* -->
|
|
<!-- must be buildable with GSEAL_ENABLE in the future, xtext, setup, and chanview-tabs stand in the way -->
|
|
<OwnFlags>GTK_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;HAVE_X509_GET_SIGNATURE_NID;HAVE_SSL_CTX_GET_SSL_METHOD;DEFAULT_CERT_FILE="cert.pem";HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline;$(GtkDefines)</OwnFlags>
|
|
<!-- FIXME: Add ability to use debug builds -->
|
|
<GtkPlatform Condition="'$(PlatformName)'=='Win32'">x86</GtkPlatform>
|
|
<GtkPlatform Condition="'$(GtkPlatform)'==''">$(PlatformName)</GtkPlatform>
|
|
<DepsRoot>$(YourDepsPath)\$(GtkPlatform)\release</DepsRoot>
|
|
<GendefPath>$(YourGendefPath)</GendefPath>
|
|
<WinSparklePath>$(YourWinSparklePath)\$(PlatformName)</WinSparklePath>
|
|
<PerlPath>$(YourPerlPath)\$(PlatformName)</PerlPath>
|
|
<PerlLib>perl520</PerlLib>
|
|
<Python3Path>$(YourPython3Path)\$(PlatformName)</Python3Path>
|
|
<Python3Lib>python314</Python3Lib>
|
|
<Python3Output>hcpython3</Python3Output>
|
|
<LuaInclude>$(DepsRoot)\include\luajit-2.1;$(DepsRoot)\include\lua;$(DepsRoot)\include\lua5.1;$(DepsRoot)\include\lua54;$(DepsRoot)\include\lua5.4;$(DepsRoot)\include\lua-5.4;$(SolutionDir)..\plugins\lua\luajit\src;$(SolutionDir)..\plugins\lua\luajit\src\jit</LuaInclude>
|
|
<LuaOutput>hclua</LuaOutput>
|
|
<LuaEnabled Condition="Exists('$(DepsRoot)\\include\\lua.h')">true</LuaEnabled>
|
|
<LuaEnabled Condition="'$(LuaEnabled)'=='' and Exists('$(DepsRoot)\\include\\lua5.1\\lua.h')">true</LuaEnabled>
|
|
<LuaEnabled Condition="'$(LuaEnabled)'=='' and Exists('$(DepsRoot)\\include\\lua5.4\\lua.h')">true</LuaEnabled>
|
|
<LuaEnabled Condition="'$(LuaEnabled)'=='' and Exists('$(DepsRoot)\\include\\lua-5.4\\lua.h')">true</LuaEnabled>
|
|
<LuaEnabled Condition="'$(LuaEnabled)'=='' and Exists('$(SolutionDir)..\\plugins\\lua\\luajit\\src\\lua.h')">true</LuaEnabled>
|
|
<LuaEnabled Condition="'$(LuaEnabled)'==''">false</LuaEnabled>
|
|
<LuaLib Condition="Exists('$(DepsRoot)\\lib\\lua51.lib')">lua51</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'=='' and Exists('$(DepsRoot)\\lib\\lua5.1.lib')">lua5.1</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'=='' and Exists('$(DepsRoot)\\lib\\lua54.lib')">lua54</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'=='' and Exists('$(DepsRoot)\\lib\\lua5.4.lib')">lua5.4</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'=='' and Exists('$(DepsRoot)\\lib\\lua-5.4.lib')">lua-5.4</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'=='' and Exists('$(DepsRoot)\\lib\\lua.lib')">lua</LuaLib>
|
|
<LuaLib Condition="'$(LuaLib)'==''">lua51</LuaLib>
|
|
<GlibGenMarshal Condition="Exists('$(DepsRoot)\\bin\\glib-genmarshal.exe')">"$(DepsRoot)\bin\glib-genmarshal.exe"</GlibGenMarshal>
|
|
<GlibGenMarshal Condition="'$(GlibGenMarshal)'=='' and Exists('$(DepsRoot)\\bin\\glib-genmarshal')">"$(DepsRoot)\bin\glib-genmarshal"</GlibGenMarshal>
|
|
<GlibGenMarshal Condition="'$(GlibGenMarshal)'==''">"$(Python3Path)\python.exe" "$(DepsRoot)\bin\glib-genmarshal"</GlibGenMarshal>
|
|
<Glib>$(DepsRoot)\include\glib-2.0;$(DepsRoot)\lib\glib-2.0\include;$(DepsRoot)\include\libxml2</Glib>
|
|
<UsingGtk3 Condition="Exists('$(DepsRoot)\\include\\gtk-3.0\\gtk\\gtk.h')">true</UsingGtk3>
|
|
<GtkDefines>HAVE_GTK3</GtkDefines>
|
|
<Gtk3>$(DepsRoot)\include\gtk-3.0;$(DepsRoot)\lib\gtk-3.0\include</Gtk3>
|
|
<GtkCommon>$(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0;$(DepsRoot)\include\harfbuzz</GtkCommon>
|
|
<Gtk>$(Gtk3);$(GtkCommon)</Gtk>
|
|
<XmlLib Condition="Exists('$(DepsRoot)\\lib\\libxml2-2.0.lib')">libxml2-2.0.lib</XmlLib>
|
|
<XmlLib Condition="'$(XmlLib)'=='' and Exists('$(DepsRoot)\\lib\\libxml2-2.lib')">libxml2-2.lib</XmlLib>
|
|
<XmlLib Condition="'$(XmlLib)'=='' and Exists('$(DepsRoot)\\lib\\xml2.lib')">xml2.lib</XmlLib>
|
|
<XmlLib Condition="'$(XmlLib)'==''">libxml2.lib</XmlLib>
|
|
<SslLib Condition="Exists('$(DepsRoot)\\lib\\libssl.lib')">libssl.lib</SslLib>
|
|
<SslLib Condition="'$(SslLib)'=='' and Exists('$(DepsRoot)\\lib\\libssl-3-x64.lib')">libssl-3-x64.lib</SslLib>
|
|
<SslLib Condition="'$(SslLib)'=='' and Exists('$(DepsRoot)\\lib\\libssl-3-x86.lib')">libssl-3-x86.lib</SslLib>
|
|
<SslLib Condition="'$(SslLib)'=='' and Exists('$(DepsRoot)\\lib\\libssl-3.lib')">libssl-3.lib</SslLib>
|
|
<SslLib Condition="'$(SslLib)'=='' and Exists('$(DepsRoot)\\lib\\ssl.lib')">ssl.lib</SslLib>
|
|
<CryptoLib Condition="Exists('$(DepsRoot)\\lib\\libcrypto.lib')">libcrypto.lib</CryptoLib>
|
|
<CryptoLib Condition="'$(CryptoLib)'=='' and Exists('$(DepsRoot)\\lib\\libcrypto-3-x64.lib')">libcrypto-3-x64.lib</CryptoLib>
|
|
<CryptoLib Condition="'$(CryptoLib)'=='' and Exists('$(DepsRoot)\\lib\\libcrypto-3-x86.lib')">libcrypto-3-x86.lib</CryptoLib>
|
|
<CryptoLib Condition="'$(CryptoLib)'=='' and Exists('$(DepsRoot)\\lib\\libcrypto-3.lib')">libcrypto-3.lib</CryptoLib>
|
|
<CryptoLib Condition="'$(CryptoLib)'=='' and Exists('$(DepsRoot)\\lib\\crypto.lib')">crypto.lib</CryptoLib>
|
|
<SslLegacyLib Condition="Exists('$(DepsRoot)\\lib\\ssleay32.lib')">ssleay32.lib</SslLegacyLib>
|
|
<CryptoLegacyLib Condition="Exists('$(DepsRoot)\\lib\\libeay32.lib')">libeay32.lib</CryptoLegacyLib>
|
|
<OpenSslInclude Condition="Exists('$(DepsRoot)\\include\\openssl\\ssl.h')">$(DepsRoot)\include</OpenSslInclude>
|
|
<OpenSslInclude Condition="'$(OpenSslInclude)'=='' and Exists('$(DepsRoot)\\include\\openssl3\\openssl\\ssl.h')">$(DepsRoot)\include\openssl3</OpenSslInclude>
|
|
<OpenSslInclude Condition="'$(OpenSslInclude)'=='' and Exists('$(DepsRoot)\\include\\openssl-3\\openssl\\ssl.h')">$(DepsRoot)\include\openssl-3</OpenSslInclude>
|
|
<ZlibLib Condition="Exists('$(DepsRoot)\\lib\\zlib.lib')">zlib.lib</ZlibLib>
|
|
<ZlibLib Condition="'$(ZlibLib)'=='' and Exists('$(DepsRoot)\\lib\\zlib1.lib')">zlib1.lib</ZlibLib>
|
|
<ZlibLib Condition="'$(ZlibLib)'=='' and Exists('$(DepsRoot)\\lib\\zlibstatic.lib')">zlibstatic.lib</ZlibLib>
|
|
<ZlibLib Condition="'$(ZlibLib)'==''">zlib.lib</ZlibLib>
|
|
<Gtk3Lib Condition="Exists('$(DepsRoot)\\lib\\gtk-3.0.lib')">gtk-3.0.lib</Gtk3Lib>
|
|
<Gtk3Lib Condition="'$(Gtk3Lib)'=='' and Exists('$(DepsRoot)\\lib\\gtk-3.lib')">gtk-3.lib</Gtk3Lib>
|
|
<Gtk3Lib Condition="'$(Gtk3Lib)'=='' and Exists('$(DepsRoot)\\lib\\gtk-3-0.lib')">gtk-3-0.lib</Gtk3Lib>
|
|
<Gdk3Lib Condition="Exists('$(DepsRoot)\\lib\\gdk-3.0.lib')">gdk-3.0.lib</Gdk3Lib>
|
|
<Gdk3Lib Condition="'$(Gdk3Lib)'=='' and Exists('$(DepsRoot)\\lib\\gdk-3-0.lib')">gdk-3-0.lib</Gdk3Lib>
|
|
<Gdk3Lib Condition="'$(Gdk3Lib)'=='' and Exists('$(DepsRoot)\\lib\\gdk-3.lib')">gdk-3.lib</Gdk3Lib>
|
|
<AtkLib Condition="Exists('$(DepsRoot)\\lib\\atk-1.0.lib')">atk-1.0.lib</AtkLib>
|
|
<AtkLib Condition="'$(AtkLib)'=='' and Exists('$(DepsRoot)\\lib\\atk-1.0-0.lib')">atk-1.0-0.lib</AtkLib>
|
|
<AtkLib Condition="'$(AtkLib)'=='' and Exists('$(DepsRoot)\\lib\\libatk-1.0.lib')">libatk-1.0.lib</AtkLib>
|
|
<AtkLib Condition="'$(AtkLib)'==''">atk-1.0.lib</AtkLib>
|
|
<Gtk3Libs>$(Gtk3Lib);$(Gdk3Lib);$(AtkLib);gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;intl.lib;iconv.lib;$(ZlibLib);$(XmlLib);jpeg.lib;libpng16.lib;$(CryptoLib);$(SslLib)</Gtk3Libs>
|
|
|
|
<DepLibs>$(Gtk3Libs);wininet.lib;winmm.lib;ws2_32.lib</DepLibs>
|
|
<DataDir>$(SolutionDir)..\data\\</DataDir>
|
|
<ZoiteChatBuild>$(SolutionDir)..\..\zoitechat-build</ZoiteChatBuild>
|
|
<ZoiteChatBin>$(ZoiteChatBuild)\$(PlatformName)\bin\</ZoiteChatBin>
|
|
<ZoiteChatObj>$(ZoiteChatBuild)\$(PlatformName)\obj\</ZoiteChatObj>
|
|
<ZoiteChatLib>$(ZoiteChatBuild)\$(PlatformName)\lib\</ZoiteChatLib>
|
|
<ZoiteChatPdb>$(ZoiteChatBuild)\$(PlatformName)\pdb\</ZoiteChatPdb>
|
|
<ZoiteChatRel>$(ZoiteChatBuild)\$(PlatformName)\rel\</ZoiteChatRel>
|
|
<IsccPath>"$(ProgramFiles)\Inno Setup 5\iscc.exe"</IsccPath>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<LinkIncremental>false</LinkIncremental>
|
|
<IntDir>$(ZoiteChatObj)$(ProjectName)\</IntDir>
|
|
<UseDebugLibraries>false</UseDebugLibraries>
|
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
<CharacterSet>MultiByte</CharacterSet>
|
|
</PropertyGroup>
|
|
|
|
<ItemDefinitionGroup>
|
|
<ClCompile>
|
|
<WarningLevel>Level3</WarningLevel>
|
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
|
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
|
|
<AdditionalOptions>/d2Zi+ %(AdditionalOptions)</AdditionalOptions>
|
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
<!-- UNCOMMENT ONLY ONE -->
|
|
<!--Optimization>Disabled</Optimization-->
|
|
<Optimization>MaxSpeed</Optimization>
|
|
<!--Optimization>MinSpace</Optimization-->
|
|
<!--Optimization>Full</Optimization-->
|
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
|
<PreProcessorDefinitions>NTDDI_VERSION=NTDDI_WIN8;_WIN32_WINNT=_WIN32_WINNT_WIN8;%(PreProcessorDefinitions)</PreProcessorDefinitions>
|
|
</ClCompile>
|
|
<Lib>
|
|
<LinkTimeCodeGeneration>true</LinkTimeCodeGeneration>
|
|
</Lib>
|
|
<Link>
|
|
<ImportLibrary>$(ZoiteChatLib)$(TargetName).lib</ImportLibrary>
|
|
<ProgramDatabaseFile>$(ZoiteChatPdb)$(TargetName).pdb</ProgramDatabaseFile>
|
|
<SubSystem>Windows</SubSystem>
|
|
<GenerateDebugInformation>Debug</GenerateDebugInformation>
|
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
<OptimizeReferences>true</OptimizeReferences>
|
|
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
|
</Link>
|
|
</ItemDefinitionGroup>
|
|
|
|
<ItemGroup />
|
|
</Project>
|
|
|
|
|
|
|
|
|
|
|
|
|