heinrich5991
9ef200cd4a
Revert "CMakeLists.txt: Replace PythonInterp with Python"
...
This reverts commit c1523d9fc3
.
Fixes #1352 .
2018-10-20 14:37:12 +02:00
yangfl
c1523d9fc3
CMakeLists.txt: Replace PythonInterp with Python
...
FindPythonInterp is deprecated since CMake version 3.12. Use Python to
automatically detect Python 3 or 2.
2018-10-11 08:57:56 +08:00
heinrich5991
4660e0a680
Add support for extra map items in datafiles
...
This works by utilizing the good old UUIDs – this way we can make sure
that we don't clash with other people extending the map format.
2018-10-08 23:05:56 +02:00
Dennis Felsing
e8bd8459a6
Fix #1325
2018-10-04 09:25:41 +02:00
Dennis Felsing
a95032b633
Apply heinrich5991's fix for #1324
2018-10-04 08:39:43 +02:00
Dennis Felsing
b0759830b7
Merge pull request #1300 from Learath2/dd_pr_autoupdateflag
...
CMake option to disable autoupdater. Closes #1292
2018-10-02 08:04:12 +02:00
heinrich5991
81408cac4e
Debug mode should only be default if DEV is set, release otherwise
...
Fixes #1308 .
2018-09-30 19:01:43 +02:00
Learath
2696ac134c
Handle the platform differences in CMake.
2018-09-20 14:06:18 +02:00
Learath
3852f0e720
CMake option to disable autoupdater. Closes #1292
2018-09-20 03:01:31 +02:00
Dennis Felsing
c7941db9d4
Static linking only when PREFER_BUNDLED_LIBS ( closes #1295 )
2018-09-19 07:58:17 +02:00
heinrich5991
cb09161dec
Add a proper make install
command
...
It will install data into `share/ddnet`, client and server binaries into
`bin` and tools into `lib/ddnet`.
Fixes #1269 .
2018-08-26 21:44:31 +02:00
heinrich5991
f7afd76292
(Re-?)add proper install target
...
This puts binaries in `bin` and the data dir into `share/ddnet`.
2018-08-21 21:53:08 +02:00
heinrich5991
8d04e7e5e1
Share libcurl resources across requests
...
Use the libcurl-share interface to share DNS cache and connections
between different requests.
If compiled with OpenSSL, libcurl can only be safely used from multiple
threads for OpenSSL >= 1.1.0, but this problem is not newly introduced
by this commit: According to libcurl-thread(3):
>OpenSSL <= 1.0.2 the user must set callbacks.
>
>https://www.openssl.org/docs/man1.0.2/crypto/threads.html#DESCRIPTION
>
>https://curl.haxx.se/libcurl/c/opensslthreadlock.html
2018-07-11 20:17:21 +02:00
yangfl
81a39c229b
Fix typo
2018-07-10 17:29:02 +08:00
heinrich5991
67a3042051
Fix Mac linking for cross-compilation
...
The `Security` framework is now needed on all targets because we link
libcurl everywhere.
2018-06-27 12:35:01 +02:00
Dennis Felsing
6c1e50bba5
Revert "No Crypto on Mac OSX"
...
This reverts commit fd1cdbfa74
.
2018-06-27 10:02:29 +02:00
Dennis Felsing
fd1cdbfa74
No Crypto on Mac OSX
2018-06-27 09:47:53 +02:00
heinrich5991
ca8fcc823c
Use more secure hash function for map downloads
...
SHA256 was chosen because it is reasonably standard, the file names
don't explode in length (this rules out SHA512) and it is supported by
basically all versions of OpenSSL (this rules out SHA512/256 and SHA3).
The protocol is changed in a backward compatible way: The supporting
server sends the SHA256 corresponding to the map in the `MAP_DETAILS`
message prior to sending the `MAP_CHANGE` message. The client saves the
SHA256 obtained from the `MAP_DETAILS` message until the next
`MAP_CHANGE` message.
For servers not supporting this protocol, the client falls back to
simply opening maps like in the previous scheme.
Remove the `map_version` tool, it is not being used and would have been
a little bit effort to update.
Use the OpenSSL implementation of SHA256 if it is supported, otherwise
fall back to a public domain one.
Fix #1127 .
2018-06-24 17:04:50 +02:00
heinrich5991
36694d3852
Add a way to call for external moderator help
...
This is done by HTTP POSTing to a location specified by
`sv_modhelp_url`. We also provide a `src/modhelp/server.py` which can
use theses POSTs to forward them to Discord servers.
The POST contains a JSON object payload, with the keys `"port"` which
contains the server port, `"player_id"` which contains the calling
player's client ID, `"player_name"` which contains the calling player's
nick and `"message"` which is the user-specified message.
Make JSON-escaping function public, add tests and fix bugs uncovered by
these tests.
Supersedes #1129 .
2018-06-19 23:27:35 +02:00
def
9c29d83d32
Try statically linking libgcc and libstdc++ on Linux too
2018-05-22 19:42:48 +02:00
def
f19f4530d3
Revert "Try removing manifest"
...
This reverts commit 6df2ad55ed
.
2018-05-09 22:06:52 +02:00
def
6df2ad55ed
Try removing manifest
...
Causes bug with Intel driver using OpenGL2:
https://stackoverflow.com/questions/34676697/embedding-manifest-into-the-application-binary-breaks-opengl-2
2018-05-07 20:57:06 +02:00
heinrich5991
81aeb30654
Also add a console command to enable map compatibility mode
2018-05-01 12:38:33 +02:00
heinrich5991
4576dae6aa
Add infrastructure for special-casing maps
2018-03-24 14:00:41 +01:00
heinrich5991
11304661db
Put name ban stuff into a separate file
...
Fix a bug when overlong names could be used to circumvent name bans. Add
tests for name bans.
2018-03-14 02:35:31 +01:00
heinrich5991
a71cc2a55b
Execute git_revision.py
in the source directory
...
Previously, if using an out-of-source build directory, git would report
an error and no revision string would be added to the final executable.
2018-03-10 00:58:10 +01:00
heinrich5991
31a3e8d4c0
Add possibility to ban players by name
...
This uses the Unicode confusable data together with judging how close
two strings are by using the Levenshtein distance.
Adds the commands `name_ban`, `name_unban` and `name_bans`. Kicks
players who join using a banned name and doesn't allow ingame players to
change their names to the banned ones.
2018-03-09 20:30:27 +01:00
heinrich5991
d118fbd5e0
Fix build with -DCLIENT=OFF
on macOS
2018-03-06 19:25:59 +01:00
heinrich5991
458804c059
Make game dependency on generated protocol.h
explicit
2018-03-02 03:42:35 +01:00
heinrich5991
1387ee9a3a
Regenerate version file on git changes
...
Previously, this file had to be manually deleted if you wanted to have a
new version compiled in.
2018-03-01 16:50:29 +01:00
heinrich5991
1578e272a3
Ignore old generated files if still present
...
Our build system used to put generated files into `src/game/generated`,
now it's using `${PROJECT_BUILD_DIR}/src/game/generated`. Prefer the
ones in `${PROJECT_BUILD_DIR}/src/game/generated`.
2018-02-20 17:11:18 +01:00
heinrich5991
ac7e92df5e
Rerun wavpack version detection when the library changes
2018-02-20 17:10:52 +01:00
def
491ccc85e1
Revert "Fix system wavpack ( fixes #1041 )"
...
This reverts commit 295b8a663a
.
2018-02-18 15:35:20 +01:00
def
295b8a663a
Fix system wavpack ( fixes #1041 )
2018-02-18 09:36:35 +01:00
heinrich5991
73c03544b4
Support older wavpack versions
2018-02-17 01:35:07 +01:00
heinrich5991
99fe1d7bcf
Revert "Fix bundled wavpack when system wavpack is available"
...
This reverts commit 0d9265b1fa
.
2018-02-17 01:31:40 +01:00
def
0d9265b1fa
Fix bundled wavpack when system wavpack is available
2018-02-15 19:30:40 +01:00
heinrich5991
38b96791f6
Try to find libwebsockets
on the host system
2018-02-14 12:55:37 +01:00
heinrich5991
94818ec1f0
Try to find external GLEW, pnglite and Wavpack
...
Allow for newer versions of Wavpack, fixes #1023 .
Fixes #1016 .
2018-02-12 23:29:45 +01:00
heinrich5991
22164d5c45
Squelch warnings in bundled ZLIB dependency
2018-02-12 23:29:45 +01:00
heinrich5991
9e9b57ec62
Move generated files to the CMake build directory
2018-02-12 23:29:45 +01:00
Learath2
050a34295f
Remove make_release, scrub references to lua files
2018-01-29 13:37:26 +01:00
Learath2
b26eeb235d
Scrub more references to bam
2018-01-28 22:47:03 +01:00
bors[bot]
f48a2a395b
Merge #947
...
947: Add support for extra chunks in teehistorian r=Learath2 a=heinrich5991
This allows to add rarely-used chunks without increasing the file format
version.
2018-01-27 21:09:43 +00:00
def
151da9af97
Remove Emojis
2018-01-25 20:03:18 +01:00
heinrich5991
9712a4494b
CMAKE_CXX_FLAGS
is space-separated, not semicolon-separated
2018-01-22 19:48:17 +01:00
heinrich5991
ccad91a11d
Check for -std=gnu++11
in the C++, not C, compiler
2018-01-22 19:32:30 +01:00
heinrich5991
6b7921677c
CMakeLists.txt: Check for each of the flags before adding them
2018-01-22 19:10:57 +01:00
def
45412a9a05
-ffloat-store to fix win32 server floats ( fixes #989 )
2018-01-15 19:34:54 +01:00
def
b3ad3f2d27
Forgot .exe ending for Windows
2018-01-14 16:11:09 +01:00