1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-24 08:32:34 +02:00
Commit Graph

315 Commits

Author SHA1 Message Date
Andrey Filipenkov
4c19d8794d add option to compile AI code into libvcmi directly
- used on Android by default
- AI sources and libs are propagated to upper level with set(... PARENT_SCOPE)
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
970bd6ed34 adjust project for Android (except AI) 2023-03-02 12:09:47 +03:00
Andrey Filipenkov
b0c109d5f7 use target from variable 2023-02-22 14:00:52 +03:00
Konstantin
cffdabf48e lib: replace SDL usage to Boost one
It is safer and header-only, and can be removed after C++23 is accepted.
There is no need for SDL in non-GUI.
2023-02-02 23:58:22 +03:00
Ivan Savenko
8e13ed74d7 CMake version bump to 3.16, removed MXE workarounds 2023-01-31 18:48:14 +02:00
Ivan Savenko
57ee9a9bf3 Merge vcmi/beta into vcmi/develop 2023-01-29 18:21:55 +02:00
Konstantin
2aaaa5a05a CMakeLists.txt: check CMAKE_SYSTEM_PROCESSOR
Check CMAKE_SYSTEM_PROCESSOR when generating NSIS package.
This allows us correctly determine install dir on Windows
2023-01-27 00:11:17 +03:00
Konstantin
30784477e0 CMakeLists.txt: strip on package if no debuginfo is requested
It significantly reduces size of the executable
2023-01-26 23:50:08 +03:00
Konstantin
d62d5a83ab CMakeLists.txt: fix compilation with latest TBB on 22.04
It has a config file only for None build type. Map this as fallback
for all build types.
2023-01-26 23:50:08 +03:00
Konstantin
a24ec53df2 vcmi: enable Conan builds for cross-compiling Win
This patch enables usage of Conan for cross-compiling Windows
builds instead of MXE.
2023-01-26 23:49:00 +03:00
Konstantin
f0cb8b63c7 lib/CGameInterface.cpp: add MinGW workaround
MinGW returns all dynamic library functions as FARPROC, which need
to be cast to actual signatures, and this casts emits
-Wcast-function-type.
So, silence it for GetProcAddress.
2023-01-26 23:49:00 +03:00
Andrey Filipenkov
9addc83a6b generate ipa file with CPack directly 2023-01-24 20:10:57 +03:00
Ivan Savenko
e78d6f9d70 Fix MXE detection check 2023-01-16 21:28:32 +02:00
Ivan Savenko
c252837b6a Fix installation of compiled QM files 2023-01-16 18:02:11 +02:00
Ivan Savenko
96141f010b Merge remote-tracking branch 'vcmi/develop' into translate_launcher 2023-01-15 23:55:49 +02:00
Ivan Savenko
0a858d9a7c
Upgrade msvc to include enet and qt translator (#1436)
- Updated MSVC prebuilt package
- Fixed build warnings
2023-01-15 23:55:24 +02:00
Ivan Savenko
246281e62a Merged vcmi/beta with vcmi/develop 2023-01-15 17:46:42 +02:00
Ivan Savenko
192e856797 merge with vcmi/develop 2023-01-11 16:47:53 +02:00
Ivan Savenko
d9aab0a847
Merge pull request #1318 from IvanSavenko/translate_mapeditor
Translate mapeditor
2023-01-09 21:25:09 +02:00
Ivan Savenko
6379c5f6fa Install additional dll on Windows to get better style for Qt 2023-01-09 18:35:14 +02:00
Ivan Savenko
b1427f695b Fix MXE 2023-01-07 18:01:39 +02:00
Ivan Savenko
a55ac6c1e2 Fix MXE build 2023-01-07 16:51:23 +02:00
Ivan Savenko
7a8d85e023 Fix formatting 2023-01-07 16:51:03 +02:00
Ivan Savenko
d52b37fecb Moved strict compilation to CI-only 2023-01-05 17:37:40 +02:00
Ivan Savenko
c6290c1a50 Enable strict compilation by default 2023-01-05 17:37:40 +02:00
Ivan Savenko
7b2ac670f2 Changed woring according to review 2022-12-28 22:42:34 +02:00
Ivan Savenko
0e67507434 Fix editor button visibility 2022-12-28 22:20:04 +02:00
Ivan Savenko
858fb97f42 Added -DENABLED_LAUNCHER and -DENABLED_EDITOR defines 2022-12-28 17:56:22 +02:00
Ivan Savenko
bbb1d36bce Fix formatting 2022-12-27 12:28:05 +02:00
Ivan Savenko
dd172b0ea6 Fixed formatting 2022-12-27 12:26:57 +02:00
Ivan Savenko
abc7c890bf Backported required changes from Launcher branch 2022-12-26 23:26:19 +02:00
Ivan Savenko
9fb426edc1 Do not use translator without translator tools 2022-12-25 23:42:06 +02:00
Ivan Savenko
82f1370111 Linguist tools are now optional 2022-12-25 23:23:44 +02:00
Ivan Savenko
e4e5278f60 Merge with vcmi/develop 2022-12-25 23:10:52 +02:00
Ivan Savenko
20dec34484 Attempt to make translations optional (MXE...) 2022-12-25 23:09:15 +02:00
Ivan Savenko
b012cd9490 Compiled launcher translations are now in launcher/translations/ dir 2022-12-25 22:18:14 +02:00
Ivan Savenko
eb20a4b208 Merge remote-tracking branch 'vcmi/develop' into warnings_fix 2022-12-23 14:40:45 +02:00
Ivan Savenko
f073c676f9 Merge 1.1 release into develop 2022-12-23 14:17:18 +02:00
Ivan Savenko
b2279484fc
Merge pull request #1227 from Shatur/opendingux
Port to OpenDingux handhelds
2022-12-22 16:56:55 +02:00
nordsoft
4c15531a05 Fix cmake for macOS build 2022-12-21 23:08:53 +04:00
Hennadii Chernyshchyk
3f02146f87
Use different add_definitions for ENABLE_MONOLITHIC_INSTALL 2022-12-16 11:39:32 +02:00
Andrii Danylchenko
8c07ddbae0
Merge pull request #1204 from IvanSavenko/single_process_app_upgrade
[1.2] Single process app support for platforms other than ios
2022-12-15 12:22:24 +02:00
Hennadii Chernyshchyk
d7fbd4aa66
Call install_vcpkg_imported_tgt after initializing BIN_DIR
Call it inside AI/CMakeLists.txt as it was before.
2022-12-15 12:16:28 +02:00
Hennadii Chernyshchyk
3322ad9501
Move find_package for TBB on top for consistency with other 2022-12-15 02:21:44 +02:00
Hennadii Chernyshchyk
37068a75b3
Make ENABLE_NULLKILLER_AI top level option 2022-12-15 02:18:17 +02:00
Hennadii Chernyshchyk
79a9a0b85a
Fix paths for ENABLE_MONOLITHIC_INSTALL 2022-12-14 19:38:34 +02:00
Hennadii Chernyshchyk
1ccbc209a4
Add an option to disable Nullkiller AI 2022-12-13 22:16:48 +02:00
Hennadii Chernyshchyk
de33eb44f9
Port to OpenDingux handhelds 2022-12-13 03:55:54 +02:00
Ivan Savenko
f97d4c3630 Removed commented-out code 2022-12-12 18:50:14 +02:00
Ivan Savenko
0f2d4f119b Reverted -Werror due to new warnings in beta branch 2022-12-09 14:43:48 +02:00
Ivan Savenko
3e691d9033 Enable strict compilation by default in order for CI to use it 2022-12-09 14:17:03 +02:00
Ivan Savenko
db2a40600d Fixed some of the warnings detected by CI run 2022-12-08 23:20:42 +02:00
Ivan Savenko
31ac1e4ab2 Add path to libvcmi.so into RPATH so dynamic linker can find it 2022-12-08 12:46:40 +02:00
Ivan Savenko
4d494b0941 added ENABLE_STRICT_COMPILATION CMake option that sets -werror flag 2022-12-07 23:35:57 +02:00
Ivan Savenko
2855606a88 Enabled & fixed -Woverloaded-virtual warning from gcc/cland
- fixed almost all instances of overloaded-virtual warning
- cleared up inheritance & method overrides in code affected by warning
2022-12-07 21:50:45 +02:00
Ivan Savenko
111ac36417 Cleared up warning settings, enabled -werror for gcc/clang 2022-12-07 18:08:13 +02:00
Ivan Savenko
f8c67829a1 Restored single-app build to off by default 2022-12-06 22:30:34 +02:00
Ivan Savenko
2a492261e1 Fix building with cmake older than 3.12 2022-12-06 01:33:00 +02:00
Ivan Savenko
bc1ba2135d TEST COMMIT, will be reverted after successful Github Action run 2022-12-06 00:02:14 +02:00
Ivan Savenko
fa23965d0b Renamed for consistency BUILD_SINGLE_APP -> ENABLE_SINGLE_APP_BUILD 2022-12-06 00:00:56 +02:00
Ivan Savenko
5e37ad6836 Changes to single-app build
- client version of library is now always called vcmi, like in regular
builds (e.g. libvcmi.so)
- server version of library keeps its separate name
2022-12-05 22:57:43 +02:00
Ivan Savenko
d13bbabf08 Made copying of config & mods directories on build optional
Added option COPY_CONFIG_ON_BUILD, if set to OFF then post-process
command that copies config & mods directories to build destination will
be disabled.

This command may be convenient in most cases, but when only config file is
edited CMake won't trigger this command since lib was not changed.

At least on Linux, symlinks are more reliable alternative
2022-12-05 22:26:59 +02:00
Ivan Savenko
98f6173516 BUILD_SINGLE_APP is now CMake option 2022-12-05 22:21:21 +02:00
Ivan Savenko
1e2793af3a Attempt to fix cmake with older gcc 2022-11-28 23:05:36 +02:00
Ivan Savenko
f5f719b78e Enabled -Wmismatched-tags warning for gcc/clang since this apparently
lead to MSVC linker error
2022-11-28 21:46:24 +02:00
Andrey Filipenkov
c20ae90973 disable tests by default 2022-11-03 11:33:17 +03:00
Andrii Danylchenko
11790c7c02
Merge pull request #1083 from vcmi/fix-android
Move version definition into a separate cmake file
2022-10-23 10:39:25 +03:00
Andrii Danylchenko
6ef480971d Move version definition into a separate cmake file 2022-10-22 20:48:38 +03:00
Andrey Filipenkov
002e09fa2d [macOS] set copyright to Info.plist 2022-10-22 16:52:47 +03:00
Andrey Filipenkov
c9198311a1 [macOS] set bundle identifier to Info.plist 2022-10-22 16:52:27 +03:00
Andrii Danylchenko
b43e0ff9e4
Merge pull request #972 from vcmi/cpp-map-editor
Cpp map editor
2022-10-22 12:42:27 +03:00
Andrey Filipenkov
f10e5e3b99 [Conan] add iOS support 2022-10-16 13:25:38 +03:00
nordsoft
4cb31ea912 Merge remote-tracking branch 'upstream/develop' into cpp-map-editor 2022-10-08 23:24:57 +04:00
Nordsoft91
23f80c58dc
Apply suggestions from code review
Co-authored-by: Andrey Filipenkov <decapitator@ukr.net>
2022-10-08 22:55:15 +04:00
Andrey Filipenkov
92dd6d8c17 define app version only in CMakeLists
now it's propagated to code via macros
2022-10-04 12:29:38 +03:00
Andrey Filipenkov
af1f35779d raise app version in CMakeLists 2022-10-04 11:47:29 +03:00
Andrii Danylchenko
d07586ccf6
Merge pull request #1022 from kambala-decapitator/apple-set-app-version
[Apple] set proper app and build versions
2022-10-01 20:48:37 +03:00
Andrey Filipenkov
b766edb6af [iOS] don't nest AI and scripting libs under subdirectories
3rd party signing tools may ignore such directory layout
2022-10-01 12:36:48 +03:00
Andrey Filipenkov
4e1b441399 [macOS] set app and bundle version in app bundle's Info.plist generated by CPack 2022-09-30 13:25:14 +03:00
Andrey Filipenkov
3f61e6f964 [iOS] allow setting custom app name 2022-09-30 12:33:37 +03:00
Andrey Filipenkov
95e3400eb9 raise iOS deployment target to 12.0 2022-09-27 06:31:06 +03:00
Andrey Filipenkov
a5b62104d4 remove solved TODOs 2022-09-25 14:11:11 +03:00
nordsoft
d32898b39b Merge remote-tracking branch 'upstream/develop' into cpp-map-editor
# Conflicts:
#	CMakeLists.txt
2022-09-25 00:58:43 +04:00
Andrey Filipenkov
5f0a8419d3 install scripts directory only when scripting modules are enabled 2022-09-24 15:55:25 +03:00
Andrey Filipenkov
605d5b6481 add dedicated macro when building as single process
fix kambala-decapitator/vcmi#40
2022-09-24 15:55:25 +03:00
Andrey Filipenkov
2af7c29163 enable Foundation assertions only in Debug build 2022-09-24 15:55:24 +03:00
Andrey Filipenkov
e1c9903a45 extract iOS helpers into a shared lib 2022-09-24 15:55:24 +03:00
Andrey Filipenkov
7b411a5fc4 fix building vcmiERM for iOS 2022-09-24 15:55:24 +03:00
Andrey Filipenkov
902de3af7c CMake cleanup 2022-09-24 15:55:24 +03:00
Andrey Filipenkov
8dcd3146e7 generate zip with ipa structure using cpack
fix kambala-decapitator/vcmi#6
2022-09-24 15:55:23 +03:00
Andrey Filipenkov
e0244c69a3 add CMake presets for iOS 2022-09-24 15:55:23 +03:00
Andrey Filipenkov
1bb6a20b76 get rid of the custom toolchain 2022-09-24 15:55:23 +03:00
Andrey Filipenkov
5e838008df merge launcher and client
launcher is a static lib now
2022-09-24 15:55:22 +03:00
Andrey Filipenkov
c6e51852d0 add ability to build VCMI as single process
"Client process -> shared VCMI lib <- Server process" is turned into "shared Client-VCMI lib -> process <- static Server-VCMI lib"
- adds lib_client and lib_server targets that define distinct namespaces
- lib_client is a dynamic library which is shared with AI libs, lib_server is static
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
ede9f33328 fix linking with FFmpeg 2022-09-24 15:55:20 +03:00
Andrey Filipenkov
3388583089 use component-based install to copy only what's needed for every app 2022-09-24 15:55:20 +03:00
Andrey Filipenkov
fae295da88 allow building without codesigning 2022-09-24 15:55:20 +03:00
Andrey Filipenkov
67ef0c234d build Qt launcher, launch Client with it
kambala-decapitator/vcmi#17
2022-09-24 15:55:19 +03:00
Andrey Filipenkov
497bf58d32 disable modules 2022-09-24 15:55:19 +03:00
Andrey Filipenkov
5f97bf0be8 debug config in Xcode shouldn't produce dSYM files 2022-09-24 15:55:18 +03:00