summaryrefslogtreecommitdiff
path: root/src/plugins/baremetal/sdccparser.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove GPL-3.0+ from license identifiersKai Köhne2023-01-061-1/+1
| | | | | | | | | | | | | | | Since we also license under GPL-3.0 WITH Qt-GPL-exception-1.0, this applies only to a hypothetical newer version of GPL, that doesn't exist yet. If such a version emerges, we can still decide to relicense... While at it, replace (deprecated) GPL-3.0 with more explicit GPL-3.0-only Change was done by running find . -type f -exec perl -pi -e "s/LicenseRef-Qt-Commercial OR GPL-3.0\+ OR GPL-3.0 WITH Qt-GPL-exception-1.0/LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0/g" {} \; Change-Id: I5097e6ce8d10233993ee30d7e25120e2659eb10b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* BareMetal: Convert to Tr::trhjk2022-10-111-8/+4
| | | | | | Change-Id: I7ac423c13d95b33cad332d2ce9fafb4f658980bc Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* Use SPDX license identifiersLucie Gérard2022-08-261-24/+2
| | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Task-number: QTBUG-67283 Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Core/Utils: Migrate further to Utils::Idhjk2020-07-061-1/+1
| | | | | | | The coreplugin/id.h header is kept for downstream for now. Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* GCC parser: Create fewer and better issuesChristian Kandeler2020-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider the following compiler warning: In file included from qgroundcontrol/libs/mavlink/include/mavlink/v2.0/ ardupilotmega/ardupilotmega.h:946, from qgroundcontrol/libs/mavlink/include/mavlink/v2.0/ ardupilotmega/mavlink.h:32, from qgroundcontrol/src/comm/QGCMAVLink.h:24, from qgroundcontrol/src/comm/LinkInterface.h:21, from qgroundcontrol/src/comm/LinkManager.h:21, from qgroundcontrol/src/QGCApplication.h:27, from qgroundcontrol/src/QtLocationPlugin/ QGCMapUrlEngine.cpp:19: qgroundcontrol/libs/mavlink/include/mavlink/v2.0/ardupilotmega/./ mavlink_msg_vision_position_delta.h: In function ‘uint16_t mavlink_msg_vision_position_delta_encode(uint8_t, uint8_t, mavlink_message_t*, const mavlink_vision_position_delta_t*)’: qgroundcontrol/libs/mavlink/include/mavlink/v2.0/ardupilotmega/./ mavlink_msg_vision_position_delta.h:138:178: warning: taking address of packed member of ‘__mavlink_vision_position_delta_t’ may result in an unaligned pointer value [-Waddress-of-packed-member] 138 | return mavlink_msg_vision_position_delta_pack(system_id, component_id, msg, vision_position_delta->time_usec, vision_position_delta->time_delta_usec, vision_position_delta- >angle_delta, vision_position_delta->position_delta, vision_position_delta->confidence); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ Before this patch, this output resulted in nine entries in the issues pane, which defeats the purpose: The user is supposed to get a quick overview of the build problems, but instead we basically just copied over the contents of the compile window, which is of little help and also slows things down by overloading the task model. We now try harder to identify output lines that belong to the same issue and create just one task for them. File paths are now linkified in the detailed issue view, so that users can still navigate quickly to all involved files. Task-number: QTCREATORBUG-22914 Change-Id: I1aed2ffac7d363c02073ef318cb863754379cf6d Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Give the Task class an explicit summaryChristian Kandeler2020-05-141-14/+2
| | | | | | | | | | | | | We'd like to create more useful tasks from compiler output, that is, try harder to identify consecutive lines that refer to the same issue and create one task for them, rather than one for each line. In such "aggregate" tasks, the first line will not necessarily carry the main information. Therefore, we make it explicit what this main information is by introducing a dedicated summary member. Also streamline the font handling for compile tasks. Change-Id: I933f2643a13c710dab1ab548c56669b129026eb5 Reviewed-by: hjk <hjk@qt.io>
* Merge output formatters and output parsersChristian Kandeler2020-04-231-4/+10
| | | | | | | | | | | | | | | | | | | | | | | Now only one piece of code needs to be written to both linkify output in an output pane and create tasks for it in the issues pane. The calling sites are also simplified. For instance, until now, build steps had to feed their output parsers manually and then push the created tasks up the signal stack in parallel with the actual output, which the build manager relied upon for cross-linking the output pane content. Afterwards, the output would get forwarded to the formatter (and parsed for ANSI escape codes a second time). In contrast, a build step now just forwards the process output, and task parsing as well as output formatting is done centrally further up the stack. Concrete user-visible improvements so far: - File paths in compiler/linker messages are clickable links now. - QtTest applications now create clickable links also when run as part of a build step, not just in the app output pane. Task-number: QTCREATORBUG-22665 Change-Id: Ic9fb95b2d97f2520ab3ec653315e9219466ec08d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* ProjectExplorer: Split up the IOutputParser classChristian Kandeler2020-04-161-4/+4
| | | | | | | | For symmetry with Utils::OutputFormatter. Task-number: QTCREATORBUG-22665 Change-Id: I148fed69dba042ad3ef26e080829c31cd3f357fd Reviewed-by: hjk <hjk@qt.io>
* Output parsers: Replace the chaining approachChristian Kandeler2020-04-091-35/+20
| | | | | | | | | | | Use "flat" aggregation instead. This is another step towards the formatter/parser merger. Along the way, also fix some some subclasses (mostly in BareMetal) that erroneously forwarded handled output to other parsers. Task-number: QTCREATORBUG-22665 Change-Id: I12947349ca663d2e6bbfc99efd069d69e2b54969 Reviewed-by: hjk <hjk@qt.io>
* IOutputParser: Replace std{Out,Err} with a single parameterized functionChristian Kandeler2020-04-081-2/+10
| | | | | | | | Another step towards parser/formatter unification. Task-number: QTCREATORBUG-22665 Change-Id: I6de86b3aee2c54585cdd4b06d21b0ea67300aeac Reviewed-by: hjk <hjk@qt.io>
* Output parsers: Generalize the search directory conceptChristian Kandeler2020-04-071-2/+2
| | | | | | | | | | All parsers can now have search directories, not just the GnuMakeParser. This allows us to get rid of the "task mangling", removing another instance where the order of parsers in the chain mattered. Task-number: QTCREATORBUG-22665 Change-Id: Id0d55522ae6800afd9f50ff36546224b0d8bb382 Reviewed-by: hjk <hjk@qt.io>
* ProjectManager: Add convenience Task subclasseshjk2020-01-201-69/+45
| | | | | | | | For Compile, BuildSystem and Deployment. Unclutters user code and reduces binary size. Change-Id: Ia18e917bb411754162e9f4ec6056d752a020bb50 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* BareMetal: Remove QLatin1Char and QLatin1String macrosDenis Shienkov2019-11-041-49/+49
| | | | | | | | ... where it is possible, because it is unnecessary to use in QtC code. Besides, it simplifies a code bit. Change-Id: I8f547c952f3e2bfe046462957f175da7fc780171 Reviewed-by: hjk <hjk@qt.io>
* BareMetal: Handle missed SDCC compiler errorsDenis Shienkov2019-10-141-1/+13
| | | | | | | | | | ... in a form like: main.c:11:21: error: macro "usb_disconnect" passed 1 arguments, but takes just 0 Fixes: QTCREATORBUG-23085 Change-Id: I749539881606d27aa0cd4c2fc1c136484d13976c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* BareMetal: Handle missed SDCC assembler errorsDenis Shienkov2019-10-141-1/+13
| | | | | | | | | | | | ... in a form like: autovec_sdcc.a51:7: Error: <o> .org in REL area or directive / mnemonic error autovec_sdcc.a51:8: Error: <o> .org in REL area or directive / mnemonic error autovec_sdcc.a51:8: Error: <q> missing or improper operators, terminators, or delimiters Fixes: QTCREATORBUG-23084 Change-Id: I346b1970a90bc515a647477d089e66e742567733 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* BareMetal: Parse missed SDCC compiler warningDenis Shienkov2019-10-141-1/+13
| | | | | | | | | | ... in a form like: at 1: warning 117: unknown compiler option '--xram-loc2' ignored Fixes: QTCREATORBUG-23083 Change-Id: If428cb7317d0c13246fcb0c1741d015a80af91b7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils: Rename FileName to FilePathhjk2019-05-281-10/+10
| | | | | | | | More in line with QFileInfo terminonlogy which appears to be best-of-breed within Qt. Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Introduce a alias for QList<Tasks>hjk2019-05-281-12/+12
| | | | | Change-Id: I91391ad22b420926b0f512cac23cfe009048b218 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* bare-metal: Refactor the plugin code a bit moreDenis Shienkov2019-05-081-0/+4
| | | | | | | | | | | | * An include files and forward declarations are sorted in an alphabetical order. * Used the 'final' keywords for the methods and classes which not should be overridden. * Used the 'auto' and 'explicit' keywords more. * A class members are initialized in an initializier list. Change-Id: Ia74783e47aff92467d696d471760b5a97bca3d7a Reviewed-by: hjk <hjk@qt.io>
* bare-metal: Add command line parser for SDCC toolchainDenis Shienkov2019-05-081-0/+335
This commit implements a parser which handles an often encountered compiler warnings and errors; a missed warnings and errors can be added later. Change-Id: Ie5cdd1193dae3ebed64d4f78316ae4175bdb0b22 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>