422 Commits

Author SHA1 Message Date
Justin Kerk
8f37851517 Emscripten build: Prevent excessive link times with the default optimization level 2025-07-05 18:18:11 -07:00
Justin Kerk
92b4640d3c sound: Set SOUND_DISABLE_THREADING for Emscripten target 2025-06-05 17:48:32 -07:00
Patrick Mackinlay
da468a4f50 build: update vs/msbuild settings to reflect current clangcl (#13633) 2025-05-13 11:38:55 +07:00
Vas Crabb
c10ecb0941 Fixed the last GCC class memory access warnings and cleaned up some stuff.
* shared/exidysound.cpp: Use real 8253 PIT device rather than a local
  implementation, fixed class memory access error, cleaned up code to
  use virtual member functions idiomatically.
* cpu/alto2: Fixed class memory access error (was nuking unique
  pointers).
* interton/vc4000_v.cpp: Fixed class memory access error, got rid of
  indirection on bitmap, cleaned up a little.
* Enabled error for GCC class memory access warning to avoid rot.
2025-04-21 05:28:13 +10:00
Vas Crabb
e3f386c2a9 Made PTR64 a makefile-only thing - it isn't necessary in the code. 2025-04-20 06:10:25 +10:00
Vas Crabb
8c28d3ff7e Cleaned up build scripts and compiling documentation:
* Made it a bit easier to cross-compile for x86-64 or i686 on an AArch64
  Windows system.
* Choose the default native recompiler back-end based on predefined
  macros rather than requiring the build scripts to set it.
* Don't require every target without a native recompiler to declare
  this.
* Got rid of the code that was supposed to set -m32 or -m64 when
  building GENie (it didn't work - it tried to use ARCHITECTURE before
  setting it).
* Avoid relying on the unreliable PROCESSOR_ARCHITECTURE environment
  variable.
* Got rid of stuff for versions of Xcode that are definitely no longer
  supported.
* Got rid of workarounds for very old Linux distros.
* Use newer makefile syntax for if/else/if structures, comment some else
  and endif statements for clarity.
2025-04-20 02:36:58 +10:00
algestam
c1bddc67a1 emscripten: fixes to get bgfx working (#13255)
* Emscripten: Fixes to get BGFX working

* Move emscripten specific setup into an #elif statement

* Fix indentation

* emscripten: remove no longer link option DEMANGLE_SUPPORT
2025-02-06 08:45:34 +01:00
Vas Crabb
b7a80b1704 -cpu/drcbex64.cpp: Directly dispatch memory accesses no larger than native width to specific handlers. (#13325)
emu/emumem_aspace.cpp: Got rid of static accessors structure, added a
helper for obtaining info for dispatching specific accessors.
2025-02-05 10:21:10 +11:00
987123879113
aa5cd150b3 cpu/drcbearm64.cpp: Added a 64-bit ARMv8 (AArch64) DRC back-end. (#13162)
* cpu/uml.cpp: Removed unused vector type.
* 3rdparty/asmjit: Update asmjit to latest upstream.
* cpu/drcbex64.cpp: Fixed crash with LOG_HASHJMPS enabled (stack needs to be 16-byte aligned before calling debug_log_hashjmp_fail).
2025-01-14 02:44:16 +11:00
Patrick Mackinlay
924b205539 build: adjust msvc warning settings 2025-01-03 16:03:35 +07:00
Vas Crabb
24b21367f5 Actually demote tautological-compare to a warning. 2024-11-27 06:15:56 +11:00
Vas Crabb
aea6a32a29 Enable tautological-compare warning as error.
If it causes too much trouble with a supported compiler, it can be
downgraded to a warning.
2024-11-27 05:21:34 +11:00
Patrick Mackinlay
dc8ba812c1 Updated GENie and changed Visual Studio target to Visual Studio 2022. (#13000)
* Updated to GENie 1181.
* Applied local fix for GENie resource include directory bug, sent upstream as bkaradzic/GENie#572.
* Set MSVC flags to use conformant preprocessor, standards conformance mode, and assume UTF-8 encoding.
2024-11-27 04:39:05 +11:00
Vas Crabb
926fe9bc82 -nes.xml: Use self-closing tags for data areas with no load commands - saves a lot of lines in a file this big.
-Disabled GCC stringop-overflow warning due to numerous false positives.
2024-03-31 02:37:24 +11:00
Vas Crabb
fe923e9b3c Drop support for GCC < 10.3, clang 6, SDL < 2.0.14 and Qt 5.10. 2024-03-28 00:11:18 +11:00
Justin Kerk
663464d169 Slightly different fix for asio compilation with newer Emscripten (#12098)
This restores the previous status quo from Emscripten 3.1.28 where asio is always compiled with pthread support, however threading is still not actually functional in the Emscripten target.

The change in behaviour appears to be due to emscripten-core/emscripten@690f1bdb9e
2024-03-13 23:03:49 -07:00
Justin Kerk
39db822d4e Fix compile error in 3rdparty/asio with newer Emscripten versions (#12098) 2024-03-13 11:04:01 -07:00
Miodrag Milanović
d5340b8be4 Make building emulator optional (allow building tools without building MAME) (#11889) 2023-12-31 20:41:59 -05:00
Olivier Galibert
1cea8b8df6 Ensure that the has_* file actually has data in them. The previous PR had clearly never been tested 2023-12-09 23:37:24 +01:00
Bernhard M. Wiedemann
e15b7dfcdc Make generation of has_foo.h files deterministic (#11651)
Without this patch, order of entries in
generated/has_{buses,cpus,formats,machines,sounds,videos}.h
varied across builds.

This patch was done while working on reproducible builds for openSUSE.

Co-authored-by: Bernhard M. Wiedemann <bernhard+gitcommit lsmod.de>
2023-10-24 12:33:43 -04:00
Vas Crabb
6911b9198f Set LinkSupportCircularDependencies for FreeBSD as well as NetBSD (#11271). 2023-05-28 03:39:39 +10:00
Vas Crabb
a504bde3a7 3rdparty/lzma: Updated to LZMA SDK version 22.01 2023-05-04 02:41:16 +10:00
Vas Crabb
c649fa82fd ui: Don't use facets of destructed locales. 2023-05-01 02:37:28 +10:00
arbee
006389f631 Fixed another warning, a full compile now completes with GCC 13.1. [R. Belmont] 2023-04-29 22:33:00 -04:00
arbee
e17706aec2 Support GCC 13.1 / Fedora 38 [R. Belmont] 2023-04-29 21:46:16 -04:00