From 656154a081d5942ae1455d8d5ce5b822ba802310 Mon Sep 17 00:00:00 2001
From: Michael Bestas <mkbestas@lineageos.org>
Date: Thu, 27 Nov 2025 15:51:10 +0200
Subject: [PATCH] comet: Switch to SPDX license headers

Change-Id: I66ff4bd04e6acbfe2761180890832fee53131324
---

diff --git a/Android.bp b/Android.bp
index be706fb..afb0f52 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,17 +1,7 @@
 //
-// Copyright (C) 2021 The Android Open Source Project
+// SPDX-FileCopyrightText: 2021 The Android Open Source Project
+// SPDX-License-Identifier: Apache-2.0
 //
-// 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.
 
 package {
     default_applicable_licenses: ["device_google_comet_license"],
diff --git a/AndroidProducts.mk b/AndroidProducts.mk
index 908938b..fcad900 100644
--- a/AndroidProducts.mk
+++ b/AndroidProducts.mk
@@ -1,17 +1,6 @@
 #
-# Copyright (C) 2019 The Android Open-Source Project
-#
-# 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-FileCopyrightText: 2019 The Android Open-Source Project
+# SPDX-License-Identifier: Apache-2.0
 #
 
 PRODUCT_MAKEFILES := \
diff --git a/aosp_comet.mk b/aosp_comet.mk
index 5002935..b4ff569 100644
--- a/aosp_comet.mk
+++ b/aosp_comet.mk
@@ -1,17 +1,6 @@
 #
-# Copyright 2021 The Android Open-Source Project
-#
-# 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-FileCopyrightText: 2021 The Android Open-Source Project
+# SPDX-License-Identifier: Apache-2.0
 #
 
 $(call inherit-product, device/google/zumapro/aosp_common.mk)
diff --git a/comet/BoardConfig.mk b/comet/BoardConfig.mk
index 83bea0f..fe7f296 100644
--- a/comet/BoardConfig.mk
+++ b/comet/BoardConfig.mk
@@ -1,17 +1,6 @@
 #
-# Copyright (C) 2020 The Android Open-Source Project
-#
-# 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-FileCopyrightText: 2020 The Android Open-Source Project
+# SPDX-License-Identifier: Apache-2.0
 #
 
 TARGET_BOARD_INFO_FILE := device/google/comet/board-info.txt
diff --git a/conf/allowlist_satellite.xml b/conf/allowlist_satellite.xml
index 929a855..fbe1946 100644
--- a/conf/allowlist_satellite.xml
+++ b/conf/allowlist_satellite.xml
@@ -1,17 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2024 The Android Open Source Project
-
-     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-FileCopyrightText: 2024 The Android Open Source Project
+     SPDX-License-Identifier: Apache-2.0
 -->
 <config>
     <!-- SCONE must get device location for satellite emergency communications. -->
diff --git a/device-comet.mk b/device-comet.mk
index 0b4b9ab..4070242 100644
--- a/device-comet.mk
+++ b/device-comet.mk
@@ -1,17 +1,6 @@
 #
-# Copyright (C) 2021 The Android Open-Source Project
-#
-# 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-FileCopyrightText: 2021 The Android Open-Source Project
+# SPDX-License-Identifier: Apache-2.0
 #
 
 SHIPPING_API_LEVEL := 34
diff --git a/powerstats/comet/Android.bp b/powerstats/comet/Android.bp
index 7079df7..012f580 100644
--- a/powerstats/comet/Android.bp
+++ b/powerstats/comet/Android.bp
@@ -1,16 +1,7 @@
-// Copyright (C) 2021 The Android Open Source Project
 //
-// 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
+// SPDX-FileCopyrightText: 2021 The Android Open Source Project
+// SPDX-License-Identifier: Apache-2.0
 //
-//      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.
 
 soong_namespace {
     imports: [
diff --git a/thermal/Android.bp b/thermal/Android.bp
index 276eac0..5aaf616 100644
--- a/thermal/Android.bp
+++ b/thermal/Android.bp
@@ -1,16 +1,7 @@
-// Copyright (C) 2023 The Android Open Source Project
 //
-// 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
+// SPDX-FileCopyrightText: 2023 The Android Open Source Project
+// SPDX-License-Identifier: Apache-2.0
 //
-//      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.
 
 package {
     // See: http://go/android-license-faq
diff --git a/wifi/BoardConfig-wifi.mk b/wifi/BoardConfig-wifi.mk
index dac1e5f..5313c63 100644
--- a/wifi/BoardConfig-wifi.mk
+++ b/wifi/BoardConfig-wifi.mk
@@ -1,17 +1,6 @@
 #
-# Copyright (C) 2021 The Android Open-Source Project
-#
-# 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-FileCopyrightText: 2021 The Android Open-Source Project
+# SPDX-License-Identifier: Apache-2.0
 #
 
 # WiFi
