Commit graph

31 commits

Author SHA1 Message Date
Vadim Zeitlin
ff59ef301b Merge branch 'master' into webview-chromium 2024-01-17 00:22:39 +01:00
Vadim Zeitlin
3b06ab65ff Don't set CMAKE_CXX_STANDARD to 11 by default
Use the compiler default C++ dialect if it is C++11 or higher and only
explicitly request C++11 if the compiler can't compile a small test
using C++11 features by default.

This prevents from unnecessarily adding -std=c++11 to the compiler flags
under Unix, even with compilers using e.g. C++17 by default.
2024-01-06 13:59:09 +01:00
Vadim Zeitlin
acf113f3f9 Update copyright years to 2024
Just run misc/scripts/inc_year and commit the results.

See #18690.
2023-12-31 18:56:06 +01:00
Maarten Bent
bff7c317af
CMake: Fix CMake 3.5 deprecation warning 2023-12-21 21:18:54 +01:00
Vadim Zeitlin
f5daf28932 Update copyright years to 2023
Just run misc/scripts/inc_year and commit the results.

See #18690.
2023-01-03 04:15:08 +01:00
Vadim Zeitlin
2c206e7b6e Always require C++11 for CMake builds 2022-10-07 02:34:45 +02:00
Vadim Zeitlin
3dcb7a415f Use output directory under wx directory in the build tree
CMAKE_CURRENT_BINARY_DIR is the same as CMAKE_BINARY_DIR when building
wx directly, but they can be different when including this makefile from
a super-project using add_subdirectory() and it makes more sense to use
the former.

This also fixes wx-config symlink created in such build, as it the link
was broken before because it was created under CMAKE_CURRENT_BINARY_DIR
but pointed to a file in a different CMAKE_BINARY_DIR.
2022-09-21 20:04:15 +02:00
Maarten Bent
2e2e96f8aa CMake: Don't use Windows path separators in install prefix
Sometimes CMake complains that the backslash is interpreted as unknown escape symbol.
2022-06-18 16:08:29 +02:00
Maarten Bent
4fa3b8c276 CMake: Fix the minimum supported version
Change the minimum version to 3.0. Version 2.8.12 has never worked,
because it does not support the VERSION parameter in project().

Replace GREATER_EQUAL comparisons, these are only supported since 3.7.

Move PCH related code to a separate file, and include it after
options.cmake and init.cmake. Because only then the wxBUILD_PRECOMP
variable is fully initialized.

Closes #22312.
2022-04-16 15:35:49 +02:00
Maarten Bent
323e6e8320 CMake: Fix using precompiled headers with Objective-C++ files
Compiling .mm files gives error 'Objective C file was disabled in PCH but is currently enabled'.

Enable the OBJCXX language so the Objective-C++ compiler will be detected and used for .mm files instead of the c++ compiler.
Detect if there are .mm files and enable PCH for them too.

Don't set COTIRE_UNITY_SOURCE_EXCLUDE_EXTENSIONS when cotire is not used.
2022-04-12 22:08:45 +02:00
Vadim Zeitlin
3bc0f44163 Update copyright years to 2021
Just run misc/scripts/inc_year and commit the results.

Closes #18690.
2022-01-02 13:32:23 +01:00
Maarten Bent
2e12779a21 CMake: update Info.plist variables
Use the same values as in build/bakefiles/mac_bundles.bkl.
Use the correct copyright year for in the Info.plist files.
2021-08-17 22:33:45 +02:00
Vadim Zeitlin
518c04cd55 Add "Copyright" to CMake copyright variable
This is used for NSHumanReadableCopyright Info.plist field and should
have "Copyright" for consistency with the other Info.plist files.
2021-08-15 16:56:24 +02:00
Maarten Bent
91884752c1 CMake: Create symlinks with so version 2021-06-06 23:36:59 +02:00
Dimitri Schoolwerth
086ad7bc9a CMake: Fix out of sync iOS/macOS deployment target
The minimal sample doesn't have an implicit deployment target set, while
the library does through CMakeLists.txt in root. This can result in iOS
link errors when not explicitly setting CMAKE_OSX_DEPLOYMENT_TARGET as
the sample will then use a target OS with an architecture that may not
be present in the library with its current target OS version.

