Commit Graph

378 Commits

Author SHA1 Message Date
smf-
dc1dcd260b fix MSVC debug builds by specifying /bigobj (needed for mpu4). Release builds don't seem to require it. (nw) 2017-05-16 07:56:04 +01:00
Miodrag Milanovic
a877c987fb detect if SOURCES file do not exist (nw) 2016-12-09 13:00:51 +01:00
Miodrag Milanovic
124f30dbbc Enable building projects that are separate of MAME but use same core and lives in separate git tree (nw) 2016-12-08 11:46:15 +01:00
Miodrag Milanovic
581e5c03b3 Disable incremental linking for VS debug builds (nw) 2016-11-29 08:45:12 +01:00
Miodrag Milanovic
8e61a7d3d3 Added VS2017 support into project files (nw) 2016-11-16 21:00:29 +01:00
Brad Hughes
31e0041051 Fix UWP build issue (nw) 2016-11-16 08:06:28 -05:00
Miodrag Milanovic
145822e21b fix build (nw) 2016-11-16 13:58:52 +01:00
Brad Hughes
234620bc1b UWP: Remove explicit links for winstore builds (nw) 2016-11-16 07:39:37 -05:00
Miodrag Milanovic
0d17e0ff72 fix mingw-clang linking for latest version (nw) 2016-11-16 10:27:15 +01:00
Miodrag Milanovic
0d1f5b6be4 Make 3rdparty compile for UWP and start adding new OSD for UWP based on previous Brad work (nw) 2016-11-09 14:53:19 +01:00
Miodrag Milanovic
330e3cb28e Finally sync with GENie, no more local changes (nw) 2016-11-03 10:04:29 +01:00
Miodrag Milanovic
a2c76b34d8 Fix macOS build (nw) 2016-11-02 17:19:29 +01:00
Justin Kerk
b99be73f2d Experimental support for compiling to WebAssembly using Emscripten (not yet working) (nw) 2016-10-29 06:00:45 +00:00
Miodrag Milanovic
b515a00e55 cleanup (nw) 2016-10-07 14:31:35 +02:00
smf-
c44f52f1a9 disable unknown-attributes & ignored_qualifiers to allow font_dwrite.cpp to build with clang. (nw) 2016-09-17 11:52:12 +01:00
Vas Crabb
234e91f9fb Add Lua-cleaning ability to srcclean 2016-08-30 14:57:38 +10:00
Miodrag Milanovic
85f7413a69 Cleanup for VS2015 build (nw) 2016-08-28 11:58:12 +02:00
Miodrag Milanovic
62fe8b8980 some C++14 features are not supported by VS2013. VS2015 is free for home use so no need for legacy support (nw) 2016-08-27 11:15:38 +02:00
Miodrag Milanovic
0137c5b6a5 Setting GCC bar bit higher (nw) 2016-08-27 10:33:59 +02:00
Miodrag Milanovic
ff1a5cf6fa Temporary fix for debug compile till we fix assert (nw) 2016-08-27 10:11:30 +02:00
AJR
717e1eb9d2 Change warning flags for Clang build (nw)
-Wno-missing-braces is unfortunately now necessary to avoid errors on almost every single use of the std::array initializer in devfind.h. (Apparently C++14 does make double braces optional for std::array initializers, but clang and GCC's -Wmissing-braces never took that into proper account, which is why GCC may still have it disabled by default.)

Several other Clang-specific warnings have been undisabled; some might perhaps need to be locally reenabled if legacy 3rdparty code or sundry OSD includes happen to disagree with them. The only warning to require any code changes was -Wabsolute-value, which seems to have caught a minor render bug (and nothing more).
2016-08-25 00:22:14 -04:00
Miodrag Milanovic
4f84793a05 made proper formats compiled only if needed (nw) 2016-08-12 18:27:54 +02:00
Vas Crabb
159fa2ef9e Attempt to prevent GCC optimising away global_alloc_clear (MT06335) 2016-07-30 18:03:24 +10:00
Jordi Mallach
0e5db039d8 Add arch defines for Linux alpha and mips64el.
Add detection for Linux architectures alpha and mips64el, to avoid
using gcc -m64, which isn't available on them.
2016-07-14 01:01:04 +02:00
Vas Crabb
847ecb65a6 damn circular deps (nw) 2016-06-26 23:48:27 +10:00
Julian Sikorski
6dd5a5fe05 Fixed double hyphen in -pipe 2016-06-14 23:25:32 +02:00
Miodrag Milanovic
4a7cd83c6e Sync GENie, one thing changed, and I have revoked one patch that is going to be removed or changed anyway (nw) 2016-06-10 18:54:55 +02:00
Miodrag Milanovic
3547905acc Synced GENie with latest and applied few changes sent as PR (nw) 2016-06-10 10:56:31 +02:00
Vas Crabb
93cd0cd40b Fix git version [Vas Crabb]
* git version is set by top-level make, not just when GENie runs
* can set IGNORE_GIT=1 for make to ignore git
* git ignored/unavailable uses "unknown" in version string
* mark modified trees as dirty
* note that version now comes from makefile
2016-06-10 00:36:29 +10:00
Miodrag Milanovic
ebd8e7d74b Added initial ninja support to use add MAKETYPE=ninja to compile command line (nw)
Custom build tasks are not yet working
2016-06-09 13:46:36 +02:00
Jeffrey Clark
551d9998f5 support msbuild from posix shell
preliminary fastbuild support (experimental in genie)
2016-05-31 20:26:34 -07:00
Miodrag Milanovic
80a70226f9 disable BGFX debug info (nw) 2016-05-24 11:39:20 +02:00
Miodrag Milanovic
175084897e Added ability to create standalone emulators, added zexall as example (nw) 2016-05-08 19:07:18 +02:00
Miodrag Milanovic
1c726824f2 Split UI and frontend part from core [Miodrag Milanovic] 2016-04-23 11:26:47 +02:00
Miodrag Milanovic
0d980951c9 set GIT_VERSION only where it is used (nw) 2016-04-21 15:50:15 +02:00
Miodrag Milanovic
3e8559ad7b Always rebuild version.cpp when there is git version change (nw) 2016-04-16 17:18:17 +02:00
Miodrag Milanovic
6bb33aa52c Add short git version if building non-release build, also if git command is not available or if .git is not there (so building out of other sources) (nw) 2016-04-16 10:19:59 +02:00
Miodrag Milanovic
c833268236 Added DEBUG_DIR and DEBUG_ARGS parameters, make sense right now for VS build (nw) 2016-04-12 15:43:15 +02:00
Justin Kerk
a1bad36d22 Add more clang output to tell where #include errors are coming from 2016-04-09 22:28:04 +00:00
Miodrag Milanovic
ae5258faec Added PRECOMPILE=0 so in conjunction with ccache it gives better compile speed (nw) 2016-04-02 17:48:31 +02:00
Jeffrey Clark
001d49c5b7 support build without optimize flag (nw)
OPTIMIZE= to disable the current default value 3
Also allow ARCHOPTS to be set regardless of OPTIMIZE, useful for
 debug flags.
2016-03-30 21:56:03 +00:00
Miodrag Milanovic
9353a1ccb3 Compressed internal layouts [David Haywood] 2016-03-30 20:40:05 +02:00
Miodrag Milanovic
f67cb62dbc Fix VS build (it was reverse logic then others) (nw) 2016-03-30 11:03:03 +02:00
Miodrag Milanovic
9b3788035c scrclean on lua scripts (nw) 2016-03-29 08:49:47 +02:00
Jeffrey Clark
18d7e34620 cleanup build includes (nw) 2016-03-28 22:46:00 -05:00
Jeffrey Clark
9d9c8fad6a Extend system library support (nw)
Extend USE_SYSTEM_LIB_* to support providing the library name and include directory.
To link against system specific lib names and header path: (ref #711)

USE_SYSTEM_LIB_LUA=lua5.3:/usr/include/lua5.3
2016-03-28 22:26:52 -05:00
Miodrag Milanovic
c22a27df81 Ci20 wip support (nw) 2016-03-23 21:23:14 +01:00
Miodrag Milanovic
356d419b0a BGFX_CONFIG_DEBUG=1 for Debug builds (nw) 2016-03-20 15:15:46 +01:00
Miodrag Milanovic
95a2e4c2c6 compile BGFX for RPI as well (nw) 2016-03-19 16:09:34 +01:00
Miodrag Milanovic
6590600990 Added support for Raspberry Pi cross-compile (nw) 2016-03-19 16:09:34 +01:00
Justin Kerk
d0ce8784a7 Build more of font_sdl.cpp with Emscripten since there is an SDL2_ttf port now (nw) 2016-03-17 01:42:48 +00:00
smf-
593c9d5ce6 Build with vs2015 Update 2 RC 2016-03-16 18:19:11 +00:00
Vas Crabb
fc87913612 Fix SDL Windows build 2016-03-14 19:32:17 +11:00
Miodrag Milanovic
fc3f2b67b9 fix error (nw) 2016-03-13 08:25:47 +01:00
Julian Sikorski
d0f99d22a7 Added ability to build using system libuv (1.8.0 or higher required) 2016-03-12 13:07:14 +01:00
Miodrag Milanovic
f2ce314206 mingw clang build is working, there seams to still be some issue with optimization (nw) 2016-03-11 19:31:07 +01:00
Miodrag Milanovic
e6142ef558 Support for aarch64 (nw) 2016-03-11 13:09:47 +01:00
Miodrag Milanovic
b489eb202c made sources build use info from mame.lst (nw) 2016-03-02 14:21:26 +01:00
Miodrag Milanovic
2287efaab3 Enabled multi core compile on VS (nw) 2016-03-01 15:30:42 +01:00
Miodrag Milanovic
23c28c48af Build SDL2 for Android (nw) 2016-02-29 16:20:51 +01:00
Miodrag Milanovic
ea6b854844 Made Visual Studio use by default bundled SDL2 (nw) 2016-02-27 16:53:49 +01:00
Miodrag Milanovic
9d4c8c5de5 Made xcode params more generic (nw) 2016-02-26 20:30:37 +01:00
Miodrag Milanovic
5a567f3541 Added support for x64 Androids (nw) 2016-02-26 16:00:29 +01:00
Miodrag Milanovic
3a811376d9 Made pnacl to compile (nw) 2016-02-26 14:50:09 +01:00
Miodrag Milanovic
2582ce7f16 cleanup (nw) 2016-02-26 14:16:50 +01:00
Miodrag Milanovic
4727b0d97f OS/2 can not support SDL2 which is needed for MAME to run (nw) 2016-02-26 13:20:43 +01:00
Miodrag Milanovic
e740bb6915 Fixing some more Android related things (nw) 2016-02-26 11:59:17 +01:00
Miodrag Milanovic
add7a65f3f Make Android targets compile but not link, using clang compiler in NDK, since GCC will be removed in next one (nw) 2016-02-25 20:44:35 +01:00
Miodrag Milanovic
4173530610 removed nacl, fixed android and pnacl (nw) 2016-02-25 14:58:39 +01:00
Miodrag Milanovic
34acb73777 Makes xcode compile fine if generated files are already there (nw) 2016-02-23 15:57:36 +01:00
Miodrag Milanovic
a87419ea5c Forgot to commit this one (nw) 2016-02-23 14:33:30 +01:00
Miodrag Milanovic
2043e6ce2d added proper platform for xcode (nw) 2016-02-21 21:03:22 +01:00
Miodrag Milanovic
412814f80d changes towards compiling with XCode (nw) 2016-02-21 19:48:16 +01:00
Miodrag Milanovic
9eb2734495 BGFX mandatory requirement (nw) 2016-02-16 17:35:27 +01:00
Miodrag Milanovic
22e6c350ed Enabled BGFX support for SteamLink 2016-02-16 11:36:13 +01:00
Jeffrey Clark
3570d4f0eb check STRIP_SYMBOLS in strip function and add strip support for osx (nw) 2016-02-15 12:09:48 -06:00
Jeffrey Clark
36df7413dc add TOOLCHAIN make flag for explicit toolchain prefix cross compiling (nw) 2016-02-15 12:09:35 -06:00
Miodrag Milanovic
09fd282dc8 fix build on some linuxes (nw) 2016-02-15 11:20:54 +01:00
Miodrag Milanovic
2db4908814 Added lua-zlib, lfs and luv support for LUA, exposed all using luaengine (nw) 2016-02-14 08:16:35 +01:00
dankan1890
4710c9c263 suppressed C4592 warning in VS 2015. (nw) 2016-02-08 01:53:08 +01:00
Miodrag Milanovic
f924d4bd42 link into main project and link deps (nw) 2016-01-31 15:38:51 +01:00
Miodrag Milanovic
042050ef67 Added Google Benchmark library (nw)
Included sample benchmark for eminline for native and noasm
Made GoogleTest compile only if tests are compiled
2016-01-29 11:47:40 +01:00
Miodrag Milanovic
e691634439 Added SteamLink initial support [Sam Lantiga, Miodrag Milanovic] 2016-01-25 20:01:40 +01:00
Miodrag Milanovic
2ac3018ee7 fix start project for custom builds in Visual Studio (nw) 2016-01-21 08:41:13 +01:00
Miodrag Milanovic
4e8e3066f8 reverting:
SHA-1: 1f90ceab07

* tags are now strings (nw)
fix start project for custom builds in Visual Studio (nw)
2016-01-20 21:42:13 +01:00
Miodrag Milanovic
18ec822ac3 Keep naming of binaries for builds made with SOURCES to be same as usual, (nw)
fixed propagation of flags for builds made with SOURCES
2016-01-17 17:53:03 +01:00
Miodrag Milanovic
56f37631da OS/2 patch [KO Myung-Hun] 2016-01-16 18:02:19 +01:00
Miodrag Milanovic
1f90ceab07 tags are now strings (nw)
fix start project for custom builds in Visual Studio (nw)
2016-01-16 14:54:42 +01:00
Justin Kerk
1e61410aa8 Revert "Disable pre-compiled headers on Emscripten for now, fixes build (nw)"
This reverts commit a8a9b4158a.
2016-01-08 15:18:08 +00:00
Justin Kerk
a8a9b4158a Disable pre-compiled headers on Emscripten for now, fixes build (nw) 2016-01-07 23:22:20 +00:00
Miodrag Milanovic
3f4fe77c75 cleaner solution for linking (nw) 2016-01-04 16:33:23 +01:00
Miodrag Milanovic
8172839141 Some cleanup in build scripts, GNU C99 for 3rdparty C files (nw) 2016-01-04 15:31:32 +01:00
Miodrag Milanovic
e0deb80b54 Fix building on clang, executable fail starting due to mixed allocators (nw) 2016-01-04 13:29:42 +01:00
Miodrag Milanovic
698cec6344 Removed FILTER_DEPS, not stable and not functional (nw) 2016-01-03 17:13:16 +01:00
Miodrag Milanovic
729d3d3f16 Make linking of winpthreads static for posix mingw build (nw) 2016-01-01 12:27:00 +01:00
Miodrag Milanovic
f1a0a3cb88 Added pre-compiled headers support to build system (nw) 2016-01-01 08:23:58 +01:00
Miodrag Milanovic
9c2669081c Added platform parameter and some ARM fixes (nw) 2015-12-27 15:35:29 +01:00
Miodrag Milanovic
c8583ebdc9 os calls do not follow MAKE escaping 2015-12-20 09:45:39 +01:00
AJR
ad4d85f68f Fixed wrong number of arguments to makedep.py in SOURCES build 2015-12-19 20:00:22 -05:00
AJR
8567ac0d64 Allow SDLMAME to build on OS X from paths containing spaces 2015-12-19 11:09:57 -05:00
Miodrag Milanovic
379581fb36 macro removal INLINE -> static inline (nw) 2015-12-12 08:58:57 +01:00
Miodrag Milanovic
ee942ae0fb some MSBUILD fixes (nw) 2015-12-10 12:16:06 +01:00
Cowering
00a496face (retrying) fix up some lto things (still can't compile full MAME on Windows) Also add a few msg texts for VS warnings (NW) 2015-12-09 12:58:08 -06:00
Vas Crabb
e706b93447 propagate ARCHOPTS to linker 2015-12-07 22:07:29 +11:00
Miodrag Milanovic
6a765a95ec Added addprojectflags function and added -Wsuggest-override for all that are not 3rdparty projects.
It is place where all additional checks we should put
2015-12-06 17:07:50 +01:00
Miodrag Milanovic
ccc677d0e5 Need this on linux 2015-12-04 20:36:05 +01:00
Miodrag Milanovic
2ce19e896b Removed need for -Wno-c++11-narrowing for clang
and -Wno-unused-result,-Wno-narrowing and -Wno-attributes on gcc (nw)
2015-12-04 20:22:48 +01:00
Miodrag Milanovic
20b32acb8b OSX version is taken on different way so it is considered 6.0 (nw) 2015-12-03 14:50:04 +01:00
Miodrag Milanovic
d9db2350fb OSX version of clang 3.5 is actually 3.4 with features (nw) 2015-12-03 14:40:03 +01:00
Miodrag Milanovic
7433c42f30 it is available in all version from 3.4 (nw) 2015-12-03 14:32:20 +01:00
Miodrag Milanovic
eba667fdb3 fix for QT headers compile as c++14 (nw) 2015-12-03 14:26:00 +01:00
Miodrag Milanovic
29bfbddaac stupid me (nw) 2015-12-03 14:02:36 +01:00
Miodrag Milanovic
871428ef9e Set -std=c++1y to clang 3.4 (nw) 2015-12-03 13:33:40 +01:00
Miodrag Milanovic
b9e242db21 Cleanup of genie.lua (nw) 2015-12-03 11:54:51 +01:00
Miodrag Milanovic
92f81361d6 Initial conversion of core to C++14. Note that compilers are now limited to GCC 4.9.0 and up, Clang 3.4.0 and up, and VS2013 and up [Miodrag Milanovic] 2015-12-03 11:40:45 +01:00
Trammell Hudson
d005322e2b Merge clang++ version 30000 and 30400 sections to enable -Wno-constant-logical-operand 2015-11-28 09:12:34 -05:00
Trammell Hudson
74db76d146 revert sqlite3 changes, update version detection to silence warnings on OSX clang++ 3.0 (issue #480) 2015-11-28 09:06:30 -05:00
Justin Kerk
d1d8a66ab1 Cleanup (nw) 2015-11-25 03:10:20 +00:00
Miodrag Milanovic
8a91bc9f0e disable this for CPP11 builds (nw) 2015-11-19 13:34:44 +01:00
Vas Crabb
05109871be all VMX registers are alike (nw) 2015-11-18 19:32:15 +11:00
David Haywood
15f6df6d66 disable some intel compiler remarks that are shown in a release config (nw) 2015-11-14 19:15:12 +00:00
Miodrag Milanovic
47f03ddabc fix uninitialized class members for bus devices (nw) 2015-11-14 19:05:20 +01:00
Miodrag Milanovic
8c0d01d426 Fix compile for Intel C++ 15 compiler (nw) 2015-11-14 11:52:15 +01:00
Miodrag Milanovic
5deec43cbc update build scripts for rename c - > cpp (nw) 2015-11-08 13:26:29 +01:00
Vas Crabb
8247cab558 make it easier to build multiple configs (nw) 2015-11-02 23:40:03 +11:00
Miodrag Milanovic
8e22b1d22f Renamed DRIVERS parameter to SOURCES since you can add any source you wish to include in target (nw) 2015-10-09 14:13:35 +02:00
Miodrag Milanovic
86d3aa8065 Moved tools in proper place, and moved build python scripts together with other scripts (nw) 2015-10-07 12:01:21 +02:00
Cowering
7c302af80f Allow current toolchain for mingw to work and allow GCC 5.2 to also work if gcc-ar is current enough. Add a little more info about lto (nw) 2015-10-05 10:29:15 -05:00
Miodrag Milanovic
6e70790bf4 removed line commit by mistake (nw) 2015-09-30 17:40:40 +02:00
Miodrag Milanovic
1fc48ce120 move mess into mame (nw) 2015-09-30 17:21:14 +02:00
balr0g
459c86dee3 Fix build with Xcode 7 (nw) 2015-09-18 16:00:03 -04:00
Miodrag Milanovic
c9bde5341d reorganized scripts according to new structure (nw) 2015-09-13 10:17:58 +02:00
Miodrag Milanovic
a4ea92de24 Update scripts for compile with latest BGFX (nw) 2015-09-12 11:06:14 +02:00
Miodrag Milanovic
6359b876b9 made FORCE_VERSION_COMPILE option to be used for build server (nw) 2015-09-05 11:53:19 +02:00
Justin Kerk
988ec56c7b Hopefully fix build (nw) 2015-09-02 13:56:42 -07:00
Justin Kerk
c573df73ec Fix Emscripten compile with GoogleTest (nw)
See https://github.com/kripken/emscripten/issues/3484
2015-09-02 13:03:26 -07:00
yz70s
a765979c61 Disable warnng C4319 with visual studio 2015 (nw) 2015-08-09 15:06:20 +02:00
Cowering
18c9854ee6 scrape this for every bit of info (nw) 2015-07-24 20:48:56 -05:00
Cowering
0eef937287 This lets MAME compile in Arch Linux GCC 5.2. 16G RAM used to prevent crash. compile with 'make SSE3=1 LTO=1'
testing GCC 5.2 MSYS2 now (NW)
2015-07-23 10:34:50 -05:00
Julian Sikorski
1b5d213aaa Added ability to use system PortAudio 2015-07-05 22:08:10 +02:00
Miodrag Milanovic
449a851e34 Fix more driver building, going deeper in checks (nw) 2015-06-20 19:19:03 +02:00
Miodrag Milanovic
239c31b584 Made possible creation of custom builds with given list of drivers included.
Note that game list is parsed so if macros are used they will not be found.
example:
make SUBTARGET=cops -j9 DRIVERS=src/mame/drivers/cops.c
2015-06-20 18:20:44 +02:00
Cowering
9089f704fc keep SSE2 like it was 2015-06-19 20:45:13 -05:00
Cowering
3904c29734 This lets sdlMAME/sdlMESS compile on Fedora GCC 5.1.1 with LTO enabled with line:
make -jX SSE2=1 LTO=1

(pick X wisely as Xx4 link threads will run to speed up lto)

Super Mario 64 runs at 88% on old I7-920 in a VM (from 55%).

Windows Mingw-64 5.1.1 LTO is not possible for now :(

Why do we need to say 'SSE2=1' since MAME now requires a CPU with that for a minimum?

(nw)
2015-06-19 14:29:35 -05:00
balr0g
021aa9eb6c Nope. (nw)
This reverts commit 72794f8ff1.
At least this provides a more useful stacktrace, if anyone wants to
debug.
2015-06-07 12:25:38 -04:00
balr0g
72794f8ff1 Use attribute unused for inlined new/delete. (nw)
This is still not compliant code, and will probably break with LTO,
but is a cleaner fix for the warning. Using this attribute also ensures
that the linker doesn't remove the code.
2015-06-07 12:02:20 -04:00
Miodrag Milanovic
6cade077e0 and remove (nw) 2015-06-07 17:27:58 +02:00
Miodrag Milanovic
48fb1dfb85 lets make it just for mingw (nw) 2015-06-07 16:47:41 +02:00
Miodrag Milanovic
041ba8bc2f placed this back to disable warning on clang (nw) 2015-06-07 14:15:04 +02:00
Miodrag Milanovic
fabe12b282 should go like this (nw) 2015-06-07 13:06:35 +02:00