Commit Graph

141 Commits

Author SHA1 Message Date
/dev/root
369267ef39 added submodules for bitmrc 2016-08-25 18:17:47 +02:00
/dev/urandom
db4f9ad6ec
MILESTONE define is now bound to the current Git tag name (which is beta).
Subject to.
2016-08-17 05:00:12 +02:00
/dev/urandom
2530457eb6
Merge commit 2016-08-15 23:26:27 +02:00
momo5502
b3b74bf1f4 Rename debug flags, premake recognizes them as '--debug' and enables debug mode in release configurations 2016-08-14 15:17:30 +02:00
/dev/urandom
02a6c90d13
Premake: Linker warnings are now treated as fatal errors. 2016-08-13 20:11:37 +02:00
/dev/urandom
9235616baa
Premake: Use C++14 flag; this may have an effect on the MSVC compiler in the future. 2016-08-13 20:11:06 +02:00
/dev/urandom
7ff05580c9
Premake: Split up dependencies, make them easily configurable and provide easy-to-use imports.
All dependency projects are now separated into their own Premake scripts and are designed to provide easy "import", "includes" and "setup" functions.

First, you use project.setup { ... } to provide the library with its respective configuration, this MAY include defines and MUST include the source path of that specific library. Then you can use project.includes() or project.import() in your target application or library project to let the script configure your project. This will configure all necessary include directories and links.
2016-08-13 19:45:11 +02:00
/dev/urandom
6dfd22c07a
New premake flags for debugging anticheat, library loading and forcing unit tests.
- --debug-detections sets the "DEBUG_DETECTIONS" define to show whenever a mismatch in the anticheat hashing occurs.
- --debug-load-library sets the "DEBUG_LOAD_LIBRARY" define to show libraries as they are loaded during runtime in the debug console.
- --force-unit-tests sets the "FORCE_UNIT_TESTS" define to enforce compiling the unit tests into the binary.
2016-08-13 19:20:27 +02:00
/dev/urandom
4c6ad8a134
Premake: Add --copy-pdb parameter to also copy the PDB file to the folder given by --copy-to. 2016-08-10 17:09:19 +02:00
/dev/urandom
63fc302ce0
Premake: Fix fail on --copy-to due to missing target directory. 2016-08-10 17:08:27 +02:00
momo5502
9562285ed7 Use new format library and sort utils 2016-07-11 17:14:58 +02:00
momo5502
ae2c458a07 More protobuf fixes 2016-07-03 16:54:16 +02:00
momo5502
21047a3da3 Use develop branch for libtommath 2016-06-14 15:28:42 +02:00
momo5502
276e35e2d2 Some optimization 2016-06-08 17:28:58 +02:00
momo5502
0c205f0353 Server-side moddownload implemented 2016-06-04 21:24:03 +02:00
momo5502
d59e70ff2a Start implementing moddownload 2016-06-04 17:06:49 +02:00
momo5502
f637670e52 Workaround 2016-05-16 15:38:58 +02:00
/dev/urandom
536cb2f171
premake: Introduce REVISION_CLEAN. More info in this commit msg.
REVISION_CLEAN can be 0 or 1. When it is 0 that means that there were uncommitted changes to the code at the time of version info generation, otherwise this will be 1 which means that there have been no uncommitted changes.
2016-03-15 01:44:40 +01:00
/dev/urandom
d8d5f79d20
premake: Fix for VS IDE to open Resource.rc.
Signed-off-by: /dev/urandom <iw4x-dev-urandom@protonmail.com>
2016-03-15 01:07:18 +01:00
momo5502
2e4dd10c3e Embed resource file 2016-03-14 12:54:59 +01:00
momo5502
00b7e3f920 Some more authentication stuff. 2016-02-22 13:37:13 +01:00
/dev/urandom
d492d422b6
Update libtomcrypt to de15a6fad9.
This is mainly with focus on issues with the ECC code. One of these issues is a "possible overflow in ecc_ansi_x963_export" (https://github.com/libtom/libtomcrypt/issues/58). Other than that all changes are minimal, only one new compile flag had to be added to get around a compiler incompatibility case for LTC_FAST (we're not working with GNU compilers here) and the code will fully compile.
2016-02-20 05:02:30 +01:00
momo5502
59a00f2b0e Penis. 2016-02-17 18:44:33 +01:00
momo5502
8f91c7dc6a More bugfixes 2016-02-13 14:03:23 +01:00
momo5502
348b876e5e Better structure. 2016-02-12 15:08:52 +01:00
momo5502
a11f004a7e More proto stuff.
We should add a version identifier before releasing!
2016-02-12 15:06:06 +01:00
momo5502
4fa8ebd3c5 Update submodules. 2016-02-12 13:09:10 +01:00
momo5502
02b6dd2f19 Optimize far-jump patches 2016-02-12 00:36:52 +01:00
momo5502
95e188cb7a Better proto vpath fix. 2016-02-11 18:57:11 +01:00
momo5502
ab7f1bfcca protoc has no support for spaces in the commandline (https://github.com/google/protobuf/issues/955) 2016-02-11 18:46:24 +01:00
momo5502
d875f36be2 Fix vpaths if not using new structure 2016-02-11 17:58:25 +01:00
/dev/urandom
b47c75dbf7
premake5: Get rid of warnings caused by protoc-generated code.
- /wd4100 since "unused formal parameter" is not a critical error
- _SCL_SECURE_NO_WARNINGS as unfortunately protoc's generated code still relies on potentially unsafe methods
2016-02-11 15:21:20 +01:00
/dev/urandom
22dbae3b67
premake5: Automatic compiling of protobuf definition files.
- Added custom rules for *.proto files to iw4x
- Added a workaround for protoc output not being automatically included
- Disable precompiled headers for protobuf generated sources
- Moved inclusion of node.pb.h out of STDInclude.hpp to only where it's necessary (WTF @momo5502)
- Removed protobuf-generated code from "protobuf" external project
- Removed protogen.bat as it is no longer needed
2016-02-11 15:10:23 +01:00
momo5502
ff6baf1e08 Update comments. 2016-02-11 11:35:57 +01:00
momo5502
8cef16017e Use wink-signals
boost.signals sadly requires way too many dependencies, libsigc++ requires too much configuration and all the other libs I tested mostly required constexpr as callbacks (due to passing callbacks via template list), which doesn't server this purpose, so wink-signals seems just about right for what we do.
2016-02-11 11:26:41 +01:00
momo5502
75e76226d1 Include protobuf. Not sure if we're supposed to commit protoc :S 2016-02-10 14:54:50 +01:00
momo5502
790bcb2474 Inlcude protobuf for later usage.
Not sure if it's implemented correctly, but we'll see that tomorrow :P
2016-02-10 01:56:06 +01:00
momo5502
4d36a0b9ed ECDSA and PRGN stuff. 2016-02-08 14:27:15 +01:00
momo5502
0a54d940bb Fix compiler warnings. 2016-02-07 02:31:30 +01:00
momo5502
a34a440000 Apparently, libtomcrypt explicitly ignores all tab sources. 2016-02-04 22:10:50 +01:00
momo5502
ad1e25bd56 Update submodules and include some unit testing code. 2016-02-04 21:58:49 +01:00
momo5502
2706e50881 libtommath is faster than tomsfastmath (oh, irony :P) and fixes issue 2016-01-31 21:53:51 +01:00
momo5502
e43444738c Stuff seems to take years to compile on release :/ Might wanna switch to openssl, crypto++ or some other rsa lib. 2016-01-31 21:27:43 +01:00
momo5502
55170e6ba8 correctly include tomsfastmath 2016-01-31 19:50:17 +01:00
momo5502
1fdeb17e6d add fastmath stuff. 2016-01-31 15:55:32 +01:00
momo5502
e51e791184 2016-01-31 13:19:29 +01:00
momo5502
31ae9a779a Include libtomcrypt for future rsa signing. 2016-01-29 00:20:28 +01:00
momo5502
c68e5114d1 Don't compile pdcurses dynamically, I was wrong, it doesn't export anything at all. 2016-01-27 11:03:26 +01:00
momo5502
d3a9580f8f Dynamic pdcurses library. 2016-01-27 03:17:31 +01:00
momo5502
d28323f73e Optimizations
- Increase warning level
- Use proper casting
- Fix some more warnings.
2016-01-24 12:19:34 +01:00
momo5502
f509e67953 Various fixes and optimizations. 2016-01-22 13:18:26 +01:00
/dev/urandom
622c6b5dff
premake: Move architecture definitions to workspace scope. 2016-01-21 01:00:18 +01:00
/dev/urandom
df1c0fb38c
premake5: Fix typo ("platform" => "platforms"). 2016-01-19 18:04:24 +01:00
/dev/urandom
1b4e5362c3
premake5: Fix architecture definition and added platform definition.
This is necessary if we want to support Mac OS X (xcode4) later as the generator ignores the architecture definition and only enforces 32-bit builds if the platform is set to either "Universal32" or "x86" despite the fact that premake5 only defines "platform" as a custom labeling method for Visual Studio.
2016-01-19 17:49:16 +01:00
/dev/urandom
eec125b67a
premake5: Correct architecture to x86. 2016-01-19 17:18:47 +01:00
/dev/urandom
e55f48dbe2
premake5: Add "version" command which prints the version string.
Needed for the CI to apply build naming by revision number.
2016-01-17 21:47:40 +01:00
momo5502
d921388e62 curses tests. 2016-01-17 00:22:08 +01:00
momo5502
5a5e149b3a Include curses. 2016-01-16 23:48:52 +01:00
momo5502
0050429654 Various fixes and stuff. 2016-01-15 22:51:47 +01:00
momo5502
0a201daee0 Include official boost-free asio module. 2016-01-14 12:33:11 +01:00
momo5502
852c88c3b5 Some more zone experiments and json11 submodule. 2016-01-05 14:39:04 +01:00
/dev/urandom
b2d5d3d870
premake5: Fix non-static builds of zlib. 2016-01-04 21:37:14 +01:00
/dev/urandom
d81ed71f2a
premake5: Don't use cross-platform {COPY} token as it generates a faulty condition. 2016-01-04 21:36:55 +01:00
/dev/urandom
2618fc506a
Adding zlib 1.2.8 to this project. 2016-01-04 21:07:34 +01:00
/dev/urandom
48356a974c
premake5: --copy-to now also copies all other DLLs (f.ex. those produced by debug builds) 2016-01-04 21:06:50 +01:00
/dev/urandom
0bfd6992c7
premake5: properly define objdir and targetdir and apply path standards (./) 2016-01-04 21:00:17 +01:00
/dev/urandom
f753acbe74
premake5: Use precompiled headers.
This easily doubles the compilation speed!!1
2016-01-04 20:58:00 +01:00
/dev/urandom
ddf7b62d6f
premake5: Let's do a bit more precise scripting. 2016-01-04 20:06:00 +01:00
/dev/urandom
1b484ecea3
premake5: Replace "solution" (premake4 keyword) with the new "workspace". 2016-01-04 20:03:56 +01:00
/dev/urandom
9e0fa476f9
premake5: Comments and restructuring the script.
Preparing for checking in dependencies.
2016-01-04 19:42:19 +01:00
/dev/urandom
01f1d82d05
We upgraded completely to VS 2015.
The code no longer compiles on VS 2013, removing that toolset.
2016-01-04 19:41:07 +01:00
/dev/urandom
b1d2ec3107
premake5: Fix general configuration incl. post-build event. 2016-01-04 02:19:12 +01:00
/dev/urandom
e6a7cf190f
premake5: Wiki copyblasta typo. 2016-01-04 02:14:14 +01:00
/dev/urandom
6274dc46d7
premake5: Wiki copyblasta typo. 2016-01-04 02:13:12 +01:00
/dev/urandom
9f20b3cd99
Split into real Debug and Release configurations and add some more flags.
- Release now uses all optimizations.
- Compiler warnings as errors.
- Link-time optimization.
- Static runtime linking.
- Ignore 64-bit unportability.
- Map Normal -> Debug for compatiblity with humans who are too lazy to migrate.
2016-01-04 02:12:05 +01:00
/dev/urandom
614c36fbe2
premake5: Map "Debug" and "Release" configurations to "Normal".
The general standard for any C++ project normally is to have a Debug and a Release version of the binaries, however in our case we only have one configuration that mixes both. Setting up aliases for this in order to prevent confusion on why the standard configurations don't work.
2016-01-04 01:52:14 +01:00
/dev/urandom
b2879f2eed
premake5: Disallow Microsoft toolsets older than Visual Studio 2013.
We only explicitly allow toolsets that are tested and compiled against - here it's Visual Studio 2013 and 2015.
2016-01-04 01:52:14 +01:00
/dev/urandom
b06ca535ff
premake5: Enforce 32-bit build. 2016-01-04 01:52:14 +01:00
/dev/urandom
05210099de
premake5: Switch from "Optimize" flag to premake's optimize option. 2016-01-04 01:52:14 +01:00
/dev/urandom
03e5adfdaf
premake5: Fix typo. 2016-01-03 14:57:24 +01:00
/dev/urandom
d8e1822c70
premake: fix oldRevNumber if a version.hpp in an old format exists. 2016-01-03 14:54:35 +01:00
/dev/urandom
bf9e7f18ba
Use "(none)" instead of -1 for non-existent version information. 2015-12-31 04:18:04 +01:00
/dev/urandom
911016dc5c
--no-new-structure if you don't like the new vpaths. 2015-12-31 04:08:09 +01:00
/dev/urandom
e6d38e68fb
Add version.hpp generation. Will trigger pre-build. 2015-12-31 03:59:33 +01:00
/dev/urandom
3fd7c1c66e
Reorganize virtual folder structure in solution files. 2015-12-31 03:58:43 +01:00
/dev/urandom
3bacac8e56
Edit description of --copy-to and add expected value type. 2015-12-31 03:58:16 +01:00
/dev/urandom
c07d9e4cfc
Works on Microsoft's compiler only anyways. 2015-12-31 02:44:51 +01:00
/dev/urandom
77df2fcae8
--copy-to option for premake5 to define custom folder to copy iw4x.dll to after build. 2015-12-31 02:44:04 +01:00
momo5502
8a1a8c6502 Use smooth native cursor instead of the laggy in-game one. 2015-12-29 14:46:17 +01:00
momo5502
4a26fc2bb6 Use any toolset. 2015-12-29 04:03:04 +01:00
momo5502
87c1c36943 Use premake. 2015-12-29 02:52:31 +01:00