Fix by copying the part setting CMAKE_OSX_DEPLOYMENT_TARGET in the
library to the minimal sample as well. Both parts should be kept in sync
but that still seemed preferable to additionally polluting an example
file for CMake usage with a dependency by introducing a common include
file.
2021-01-08 13:02:30 +01:00
Dimitri Schoolwerth
161ecbf01d CMake: Separate minimal support for iOS and macOS
Differentiate between the minimal supported version of macOS (10.10)
and iOS (12.0) instead of setting CMAKE_OSX_DEPLOYMENT_TARGET to
(macOS-only) 10.10 for both platforms.
2021-01-08 13:00:02 +01:00
Vadim Zeitlin
b58ee58a7b Update copyright years to 2021
Just run misc/scripts/inc_year and commit the results.

See #18690.
2021-01-03 18:12:37 +01:00
Stefan Csomor
4fb1764d6b adapt naming to macOS 2020-07-05 21:03:32 +02:00
Stefan Csomor
dedefa65c1 applying CMake patch from @MaartenBent 2020-07-05 15:54:27 +02:00
Maarten Bent
7b4ee6100f CMake: set the project version 2020-05-24 22:20:06 +02:00
Vadim Zeitlin
c09fd8b59d Update copyright years to 2020
Just run misc/scripts/inc_year and commit the results.

Closes #18690.
2020-03-06 00:51:39 +01:00
Maarten Bent
46f01bfe8b CMake: Fill in default configuration in cmake-gui
The Debug configuration is the default, but it is not filled in in cmake-gui.
Do this, and set Debug and Release as available options.

See https://trac.wxwidgets.org/ticket/18438
2019-07-19 01:26:42 +02:00
Maarten Bent
60b0a1fde2 CMake: Fix MSVC warning when using NMake
Fix warning: Command line warning D9025 : overriding '/W3' with '/W4'
Remove /W3, either via a regex or via new policy CMP0092 (CMake 3.15).

The policy has to be set before calling project(), otherwise the
CMAKE_<LANG>_FLAGS are already initialized.

See https://trac.wxwidgets.org/ticket/18438
2019-07-19 01:09:36 +02:00
Vadim Zeitlin
aeef082e47 Update year in various copyrights to 2019
This is the equivalent of c8b6ca308b for
2019, except that it was produced by running misc/scripts/inc_year and
not manually now.

See https://github.com/wxWidgets/wxWidgets/pull/1302
2019-04-21 20:39:28 +02:00
Vadim Zeitlin
761564021c Also change minimum macOS version to 10.9 for CMake
Update CMAKE_OSX_DEPLOYMENT_TARGET default value to match configure
builds, see the previous commit.
2019-01-16 15:09:18 +01:00
Tobias Taschner
7ce0a0a774
CMake: Additional fixes/tweaks for C++11 on macOS
The changes in 0a94c1890f where an
incomplete solution.
The apple compiler automatically choses libc++ if the deployment target
is >= 10.9. Lower deployment targets need explicit compiler options
to use libc++.
2018-02-08 11:01:05 +01:00
Tobias Taschner
0a94c1890f
CMake: Fixes/Tweaks for macOS building with C++ 11
Make sure the deployment target is set to 10.9 when using C++11
Also ensure building C++11 on macOS for non Xcode builds
2018-02-06 13:35:15 +01:00
Tobias Taschner
7887be861e
CMake: Set default configuration types
Only use Debug and Release as default configuration types
2018-02-06 11:54:41 +01:00
Tobias Taschner
c8b6ca308b Update year in copyright notices to 2018
Use 2018 instead of 2017 (mostly in version info files).

See https://github.com/wxWidgets/wxWidgets/pull/661
2018-01-05 19:51:47 +01:00
Vadim Zeitlin
c66c9c5ae6 Merge branch 'build_cmake' of https://github.com/TcT2k/wxWidgets
Add CMake-based build system.

Merge the original branch without any changes except for resolving the
conflict due to moving the contents of .travis.yml to a separate file by
propagating the changes done in this file since then to the new script
and rerunning ./build/update-setup-h and ./build/cmake/update_files.py
to update the file lists changed in the meanwhile.

Closes https://github.com/wxWidgets/wxWidgets/pull/330
2017-12-09 15:09:47 +01:00
Tobias Taschner
da2b8ea812
Add CMake build system
Add CMake build system for libraries, tests and samples
update_files.py converts build/files into CMake format.
build/update-setup-h has been modified to update build/cmake/setup.h.in.
2017-01-03 20:53:10 +01:00