forked from platformio/platformio-core
Fix an issue with hardcoded C stadard version when generating project for CLion IDE // Resolve #2527
This commit is contained in:
@ -42,6 +42,7 @@ PlatformIO 3.0
|
|||||||
~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
* Support custom CMake configuration for CLion IDE using ``CMakeListsUser.txt`` file
|
* Support custom CMake configuration for CLion IDE using ``CMakeListsUser.txt`` file
|
||||||
|
* Fixed an issue with hardcoded C stadard version when generating project for CLion IDE (`issue #2527 <https://github.com/platformio/platformio-core/issues/2527>`_)
|
||||||
* Fixed "systemd-udevd" warnings in `99-platformio-udev.rules <http://docs.platformio.org/en/latest/faq.html#platformio-udev-rules>`__ (`issue #2442 <https://github.com/platformio/platformio-core/issues/2442>`_)
|
* Fixed "systemd-udevd" warnings in `99-platformio-udev.rules <http://docs.platformio.org/en/latest/faq.html#platformio-udev-rules>`__ (`issue #2442 <https://github.com/platformio/platformio-core/issues/2442>`_)
|
||||||
* Fixed an issue when ``-U`` in ``build_flags`` does not remove macro previously defined via ``-D`` flag (`issue #2508 <https://github.com/platformio/platformio-core/issues/2508>`_)
|
* Fixed an issue when ``-U`` in ``build_flags`` does not remove macro previously defined via ``-D`` flag (`issue #2508 <https://github.com/platformio/platformio-core/issues/2508>`_)
|
||||||
* Fixed an issue for Project Generator when include path search order is inconsistent to what passed to the compiler (`issue #2509 <https://github.com/platformio/platformio-core/issues/2509>`_)
|
* Fixed an issue for Project Generator when include path search order is inconsistent to what passed to the compiler (`issue #2509 <https://github.com/platformio/platformio-core/issues/2509>`_)
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
# !!! WARNING !!!
|
# !!! WARNING !!! AUTO-GENERATED FILE, PLEASE DO NOT MODIFY IT AND USE
|
||||||
# PLEASE DO NOT MODIFY THIS FILE!
|
# https://docs.platformio.org/page/projectconf/section_env_build.html#build-flags
|
||||||
# USE https://docs.platformio.org/page/projectconf/section_env_build.html#build-flags
|
#
|
||||||
|
# If you need to override existing CMake configuration or add extra,
|
||||||
|
# please create `CMakeListsUser.txt` in the root of project.
|
||||||
|
# The `CMakeListsUser.txt` will not be overwritten by PlatformIO.
|
||||||
|
|
||||||
|
% import re
|
||||||
|
%
|
||||||
% def _normalize_path(path):
|
% def _normalize_path(path):
|
||||||
% if project_dir in path:
|
% if project_dir in path:
|
||||||
% path = path.replace(project_dir, "${CMAKE_CURRENT_LIST_DIR}")
|
% path = path.replace(project_dir, "${CMAKE_CURRENT_LIST_DIR}")
|
||||||
@ -21,9 +26,17 @@ SET(CMAKE_C_COMPILER "{{ _normalize_path(cc_path) }}")
|
|||||||
SET(CMAKE_CXX_COMPILER "{{ _normalize_path(cxx_path) }}")
|
SET(CMAKE_CXX_COMPILER "{{ _normalize_path(cxx_path) }}")
|
||||||
SET(CMAKE_CXX_FLAGS_DISTRIBUTION "{{cxx_flags}}")
|
SET(CMAKE_CXX_FLAGS_DISTRIBUTION "{{cxx_flags}}")
|
||||||
SET(CMAKE_C_FLAGS_DISTRIBUTION "{{cc_flags}}")
|
SET(CMAKE_C_FLAGS_DISTRIBUTION "{{cc_flags}}")
|
||||||
set(CMAKE_CXX_STANDARD 11)
|
|
||||||
|
|
||||||
% import re
|
% STD_RE = re.compile(r"\-std=[a-z\+]+(\d+)")
|
||||||
|
% cc_stds = STD_RE.findall(cc_flags)
|
||||||
|
% cxx_stds = STD_RE.findall(cxx_flags)
|
||||||
|
% if cc_stds:
|
||||||
|
SET(CMAKE_C_STANDARD {{ cc_stds[-1] }})
|
||||||
|
% end
|
||||||
|
% if cxx_stds:
|
||||||
|
set(CMAKE_CXX_STANDARD {{ cxx_stds[-1] }})
|
||||||
|
% end
|
||||||
|
|
||||||
% for define in defines:
|
% for define in defines:
|
||||||
add_definitions(-D'{{!re.sub(r"([\"\(\)#])", r"\\\1", define)}}')
|
add_definitions(-D'{{!re.sub(r"([\"\(\)#])", r"\\\1", define)}}')
|
||||||
% end
|
% end
|
||||||
|
Reference in New Issue
Block a user