Commit Graph

155 Commits

Author SHA1 Message Date
Alibek Omarov
3366ad06d0 wscript: add yy-thunks library to help support the holy cow of windows users 2026-06-21 11:16:03 +05:00
Alibek Omarov
e31c893852 wscript: enable bcrypt on Windows, add entropy generator that avoids usage of bcrypt for our 32-bit builds, allowing them to run on Windows XP 2026-06-07 06:39:50 +05:00
Alibek Omarov
eae45b2e81 engine: wscript: link in mbedtls 2026-06-07 05:56:54 +05:00
Alibek Omarov
567d279007 engine: wscript: drop unfinished work on curl 2026-06-07 05:56:54 +05:00
Alibek Omarov
86a2ea29e4 wscript: define libbacktrace as libbacktrace_custom, fix DL_ITERATE_PHDR not defined due to failing fallback check
* Changed to libbacktrace_custom to not collide with libbacktrace built as part of compiler's runtime
2026-04-26 04:12:52 +05:00
Alibek Omarov
2ebaa2ad8e engine: wscript: disable engine tests on macOS temporarily 2026-04-01 09:15:09 +05:00
Alibek Omarov
99d01e7967 engine: try to fix running tests on macOS 2 2026-04-01 06:29:22 +05:00
Alibek Omarov
5aba96ce14 engine: try to fix tests on macOS 2026-04-01 06:19:06 +05:00
Alibek Omarov
42cb5fe547 engine: wscript: append SDL2 library path to the client tests LD_LIBRARY_PATH (or it's platform-specific alternative) 2026-04-01 05:40:45 +05:00
Alibek Omarov
6a1718aa07 engine: get rid of --enable-engine-tests, now engine tests run as waf targets, allowing their run on CI seamlessly. 2026-04-01 05:15:31 +05:00
Alibek Omarov
b2886dd2e9 engine: platform: remove support for glibc's backtrace(), as it's unused 2026-03-05 02:56:38 +05:00
Alibek Omarov
2bdc22fbeb public: exclude build_vcs from libpublic dependencies, add it per project 2026-02-23 21:48:23 +05:00
Alibek Omarov
0dfeea5213 Migrate to library-suffix library 2025-11-11 06:59:41 +05:00
ksagameng2
a9bf700da4 Restore iOS build support (#2352)
* initial commit

* initial commit

* add port files

* ios: Changes to allow creating app bundle without xcode projects

* ios: Added mic perms request

* ios: Very basic app bundle creation script

* ios: Fix -log parameter

* ios: Sdk no longer hardcoded and option to compile for simulator

* general: Update gitignore

* ios: Enable game mode for the app

* ios: Compile instructions and updated ipa creation script

* ios: Code cleanup

* ios: Remove dylibs

* general: Remove extra submodules

* ios: Remove dylibs again

* ios: Implement suggested changes

* ios: Fix building as dylib instead of binary

* ios: Scripts for building mods

* ios: Move 'ios' contents to engine/platform/ios/bundle and modify scripts

* ios: Update createipa.sh to use waf install

* ios: Clean script and updated README

* general: Fix spelling mistake and outdated instructions

* ios: Clean up in xcompile.py

* ios: Fix createipa.sh generating an invalid ipa

* ios: Temporary fix for launch dialog textfield colors in dark mode
2025-11-01 18:32:00 +05:00
Alibek Omarov
9aab12fc27 engine: remove global no async resolve switch, platforms that do not support it shall add stubs to engine/platform 2025-09-29 00:12:37 +05:00
Alibek Omarov
cee1e74872 engine: drop dllemu glue, as it won't build with current engine anyway and not supported by it's author :( 2025-09-29 00:01:59 +05:00
Alibek Omarov
c177be0dd8 engine: move our HTTP client to http subfolder, prepare for curl integration 2025-09-19 09:15:17 +05:00
Alibek Omarov
7564e3c61f engine: client: add support for building with FFmpeg linked in runtime 2025-07-13 04:39:44 +05:00
Alibek Omarov
e3bfdf4127 engine: wscript: remove duplicated --enable-ffmpeg option 2025-06-15 14:25:28 +05:00
Alibek Omarov
907e02da8d Merge ffmpeg support 2025-06-15 13:15:17 +05:00
Alibek Omarov
342aa56144 engine: wscript: increase default memory size for Emscripten port, include game files from rodir folder in source tree root 2025-06-15 13:01:13 +05:00
Alibek Omarov
b598daf049 engine: wscript: disable default install for Emscripten, we need to rename main program into index.html and also install additional outputs 2025-06-15 12:51:57 +05:00
Alibek Omarov
f1e665b5b3 engine: wscript: disable async ns resolve for Emscripten for now 2025-06-15 12:51:57 +05:00
Alibek Omarov
216e680965 wscript: detect threading ability by platform
On client, it's handled by SDL{2,3}. On server we rely on pthreads (and some platforms don't have pthreads).
2025-05-27 21:40:07 +03:00
Alibek Omarov
aa2e5eb3cc engine: platform: move SDL2 support code into sdl2 subdirectory. Change XASH_SDL macro value from 12 to 1 for SDL1.2 2025-05-05 05:15:10 +03:00
SNMetamorph
407d0aa291 engine: wscript: enabled linking library SceLibKernel_stub on PS Vita 2025-03-16 21:34:32 +03:00
Alibek Omarov
afa829d996 3rdparty: libbacktrace: don't define POSIX_SOURCE, it breaks build on Mac 2025-02-09 16:41:26 +03:00
Alibek Omarov
774d2ac28a engine: platform: posix: add libbacktrace support for crash handler 2025-02-09 15:42:28 +03:00
Alibek Omarov
0cb034afc2 engine: wscript: improve execinfo and GNU backtrace() check 2025-02-02 18:18:26 +03:00
Alibek Omarov
d0464ef602 engine: platform: posix: use glibc-based backtrace implementation for crash handling, if execinfo.h can be found 2025-02-02 18:06:18 +03:00
Alibek Omarov
5378494199 wscript: enable main() function for Android port, which was forgotten after last refactoring 2025-02-01 18:26:20 +03:00
Alibek Omarov
a0eec8b85d scripts: waifulib: add special_install_path for platform-specific executable formats that create post link stage (was nro_install_path) 2025-01-31 10:25:02 +03:00
Alibek Omarov
83b488c37e wscript: let building client and dedicated server in the same configuration 2025-01-30 20:23:12 +03:00
Alibek Omarov
6f0fb594e7 Merge branch 'master' 2025-01-23 18:42:00 +03:00
Alibek Omarov
cfebee6ea8 engine: split crashhandler to win32 and posix versions 2024-12-24 10:37:49 +03:00
Alibek Omarov
4275829bd5 engine: client: partially rework how AVI playback works in Xash. Add ffmpeg-based player.
This intentionally will not build without --enable-ffmpeg for now.

We add new functions to the RenderAPI called AVI_Think and AVI_SetParm. Game
developer is supposed to call AVI_Think each frame and set video playback
parameters through AVI_SetParm function.

What's tested:
* Intro cinematics.
* Looping videos.
* Playing back an hour long video.
* API extension (PrimeXT's avi branch at https://github.com/a1batross/PrimeXT).

What's broken:
* There is no way to seek a video file, only rewind to the start.
2024-12-13 03:04:32 +03:00
Alibek Omarov
51fa7d2611 wscript: strip lib prefix from new opus and vorbis targets, don't link them in dedicated 2024-12-02 21:59:11 +03:00
Alibek Omarov
6d00aef398 engine: move soundlib onto client, only leave snd_utils with some functions that's engine core or server are dependent on 2024-12-02 21:05:41 +03:00
Alibek Omarov
c39d2e243a wscript: look for system provided vorbis and opus dependencies
In some configuration, like Flatpak, on dev machines or when packaging for *nix
we can safely link with system libraries.
2024-12-02 21:04:28 +03:00
SNMetamorph
73cf55b958 wscript: link sound format related libraries in XASH_DEDICATED build mode 2024-12-02 20:36:33 +03:00
SNMetamorph
4e138ee795 engine: wscript: link libopusfile dependency 2024-12-02 20:36:33 +03:00
SNMetamorph
d618b817ca engine: wscript: link libvorbisfile dependency 2024-12-02 20:36:33 +03:00
Alibek Omarov
0154ffa060 wscript: try to automatically set console subsystem flag depending on target features
Remove subsystem flag from shlibs and stlibs, it's only required for executables.
2024-11-27 15:43:13 +03:00
Alibek Omarov
397f2f208a engine: wscript: link libsocket on Solaris 2024-11-07 07:41:37 +03:00
Alibek Omarov
93b382f174 wscript: move SUPPORT_BSP2_FORMAT definition to the main wscript file. Manually define REF_DLL in the build task 2024-11-02 01:57:33 +03:00
Alibek Omarov
224e42d345 engine: platform: android: make dlsym-weak C++ again (because of struct soinfo definition). Reformat linker.h file as well. 2024-10-24 17:54:09 +03:00
Alibek Omarov
128a1f59a9 engine: cleanup XASH_64BIT usage. Always use it from build.h 2024-10-24 16:39:09 +03:00
Alibek Omarov
1cf40a2d17 engine: wscript: remove useless globs 2024-10-24 15:46:33 +03:00
Alibek Omarov
f7eb8cd913 engine: wscript: ensure we always add needed features when mixing C and C++ objects. Simplify bld call for all platforms 2024-10-23 23:22:23 +03:00
Alibek Omarov
ae2ad6ddf2 3rdparty: add MultiEmulator by 2010kohtep
* patched to be portable, turned into a static library
* integrated to the engine
2024-10-21 06:19:11 +03:00