Commit Graph

440 Commits

Author SHA1 Message Date
deepend-tildeclub
4927413bcb Change plugin and language descriptions to custom 2026-02-14 21:55:15 -07:00
deepend-tildeclub
c3c814b28d Modify installer project file for pre-build event
Updated pre-build event command to include ISCC path.
2026-02-14 21:37:13 -07:00
deepend-tildeclub
6efe62e277 Add error checks for Lua dependencies in props file 2026-02-14 20:56:46 -07:00
deepend-tildeclub
ae2757c515 Add Lua runtime and share directory conditions 2026-02-14 20:55:48 -07:00
ba892240cb Fixed the Windows installer pre-build PowerShell invocation by replacing the bare powershell command with a configurable $(PowerShellPath) call in installer.vcxproj, and added stable flags (-NoProfile -ExecutionPolicy Bypass) to reduce environment-specific failures. This addresses the MSB3073/9009 command-not-found class of error you reported.
Added a PowerShellPath resolution chain in zoitechat.props so builds can use:

    POWERSHELL_EXE override,

    %WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe when present,

    fallback powershell.exe from PATH.
2026-02-14 17:56:27 -07:00
173d10f336 revert: back to 874ea99 2026-02-14 17:40:42 -07:00
deepend-tildeclub
b52a2ca4cf Update YourGendefPath to point to gtk-build 2026-02-14 17:21:38 -07:00
3e2268b391 chore: normalize line endings 2026-02-14 17:02:11 -07:00
874ea99492 win32/copy/copy.vcxproj
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).
2026-02-14 15:57:41 -07:00
deepend-tildeclub
20b0aab470 Modify pre-build event for locale directory handling
Updated pre-build event command to check for existence before removing the locale directory.
2026-02-14 14:23:53 -07:00
deepend-tildeclub
a8db164ef7 Change plugin and language types to normal custom 2026-02-14 13:25:05 -07:00
deepend-tildeclub
fdd3664a6e Update zoitechat.props with new XML structure 2026-02-14 12:51:52 -07:00
deepend-tildeclub
e9cf931714 Fix XML formatting in zoitechat.props 2026-02-14 12:16:41 -07:00
deepend-tildeclub
9b2cf3de43 Update copy.vcxproj with new XML structure 2026-02-14 12:10:10 -07:00
deepend-tildeclub
7f9920554e Update typelib source path from girepository-2.0 to 1.0 2026-02-14 11:55:20 -07:00
deepend-tildeclub
6fd191f32d Rename girepository-2.0.dll to girepository-2.0-0.dll 2026-02-14 02:31:35 -07:00
deepend-tildeclub
eba86758f2 Update copy.vcxproj with new XML structure 2026-02-14 02:27:44 -07:00
deepend-tildeclub
7fa5e6db3c Update copy.vcxproj with new XML structure 2026-02-14 02:21:57 -07:00
deepend-tildeclub
0117092f83 Update girepository DLL and typelib references 2026-02-14 02:15:37 -07:00
deepend-tildeclub
8ea9bffba2 Refactor zoitechat.props for dependency paths and validation
Updated the XML structure and paths in zoitechat.props to ensure correct dependency resolution and build environment validation.
2026-02-14 02:08:48 -07:00
deepend-tildeclub
2742b62ef1 Update zoitechat.props for dependency paths 2026-02-14 01:58:53 -07:00
deepend-tildeclub
0872d3b445 Fix XML formatting in installer.vcxproj 2026-02-14 01:55:01 -07:00
deepend-tildeclub
e654bfd127 Update zoitechat.props with new configuration 2026-02-14 01:54:11 -07:00
deepend-tildeclub
6f493ed47e Update zoitechat.props with new property definitions 2026-02-14 01:47:51 -07:00
deepend-tildeclub
98f1e8af57 Update print statement from 'Hello' to 'Goodbye' 2026-02-14 01:29:09 -07:00
deepend-tildeclub
ce597da1a3 Upgrade PlatformToolset from v142 to v143 2026-02-14 01:28:39 -07:00
deepend-tildeclub
dba80a5a9e Upgrade PlatformToolset from v142 to v143 2026-02-14 01:28:08 -07:00
deepend-tildeclub
3c94112aeb Upgrade project to use v143 toolset
Updated project file to use v143 toolset and adjusted configurations.
2026-02-14 01:27:37 -07:00
deepend-tildeclub
2436c3bad1 Update installer.vcxproj XML structure 2026-02-14 00:53:47 -07:00
deepend-tildeclub
32358a876b Update zoitechat.props for dependency paths 2026-02-14 00:49:32 -07:00
deepend-tildeclub
a05c596e48 Update print statement from 'Hello' to 'Goodbye' 2026-02-13 22:08:09 -07:00
b2d8336dd0 changes to innosetup version / path. changed to precompiled gtk3 binaries. 2026-02-13 21:49:58 -07:00
2dd2d18ade removed extra character 2026-02-13 20:47:03 -07:00
3d9a92787b Fixed IsccPath values in win32/zoitechat.props by removing embedded quotes from the default Program Files paths, so the path is stored raw and can be quoted exactly once at invocation time. This addresses the “cannot find iscc.exe” behavior caused by double/nested quoting. 2026-02-13 20:44:39 -07:00
9acec081a4 Fixed installer detection to evaluate IsccPath safely when the path contains spaces by changing the existence check to Exists('$(IsccPath)').
Fixed ISCC path normalization by trimming surrounding quotes from ZOITECHAT_ISCC_PATH and storing discovered default paths unquoted (so they can be checked reliably with Exists(...)).
Fixed installer invocation by quoting $(IsccPath) at execution time in the pre-build command, which supports paths like C:\Program Files (x86)\Inno Setup 6\ISCC.exe
2026-02-13 20:40:48 -07:00
6d101c4e10 Updated Windows build props so IsccPath can be set explicitly with ZOITECHAT_ISCC_PATH, then auto-detected across common install locations (ProgramFiles, ProgramFiles(x86), ProgramW6432) before falling back to the default path. This reduces false “iscc.exe not found” skips when Inno Setup is installed in a non-default location. 2026-02-13 20:26:36 -07:00
deepend-tildeclub
09e9e7314b Update dependency paths and Inno Setup version 2026-02-13 20:19:47 -07:00
a86dc5ae85 Added build capability switches in the shared Windows props file so optional components are only enabled when their prerequisites exist:
Python3Enabled (python executable + import lib + cffi)
   PerlEnabled (perl executable + perl runtime DLL + gendef.exe)
   InstallerEnabled (Inno Setup iscc.exe).
