D2768 inherits from a Spidermonkey class, and SM is built without rtti.
This won't compile unless we also compile without RTTI, and that diff is
required for SM60.
Further, windows was already compiling without RTTI and our coding
conventions say to not use it, so this is more of a regularization.
AtlasUI is left unaffected as WXWidgets uses it (and it's a dynamic
library so separate enough to do that).
Differential Revision: https://code.wildfiregames.com/D3104
This was SVN commit r24214.
This reverts static linking on linux from 6bb08fb424, it appears to fail
to link and/or crash, depending.
- Commit the tarball.
- Update update-workspaces.sh
Refs #4893
Differential Revision: https://code.wildfiregames.com/D3114
This was SVN commit r24205.
Of note is the change to static linking on *nix (MacOS already used it).
The logic is that we can only use one single version of SM, so that
advantage of dynamic linking is lost regardless. We might also see
performance gains in the future with LTO enabled. It is also slightly
easier to distribute the program as a result. Expect a negligible size
increase in the binary size (offset somewhat by no longer needing to
distribute .so files). Finally, it streamlines the build script.
Also noteworthy in this commit:
- The MacOS build script is folded back into the general build script.
- the perl/sed command is replaced by patching the configuration file,
which at least warns if it starts failing in the future.
Binaries for windows provided by @Itms
The bulk of the patching was also done by @Itms.
Tested by: Stan, Freagarach
Refs #4893
Differential Revision: https://code.wildfiregames.com/D3094
This was SVN commit r24202.
- Custom fixes to coala: support python3.8 and recent versions of
cppcheck
- Adapt .coafile to current coala
- Adapt LicenseYearBear to current `svn` python package
- Move the linter configuration to the coala directory
- Remove the now unused lint-patch script
- Update Jenkins pipelines to report build stderr as a comment on Unix
(including warnings when the build succeeds), and to report lint issues
inline
Tested on Jenkins during the past week.
Differential Revision: https://code.wildfiregames.com/D2931
This was SVN commit r23971.
Implement a simple HTTP server to start games, receive the gamestate and
pass commands to the simulation.
This is mainly intended for training reinforcement learning agents in 0
AD. As such, a python client and a small example are included.
This option can be enabled using the -rl-interface flag.
Patch by: irishninja
Reviewed By: wraitii, Itms
Fixes#5548
Differential Revision: https://code.wildfiregames.com/D2199
This was SVN commit r23917.
This includes:
- some build fixes
- Jenkins pipelines, in use since January
- a revamped DMG build script, including dmgbuild configuration by Tobbi
and a tweak by norsnor (D2650)
Differential Revision: https://code.wildfiregames.com/D2523
This was SVN commit r23676.
Use the opportunity to rename the lib from cppformat to fmt, refs #4148.
Patch By: adrian
Rebased By: s0600204
Differential Revision: https://code.wildfiregames.com/D2613
This was SVN commit r23562.
Nuke HAVE_PCH and use only one macro for PCH logic.
This macro is enabled (=1) or disabled (=0) based on --without-pch and
no_pch parameters in premake5
Visual studio does not more override this logic
Differential Revision: https://code.wildfiregames.com/D1380
Reviewed by: @Itms
This was SVN commit r23314.
Windows binaries built with toolset v140_xp.
Tested under Windows, Linux and macOS.
Includes a patch for building on musl Linux, contributed by voroskoi,
containing code by leper.
Use the opportunity to set native line endings in the NVTT bundle.
The NVTT DLL was the last one built with VS 2010, refs #5379, #5527.
Differential Revision: https://code.wildfiregames.com/D2475
This was SVN commit r23305.
Use the opportunity to fix some whitespace and to make the file name
consistent with Jenkins.
Patch by: Angen
Differential Revision: https://code.wildfiregames.com/D2021
This was SVN commit r23213.
Use the default naming for both libraries (libvorbis instead of vorbis),
and use our default suffix for debug versions of the libs.
This was SVN commit r22406.
Patch by Angen, based on the previous bat script for the autobuilder
job.
Comments by Stan.
Differential Revision: https://code.wildfiregames.com/D1909
This was SVN commit r22338.
To use:
```
./update-workspaces.sh --prefer-local-libs
```
Then run `make` as usual.
Accepted by: Itms
Differential Revision: https://code.wildfiregames.com/D1747
This was SVN commit r22308.
Xcode otherwise defaults to the latest Mac OS version.
Reviewed By: Wraitii
Differential Revision: https://code.wildfiregames.com/D1482
This was SVN commit r22295.
Fixes an issue on macOS Mojave that was patched in fa1c281e79.
The list of changes can be found under
build/premake/premake5/CHANGES.txt.
This was SVN commit r22021.
This includes GMP and nettle, that are dependencies of GnuTLS.
On versions of OSX/macOS up to 10.11, TLS handshakes can still fail and
crash, so users of those older versions should disable TLS on the lobby
in the options screen, and will still be able to use it.
Differential Revision: https://code.wildfiregames.com/D1654
Tested By: Tobbi, trompetin17, and testers of their bundles.
This was SVN commit r21940.
Resolves build issue on Arch Linux (and Arch-derivatives)
(Also forms part of a fix for Slackware-current builds)
Accepted By: echotangoecho (Arch)
Confirmed as functional by: Imarok (Ubuntu 16.04, gcc5.4), wes-fole-dog
(Parabola)
Refs: #5157Fixes: #5152
Differential Revision: https://code.wildfiregames.com/D1582
This was SVN commit r21865.
Fixes issues with wxWidgets and curl reported by foxhack. Fixes premake4
build scripts after an oversight in 833c9f108c.
Reviewed By: vladislavbelov
Differential Revision: https://code.wildfiregames.com/D1468
This was SVN commit r21808.
mod.io is a new platform for sharing mods, that 0 A.D. can make use of
in order to download mods and install them.
Based on patch by leper, numerous changes from s0600204, vladislavbelov,
Imarok, elexis, temple and myself.
Differential Revision: https://code.wildfiregames.com/D1029
This was SVN commit r21759.
The new pyrogenesis.xml file should go under
`$XDG_DATA_DIRS/mime/packages/` before running update-mime-database (see
https://www.freedesktop.org/wiki/Specifications/AddingMIMETutor/ for
more information).
Patch by s0600204 and myself.
This was SVN commit r21723.
Summary: Improve binary security by enabling a hardening linker flag.
Test Plan:
Patch already used on Debian.
Tested locally by @Gallaecio as well.
Reviewed By: LudovicRousseau
Trac Tickets: #4894
Differential Revision: https://code.wildfiregames.com/D1123
This was SVN commit r20896.
Properly fix the current issues with pre-build commands, improve the
documentation of known issues and re-design the module so it is easy to
extend it into a fully-fledged CxxTest module supporting all features of
the tool.
Reviewed By: wraitii
Tested By: elexis, bb, Imarok
Differential Revision: https://code.wildfiregames.com/D1092
This was SVN commit r20633.
The filter command does only filter out premake commands, and does not
act on Lua instructions like this one. Some code refactoring would be
needed in order to take advantage of the powerful filter syntax.
Refs #3439.
This was SVN commit r20563.
This change drops MBCS encoding (which was the default for premake4)
except in the Collada project which is entirely written assuming MBCS.
Tested By: wraitii
Differential Revision: https://code.wildfiregames.com/D1069
This was SVN commit r20561.
This fixes an issue where tests wouldn't build without precompiled
headers.
Tested By: leper
Differential Revision: https://code.wildfiregames.com/D1068
This was SVN commit r20560.
This fixes a bug with premake5 happening when using
--with-system-mozjs38.
Tested By: temple
Differential Revision: https://code.wildfiregames.com/D1028
This was SVN commit r20523.
Make pyrogenesis and tests depend on Collada, fixes#404.
This commit includes custom modules for CxxTest and pkg-config support
that can be improved upon in the future. It also includes all necessary
changes to the build scripts, but the new premake5 features are not
fully exploited yet.
With this change, premake5 becomes the default, but CI scripts on Unix
will continue using premake4 for a while, in order to avoid regressions.
Includes code by zsol.
Reviewed by: wraitii, leper
Differential Revision: https://code.wildfiregames.com/D72
This was SVN commit r20381.
This new script and the associated configuration files lint our source
code (JS and C++). This will be extended in the future, refs #4833.
Reviewed By: Imarok
Differential Revision: https://code.wildfiregames.com/D213
This was SVN commit r20364.
This fixes#4561 and makes sound card detection work on non-Windows
platforms.
Reviewed By: echotangoecho
Tested By: Imarok, elexis
Differential Revision: https://code.wildfiregames.com/D636
This was SVN commit r19877.
Allows lobby players to host games without having to configure their
router.
Differential Revision: https://code.wildfiregames.com/D364Fixes#2305
Patch By: fcxSanya.
StunClient based on code by SuperTuxKart, relicensed with approval of
the according authors hilnius, hiker, Auria, deveee, Flakebi, leper,
konstin and KroArtem.
Added rfc5245 (ejabberd) support, a GUI option, refactoring and segfault
fixes by myself.
Tested By: user1, Sandarac, Sestroretsk1714, Vladislav, Grugnas,
javiergodas
Partially Reviewed By: leper, Philip, echotangoecho
This was SVN commit r19703.
Two of our printf calls are not compatible with python-format and will
be ignored until Dennis supports the corresponding formats. Also removed
meaningless enclosing characters that were wrongly considered HTML.
Reviewed By: leper
Differential Revision: https://code.wildfiregames.com/D214
This was SVN commit r19669.
Actually implementing atlas support for triggers will most likely
require a different interface, so no use keeping it.
Reviewed By: vladislavbelov
Differential Revision: https://code.wildfiregames.com/D418
This was SVN commit r19531.
This has been disabled for nearly 10 years (44f5288a1d), so remove it.
Reviewed By: fatherbushido, vladislavbelov
Differential Revision: https://code.wildfiregames.com/D423
This was SVN commit r19511.
By removing this we don't need to add NASM support to premake5, refs
#3729.
Reviewed By: leper
Differential Revision: https://code.wildfiregames.com/D97
This was SVN commit r19188.
Tweak the coverage script.
Update the clean-workspaces script to be able to avoid rebuilding
libraries.
Differential Revision: https://code.wildfiregames.com/D2
This was SVN commit r19074.
Add a menu entry for atlas.
Add some translations for the product description provided by native
speaking players and contributors.
This was SVN commit r18904.
However, this can mask memory issues, so this flag will not be enabled
by default. The autobuilder will use it, so SVN playtesters and release
users can benefit from it. Windows users compiling the game themselves
will have the 2GB limitation.
Fixes#4190, refs #1619, #4191
Flag tested by Stan
This was SVN commit r18711.
Remove the "sdl1" option from premake4.lua (thanks historic_bruno).
Improve isUnprintableChar indentation, resolve two defines, change SDL*
to SDL2 in premake (thanks leper).
This was SVN commit r17479.
SDL1 can still be forced passing --sdl1 to update-workspaces.sh.
Eventually, if no blocking issues arise, SDL1 support could be dropped
after next release.
This was SVN commit r16586.
Updates to upstream changeset f71a8e5e84bffadd61ac93768b332262989844fd,
with some additions
that will be submitted upstream (without the addition of precompiled.h
and win32 dirent).
This was SVN commit r16462.
This has caused the bundled library to be built even if
--with-system-mozjs31 is specified (but actually it has still correctly
used the system library after building the bundled library).
Refs #2462
This was SVN commit r16235.
This upgrade also introduces exact stack rooting (see to the wiki:
JSRootingGuide) and fixes problems with moving GC. This allows us to
enable generational garbage collection (GGC).
Measurements a few months ago have shown a performance improvement of a
non-visual replay of around 13.5%. This probably varies quite a bit, but
it should be somewhere between 5-20%. Memory usage has also been
improved. Check the forum thread for details.
Thanks to everyone from the team who helped with this directly or
indirectly (review, finding and fixing issues, the required C++11
upgrade, the new autobuilder etc.)! Also thanks to the SpiderMonkey
developers who helped on the #jsapi channel or elsewhere!
Fixes#2462, #2415, #2428, #2684, #1374
Refs #2973, #2669
This was SVN commit r16214.
sys_vswprintf relies on platform-specific printf implementations, which
vary widely between platforms (in handling of truncation, return values,
use of %s/%S/%hs/%ls for mixing char and wchar_t strings, etc) and are
therefore a pain.
Use cppformat's fmt::sprintf instead, which has very similar syntax to
sprintf but is more C++ish and is portable.
Also, wchar_t is stupid, so use char* strings (which are expected to be
UTF-8) in CLogger. This creates a bit of a pain with changing all
callers to convert to char* strings, but that's their fault for not
using UTF-8 already.
Refs #3011.
This was SVN commit r16182.
Adds precompiled MiniUPnPc 1.9 libs for win32, fixes#2552.
Updates build-osx-libs.sh for these changes, including patch to fix
clang symbol visibility (fixed upstream).
Updates LICENSE.txt.
Fixes bug in build-osx-libs.sh where downloaded files might not have the
expected filename.
Fixes problem with building wxWidgets for 32-bit OS X targets,
apparently ARCH is ignored sometimes, but --enable-macosx_arch works.
This was SVN commit r15870.
Note: SDL2_CONFIG is now the variable to override the path to
sdl2-config, SDL_CONFIG remains to override the path to sdl-config
This was SVN commit r15774.
* Adds SDL color cursor implementation
* Adds config option for choosing preferred display in multimonitor
setup
* Uses text input API to better handle CJK input
* Fixes various hotkey and input bugs
SDL 1.2 is still the default and recommended, to test experimental SDL2
support, pass the --sdl2 flag to update-workspaces
This was SVN commit r15767.
Fixes linking error in ICU build from build-osx-libs.sh (it was setting
the C++ compiler to clang, which is the C compiler, so it wouldn't
automatically link to the c++ lib). Now build-osx-libs.sh and the game
should use clang and whichever c++ lib is the default
This was SVN commit r15725.
Replaces cxxtest-4.3 with cxxtest-4.4 (without .gitignore or .cvsignore
files) (see [[SVN:14817]]).
Applies the same changes as done in c8bdd993c0 to the new version.
This was SVN commit r15667.
Change the shader itself so that the effects look nicer and are more
consistent across settings.
Rework the water mesh generation (simpler system). Fix a few issues.
May work oddly with Atlas since I haven't been able to compile yet.
Refs #1875 (maybe fix), Fixes#2077 (I'll assume it does), Fixes#2114
(assumption again), refs #48.
This was SVN commit r15473.
Updates update-workspaces.sh and build-osx-libs.sh for this change.
Updates precompiled win32 ENet to 1.3.12, built with VC++ 2010, and
moves it to libraries/win32, refs #864.
This was SVN commit r15457.
Updates libiconv to v1.14.
Updates libxml2 to v2.9.1.
Updates zlib to v1.2.8.
Rebuilds FCollada.
Updates libxml2 to use same libiconv as tinygettext.
Cleans up unneeded libiconv files.
This was SVN commit r15416.
Fixes to build-osx-libs.sh.
Support gloox properly on OSX.
Refs #2304 (not fixed since afaik xCode still runs into some issues)
This was SVN commit r15410.