Can someone please clarify why the precheck script...
# sky130
d
Can someone please clarify why the precheck script is stopping in between here? Please consider this URGENT.
t
There is a list in the output above of 24 files that (apparently) required an SPDX license header but did not have one. (I do not know the exact conditions under which a file is required to have the header, but it applies to most source code files like python, Tcl, C, bash, etc.; in this case, most of the files are python, C, and yaml). Since it looks like many/most of those files were probably copied from existing cocotb testbenches, I'm not sure why they don't have the header already. But it is either sufficient to have a single line like two lines like
Copy code
# SPDX-FileCopyrightText: 2020 Efabless Corporation
# SPDX-License-Identifier: Apache-2.0
or the whole header, which looks like this (for the Apache 2.0 license):
Copy code
# SPDX-FileCopyrightText: 2020 Efabless Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      <http://www.apache.org/licenses/LICENSE-2.0>
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# SPDX-License-Identifier: Apache-2.0
Anyway, one of those two at the top of each of the 24 files should suffice. The "#" comment will work for python and yaml, and you should change that to "//" for the C code. (Apache 2.0 is a common license to choose, but you can make your own choice of license; obviously for code that you write, your own name should be in the copyright, and the current year.)
FYI, looking through the
mpw_precheck
repository script
checks/license_check/license_check.py
, barring something having to do with a license key, the compliance check is specifically looking for two lines in each non-excepted file, one line containing the text
SPDX-FileCopyrightText
and the other containing the text
SPDX-License-Identifier
(I have edited my first response to match this observation).