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