Commit Graph

57 Commits

Author SHA1 Message Date
b93bad9859 windows x64-only purge: kill Win32 configs, simplify installer. 2026-02-28 09:53:37 -07:00
733f932b78 squash: win32 packaging detox (no comsupp/VC2013, trim payload, gate lua/python) 2026-02-28 09:36:50 -07:00
1c39d7b9ad Added hexchat.py to the Windows packaging copy step so the compatibility module is shipped alongside xchat.py/zoitechat.py in ZoiteChatRel\python, which resolves import hexchat failures for HexChat-style addons on Windows builds.
Added hexchat.py to the Visual Studio Python plugin project item list so it is tracked consistently in the Windows project metadata.

Added hexchat.py to the corresponding .vcxproj.filters entries under Source Files for IDE consistency.
2026-02-24 15:56:29 -07:00
9bdf654cbc Fixed the Windows packaging pipeline to include the app’s bundled menu icons from data/icons/menu/** by adding a dedicated ZoiteChatMenuIcons item group in the copy project. This ensures both light and dark menu icon files are staged during Windows builds.
Added an explicit copy step that places those menu icons into $(ZoiteChatRel)\share\icons\menu\..., which is already included by the installer’s share\icons\* rule, so they now get installed on Windows.
2026-02-17 21:46:46 -07:00
1a920ba955 I fixed the Windows runtime path so gdk-pixbuf can actually find/use its loader modules before GTK initializes, by adding win32_configure_pixbuf_loaders() and calling it in startup on Windows. This sets GDK_PIXBUF_MODULEDIR / GDK_PIXBUF_MODULE_FILE from the bundled install tree so SVG resources can render instead of placeholder icons.
I also fixed Windows packaging to include what the SVG path needs at runtime: librsvg DLLs, gdk-pixbuf loader modules, and loaders.cache in the release bundle.
2026-02-17 21:30:51 -07:00
f90783c298 Updated Windows packaging to include all dependency-provided icon assets by adding a new DepsRootIcons item ($(DepsRoot)\share\icons\**\*) in win32/copy/copy.vcxproj.
Added a corresponding copy step so those icons are emitted into the Windows release tree at $(ZoiteChatRel)\share\icons\..., ensuring parity with Linux icon availability in installed builds.
2026-02-17 20:47:20 -07:00
643ea9c7fb Removed the Windows-specific forced Adwaita icon theme override from win32_configure_icon_theme(), so ZoiteChat will no longer switch to Adwaita at runtime and can use the app’s own icon assets from the configured icon search path.
Removed Adwaita icon bundle copy rules from the Windows packaging project (copy.vcxproj), so share/icons/Adwaita is no longer pulled into Windows build artifacts.
Removed Adwaita icon inclusion from the Windows installer manifest (zoitechat.iss.tt), so installer builds no longer ship Adwaita icon files.
2026-02-17 20:39:12 -07:00
cb0fd33089 updated the Windows packaging project to include Adwaita icons in the bundle by adding an AdwaitaIcons item from $(DepsRoot)\share\icons\Adwaita\**\* and copying it into $(ZoiteChatRel)\share\icons\Adwaita\....
Added a Windows-packaged attribution file at win32/copy/share/adwaita-icons-attribution.txt; because win32/copy/copy.vcxproj already copies share\**\*, this file will be included in the Windows output under share\adwaita-icons-attribution.txt.
The attribution text explicitly uses “GNOME Project” and includes the requested link http://www.gnome.org.
2026-02-17 15:43:15 -07:00
ef87b569d7 Updated the Windows copy project to explicitly include GLib GSettings schema files from $(DepsRoot)\share\glib-2.0\schemas\* and copy them into the release tree at share\glib-2.0\schemas\..., ensuring gschemas.compiled is bundled with portable/release artifacts.
Updated the Inno Setup installer file list to install share\glib-2.0\schemas\* into {app}\share\glib-2.0\schemas under the libs component, so installed builds also ship required schema data.
Updated gtkutil_file_req_response() so only GTK_RESPONSE_ACCEPT runs the file-selection path; all non-accept responses now immediately destroy the dialog via the callback’s dialog pointer, avoiding chooser access on cancel paths.
Kept native chooser handling aligned with that behavior: chooser reads are still gated behind GTK_RESPONSE_ACCEPT, while cleanup remains a single unref path deferred to idle to avoid teardown-in-signal-stack issues on Windows.
2026-02-16 18:57:48 -07:00
371b1caaa6 Updated win32/copy/copy.vcxproj to keep only fixed (non-wildcard) items in the top-level project ItemGroup, which is the part Visual Studio analyzes for the wildcard warning.
Moved all wildcard-based includes (*.dll, **\*, etc.) into an ItemGroup inside the Build target so they’re evaluated at build time instead of as VC project item definitions, preserving the copy behavior
2026-02-15 14:35:19 -07:00
deepend-tildeclub
815f1c810e Add additional DLL dependencies to copy.vcxproj 2026-02-15 14:18:26 -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
9b2cf3de43 Update copy.vcxproj with new XML structure 2026-02-14 12:10:10 -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
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
f734f230fd fix path for girepository dll 2026-02-13 19:47:45 -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
deepend-tildeclub
d8985e9f91 Refactor copy.vcxproj for improved XML structure
Updated XML formatting and adjusted file includes for dependencies.
2026-02-04 23:38:03 -07:00
deepend-tildeclub
c9ddfc086c Migrate project from GTK 2 to GTK 3
Updated project file to include GTK 3 dependencies and configurations.
2026-02-04 17:45:39 -07:00
deepend-tildeclub
e5e22fc103 removed mention of thememan.exe 2026-01-16 18:16:22 -07:00
4683ef705b new name after fork 2026-01-05 23:12:38 -07:00
Patrick Griffis
a1f154cd5e win32: Remove Python 2 support 2023-11-03 14:23:55 -05:00
Patrick Griffis
3f07670b34 win32: Update to OpenSSL 1.1 2021-10-01 13:47:42 -05:00
DjLegolas
939ec7a16e Updated Toolset to v142 2021-05-23 19:43:24 -05:00
Patrick Griffis
706f9bca82 python: Rewrite with CFFI 2018-11-09 18:36:59 -05:00
Patrick Griffis
7659caada1 win32: Reflect gvsbuild changes 2018-08-29 16:10:21 +00:00
Patrick Griffis
541b9ca744 win32: Update to build against gvsbuild 2018-03-09 20:26:41 +00:00
Patrick Griffis
bd358dd570 win32: Reflect lua path changes in gtk-win32 2016-04-09 12:18:02 -07:00
Patrick Griffis
5b05271e4c win32: Install lgi with lua plugin 2016-04-07 18:27:43 -07:00
Arnavion
d48f31191f Updated location of GTK theme engines in 2.24.30. 2016-03-11 21:00:06 -08:00
Arnavion
f7e3d3f32c Use VS 2015 2015-10-10 16:14:12 -07:00
TingPing
b6877ccf5c win32: Use WinSparkle for handling updates
Fixes #1282
2015-02-12 19:11:46 -05:00
Arnavion
9858784eb6 Better project files.
- Output directly to rel\ instead of to bin\ and then copying files over.
- Deduped Win32 vs x64 configs
- Moved some common properties to hexchat.props
- All build intermediates (except htm's intermediates) are no longer emitted in the source directory
2015-02-11 10:01:29 -08:00
TingPing
e0f80e41bf win32: Use theme shipped with gtk
No reason for us to maintain own copy. This also
makes custom theme installing easier.
2014-06-25 20:38:53 -04:00
Eustachy Kapusta
b658fca4a7 Convert project files to vs2013 2013-09-15 15:07:46 -07:00
Eustachy Kapusta
715a520c0e Move optimization settings from all subsequent projects to hexchat.props 2013-07-24 20:56:36 +02:00
Arnavion
07bc467d03 win32: Moved PlatformToolset configuration to individual project files. It should be set before setting other properties or importing other props.
This fixes the broken GUI Platform Toolset indicator, as well as VS compilation itself if another version such as 2010 was also installed.
2013-04-25 21:03:03 -07:00
Berke Viktor
abd20c25dc Get rid of installer skinning 2013-04-01 04:43:47 +02:00
Berke Viktor
ae95271d3a Change readme icon and add changelog icon as well 2012-10-22 04:40:32 +02:00
Berke Viktor
de39738bbd Add README for people who still can't use Google 2012-10-22 02:34:20 +02:00
Berke Viktor
ddbce0b9fe Move warning level to property sheet 2012-10-21 05:57:00 +02:00
Berke Viktor
da46225034 Revert to VS2010 part4 2012-10-03 13:50:31 +02:00
Berke Viktor
78cbceee4e Remove the last 2 remnants too 2012-10-02 18:29:11 +02:00
Berke Viktor
de70630cef Oops, wrong find'n'replace 2012-10-02 18:21:16 +02:00
Berke Viktor
567270d5a7 Remove hardcoding as much as possible 2012-10-02 18:15:49 +02:00
Berke Viktor
24aad3fecf Move copy part to property sheet part 1 2012-10-02 16:42:06 +02:00
Berke Viktor
ab2d0b736c Change platform toolset to Visual Studio 2012 2012-10-02 16:05:20 +02:00
Berke Viktor
6942d2b4b1 Update solution to Visual Studio 2012 Express and get rid of mpcInfo 2012-09-15 21:52:47 +02:00
Berke Viktor
2ae76fcacf Add trailing backslashes to Output and Intermediate directories, make Visual Studio happy 2012-07-21 14:46:29 +02:00