Updated the Python plugin project to compile only when Python3Enabled is true, and otherwise emit a clear skip message instead of failing prebuild/import steps.
Updated the Perl plugin project similarly to gate build steps on PerlEnabled and print a skip message when prerequisites are missing.
Updated the installer project so it only uses C++ targets when InstallerEnabled is true, with a fallback skip message when Inno Setup is unavailable.
2026-02-13 20:14:39 -07:00
bb70bcb4e3 Updated the Windows installer pre-build script to create $(ZoiteChatBin) if it doesn’t exist before generating zoitechat.iss, which addresses the “The system cannot find the path specified” failure path during installer project builds. 2026-02-13 20:04:12 -07:00
c86701ee3c fix extra character on line 47 2026-02-13 19:59:25 -07:00
01ec120536 Updated Windows build property resolution so GlibGenMarshal runs through Python when only $(DepsRoot)\bin\glib-genmarshal (no .exe) exists. This prevents MSBuild from trying to execute a script as a native executable on Windows.
Kept existing behavior intact for glib-genmarshal.exe and glib-genmarshal.py paths; only the script-without-extension case changed.
2026-02-13 19:56:49 -07:00
f734f230fd fix path for girepository dll 2026-02-13 19:47:45 -07:00
5c7697a765 Reworked win32/zoitechat.props to follow the original GTK2-style dependency layout for GTK3 by setting DepsRoot back to $(YourDepsPath)\$(PlatformName)\release (removing the GtkPlatform indirection and direct-root auto-detection added previously). 2026-02-13 19:41:13 -07:00
ca7340530d Updated Win32 path macro handling in win32/zoitechat.props so local Your*Path values can now be sourced from environment variables (ZOITECHAT_DEPS_PATH, ZOITECHAT_GENDEF_PATH, ZOITECHAT_PERL_PATH, ZOITECHAT_PYTHON3_PATH, ZOITECHAT_WINSPARKLE_PATH) before falling back to the existing c:\gtk-build\... defaults. This makes CI/dev-shell overrides much easier without manually editing the props file each time.
Added a new MSBuild target (ValidateWindowsBuildEnvironment) that runs before build prep and fails fast with explicit errors when GTK/GLib/OpenSSL headers or Python are missing, instead of allowing a long cascade of downstream compile/link/copy failures.
2026-02-13 19:28:34 -07:00
3dd54d5fea Added additional Windows GTK glib-genmarshal discovery fallbacks for Python-based script locations to handle missing executables in common layouts.
Broadened ATK import library detection to include libatk-1.0-0.lib for Win32 builds.
2026-02-07 08:45:47 -07:00
45ef2da0ac Added Windows dependency detection to enable/disable the Lua plugin build based on available headers and skip builds when missing.
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.
2026-02-06 00:24:24 -07:00
6491dc1bde Added JPEG runtime DLL patterns to the Windows release copy step so the build artifacts include JPEG dependencies required by GTK stack DLLs.
Included JPEG runtime DLLs in the Windows installer payload to ensure they are shipped with both x86 and x64 packages.
2026-02-06 00:03:08 -07:00
1eee70ff9b Updated the Windows installer to package Lua lgi DLLs and scripts from the Lua 2.1 paths produced by the build, instead of the older paths, so the files are found during packaging. 2026-02-05 23:16:12 -07:00
0550fb90c5 Documented that the GTK 3 immodules are input method (IME) modules and printbackends are GTK 3 printing backends, noting they are still GTK-related but may be absent in some CI dependency bundles. 2026-02-05 21:33:17 -07:00
deepend-tildeclub
8cf9f8ba9d Change SourceDir from '..\release' to '..\rel' 2026-02-05 16:51:43 -07:00