aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/ApiExtractor/clangparser/compilersupport.h
Commit message (Collapse)AuthorAgeFilesLines
* Move the shiboken-generator source aroundFriedemann Kleint2025-11-241-66/+0
| | | | | | | | | THIS COMMIT WAS GENERATED BY A SCRIPT Task-number: PYSIDE-962 Task-number: PYSIDE-1587 Change-Id: I58b05c3d05606efb6303193f2d7f907a0ab5741b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken6: Add a triplet classFriedemann Kleint2025-11-211-38/+11
| | | | | | | | | | | Extract the architecture/platform information from compilersupport.cpp into a separate Triplet class which can be tested independently and is not tied to the shiboken logic (initialization to host defaults, etc). As a result, compilersupport.cpp becomes much cleaner. Task-number: PYSIDE-3105 Change-Id: I3ea709a02184c73814dc34686be75017fa1391fa Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6/compilersupport.cpp: Remove values that are only used for loggingFriedemann Kleint2025-11-191-6/+0
| | | | | | | | | Remove the getters/setters and make them function-local as they unnecessarily clutter the code. Task-number: PYSIDE-3105 Change-Id: Ia56f65ae169e1e9e7b96ca2d98b6694ae9f3f208 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Fix clazy warnings about too-large underlying types of enumerationsFriedemann Kleint2025-10-021-4/+4
| | | | | | | Use the types suggested by clang-tidy. Change-Id: I0bc80d00e75305423caa4254b1383979e89128ec Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Add platform version optionFriedemann Kleint2025-07-221-0/+4
| | | | | | | | | | As observed for iOS, libclang falls back to a too-old OS version. Make it possible to override using a command line option. Task-number: PYSIDE-3105 Task-number: PYSIDE-2352 Change-Id: I251dca3e45e9bbc1737e54e0e9799595ab680ff9 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Add platform version to the triplet parsingFriedemann Kleint2025-07-221-3/+5
| | | | | | | | | Complements 244b5dd5e1869ea85c5b78d27259965f7ca2c7bb. Task-number: PYSIDE-3105 Task-number: PYSIDE-2352 Change-Id: I0cb197a1683b8a4d5a7c7babbfc900180005a723 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Add heuristics for cross compilingFriedemann Kleint2025-06-271-0/+4
| | | | | | | | | | | | | If --target is present in the clang options and the relevant -platform/-arch options are not set, use the target to determine the platform. Also determine the compiler type from the path passed in. [ChangeLog][shiboken6] The support for cross compiling (using the correct target for clang-based parsing) has been improved. Task-number: PYSIDE-3105 Change-Id: If7c81b5317e0002edced1e8629318a8e66e7e1f5 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Pass target to clang parser when cross compilingFriedemann Kleint2025-06-271-1/+5
| | | | | | | | | | | When cross compiling (detected by the platform/architecture values passed via command line not matching the host) and no custom clang command line option specifying a target is present, determine a target triplet and pass that to clang. Task-number: PYSIDE-3105 Change-Id: Ib34ecfc1880525d2e035a04079242b5ade205a7a Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Add a triplet parser and triplet builder with testFriedemann Kleint2025-06-271-0/+6
| | | | | | Task-number: PYSIDE-3105 Change-Id: I13faf4343705e6c1f636784da0cc3e105390b012 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Add architecture optionFriedemann Kleint2025-06-251-0/+11
| | | | | | | | | As opposed to Platform/Compiler, it has an "Other" option since host builds should run on any architecture. Task-number: PYSIDE-3105 Change-Id: I170bbba422ca862a980d0e5efee2d9978fdcdb0f Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Add arguments for compiler-pathFriedemann Kleint2025-06-251-0/+1
| | | | | | | | | For cross-building, arguments like --target might be required when determining the include paths by running the compiler. Task-number: PYSIDE-3105 Change-Id: Ida8bf08e1d5c566f915400d46c9cfb80bf706a72 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Extend the platforms enumerationFriedemann Kleint2025-06-131-1/+4
| | | | | | | | | | | | | | | - Add a distinct value for Linux. - Add iOS/Android. - Relax the parsing of command line values so that CMAKE_SYSTEM_NAME can be passed to the --platform option. - Warn only if unknown names are encountered on the command line. - Define the type system keywords depending on it instead of hardcoding to the host value. Task-number: PYSIDE-3105 Change-Id: I32650181fb4bd43223e351610f4fc8a0a3e0100b Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Determine the target platformFriedemann Kleint2025-05-221-0/+8
| | | | | | | | | | | | Store the target triple from the clang options of the command line to be able to set up compiler options for clang parsing accordingly. While parsing, update by the value obtained from clang and the pointer size. Pick-to: 6.9 Task-number: PYSIDE-3105 Change-Id: I33c60e14418b10c3f3cfa1603b29ed2a06b1589a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Port to Qt include styleFriedemann Kleint2025-03-271-1/+1
| | | | | | | | | Replace the Qt forwarding headers by the .h files. This brings down the dependency list by approx 6%. Pick-to: 6.9 Change-Id: Iaa57400fd20600b940119a6016041b885a68d207 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Disable Clang MSVC option for C++ 20Friedemann Kleint2024-05-271-1/+1
| | | | | Change-Id: If7dafe4e23727f822e26307bedbb46bfaf9c0655 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* shiboken6/compiler support: Extract helper compilerFromCMake()Friedemann Kleint2024-02-121-0/+2
| | | | | | | | | | It is needed by the shiboken wizard. Task-number: PYSIDE-1338 Task-number: PYSIDE-1032 Pick-to: 6.6 Change-Id: I53e2bd7bc27940a0d00e0db6acdd0f8603e94d41 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Add command line options for compiler, path and platformFriedemann Kleint2022-09-161-0/+7
| | | | | | | Task-number: PYSIDE-2057 Task-number: PYSIDE-1812 Change-Id: I3b43e7f747df87174c7feec0b29c292d3bddb23c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Use SPDX license identifiersLucie Gérard2022-05-271-27/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Task-number: QTBUG-67283 Change-Id: I065150015bdb84a3096b5b39c061cf0a20ab637d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6: Move Vulkan detection out of the emulated compiler optionsFriedemann Kleint2022-02-111-0/+2
| | | | | | Task-number: PYSIDE-1812 Change-Id: I304d0c437cda114a865828578dca320c0d2fe45f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* shiboken6/Clang parser: Replace #ifdefery for compiler/platform by variablesFriedemann Kleint2021-10-071-0/+15
| | | | | | | | | | | | Introduce enumerations for compiler and platform. Add variables, initialize them by #ifdefs and use accessor functions instead of versions. This lays the groundwork for cross-compiling. Task-number: PYSIDE-802 Pick-to: 6.2 Change-Id: I988bb9e963f6205a6433d3e48c05b7a8823f8398 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Rename shiboken2 to shiboken6Friedemann Kleint2020-10-281-0/+55
Adapt CMake files, build scripts, tests and examples. Task-number: PYSIDE-904 Change-Id: I4cb5ee4c8df539546014b08202a7b1e98ed3ff07 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>