[PATCH] bsps/arm: fix nested extern decl. warnings brought by CMSIS files update
Christian MAUDERER
christian.mauderer at embedded-brains.de
Tue Jul 25 15:32:20 UTC 2023
On 2023-07-25 16:20, Karel Gardas wrote:
> On 7/25/23 15:32, Sebastian Huber wrote:
>>
>>
>> On 21.07.23 17:37, Karel Gardas wrote:
>>> ---
>>> bsps/arm/include/cmsis_gcc.h | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/bsps/arm/include/cmsis_gcc.h b/bsps/arm/include/cmsis_gcc.h
>>> index 4f0762d6dc..9e867348d2 100644
>>> --- a/bsps/arm/include/cmsis_gcc.h
>>> +++ b/bsps/arm/include/cmsis_gcc.h
>>> @@ -30,7 +30,9 @@
>>> #pragma GCC diagnostic ignored "-Wsign-conversion"
>>> #pragma GCC diagnostic ignored "-Wconversion"
>>> #pragma GCC diagnostic ignored "-Wunused-parameter"
>>> -
>>> +#ifdef __rtems__
>>> +#pragma GCC diagnostic ignored "-Wnested-externs"
>>> +#endif /* __rtems__ */
>>> /* Fallback for __has_builtin */
>>> #ifndef __has_builtin
>>> #define __has_builtin(x) (0)
>>
>> I would disable this warning only in __cmsis_start() with a push/pop
>> pragma.
>
> Will look into it. The way it was done was to reuse as much as possible
> of the current file infrastructure.
>
>> I think you have to add also a
>>
>> * Modifications Copyright (C) Karel Gardas
>>
>> if you change the file, see also:
>
> It's a shame to need to copyright single liners. IMHO license does not
> require that precisely. What about to just add:
>
> /* The file was modified for the purposes of RTEMS project */
>
> right at the beginning (1st line) of file?
>
Apache clearly states that modified files have to be marked:
4.b.: You must cause any modified files to carry prominent notices
stating that You changed the files
Not sure whether the big 'You' means that it is a person or a project.
RTEMS project distributes the files so "adapted by RTEMS contributors"
might work?
By the way: I just noted that we now most likely also need a
LICENSE.Apache-2.0 file in the root directory of RTEMS.
>> https://softwareengineering.stackexchange.com/questions/220068/file-with-apache-2-0-and-my-modifications
>>
>> In general, some advice for dealing with Apache 2.0 files in the RTEMS
>> Software Engineering manual would be nice.
>
> That would be great to have, but who would do that? > Or perhaps we may
> distill right behavioral patterns from our competitors: Zephyr/NuttX?
>
> E.g.
> https://github.com/apache/nuttx/commits/master/net/tcp/tcp_getsockopt.c
> -- file modified by several persons and none is mentioned (do all of
> them have signed contributor agreement with ASF?)
>
> and
>
> https://github.com/zephyrproject-rtos/zephyr/commits/main/kernel/paging/statistics.c -- file modified by jfisher-no (from Nordic Semiconductor) and yet, file clearly copyrighted by Intel and no message about modification by anyone else.
>
Nuttx and Zephyr are both Apache-Licensed. Both files that you have
linked seem to be developed for the systems. At least I didn't find an
"import from xyz" commit or similar hint. I think that makes the
situation different compared to our import of Apache licensed third
party code into a non-Apache licensed project.
> Another idea my be to go with what Joel suggested in the original
> CMSISv5 inclusion thread: put any modification into #ifdef __rtems__ /
> #endif and make that clearly visible that file was changed this way.
> Nothing more needed...
Marking changes with #ifdef __rtems__ is always a good idea because it
makes porting the changes during the next update simpler.
I would expect that at least a general "modified for RTEMS" or "modified
by RTEMS contributors" statement is still necessary.
If you want to get a definitive answer what is the right solution and
end all the discussions, you might consider asking that question on the
FSFE License Question list and post the result here and / or add it to
the manual (assuming that they agree that the answer is published):
https://fsfe.org/activities/legal.en.html
Best regards
Christian
>
> Thanks!
> Karel
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
--
--------------------------------------------
embedded brains GmbH & Co. KG
Herr Christian MAUDERER
Dornierstr. 4
82178 Puchheim
Germany
email: christian.mauderer at embedded-brains.de
phone: +49-89-18 94 741 - 18
mobile: +49-176-152 206 08
Registergericht: Amtsgericht München
Registernummer: HRA 117265
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list