On 30.04.2025 14:56, Daniel P. Berrangé wrote:
> On Wed, Apr 30, 2025 at 02:47:07PM +0200, Mario Fleischmann wrote:
>> On 30.04.2025 10:20, Daniel P. Berrangé wrote:
>>> On Wed, Apr 30, 2025 at 07:27:22AM +0200, Mario Fleischmann wrote:

[...]

>>>> diff --git a/mcd/mcd_api.h b/mcd/mcd_api.h
>>>> new file mode 100644
>>>> index 0000000..8c89353
>>>> --- /dev/null
>>>> +++ b/mcd/mcd_api.h
>>>> @@ -0,0 +1,3963 @@
>>>> +/*
>>>> + * Copyright (c) 2008, ARM Ltd., Infineon Technologies, NXP 
>>>> Semiconductors,
>>>> + * Lauterbach, STMicroelectronics and TIMA Laboratory.
>>>> + * All rights reserved.
>>>> + *
>>>> + * PREAMBLE
>>>> + *
>>>> + * The MCD API (Multi-Core Debug) has been designed as an interface 
>>>> between
>>>> + * software development tools and simulated or real systems with 
>>>> multi-core
>>>> + * SoCs. The target is to allow consistent software tooling throughout the
>>>> + * whole SoC development flow.
>>>> + * The MCD API (the "SOFTWARE") has been developed jointly by ARM Ltd.,
>>>> + * Infineon Technologies, NXP Semiconductors, Lauterbach,
>>>> + * STMicroelectronics and TIMA Laboratory as part of the SPRINT project
>>>> + * (www.sprint-project.net).
>>>> + * The SPRINT project has been funded by the European Commission.
>>>> + *
>>>> + * LICENSE
>>>> + *
>>>> + *  Any redistribution and use of the SOFTWARE in source and binary forms,
>>>> + *  with or without modification constitutes the full acceptance of the
>>>> + *  following disclaimer as well as of the license herein and is permitted
>>>> + *  provided that the following conditions are met:
>>>> + *  - Redistributions of source code must retain the above copyright 
>>>> notice,
>>>> + *    this list of conditions and the disclaimer detailed below.
>>>> + *  - Redistributions in binary form must reproduce the above copyright 
>>>> notice,
>>>> + *    this list of conditions and the disclaimer detailed below in the
>>>> + *    documentation and/or other materials provided with the distribution.
>>>> + *  - Neither the name of its copyright holders nor the names of its
>>>> + *    contributors may be used to endorse or promote products derived 
>>>> from the
>>>> + *    Software without specific prior written permission.
>>>> + *  - Modification of any or all of the source code, documentation and 
>>>> other
>>>> + *    materials provided under this license are subject to 
>>>> acknowledgement of
>>>> + *    the modification(s) by including a prominent notice on the 
>>>> modification(s)
>>>> + *    stating the change(s) to the file(s), identifying the date of such 
>>>> change
>>>> + *    and stating the name of the publisher of any such modification(s).

[...]

>>> AFAICT this license is derived from a classic BSD 3 clause, with the
>>> extra 4th clause added.
>>>
>>> I don't see any SPDX license matching this, which is painful as it
>>> means it is going to need license approval before it can be included
>>> by distributions downstream.
>>>
>>> Does this really have to be under a custom license instead of a
>>> well known standard license ? There's really no good reason for
>>> inventing new open source licenses.
>>
>> BSD 3-Clause Modification matches the license of the MCD API and is
>> listed under the SPDX License List. Is it possible to extend
>> checkpatch's @valid with "BSD-3-Clause-Modification"? That way, we can
>> also add the SPDX-License-Identifier to mcd_api.h without an error being
>> generated by the script.
> 
> Conceptually this is similar to BSD-3-Clause-Modification, but the
> actual text of the license does not match
> 
>   https://spdx.org/licenses/BSD-3-Clause-Modification.html
> 
> so IMHO we can't claim this is BSD-3-Clause-Modification currently.
> 
> IIUC, it would have to be submitted to SPDX for review to decide
> whether it needs to be a new license, or whether the permitted text
> for BSD-3-Clause-Modification can allow a choice of matches.
So, according to the SPDX License List matching guidelines, changes to
BSD-3-Clause-Modification can only be seen as equivalent if at most the
clauses are stated in a different order, as indicated by the red text?

I assume we agree that the first three clauses match BSD-3-Clause.
To show that the fourth clause matches BSD-3-Clause-Modification, I
split up both license texts and indented MCD API's license:

If any files are modified, you must

  Modification of any or all of the source code, documentation and other
  materials provided under this license are subject to

cause the modified files to carry prominent notices

  acknowledgement of the modification(s) by including a prominent notice
  on the modification(s)

stating that you changed the files

  stating the change(s) to the file(s)
  ... and stating the name of the publisher of any such modification(s)

and the date of any change.

  identifying the date of such change

Stated like this, I think it is appropriate to see both clauses as
equivalent. Since the contributor appendix on the third clause is not
present in BSD-3-Clause-Modification, we have to specify the composite

Valid-License-Identifier: BSD-3-Clause-Modification AND BSD-3-Clause

Under which conditions is this Valid-License-Identifier ...well...
valid? IIUC, we either need a formal approval from SPDX legal team or a
relicensing of the MCD API. Is there maybe another way?

Best regards,
Mario

Reply via email to