diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f552fe94f945729139a7ad7253f5c68b8fb5aa32..167777e7f0c7391608cfa55885487ab34cbe983e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 stages:
  - prepare
  - build
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fb87eca5e8437ed47b5ed3c6656d826b96f34b7e..e66dea78123c8fdc5155d9031b08a00615326869 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 cmake_minimum_required(VERSION 2.8)
 project(idg)
 
diff --git a/cmake/config/environment-module.in b/cmake/config/environment-module.in
index c131e9bd929734509338b66292dae8d40c81d227..66099f49994d68931db5429a4f3da54f46ec4ad6 100644
--- a/cmake/config/environment-module.in
+++ b/cmake/config/environment-module.in
@@ -1,5 +1,8 @@
 #%Module
 
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Set variables from CMake
 set root            @CMAKE_INSTALL_PREFIX@
 set TESTS_ENABLED  [ string toupper "@BUILD_TESTING@" ]
diff --git a/cmake/version.cmake b/cmake/version.cmake
index 210b68ae6d1fc51fb3ea96c335259558505c109c..6a3c5cacfd63c964509d9bc707351b0aa86755b2 100644
--- a/cmake/version.cmake
+++ b/cmake/version.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Based on the following blog post:
 #   Compile-time version strings in CMake
 #   Matt Keeter
diff --git a/idg-api/Buffer.cpp b/idg-api/Buffer.cpp
index bcae87826c789fa3e3fca18d015c1f245556b1e7..1fe400e60a2b627c67952f27c1561a0c2a17afb0 100644
--- a/idg-api/Buffer.cpp
+++ b/idg-api/Buffer.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * BufferImpl.cpp
  * Access to IDG's high level gridder routines
diff --git a/idg-api/Buffer.h b/idg-api/Buffer.h
index f9bf8e883bf06c9331a44fc2f00c3e895249f335..fa4e5e169592ccbb5fe487e8adf652e952ea4880 100644
--- a/idg-api/Buffer.h
+++ b/idg-api/Buffer.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * Buffer.h
  * Access to IDG's high level gridder routines
diff --git a/idg-api/BufferImpl.h b/idg-api/BufferImpl.h
index 2c7bd2b5def74a2946929e87e3c0462123733109..b7eae0f38cbb51c8f8d031af11516fdf4c1b3815 100644
--- a/idg-api/BufferImpl.h
+++ b/idg-api/BufferImpl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * BufferImpl.h
  * Access to IDG's high level gridder routines
diff --git a/idg-api/BufferSet.cpp b/idg-api/BufferSet.cpp
index 45b092adb810272b56b14920514da256f8981eaf..112b58f13f2327b6207b67f617d5be7732883964 100644
--- a/idg-api/BufferSet.cpp
+++ b/idg-api/BufferSet.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "BufferSetImpl.h"
 #include "BulkDegridderImpl.h"
 #include "GridderBufferImpl.h"
diff --git a/idg-api/BufferSet.h b/idg-api/BufferSet.h
index c6f56d93c52865dcbe95e64f18ad4983ee7a5dd4..aef8a1cf758469f6e955ccf1f444211115a11f5f 100644
--- a/idg-api/BufferSet.h
+++ b/idg-api/BufferSet.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_API_BUFFERSET_H_
 #define IDG_API_BUFFERSET_H_
 
diff --git a/idg-api/BufferSetImpl.h b/idg-api/BufferSetImpl.h
index e11911fbc6fff7c8d54d4b87c53bd794b01fd988..9b32022987ffdd4a0ee948577dc3527805b4c44c 100644
--- a/idg-api/BufferSetImpl.h
+++ b/idg-api/BufferSetImpl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_API_BUFFERSETIMPL_H_
 #define IDG_API_BUFFERSETIMPL_H_
 
diff --git a/idg-api/BulkDegridder.cpp b/idg-api/BulkDegridder.cpp
index d1db50a1095915c5f3a8efbac94388fdcce9805a..ac7f53f6e7e5b1ebc0dfc7aee639d69737368c96 100644
--- a/idg-api/BulkDegridder.cpp
+++ b/idg-api/BulkDegridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * BulkDegridder.cpp
  */
diff --git a/idg-api/BulkDegridder.h b/idg-api/BulkDegridder.h
index 01dc350c0826446a6a4a7ac923338303ec32fa01..7c893c9829bc54ccf5ed4c4be6155d6d92ca04f7 100644
--- a/idg-api/BulkDegridder.h
+++ b/idg-api/BulkDegridder.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * BulkDegridder.h
  *
diff --git a/idg-api/BulkDegridderImpl.h b/idg-api/BulkDegridderImpl.h
index 9b3e7ea7accb9064428759eb7e6e682dfe0e3cd0..7a66af379fe7bd64e1ca00370c01346c64138fd6 100644
--- a/idg-api/BulkDegridderImpl.h
+++ b/idg-api/BulkDegridderImpl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * BulkDegridderImpl.h
  */
diff --git a/idg-api/CMakeLists.txt b/idg-api/CMakeLists.txt
index 1b7b7c29cb19ced437e55bb69ef64f875a235c2e..33ada2017ce21ac04c262031d9b216d9b692da98 100644
--- a/idg-api/CMakeLists.txt
+++ b/idg-api/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 cmake_minimum_required(VERSION 2.8.0)
 
 project(idg-api)
diff --git a/idg-api/Datatypes.h b/idg-api/Datatypes.h
index 87df8cc5e933a2ce5923faf521a0ee17f425368c..990aac37236d2fe12ca480b83919f5c47c37e379 100644
--- a/idg-api/Datatypes.h
+++ b/idg-api/Datatypes.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * Datatypes.h
  *
diff --git a/idg-api/DegridderBuffer.cpp b/idg-api/DegridderBuffer.cpp
index d10dd697f1b2ec240e5ebc9c85ca9a3094339c4b..5b3dde8bf77c197915cd9505f23a5f5ad5361be9 100644
--- a/idg-api/DegridderBuffer.cpp
+++ b/idg-api/DegridderBuffer.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * DegridderBuffer.cpp
  */
diff --git a/idg-api/DegridderBuffer.h b/idg-api/DegridderBuffer.h
index c750ea33995403c10e8be4e212dc342b3b6edb18..036d79e9bd6449f8a5228bb3fa0bee6b9dc3f7a7 100644
--- a/idg-api/DegridderBuffer.h
+++ b/idg-api/DegridderBuffer.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * DegridderBuffer.h
  *
diff --git a/idg-api/DegridderBufferImpl.h b/idg-api/DegridderBufferImpl.h
index 8245a5e0e617df501817084d60727b2d0eb161d2..513925d89edbd574d4aaa093d7a77642e799038b 100644
--- a/idg-api/DegridderBufferImpl.h
+++ b/idg-api/DegridderBufferImpl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * DegridderBuffer.h
  *
diff --git a/idg-api/GridderBuffer.cpp b/idg-api/GridderBuffer.cpp
index ae5fd9e395b4dd8eb7a195d505ee96688ae97a92..cf5e48f08632754c4348caf2fdd01233ac9cde0a 100644
--- a/idg-api/GridderBuffer.cpp
+++ b/idg-api/GridderBuffer.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  * GridderBuffer.h
  * Access to IDG's high level gridder routines
diff --git a/idg-api/GridderBuffer.h b/idg-api/GridderBuffer.h
index f5facaa32cb23898441fb8cd04fb0a2dbb175797..a5b042894a7c82a04dc1991df8f3582bfd7eab3f 100644
--- a/idg-api/GridderBuffer.h
+++ b/idg-api/GridderBuffer.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * GridderBuffer.h
  *
diff --git a/idg-api/GridderBufferImpl.h b/idg-api/GridderBufferImpl.h
index c172147f67823135cbecd0744699d65cab9d89b2..74be82f86b649efbc46bf54e48803181fb55913a 100644
--- a/idg-api/GridderBufferImpl.h
+++ b/idg-api/GridderBufferImpl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  * GridderBuffer.h
  *
diff --git a/idg-api/Value.h b/idg-api/Value.h
index fb792d51e0bb24b3dd592d863e4d89c7edcc3952..f96100f55c19818c3726db10e481d4be3f90fc4c 100644
--- a/idg-api/Value.h
+++ b/idg-api/Value.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_API_VALUE_H_
 #define IDG_API_VALUE_H_
 
diff --git a/idg-api/cmake/config/idgapi-config.cmake.in b/idg-api/cmake/config/idgapi-config.cmake.in
index c8a9be5934c30603245782b57ea41abfefc426f7..78392896da42a0d8d9af708d1230a9a123651e12 100644
--- a/idg-api/cmake/config/idgapi-config.cmake.in
+++ b/idg-api/cmake/config/idgapi-config.cmake.in
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Compute paths
 get_filename_component(IDGAPI_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
 get_filename_component(IDGAPI_CMAKE_DIR_ABS "${IDGAPI_CMAKE_DIR}" ABSOLUTE)
diff --git a/idg-api/cmake/modules/FindMKL.cmake b/idg-api/cmake/modules/FindMKL.cmake
index 09471b025fdc550b7479841675cbe17913dcabeb..dc07edd89285bd1427a459190369cb3106f1b41b 100644
--- a/idg-api/cmake/modules/FindMKL.cmake
+++ b/idg-api/cmake/modules/FindMKL.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # - Try to find MKL
 # This module tries to find an MKL library on your system.
 #
diff --git a/idg-api/idg-api.h b/idg-api/idg-api.h
index 1b574053e5065f21510f3883eaa73c88996dbe4d..302f1f4e39aab0521d478c8e181c20feb74ec7f9 100644
--- a/idg-api/idg-api.h
+++ b/idg-api/idg-api.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDGWSCLEAN_HEADER_
 #define IDGWSCLEAN_HEADER_
 
diff --git a/idg-api/taper.cpp b/idg-api/taper.cpp
index 1f5b6cec4e5668f1e1661798dee65befd12864ab..84193b672a03f09bb9e2d60c6e5665ae7d902752 100644
--- a/idg-api/taper.cpp
+++ b/idg-api/taper.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "taper.h"
 
 #include <cmath>
diff --git a/idg-api/taper.h b/idg-api/taper.h
index f0a3baf0d443d5f2d61f7ce57395c2bb8b22e6c9..b053ba6c50347efbcb0ec3df725ad34493be492b 100644
--- a/idg-api/taper.h
+++ b/idg-api/taper.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDGWSCLEAN_TAPER_H_
 #define IDGWSCLEAN_TAPER_H_
 
diff --git a/idg-api/tests/CMakeLists.txt b/idg-api/tests/CMakeLists.txt
index bf075937006ec2c822d84477849470484d905b62..0bb9fc432a00d2c1354b3d183f4c7c4b7f951e09 100644
--- a/idg-api/tests/CMakeLists.txt
+++ b/idg-api/tests/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-idg-api.x)
 
 
diff --git a/idg-api/tests/main.cpp b/idg-api/tests/main.cpp
index e9927345c5be26658dd7a56e05cc041bd3307e97..3b3622d007567e38ddcffeeef47d8e8d2cc0ceac 100644
--- a/idg-api/tests/main.cpp
+++ b/idg-api/tests/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #define BOOST_TEST_MODULE IDG_API
 
 #include <boost/test/included/unit_test.hpp>
diff --git a/idg-api/tests/tDegridder.cpp b/idg-api/tests/tDegridder.cpp
index f00ff4b513ae30e50bdbba771c822673ee529d59..c5f9d348fb94aafd2eb0d5231a5ff3a10fea6605 100644
--- a/idg-api/tests/tDegridder.cpp
+++ b/idg-api/tests/tDegridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <idg-api.h>
 
 #include <boost/test/unit_test.hpp>
diff --git a/idg-api/tests/tGridder.cpp b/idg-api/tests/tGridder.cpp
index 6a1fd15ba30dd5e30630d38705b12e08233a9da0..12e136f0030c1186491ef00f2b3bc7e2bc5ad275 100644
--- a/idg-api/tests/tGridder.cpp
+++ b/idg-api/tests/tGridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <idg-api.h>
 
 #include <boost/test/unit_test.hpp>
diff --git a/idg-bin/CMakeLists.txt b/idg-bin/CMakeLists.txt
index 206829aba52fd6ec86d22af6062067edc7028473..de5ae0639fc35eed1aca341e2ffeec2159d3221a 100644
--- a/idg-bin/CMakeLists.txt
+++ b/idg-bin/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 cmake_minimum_required(VERSION 2.8.0)
 
 # the project
diff --git a/idg-bin/demo/CMakeLists.txt b/idg-bin/demo/CMakeLists.txt
index 7ec85bed89152c5f19c90dc227d1a80b4e36e486..9d396a3f501313db7eb77384584a9e05f0c35850 100644
--- a/idg-bin/demo/CMakeLists.txt
+++ b/idg-bin/demo/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(demo)
 
 # add subfolders
diff --git a/idg-bin/demo/python/CMakeLists.txt b/idg-bin/demo/python/CMakeLists.txt
index 85cc79f89c3516dcc13a4ba0d6e98133008bfc45..ffc478f9f44bfce78307ef77dcbc410a6ccf13e7 100644
--- a/idg-bin/demo/python/CMakeLists.txt
+++ b/idg-bin/demo/python/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Install Python examples
 install(FILES
   demo-idg.py
diff --git a/idg-bin/demo/python/demo-hdf5.py b/idg-bin/demo/python/demo-hdf5.py
index 8fd47fba54f118287eb7fcd720e2ebc0e3aee1de..6bbba644c2ec7f89a6db848320b87ccfe4bcdc20 100755
--- a/idg-bin/demo/python/demo-hdf5.py
+++ b/idg-bin/demo/python/demo-hdf5.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 import numpy as np
 import matplotlib.pyplot as plt
diff --git a/idg-bin/demo/python/demo-idg.py b/idg-bin/demo/python/demo-idg.py
index ffd0aa01b30929ad1b48427fe7773b98e6db60be..724d219b144b78252d118cd3caeebe20905ec005 100755
--- a/idg-bin/demo/python/demo-idg.py
+++ b/idg-bin/demo/python/demo-idg.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 import numpy as np
 import matplotlib.pyplot as plt
diff --git a/idg-bin/demo/python/demo-idg2.py b/idg-bin/demo/python/demo-idg2.py
index 6a2ba7bc24c8649ec9faca598a19fb962a05e7d3..a26bdc62ed6c077e6c1412528534d658bee6cbcb 100755
--- a/idg-bin/demo/python/demo-idg2.py
+++ b/idg-bin/demo/python/demo-idg2.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 import numpy as np
 import matplotlib.pyplot as plt
diff --git a/idg-bin/examples/CMakeLists.txt b/idg-bin/examples/CMakeLists.txt
index e7ad0f1f63f278958f0e128b1dcba397fa04c69c..81e342efdeff59bb53475db65f4e58f448853136 100644
--- a/idg-bin/examples/CMakeLists.txt
+++ b/idg-bin/examples/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples)
 
 # add subfolders
diff --git a/idg-bin/examples/cxx/CMakeLists.txt b/idg-bin/examples/cxx/CMakeLists.txt
index c83cba2fbfe4e067e60f3543384c5998228a7fb2..a16fec19f1cc8839207d4aaedb2de086017a89f3 100644
--- a/idg-bin/examples/cxx/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cxx)
 
 # set utility include directory
diff --git a/idg-bin/examples/cxx/CPU/CMakeLists.txt b/idg-bin/examples/cxx/CPU/CMakeLists.txt
index a8f7b3243d764c0fe78bcdfc172d7b992ebf7c0a..47939fceeef7599952f253cc530874a6244be676 100644
--- a/idg-bin/examples/cxx/CPU/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CPU/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples-cpu)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-cpu)
diff --git a/idg-bin/examples/cxx/CPU/Optimized/CMakeLists.txt b/idg-bin/examples/cxx/CPU/Optimized/CMakeLists.txt
index 8c75978360585ee921a6d3c8e97d68e5f78ad6d1..9018d4e66cb0289b53d9bf37ef9672fb5e8ef662 100644
--- a/idg-bin/examples/cxx/CPU/Optimized/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CPU/Optimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-optimized.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/CPU/Optimized/main.cpp b/idg-bin/examples/cxx/CPU/Optimized/main.cpp
index b5ac79946a672b5b9a304fa11c837c6a47dcdc09..1836dbc25d0c32daf39384c9ac81df6900ba2688 100644
--- a/idg-bin/examples/cxx/CPU/Optimized/main.cpp
+++ b/idg-bin/examples/cxx/CPU/Optimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cpu.h"
 
 using ProxyType = idg::proxy::cpu::Optimized;
diff --git a/idg-bin/examples/cxx/CPU/Reference/CMakeLists.txt b/idg-bin/examples/cxx/CPU/Reference/CMakeLists.txt
index 4b6278c1ee079fca5bc6b29617e3f9654ae323d9..ff892a0e1f62c5a30a62d10552294c625cb01e57 100644
--- a/idg-bin/examples/cxx/CPU/Reference/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CPU/Reference/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-reference.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/CPU/Reference/main.cpp b/idg-bin/examples/cxx/CPU/Reference/main.cpp
index 6dc77b5fef6bac3661e0b1b50bb4f3c209524e50..d6197463c33b0db684914cbf63ec67127356423c 100644
--- a/idg-bin/examples/cxx/CPU/Reference/main.cpp
+++ b/idg-bin/examples/cxx/CPU/Reference/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cpu.h"
 
 using ProxyType = idg::proxy::cpu::Reference;
diff --git a/idg-bin/examples/cxx/CUDA/CMakeLists.txt b/idg-bin/examples/cxx/CUDA/CMakeLists.txt
index e769e0b8b6debbaa228aff6476f046fe602380d7..f955b3d6ec0187d5e7cff42dce9085a4eb3366d3 100644
--- a/idg-bin/examples/cxx/CUDA/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples-cuda)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-cuda)
diff --git a/idg-bin/examples/cxx/CUDA/Generic/CMakeLists.txt b/idg-bin/examples/cxx/CUDA/Generic/CMakeLists.txt
index 39cf10327081abeaa374b6ba5f691e4a192d71e2..9d785ec15fafe437b74dc43619d4ef269f4f636e 100644
--- a/idg-bin/examples/cxx/CUDA/Generic/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CUDA/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda-generic.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/CUDA/Generic/main.cpp b/idg-bin/examples/cxx/CUDA/Generic/main.cpp
index 46c7e77983c537493569fe10a3a37ba6c753844b..f6407f1bb60b696b5519518587539230ca5464cd 100644
--- a/idg-bin/examples/cxx/CUDA/Generic/main.cpp
+++ b/idg-bin/examples/cxx/CUDA/Generic/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cuda.h"
 
 using ProxyType = idg::proxy::cuda::Generic;
diff --git a/idg-bin/examples/cxx/CUDA/Unified/CMakeLists.txt b/idg-bin/examples/cxx/CUDA/Unified/CMakeLists.txt
index 98223a5ba68593781194f89ac2c52317283d8b0a..002cdee2095811c8a4d115151a346a6ce2517da0 100644
--- a/idg-bin/examples/cxx/CUDA/Unified/CMakeLists.txt
+++ b/idg-bin/examples/cxx/CUDA/Unified/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda-unified.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/CUDA/Unified/main.cpp b/idg-bin/examples/cxx/CUDA/Unified/main.cpp
index af18ddcfddc9754a7d65dcc9e9de2ca87c32a65e..06d7dec8983ad4750dc6206435a4fb40a61cefa7 100644
--- a/idg-bin/examples/cxx/CUDA/Unified/main.cpp
+++ b/idg-bin/examples/cxx/CUDA/Unified/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cuda.h"
 
 using ProxyType = idg::proxy::cuda::Unified;
diff --git a/idg-bin/examples/cxx/Hybrid/CMakeLists.txt b/idg-bin/examples/cxx/Hybrid/CMakeLists.txt
index 6c03bc9b9968d59b072a4495f80a4834d957168c..70ca4564c8e6297f56471a695e04d48a072f01d9 100644
--- a/idg-bin/examples/cxx/Hybrid/CMakeLists.txt
+++ b/idg-bin/examples/cxx/Hybrid/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples-hybrid)
 
 if (BUILD_LIB_CPU AND BUILD_LIB_CUDA)
diff --git a/idg-bin/examples/cxx/Hybrid/CUDA/CMakeLists.txt b/idg-bin/examples/cxx/Hybrid/CUDA/CMakeLists.txt
index 1df6eab6a1fadcb3809c18cae9ecab4e48cb8085..a0fd31535212afc25a74e85eb340429f0c825ef4 100644
--- a/idg-bin/examples/cxx/Hybrid/CUDA/CMakeLists.txt
+++ b/idg-bin/examples/cxx/Hybrid/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples-hybrid-cuda)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-hybrid-cuda)
diff --git a/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt b/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
index 3f1c07778c9bc8d45a1358a4898c1f7a0abeac3f..2bbdb8d4342be22590f5beacbd4326cbd4cbb5c3 100644
--- a/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
+++ b/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid-cuda-generic-optimized.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/main.cpp b/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
index 5417e2f3900ad73a13060d54d91a311c8bda4f7f..b28a6d1d33da9b703e98f460509b8551600c71a1 100644
--- a/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
+++ b/idg-bin/examples/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-hybrid-cuda.h"
 
 using ProxyType = idg::proxy::hybrid::GenericOptimized;
diff --git a/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt b/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
index d2e2420ba3214a1c0ca7a28da5291cebec7a99bc..75b9409fae68eb98e4ec0b1cdc7a1d725b2ccacc 100644
--- a/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
+++ b/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid-cuda-unified-optimized.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp b/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
index 2c3c373165d6729e9a8246537eaaa7db4c804f30..0223cbd3daa7b066fc01955f2537eb53ccf3ca90 100644
--- a/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
+++ b/idg-bin/examples/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-hybrid-cuda.h"
 
 using ProxyType = idg::proxy::hybrid::UnifiedOptimized;
diff --git a/idg-bin/examples/cxx/OpenCL/CMakeLists.txt b/idg-bin/examples/cxx/OpenCL/CMakeLists.txt
index 9c01b69bfba0e8ceac9a8efcf0646ecb3e5de39d..4304e35c238a215f6d8578f74c11f5b266ca4436 100644
--- a/idg-bin/examples/cxx/OpenCL/CMakeLists.txt
+++ b/idg-bin/examples/cxx/OpenCL/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(examples-opencl)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-opencl)
diff --git a/idg-bin/examples/cxx/OpenCL/Generic/CMakeLists.txt b/idg-bin/examples/cxx/OpenCL/Generic/CMakeLists.txt
index 9fa11070d43fc22dbb22a379666d6a1d68a6e5f6..d0463f13000d33ce79afbff5807ee9225ad560c1 100644
--- a/idg-bin/examples/cxx/OpenCL/Generic/CMakeLists.txt
+++ b/idg-bin/examples/cxx/OpenCL/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(opencl-generic.x)
 
 set (${PROJECT_NAME}_sources
diff --git a/idg-bin/examples/cxx/OpenCL/Generic/main.cpp b/idg-bin/examples/cxx/OpenCL/Generic/main.cpp
index 5485082c03dcd7cb1541eb08b5fe7d039749fd32..b40e7808d7d9b376d09353f8fb38e526aef91022 100644
--- a/idg-bin/examples/cxx/OpenCL/Generic/main.cpp
+++ b/idg-bin/examples/cxx/OpenCL/Generic/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-opencl.h"
 
 #include "common.h"
diff --git a/idg-bin/examples/cxx/common/Queue.h b/idg-bin/examples/cxx/common/Queue.h
index 7cc4dbc5cbdde101ce12b9bab485e78b33ba9868..283a80a228b5421b873d949365c7964d7e3bfda7 100644
--- a/idg-bin/examples/cxx/common/Queue.h
+++ b/idg-bin/examples/cxx/common/Queue.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 //
 // Copyright (c) 2013 Juan Palacios juan.palacios.puyana@gmail.com
 // Subject to the BSD 2-Clause License
diff --git a/idg-bin/examples/cxx/common/common.h b/idg-bin/examples/cxx/common/common.h
index 4f1c5806b0809309bcb4613e23551c251fc24eb5..a277bbc7ee07d750bb6d0a0e6d488ac5bc170151 100644
--- a/idg-bin/examples/cxx/common/common.h
+++ b/idg-bin/examples/cxx/common/common.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <iomanip>
 #include <cstdlib>  // size_t
diff --git a/idg-bin/examples/cxx/plan/CMakeLists.txt b/idg-bin/examples/cxx/plan/CMakeLists.txt
index 33cb0182e2fd0513354de7df359b99c66e741fcc..260dd81fb6222e6af16225fe940af8dade7f30cb 100644
--- a/idg-bin/examples/cxx/plan/CMakeLists.txt
+++ b/idg-bin/examples/cxx/plan/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(idg-plan.x)
 
 # Set sources
diff --git a/idg-bin/examples/cxx/plan/main.cpp b/idg-bin/examples/cxx/plan/main.cpp
index 62d10e2af11411d420a40b73bbf04f4925700d17..0e0d3ec788913e926267f2b53a4db1fcc28461ed 100644
--- a/idg-bin/examples/cxx/plan/main.cpp
+++ b/idg-bin/examples/cxx/plan/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <iomanip>
 #include <cstdlib>  // size_t
diff --git a/idg-bin/examples/python-misc/CMakeLists.txt b/idg-bin/examples/python-misc/CMakeLists.txt
index 8e482ebdd91b59f78645bbabb73163b49f14727a..c54e57c3e2acd8beffa3293e5a37cb5626e618c2 100644
--- a/idg-bin/examples/python-misc/CMakeLists.txt
+++ b/idg-bin/examples/python-misc/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Install Python examples
 install(FILES
   cpu-hdf5.py
diff --git a/idg-bin/examples/python-misc/cpu-hdf5.py b/idg-bin/examples/python-misc/cpu-hdf5.py
index aa405b63e363382eb45947ba7d222f8bc8cab7d9..72e6bcadd23993c9eda64e150944c28d4d689b0e 100644
--- a/idg-bin/examples/python-misc/cpu-hdf5.py
+++ b/idg-bin/examples/python-misc/cpu-hdf5.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 #########
 # imports
@@ -15,7 +17,7 @@ parser = argparse.ArgumentParser(description='Run image domain gridding on a hdf
 parser.add_argument(dest='filename', type=str, help='path to dataset')
 args = parser.parse_args()
 filename = args.filename
- 
+
 ##############
 # read dataset
 ##############
@@ -102,7 +104,7 @@ for plane in range(len(uv)):
     weight_plane = weights[plane]
     vis_plane    = vis[plane]
     w_plane      = w_planes[plane]
-    
+
     # fill idg datastructures
     uvw = numpy.zeros(shape=(nr_baselines, nr_time, 3), dtype=numpy.float32)
     uvw[:,:,0] = uv_plane[:,0]
@@ -110,7 +112,7 @@ for plane in range(len(uv)):
     uvw[:,:,2] = w_plane
     uvw = uvw.view(idg.uvwtype)[:,:,0]
     visibilities = numpy.repeat(vis_plane, nr_polarizations, axis=0).reshape((nr_baselines, nr_time, nr_channels, nr_polarizations))
-    
+
     # grid visibilities
     w_offset = float(plane)
     p.grid_visibilities(
diff --git a/idg-bin/examples/python/CMakeLists.txt b/idg-bin/examples/python/CMakeLists.txt
index d0f69a69a7ceb912cf1a371bc7be078d2320c04f..b87c3d474808e61393abfe5e517ee024a57de6de 100644
--- a/idg-bin/examples/python/CMakeLists.txt
+++ b/idg-bin/examples/python/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 install(FILES
     common.py
     cpu-reference.py
diff --git a/idg-bin/examples/python/common.py b/idg-bin/examples/python/common.py
index 7874b6e027dc1b86c6a637cfaceed31d002fd3ce..71c3a09bb01b8d551eeb2176b6a26d8d44adc39a 100644
--- a/idg-bin/examples/python/common.py
+++ b/idg-bin/examples/python/common.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 # after INSTALLING the library, and sourcing init-enviroment.sh
 # (or setting the PYTHONPATH manually), you can import the idg module
diff --git a/idg-bin/examples/python/coverage.py b/idg-bin/examples/python/coverage.py
index 2f88f4a7d29a1b500c7964ab669eb20ddf543fb5..3645118689a9bfbbb0c706d374946da92a88c8af 100644
--- a/idg-bin/examples/python/coverage.py
+++ b/idg-bin/examples/python/coverage.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 import idg
 import util
diff --git a/idg-bin/examples/python/cpu-optimized.py b/idg-bin/examples/python/cpu-optimized.py
index 9e8a5bd24e21ba7307c7630d46923194d65be7fe..2f70fd44800b0f90fdf7669af141afa38e6cf62e 100644
--- a/idg-bin/examples/python/cpu-optimized.py
+++ b/idg-bin/examples/python/cpu-optimized.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/cpu-reference.py b/idg-bin/examples/python/cpu-reference.py
index 506ca0ea38bd5f9cb857d92e7dbd53b5cd63e91c..f8970e549c61984ec0f61b9af7b942adab9c71a4 100644
--- a/idg-bin/examples/python/cpu-reference.py
+++ b/idg-bin/examples/python/cpu-reference.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/cuda-generic.py b/idg-bin/examples/python/cuda-generic.py
index 168ed10664f268c87dad910a3f9b2254d137c9b6..32d982b27aee6c11c9f65054fcb2d95f293f919c 100644
--- a/idg-bin/examples/python/cuda-generic.py
+++ b/idg-bin/examples/python/cuda-generic.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/cuda-unified.py b/idg-bin/examples/python/cuda-unified.py
index b7544c385032bbe1a190d799f2822401921b849b..781021b45138cba44feac22dc1d84d6ca294c336 100644
--- a/idg-bin/examples/python/cuda-unified.py
+++ b/idg-bin/examples/python/cuda-unified.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/hybrid-cuda-generic-optimized.py b/idg-bin/examples/python/hybrid-cuda-generic-optimized.py
index 3b4c0eb2e7887ba40b12d07de4e5a400b3e141af..a3a8a71332a3f12323f2a8adcc986b27679aa214 100644
--- a/idg-bin/examples/python/hybrid-cuda-generic-optimized.py
+++ b/idg-bin/examples/python/hybrid-cuda-generic-optimized.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/opencl-generic.py b/idg-bin/examples/python/opencl-generic.py
index b86b26ecd9740a0dfad0e129a87d9f5e3976bbbb..81c41c7b76eca5827e2da566669e3467aa7f3fe1 100644
--- a/idg-bin/examples/python/opencl-generic.py
+++ b/idg-bin/examples/python/opencl-generic.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/examples/python/tiles.py b/idg-bin/examples/python/tiles.py
index fa8de89157bffd36df652961e51070f7d479a978..8f79ac2cbfb3431104b97eaf939b4fc6121a97d3 100644
--- a/idg-bin/examples/python/tiles.py
+++ b/idg-bin/examples/python/tiles.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 import idg
 import idg.util
diff --git a/idg-bin/tests/CMakeLists.txt b/idg-bin/tests/CMakeLists.txt
index f92f1e19bf99e99bcf1b5f03e85aeb2134be0934..330c127e48d92f835867920a8cbeb5498c3bf78d 100644
--- a/idg-bin/tests/CMakeLists.txt
+++ b/idg-bin/tests/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests)
 
 # add subfolders
diff --git a/idg-bin/tests/cxx/CMakeLists.txt b/idg-bin/tests/cxx/CMakeLists.txt
index 4b424f18d403713148f26b84e17e81732393e360..ba9698a7a15d7eb96a7d699d656d8322dacb4dcc 100644
--- a/idg-bin/tests/cxx/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cxx)
 
 # set utility include directory
diff --git a/idg-bin/tests/cxx/CPU/CMakeLists.txt b/idg-bin/tests/cxx/CPU/CMakeLists.txt
index 3a327e5e01c2671f5719abcd8601c2b23ca05de1..84198271347af49a81f8f862bcf1a12913aa291b 100644
--- a/idg-bin/tests/cxx/CPU/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CPU/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests-cpu)
 
 add_subdirectory(Reference)
diff --git a/idg-bin/tests/cxx/CPU/Optimized/CMakeLists.txt b/idg-bin/tests/cxx/CPU/Optimized/CMakeLists.txt
index 3b238aeaa59aa205b3365933198565626e41e61e..01cb4f5bcbc770845e7c2a4657ee89db9d5c4c5f 100644
--- a/idg-bin/tests/cxx/CPU/Optimized/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CPU/Optimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-cpu-optimized.x)
 
 set (${PROJECT_NAME}_sources 
diff --git a/idg-bin/tests/cxx/CPU/Optimized/main.cpp b/idg-bin/tests/cxx/CPU/Optimized/main.cpp
index 871e78d927a6c1a5974b8e52b3d4d0e91992be8b..8e0053259bb4cedecbc4fcdb79d75749fff3675d 100644
--- a/idg-bin/tests/cxx/CPU/Optimized/main.cpp
+++ b/idg-bin/tests/cxx/CPU/Optimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cpu.h"
 
 using namespace std;
diff --git a/idg-bin/tests/cxx/CPU/Reference/CMakeLists.txt b/idg-bin/tests/cxx/CPU/Reference/CMakeLists.txt
index 5c1deafe0f1d65b459a9e9e84151644fd9051341..24be5e97110f426740473023e60cdaca95fa5040 100644
--- a/idg-bin/tests/cxx/CPU/Reference/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CPU/Reference/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-cpu-reference.x)
 
 set (${PROJECT_NAME}_sources 
diff --git a/idg-bin/tests/cxx/CPU/Reference/main.cpp b/idg-bin/tests/cxx/CPU/Reference/main.cpp
index 28ad856ee82452242aa815f39d2427d3d0271f19..03cf0b91248232935a1fa6f022ec613269df3fb1 100644
--- a/idg-bin/tests/cxx/CPU/Reference/main.cpp
+++ b/idg-bin/tests/cxx/CPU/Reference/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cpu.h"  // Reference proxy
 
 using ProxyType = idg::proxy::cpu::Reference;
diff --git a/idg-bin/tests/cxx/CUDA/CMakeLists.txt b/idg-bin/tests/cxx/CUDA/CMakeLists.txt
index 90ab4839ab3c5cbe5b67a3b75c37df40d9dd64c2..78454de193169b986cee93c1cee38f8cb6221781 100644
--- a/idg-bin/tests/cxx/CUDA/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests-cuda)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-cuda)
diff --git a/idg-bin/tests/cxx/CUDA/Generic/CMakeLists.txt b/idg-bin/tests/cxx/CUDA/Generic/CMakeLists.txt
index 12b596722ca945ba664fba3487ec7b8237fbe0b9..feb58c0901b864bc6d5cb45bceb9c05ac5be2e77 100644
--- a/idg-bin/tests/cxx/CUDA/Generic/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CUDA/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-cuda-generic.x)
 
 # Set sources
diff --git a/idg-bin/tests/cxx/CUDA/Generic/main.cpp b/idg-bin/tests/cxx/CUDA/Generic/main.cpp
index 1ceac8980555e63052f8e135d7af6037e7cca6ac..ccba948e9a6c96f439d7aaa75592449f4ce54b04 100644
--- a/idg-bin/tests/cxx/CUDA/Generic/main.cpp
+++ b/idg-bin/tests/cxx/CUDA/Generic/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cuda.h"
 
 using namespace std;
diff --git a/idg-bin/tests/cxx/CUDA/Unified/CMakeLists.txt b/idg-bin/tests/cxx/CUDA/Unified/CMakeLists.txt
index e3a6e45af3092f0359df3d89b423cc41306e0846..36830a93c0e5a956f409544cd4c371d69ea6c785 100644
--- a/idg-bin/tests/cxx/CUDA/Unified/CMakeLists.txt
+++ b/idg-bin/tests/cxx/CUDA/Unified/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-cuda-unified.x)
 
 # Set sources
diff --git a/idg-bin/tests/cxx/CUDA/Unified/main.cpp b/idg-bin/tests/cxx/CUDA/Unified/main.cpp
index 901110cecefe333aee1b2074a18b21063861bfed..f18c010f643a1682454841570245fc959ac027aa 100644
--- a/idg-bin/tests/cxx/CUDA/Unified/main.cpp
+++ b/idg-bin/tests/cxx/CUDA/Unified/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-cuda.h"
 
 using namespace std;
diff --git a/idg-bin/tests/cxx/Hybrid/CMakeLists.txt b/idg-bin/tests/cxx/Hybrid/CMakeLists.txt
index 6faa9bc86180e486922eec0b7c2a78090179542e..1e29595be7ffa34489ecfdf0740a0f305ef37f2a 100644
--- a/idg-bin/tests/cxx/Hybrid/CMakeLists.txt
+++ b/idg-bin/tests/cxx/Hybrid/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests-hybrid)
 
 if (BUILD_LIB_CPU AND BUILD_LIB_CUDA)
diff --git a/idg-bin/tests/cxx/Hybrid/CUDA/CMakeLists.txt b/idg-bin/tests/cxx/Hybrid/CUDA/CMakeLists.txt
index 63c48313cda4bc4f3a751cd417de7565b248ae23..3cadf36a3671dbe407bc3a8ff388b030a25eac8e 100644
--- a/idg-bin/tests/cxx/Hybrid/CUDA/CMakeLists.txt
+++ b/idg-bin/tests/cxx/Hybrid/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests-hybrid-cuda)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-common idg-hybrid-cuda)
diff --git a/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt b/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
index e364c6e1859e7f77e54f1848d3c4633153b3cfd2..14f80ae815d0d78d181ca6e75acead27d98f39af 100644
--- a/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
+++ b/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-hybrid-cuda-generic-optimized.x)
 
 # Set sources
diff --git a/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/main.cpp b/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
index 72f9c0a7552899c39815b37b8d41f72db347edbe..d234ab09a83960c2a3a4676fb12b191093d9daae 100644
--- a/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
+++ b/idg-bin/tests/cxx/Hybrid/CUDA/GenericOptimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-hybrid-cuda.h"
 
 using namespace std;
diff --git a/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt b/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
index 4da22efca845bd8cb85adcf0832b440f920880ff..3477c66d4399b7e82d974bf04df4c32cbf880041 100644
--- a/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
+++ b/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-hybrid-cuda-unified-optimized.x)
 
 # Set sources
diff --git a/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp b/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
index c66b73508ca885f5693642847da2c1d4888e0c0d..6f34383ab6fc45d72d6f16831dbfffb3801a56b1 100644
--- a/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
+++ b/idg-bin/tests/cxx/Hybrid/CUDA/UnifiedOptimized/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-hybrid-cuda.h"
 
 using namespace std;
diff --git a/idg-bin/tests/cxx/OpenCL/CMakeLists.txt b/idg-bin/tests/cxx/OpenCL/CMakeLists.txt
index bc6168130d12ddba30a23b6fd7974e414d0dc770..6e319a1cca9e12ff35f1a27e2847f39422ad416b 100644
--- a/idg-bin/tests/cxx/OpenCL/CMakeLists.txt
+++ b/idg-bin/tests/cxx/OpenCL/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(tests-opencl)
 
 set(LINK_LIBRARIES ${LINK_LIBRARIES} idg-opencl)
diff --git a/idg-bin/tests/cxx/OpenCL/Generic/CMakeLists.txt b/idg-bin/tests/cxx/OpenCL/Generic/CMakeLists.txt
index b0812e92204430941927f89fd462293117c1496c..97634dcf92c8bcebb2cf7eb9f413ecf6dda29add 100644
--- a/idg-bin/tests/cxx/OpenCL/Generic/CMakeLists.txt
+++ b/idg-bin/tests/cxx/OpenCL/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-opencl-generic.x)
 
 set (${PROJECT_NAME}_sources
diff --git a/idg-bin/tests/cxx/OpenCL/Generic/main.cpp b/idg-bin/tests/cxx/OpenCL/Generic/main.cpp
index d86cda02fb83c56a5e82fe9c5b60aff105f819c9..34fc576c492e585fdc5e8f0797d829c97ae4f320 100644
--- a/idg-bin/tests/cxx/OpenCL/Generic/main.cpp
+++ b/idg-bin/tests/cxx/OpenCL/Generic/main.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "idg-opencl.h"
 #include "common.h"
 
diff --git a/idg-bin/tests/cxx/common/common.h b/idg-bin/tests/cxx/common/common.h
index 0e528130556d4396e217a998a3923ca6140a855b..0ce5ceae7ddfb92b459b5826946606ffc6577b9a 100644
--- a/idg-bin/tests/cxx/common/common.h
+++ b/idg-bin/tests/cxx/common/common.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <iomanip>
 #include <cstdlib>  // size_t
diff --git a/idg-bin/tests/python/CMakeLists.txt b/idg-bin/tests/python/CMakeLists.txt
index 2991752b591693a1afaf7e21ecc6c4d8f9da8fa7..6d18b2a4ada750dfd2ab51cf7c8946bee072fa38 100644
--- a/idg-bin/tests/python/CMakeLists.txt
+++ b/idg-bin/tests/python/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 install(FILES
     common.py
     test-cpu-optimized.py
diff --git a/idg-bin/tests/python/common.py b/idg-bin/tests/python/common.py
index 6a7d4b79223ff907135b21daa898c28699c79291..eca64992e55455faf7e55a25b75481c5d34fef3d 100644
--- a/idg-bin/tests/python/common.py
+++ b/idg-bin/tests/python/common.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 # after INSTALLING the library, and sourcing init-enviroment.sh
 # (or setting the PYTHONPATH manually), you can import the idg module
diff --git a/idg-bin/tests/python/test-cpu-optimized.py b/idg-bin/tests/python/test-cpu-optimized.py
index 9e8a5bd24e21ba7307c7630d46923194d65be7fe..2f70fd44800b0f90fdf7669af141afa38e6cf62e 100644
--- a/idg-bin/tests/python/test-cpu-optimized.py
+++ b/idg-bin/tests/python/test-cpu-optimized.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/tests/python/test-cuda-generic.py b/idg-bin/tests/python/test-cuda-generic.py
index 168ed10664f268c87dad910a3f9b2254d137c9b6..32d982b27aee6c11c9f65054fcb2d95f293f919c 100644
--- a/idg-bin/tests/python/test-cuda-generic.py
+++ b/idg-bin/tests/python/test-cuda-generic.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/tests/python/test-hybrid-cuda-generic-optimized.py b/idg-bin/tests/python/test-hybrid-cuda-generic-optimized.py
index 3b4c0eb2e7887ba40b12d07de4e5a400b3e141af..a3a8a71332a3f12323f2a8adcc986b27679aa214 100644
--- a/idg-bin/tests/python/test-hybrid-cuda-generic-optimized.py
+++ b/idg-bin/tests/python/test-hybrid-cuda-generic-optimized.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/tests/python/test-opencl-generic.py b/idg-bin/tests/python/test-opencl-generic.py
index b86b26ecd9740a0dfad0e129a87d9f5e3976bbbb..81c41c7b76eca5827e2da566669e3467aa7f3fe1 100644
--- a/idg-bin/tests/python/test-opencl-generic.py
+++ b/idg-bin/tests/python/test-opencl-generic.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-bin/tests/python/test-python-reference.py b/idg-bin/tests/python/test-python-reference.py
index 6539f806555109be0d291bb7d94b5de7ec1d9a8f..12c07a3406af30e67856c39602cc1e9c83f588fd 100644
--- a/idg-bin/tests/python/test-python-reference.py
+++ b/idg-bin/tests/python/test-python-reference.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from common import *
 
diff --git a/idg-lib/CMakeLists.txt b/idg-lib/CMakeLists.txt
index fb5eb6dc6efeae0567996b54cf70e5212a86a7a8..5c812d68a82a3e93098ac360c7a6d84f33a2d960 100644
--- a/idg-lib/CMakeLists.txt
+++ b/idg-lib/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 cmake_minimum_required(VERSION 2.8.0)
 
 # set policies
diff --git a/idg-lib/cmake/config/idg-config.cmake.in b/idg-lib/cmake/config/idg-config.cmake.in
index 893ee7d5fa546f340337fd10f958e95212d8efce..69894f0780eb2ba15d585056876fe4085c6d1879 100644
--- a/idg-lib/cmake/config/idg-config.cmake.in
+++ b/idg-lib/cmake/config/idg-config.cmake.in
@@ -1,5 +1,8 @@
 #  Config file for the idg-lib library
 
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Compute paths
 get_filename_component(IDG_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
 get_filename_component(IDG_CMAKE_DIR_ABS "${IDG_CMAKE_DIR}" ABSOLUTE)
diff --git a/idg-lib/cmake/config/idg-config.h.in b/idg-lib/cmake/config/idg-config.h.in
index 61c82d99d55e92d67c468a52fa45810b05d2e7ef..76d4a072d5c20573279bdbfd095bfc107332b0a4 100644
--- a/idg-lib/cmake/config/idg-config.h.in
+++ b/idg-lib/cmake/config/idg-config.h.in
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CONFIG_H_
 #define IDG_CONFIG_H_
 
diff --git a/idg-lib/cmake/modules/FindCUDA.cmake b/idg-lib/cmake/modules/FindCUDA.cmake
index 96b07bdf3dbd998850b284a0a35e681c23b33688..b01824212d22ebbc6e47d1e3efa3dec13d54ac06 100644
--- a/idg-lib/cmake/modules/FindCUDA.cmake
+++ b/idg-lib/cmake/modules/FindCUDA.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # This module tries to find CUDA libaries on your system
 #
 # Once done this will define
diff --git a/idg-lib/cmake/modules/FindFFTW3.cmake b/idg-lib/cmake/modules/FindFFTW3.cmake
index 4c86003f9d6ec0f2bd28ef51a00afff8473dac39..d55c84223a9ffb53c8fecf5e8bdab3bcce699014 100644
--- a/idg-lib/cmake/modules/FindFFTW3.cmake
+++ b/idg-lib/cmake/modules/FindFFTW3.cmake
@@ -8,33 +8,16 @@
 #  FFTW3_INCLUDE_DIR          - the FFTW3 include directory (cached)
 #  FFTW3_INCLUDE_DIRS         - the FFTW3 include directories
 #                               (identical to FFTW3_INCLUDE_DIR)
-#  FFTW3[FL]?_LIBRARY         - the FFTW3 library - double, single(F), 
+#  FFTW3[FL]?_LIBRARY         - the FFTW3 library - double, single(F),
 #                               long-double(L) precision (cached)
-#  FFTW3[FL]?_THREADS_LIBRARY - the threaded FFTW3 library - double, single(F), 
+#  FFTW3[FL]?_THREADS_LIBRARY - the threaded FFTW3 library - double, single(F),
 #                               long-double(L) precision (cached)
-#  FFTW3[FL]?_OMP_LIBRARY     - the OpenMP FFTW3 library - double, single(F), 
+#  FFTW3[FL]?_OMP_LIBRARY     - the OpenMP FFTW3 library - double, single(F),
 #                               long-double(L) precision (cached)
 #  FFTW3_LIBRARIES            - list of all FFTW3 libraries found
 
-# Copyright (C) 2009-2010
-# ASTRON (Netherlands Institute for Radio Astronomy)
-# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
-#
-# This file is part of the LOFAR software suite.
-# The LOFAR software suite is free software: you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as published
-# by the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# The LOFAR software suite is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with the LOFAR software suite. If not, see <http://www.gnu.org/licenses/>.
-#
-# $Id: FindFFTW3.cmake 15918 2010-06-25 11:12:42Z loose $
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 # Use double precision by default.
 if(FFTW3_FIND_COMPONENTS MATCHES "^$")
@@ -102,7 +85,7 @@ foreach(_lib ${_libraries})
 endforeach(_lib ${_libraries})
 
 # Search for the header file.
-find_path(FFTW3_INCLUDE_DIR fftw3.h 
+find_path(FFTW3_INCLUDE_DIR fftw3.h
   HINTS ${FFTW3_ROOT_DIR} PATH_SUFFIXES include
   HINTS ENV FFTW3_ROOT_DIR PATH_SUFFIXES include)
   mark_as_advanced(FFTW3_INCLUDE_DIR)
diff --git a/idg-lib/cmake/modules/FindMKL.cmake b/idg-lib/cmake/modules/FindMKL.cmake
index 09471b025fdc550b7479841675cbe17913dcabeb..dc07edd89285bd1427a459190369cb3106f1b41b 100644
--- a/idg-lib/cmake/modules/FindMKL.cmake
+++ b/idg-lib/cmake/modules/FindMKL.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # - Try to find MKL
 # This module tries to find an MKL library on your system.
 #
diff --git a/idg-lib/cmake/modules/FindNumpy.cmake b/idg-lib/cmake/modules/FindNumpy.cmake
index 6a37eb461b931e1885cc35dc73b1189a881f299b..ab21a90b7cb43f213bf476410c4e807fbcfdec81 100644
--- a/idg-lib/cmake/modules/FindNumpy.cmake
+++ b/idg-lib/cmake/modules/FindNumpy.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # - Try to find the Python Numpy header files and loadable modules.
 # This find module tries to determine the directory path to the Numpy header
 # files and the location of the loadable modules `multiarray` and `scalarmath`.
@@ -75,8 +78,8 @@ if(NOT NUMPY_FOUND)
     set(CMAKE_FIND_LIBRARY_PREFIXES "${_cmake_find_library_prefixes}")
 
   endif(PYTHONINTERP_FOUND)
-  
-  # Handle the QUIETLY and REQUIRED arguments and set NUMPY_FOUND    
+
+  # Handle the QUIETLY and REQUIRED arguments and set NUMPY_FOUND
   include(FindPackageHandleStandardArgs)
   find_package_handle_standard_args(Numpy DEFAULT_MSG
     NUMPY_MULTIARRAY_LIBRARY NUMPY_SCALARMATH_LIBRARY NUMPY_INCLUDE_DIR)
@@ -84,10 +87,10 @@ if(NOT NUMPY_FOUND)
   # Set non-cached variables
   if(NUMPY_FOUND)
     set(NUMPY_INCLUDE_DIRS "${NUMPY_INCLUDE_DIR}")
-    set(NUMPY_LIBRARIES 
+    set(NUMPY_LIBRARIES
       "${NUMPY_MULTIARRAY_LIBRARY}" "${NUMPY_SCALARMATH_LIBRARY}")
   endif(NUMPY_FOUND)
-  
+
   # Find the f2py program
   find_program(F2PY_EXECUTABLE f2py)
 
@@ -120,7 +123,7 @@ macro (add_f2py_module _name)
   endif(_dest_dir MATCHES "^$" OR _dest_dir MATCHES ";")
 
   # Get the compiler-id and map it to compiler vendor as used by f2py.
-  # Currently, we only check for GNU, but this can easily be extended. 
+  # Currently, we only check for GNU, but this can easily be extended.
   # Cache the result, so that we only need to check once.
   if(NOT F2PY_FCOMPILER)
     if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
@@ -151,7 +154,7 @@ macro (add_f2py_module _name)
       list(APPEND _fcompiler_opts "--f90exec=${CMAKE_Fortran_COMPILER}")
       if(APPLE)
         list(APPEND _fcompiler_opts "--f90flags=\"-m64\"")
-      endif(APPLE)      
+      endif(APPLE)
     endif(CMAKE_Fortran_COMPILER_SUPPORTS_F90)
   endif(F2PY_FCOMPILER)
 
diff --git a/idg-lib/cmake/modules/FindOpenCL.cmake b/idg-lib/cmake/modules/FindOpenCL.cmake
index 3a34f40af58ef658f5d93213e0133b51404e5d57..ca8f0d8012651fedc1a7655cfd687ad9d4c4622b 100644
--- a/idg-lib/cmake/modules/FindOpenCL.cmake
+++ b/idg-lib/cmake/modules/FindOpenCL.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # - Try to find OpenCL
 # This module tries to find an OpenCL implementation on your system.
 # It supports AMD and NVIDIA implementations.
diff --git a/idg-lib/cmake/modules/FindPowerSensor.cmake b/idg-lib/cmake/modules/FindPowerSensor.cmake
index ab0b26db33033311a21311e6603afa4f68346ce8..c9b3ad1b025c84407e370bcaa90890e578dba834 100644
--- a/idg-lib/cmake/modules/FindPowerSensor.cmake
+++ b/idg-lib/cmake/modules/FindPowerSensor.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # This module tries to find the PowerSensor library on your system
 #
 # Once done this will define
diff --git a/idg-lib/cmake/modules/FindclFFT.cmake b/idg-lib/cmake/modules/FindclFFT.cmake
index 1433032ae79a1c72eecab6e2f64f7014d7bbed05..3f450bf0be3b4205714a9c2cec831074907024e4 100644
--- a/idg-lib/cmake/modules/FindclFFT.cmake
+++ b/idg-lib/cmake/modules/FindclFFT.cmake
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # - Try to find clFFT
 # This module tries to find the clFFT library on your system
 #
diff --git a/idg-lib/src/CMakeLists.txt b/idg-lib/src/CMakeLists.txt
index 4ed0ddcdb3b18028f2749afd678fbddb30d885c0..57b4d4fda6c5ab8fd283f6ffc6280687b9671183 100644
--- a/idg-lib/src/CMakeLists.txt
+++ b/idg-lib/src/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(idg)
 
 set (IDG_CUDA_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/CUDA/common)
diff --git a/idg-lib/src/CPU/CMakeLists.txt b/idg-lib/src/CPU/CMakeLists.txt
index 8b63675ab2cf7283c8e3b4da375e3c3623b94f32..99d92b9388b62a540392bd95e34d205a54edd902 100644
--- a/idg-lib/src/CPU/CMakeLists.txt
+++ b/idg-lib/src/CPU/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu)
 
 # add subfolders
diff --git a/idg-lib/src/CPU/Optimized/CMakeLists.txt b/idg-lib/src/CPU/Optimized/CMakeLists.txt
index 37a0307c0e0af002be2f227bc94d5e4d0a722208..632394b363538a90bbcb64499e57d95b7e1ba16a 100644
--- a/idg-lib/src/CPU/Optimized/CMakeLists.txt
+++ b/idg-lib/src/CPU/Optimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-optimized)
 
 # sources and header files
diff --git a/idg-lib/src/CPU/Optimized/Optimized.cpp b/idg-lib/src/CPU/Optimized/Optimized.cpp
index a46307b43042f5f24914544ca467097f31a28e7d..a5121e436b7369fe1c991f6c6f0b089817551e9b 100644
--- a/idg-lib/src/CPU/Optimized/Optimized.cpp
+++ b/idg-lib/src/CPU/Optimized/Optimized.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Optimized.h"
 
 using namespace std;
diff --git a/idg-lib/src/CPU/Optimized/Optimized.h b/idg-lib/src/CPU/Optimized/Optimized.h
index 7c01a6be1066a2f69f755b770d6b9aaa2fbce237..681ebbc21921f51eeee49d148eef327d5556ca17 100644
--- a/idg-lib/src/CPU/Optimized/Optimized.h
+++ b/idg-lib/src/CPU/Optimized/Optimized.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CPU_OPTIMIZED_H_
 #define IDG_CPU_OPTIMIZED_H_
 
diff --git a/idg-lib/src/CPU/Optimized/OptimizedC.h b/idg-lib/src/CPU/Optimized/OptimizedC.h
index 121a01c1d7615e3696fcd5053e4dc07721873569..79bb1ac97fbe836cea86c034b6432e11aabd825c 100644
--- a/idg-lib/src/CPU/Optimized/OptimizedC.h
+++ b/idg-lib/src/CPU/Optimized/OptimizedC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::cpu::Optimized ProxyType;
 
diff --git a/idg-lib/src/CPU/Optimized/kernels/CMakeLists.txt b/idg-lib/src/CPU/Optimized/kernels/CMakeLists.txt
index 6e96ef2cf9710e31c11c0b547303386c9132ca51..5067443c6f3ef2e9117ff7e2338537e94e7b82e9 100644
--- a/idg-lib/src/CPU/Optimized/kernels/CMakeLists.txt
+++ b/idg-lib/src/CPU/Optimized/kernels/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-optimized-kernel)
 
 # Include directories
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelAdder.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelAdder.cpp
index 68eaf0b0bc0ce7e3ce379dfe6395c0cf14d936b4..898b565cc98da4b974b2e7e33822a42ad9039302 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelAdder.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelAdder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <stdlib.h>
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelAdderWStack.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelAdderWStack.cpp
index 160866feb20c4b455e22f2dd1228af3beb756b33..b5c905233e7cc4f22fdb14c3dfba33e5746b3337 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelAdderWStack.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelAdderWStack.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <omp.h>
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelAdderWTiles.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelAdderWTiles.cpp
index fed8866d600396e130450aa7bbda2b0822ac5d2c..d2ad74fb112014fdbb732a9466b91cfa1fb8ce4d 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelAdderWTiles.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelAdderWTiles.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 #include <algorithm>
 #include <vector>
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelCalibrate.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelCalibrate.cpp
index 1d198caf6cc5e31709f080a1c3fe573cc815f334..7f41bf3ad1f674e3db6c440786e205b7009e52f6 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelCalibrate.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelCalibrate.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cmath>
 #include <iostream>
 
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelDegridder.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelDegridder.cpp
index 6a9e5c0c232e0356c29247ff29eb22ae5f7492c4..963fddfad00fd49b8e9438a4309241b837d9cfe3 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelDegridder.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelDegridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cmath>
 
 #if defined(USE_VML)
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelFFT.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelFFT.cpp
index 1f3927993a7f0a88e706c19bd8602406fef06d62..cf7a4e267ae477bafcb181d698e79bcbb1cc9282 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelFFT.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelFFT.cpp
@@ -1,3 +1,5 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 #include <iostream>
 #include <complex>
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelGridder.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelGridder.cpp
index e42173af49492574333d10d436f3e647baf39e89..c2b9b9bcd4eb3f80586f22b8b56514bebd0dd495 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelGridder.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelGridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cmath>
 
 #if defined(USE_VML)
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelSplitter.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelSplitter.cpp
index 7003b1b895b5797a946c39d24995b9953acf9eba..f040facca70806ed40cbbd1eea73539ea94a090a 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelSplitter.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelSplitter.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <stdlib.h>
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWStack.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWStack.cpp
index 76ff6e5e12ff433c9a37b0d41c885c507c18fe08..43f9b3d3c80ce8b01c87b481a2aa2ff40bbc3864 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWStack.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWStack.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include "Types.h"
diff --git a/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWTiles.cpp b/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWTiles.cpp
index 2ede433a516d56712aa4867f3e9ba0dec0e4f0d7..0212f06d8d07049b27e646683c6a74e6395c50bd 100644
--- a/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWTiles.cpp
+++ b/idg-lib/src/CPU/Optimized/kernels/KernelSplitterWTiles.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 #include <algorithm>
 #include <vector>
diff --git a/idg-lib/src/CPU/Optimized/kernels/Lookup_01.h b/idg-lib/src/CPU/Optimized/kernels/Lookup_01.h
index c50363e505b959702c34379a9978e3f5ddcd247f..132bfd73daeec444ac3ac53885105114b8d84adf 100644
--- a/idg-lib/src/CPU/Optimized/kernels/Lookup_01.h
+++ b/idg-lib/src/CPU/Optimized/kernels/Lookup_01.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #if defined(__x86_64__)
 #include <immintrin.h>
 #endif
diff --git a/idg-lib/src/CPU/Optimized/kernels/Lookup_02.h b/idg-lib/src/CPU/Optimized/kernels/Lookup_02.h
index 2ddbfb572c2a26a60f5a54d2777a15c45739637e..7c2ef55f6a5c0cbb97d35ebb5f47fbcf2c9cec45 100644
--- a/idg-lib/src/CPU/Optimized/kernels/Lookup_02.h
+++ b/idg-lib/src/CPU/Optimized/kernels/Lookup_02.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 // Constants for sine/cosine lookup table
 #define BITS 12
 #define QRT_PI_INT (1 << BITS)
diff --git a/idg-lib/src/CPU/Optimized/kernels/Lookup_03.h b/idg-lib/src/CPU/Optimized/kernels/Lookup_03.h
index 7fd4d51c8b42b3bb42bbf5ea05ddc495394bd4b0..5032fddf5605791e0e23b37961caadeb986ec2a3 100644
--- a/idg-lib/src/CPU/Optimized/kernels/Lookup_03.h
+++ b/idg-lib/src/CPU/Optimized/kernels/Lookup_03.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #if defined(__x86_64__)
 #include <immintrin.h>
 #endif
diff --git a/idg-lib/src/CPU/Optimized/kernels/Math.h b/idg-lib/src/CPU/Optimized/kernels/Math.h
index 546ded77bf87efefd0474532e4f707549082d655..bdbf35c53f7e51ae392426046910e18a1fc3ff77 100644
--- a/idg-lib/src/CPU/Optimized/kernels/Math.h
+++ b/idg-lib/src/CPU/Optimized/kernels/Math.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "common/Math.h"
 
 #if defined(USE_LOOKUP)
diff --git a/idg-lib/src/CPU/Optimized/kernels/Reduction.h b/idg-lib/src/CPU/Optimized/kernels/Reduction.h
index b7e0087bdd7704406d320b27d1d78492a0062de5..893e78292e46072051abbf1c0a0ff40e12d24dbb 100644
--- a/idg-lib/src/CPU/Optimized/kernels/Reduction.h
+++ b/idg-lib/src/CPU/Optimized/kernels/Reduction.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #if defined(__x86_64__)
 #include <immintrin.h>
 #endif
diff --git a/idg-lib/src/CPU/Reference/CMakeLists.txt b/idg-lib/src/CPU/Reference/CMakeLists.txt
index f7b5d9a757bdce9806a2bade7289c7db1f2b7cf2..a94b1928844b9816625a8cc84f6f37188c3ba1f1 100644
--- a/idg-lib/src/CPU/Reference/CMakeLists.txt
+++ b/idg-lib/src/CPU/Reference/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-reference)
 
 # sources and header files
diff --git a/idg-lib/src/CPU/Reference/Reference.cpp b/idg-lib/src/CPU/Reference/Reference.cpp
index 81cbe65d6f58c2d0ecd769768d971b5d4d268eab..ea0033186ec47fb1c7f66d4e18f4d32862c070cf 100644
--- a/idg-lib/src/CPU/Reference/Reference.cpp
+++ b/idg-lib/src/CPU/Reference/Reference.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Reference.h"
 
 using namespace std;
diff --git a/idg-lib/src/CPU/Reference/Reference.h b/idg-lib/src/CPU/Reference/Reference.h
index 8ca511c8f67eee389dc68013397c5aa6b582f253..8347370012e91ace7af3b0e38a05eaef1285bb90 100644
--- a/idg-lib/src/CPU/Reference/Reference.h
+++ b/idg-lib/src/CPU/Reference/Reference.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CPU_REFERENCE2_H_
 #define IDG_CPU_REFERENCE2_H_
 
diff --git a/idg-lib/src/CPU/Reference/ReferenceC.h b/idg-lib/src/CPU/Reference/ReferenceC.h
index d5985d0c1a80ffdea817b9401ff59dd6e8279d50..c942ab179b5ce6f86481424f6f3f1ba43492cd85 100644
--- a/idg-lib/src/CPU/Reference/ReferenceC.h
+++ b/idg-lib/src/CPU/Reference/ReferenceC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::cpu::Reference ProxyType;
 
diff --git a/idg-lib/src/CPU/Reference/kernels/CMakeLists.txt b/idg-lib/src/CPU/Reference/kernels/CMakeLists.txt
index cb7744037bf1218f13d5fac57f926e28a44792b2..278ae1a49fc0d42560a3a70c21bec6edb884f417 100644
--- a/idg-lib/src/CPU/Reference/kernels/CMakeLists.txt
+++ b/idg-lib/src/CPU/Reference/kernels/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-reference-kernel)
 
 # Include directories
diff --git a/idg-lib/src/CPU/Reference/kernels/KernelAdder.cpp b/idg-lib/src/CPU/Reference/kernels/KernelAdder.cpp
index 712492ffc23570de0aa602c9dad1f542c4619963..2f8477a6d4043c1ac81911dd4ab50e78291df19c 100644
--- a/idg-lib/src/CPU/Reference/kernels/KernelAdder.cpp
+++ b/idg-lib/src/CPU/Reference/kernels/KernelAdder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <stdio.h>
diff --git a/idg-lib/src/CPU/Reference/kernels/KernelDegridder.cpp b/idg-lib/src/CPU/Reference/kernels/KernelDegridder.cpp
index 47dc7c8b57ef3bff1a64413a7d828061ec9be584..87a78601b6aa0f667b81033c01670d724872eb24 100644
--- a/idg-lib/src/CPU/Reference/kernels/KernelDegridder.cpp
+++ b/idg-lib/src/CPU/Reference/kernels/KernelDegridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 #include <cmath>
 #include <cstring>
diff --git a/idg-lib/src/CPU/Reference/kernels/KernelFFT.cpp b/idg-lib/src/CPU/Reference/kernels/KernelFFT.cpp
index bc0fa0d8720f180e96a3fcb1a031920fa419aa28..055734e6be5fe765c3236035819cfa23acd4c25e 100644
--- a/idg-lib/src/CPU/Reference/kernels/KernelFFT.cpp
+++ b/idg-lib/src/CPU/Reference/kernels/KernelFFT.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <math.h>
diff --git a/idg-lib/src/CPU/Reference/kernels/KernelGridder.cpp b/idg-lib/src/CPU/Reference/kernels/KernelGridder.cpp
index 91c4c3068f7260e09ca8f9732d93e0a99fff5eb1..f666b46c3da4407503590d372d12ad31583cf636 100644
--- a/idg-lib/src/CPU/Reference/kernels/KernelGridder.cpp
+++ b/idg-lib/src/CPU/Reference/kernels/KernelGridder.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 #include <cmath>
 #include <cstring>
diff --git a/idg-lib/src/CPU/Reference/kernels/KernelSplitter.cpp b/idg-lib/src/CPU/Reference/kernels/KernelSplitter.cpp
index ce6a358c7093786b0f046b01b3a68e2eb92e5954..c392bf754217919767685900b4bc3060e3243a54 100644
--- a/idg-lib/src/CPU/Reference/kernels/KernelSplitter.cpp
+++ b/idg-lib/src/CPU/Reference/kernels/KernelSplitter.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <complex>
 
 #include <stdio.h>
diff --git a/idg-lib/src/CPU/common/CMakeLists.txt b/idg-lib/src/CPU/common/CMakeLists.txt
index 7c97cdc70fd10a2a06116b6781be2cca8008e43a..f4c5ebdeabbef749309150474bac76a86738a259 100644
--- a/idg-lib/src/CPU/common/CMakeLists.txt
+++ b/idg-lib/src/CPU/common/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cpu-common)
 
 # sources and header files
diff --git a/idg-lib/src/CPU/common/CPU.cpp b/idg-lib/src/CPU/common/CPU.cpp
index d91fb18e5fbdb19ceb77ece7edb2a28e3f5d2e6a..c10d05246ba2c6c73fc88c203abc6cb72ed2214c 100644
--- a/idg-lib/src/CPU/common/CPU.cpp
+++ b/idg-lib/src/CPU/common/CPU.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <vector>
 #include <memory>
 #include <climits>
diff --git a/idg-lib/src/CPU/common/CPU.h b/idg-lib/src/CPU/common/CPU.h
index cd00b7ae5639f541a0bfaed5e3d43ed1a8d4e10e..bcff355b1fd7b5df42d7c478a51a616254f17d9e 100644
--- a/idg-lib/src/CPU/common/CPU.h
+++ b/idg-lib/src/CPU/common/CPU.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CPU_H_
 #define IDG_CPU_H_
 
diff --git a/idg-lib/src/CPU/common/InstanceCPU.cpp b/idg-lib/src/CPU/common/InstanceCPU.cpp
index 47c10b453997b653ad26a0fb29fa3c5ce5d98ca9..d5a312e5a5d24a863aefcb049dc32bc240a644e4 100644
--- a/idg-lib/src/CPU/common/InstanceCPU.cpp
+++ b/idg-lib/src/CPU/common/InstanceCPU.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cstdint>   // unint64_t
 #include <unistd.h>  // rmdir
 
diff --git a/idg-lib/src/CPU/common/InstanceCPU.h b/idg-lib/src/CPU/common/InstanceCPU.h
index 2cea4134eceba7288ab1df7400dd3707eb36e22d..ccab254594ce1652e26f726562c77d7732029c31 100644
--- a/idg-lib/src/CPU/common/InstanceCPU.h
+++ b/idg-lib/src/CPU/common/InstanceCPU.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_KERNELS_CPU_H_
 #define IDG_KERNELS_CPU_H_
 
diff --git a/idg-lib/src/CUDA/CMakeLists.txt b/idg-lib/src/CUDA/CMakeLists.txt
index 747731aeb7c0315af563b5252593d86b3a89ad3d..c69a38db31b2e47cfe891dd2645944d7cb0de635 100644
--- a/idg-lib/src/CUDA/CMakeLists.txt
+++ b/idg-lib/src/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda)
 
 # add subfolders
diff --git a/idg-lib/src/CUDA/Generic/CMakeLists.txt b/idg-lib/src/CUDA/Generic/CMakeLists.txt
index 7a37ea8b28b58b87d2fc2715f5152e967f55df42..9e950711351de973920d95dcdc127ba8c4c4a83c 100644
--- a/idg-lib/src/CUDA/Generic/CMakeLists.txt
+++ b/idg-lib/src/CUDA/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda-generic)
 
 # Set headers
diff --git a/idg-lib/src/CUDA/Generic/Generic.cpp b/idg-lib/src/CUDA/Generic/Generic.cpp
index 80359819785bad442f8155011f482c123cba2699..15996ce7291dc6accaf1ec4a9c776437ba96d086 100644
--- a/idg-lib/src/CUDA/Generic/Generic.cpp
+++ b/idg-lib/src/CUDA/Generic/Generic.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <algorithm>  // max_element
 
 #include "Generic.h"
diff --git a/idg-lib/src/CUDA/Generic/Generic.h b/idg-lib/src/CUDA/Generic/Generic.h
index f4853f43c417da8c884a0bd94653c508ead34c48..c44627793711fcf7b0804dc022a893093b64a4dd 100644
--- a/idg-lib/src/CUDA/Generic/Generic.h
+++ b/idg-lib/src/CUDA/Generic/Generic.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUDA_GENERIC_H_
 #define IDG_CUDA_GENERIC_H_
 
diff --git a/idg-lib/src/CUDA/Generic/GenericC.h b/idg-lib/src/CUDA/Generic/GenericC.h
index dea6806e6e6a21213a49eac5816deff580937a7a..67d52ad8145a70e3db473bfcd6c7e355ae6ea2a8 100644
--- a/idg-lib/src/CUDA/Generic/GenericC.h
+++ b/idg-lib/src/CUDA/Generic/GenericC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::cuda::Generic ProxyType;
 
diff --git a/idg-lib/src/CUDA/Unified/CMakeLists.txt b/idg-lib/src/CUDA/Unified/CMakeLists.txt
index fd507aec22dd64f61e1d9796d03167aeb2c0bf83..9380f53d63d67a1e7d21352ca518f7452f295d2f 100644
--- a/idg-lib/src/CUDA/Unified/CMakeLists.txt
+++ b/idg-lib/src/CUDA/Unified/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda-unified)
 
 # Set headers
diff --git a/idg-lib/src/CUDA/Unified/Unified.cpp b/idg-lib/src/CUDA/Unified/Unified.cpp
index 0376ec3e8d8ddae74456ac6cd6a5945b1b1e60d4..aff08e07df3bd6a2dd037801a2d001f548d2e699 100644
--- a/idg-lib/src/CUDA/Unified/Unified.cpp
+++ b/idg-lib/src/CUDA/Unified/Unified.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <algorithm>  // max_element
 
 #include "Unified.h"
diff --git a/idg-lib/src/CUDA/Unified/Unified.h b/idg-lib/src/CUDA/Unified/Unified.h
index aa3ec490e535c7d553d352b39c74c6fe7c0448ef..41a4dff163daa84fd4362cc0514c92f558b52228 100644
--- a/idg-lib/src/CUDA/Unified/Unified.h
+++ b/idg-lib/src/CUDA/Unified/Unified.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUDA_UNIFIED_H_
 #define IDG_CUDA_UNIFIED_H_
 
diff --git a/idg-lib/src/CUDA/Unified/UnifiedC.h b/idg-lib/src/CUDA/Unified/UnifiedC.h
index 8ddb9b77619c389352d57a99ad260950e97b3594..0c471cc8ed43c1e02dd2cac65534ee425dbd6ec8 100644
--- a/idg-lib/src/CUDA/Unified/UnifiedC.h
+++ b/idg-lib/src/CUDA/Unified/UnifiedC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::cuda::Unified ProxyType;
 
diff --git a/idg-lib/src/CUDA/common/CMakeLists.txt b/idg-lib/src/CUDA/common/CMakeLists.txt
index 79f1d0ef1af7eacf6bfd8b681137890e3a4d86d7..b69cf5a5f6d44eb7a799d41539a66775fbfbbaed 100644
--- a/idg-lib/src/CUDA/common/CMakeLists.txt
+++ b/idg-lib/src/CUDA/common/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(cuda-common)
 
 # Set headers
diff --git a/idg-lib/src/CUDA/common/CU.cpp b/idg-lib/src/CUDA/common/CU.cpp
index 2607140f0c1d30f3e85058e20493575d60ee8e59..b1a7f7a783cec9c77b51d0d80205141ff836c9d2 100644
--- a/idg-lib/src/CUDA/common/CU.cpp
+++ b/idg-lib/src/CUDA/common/CU.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "CU.h"
 
 #include <sstream>
diff --git a/idg-lib/src/CUDA/common/CU.h b/idg-lib/src/CUDA/common/CU.h
index 7c5e4461999763c1423a834af3b71cc3b0d3f1b7..f84031a164f43d6f037832436735206211a96209 100644
--- a/idg-lib/src/CUDA/common/CU.h
+++ b/idg-lib/src/CUDA/common/CU.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef CU_WRAPPER_H
 #define CU_WRAPPER_H
 
diff --git a/idg-lib/src/CUDA/common/CUDA.cpp b/idg-lib/src/CUDA/common/CUDA.cpp
index 303c9776203d54756aab49c32d59e57ea2913337..ed4ebc7a2dc12895aa2e77887a06d871f66883c7 100644
--- a/idg-lib/src/CUDA/common/CUDA.cpp
+++ b/idg-lib/src/CUDA/common/CUDA.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <string>
 
 #include <cuda.h>
diff --git a/idg-lib/src/CUDA/common/CUDA.h b/idg-lib/src/CUDA/common/CUDA.h
index 745b005edc9767a271a5a63761cfeea23b3ac8bd..e8ade236f6bf50f4dbf3823b250561705a1a670c 100644
--- a/idg-lib/src/CUDA/common/CUDA.h
+++ b/idg-lib/src/CUDA/common/CUDA.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUDA_H_
 #define IDG_CUDA_H_
 
diff --git a/idg-lib/src/CUDA/common/CUFFT.cpp b/idg-lib/src/CUDA/common/CUFFT.cpp
index 83022e6342028d9a7bebf20aefab74115d0f0330..1e3c78ad3a3e2119b7677273cd188551e7702e02 100644
--- a/idg-lib/src/CUDA/common/CUFFT.cpp
+++ b/idg-lib/src/CUDA/common/CUFFT.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "CUFFT.h"
 
 #include <iostream>
diff --git a/idg-lib/src/CUDA/common/CUFFT.h b/idg-lib/src/CUDA/common/CUFFT.h
index e00b64212e1d89cfabe0e8f28458e0444fd493e1..c43b9abe703233efa7a694bc580bb700487d1f7b 100644
--- a/idg-lib/src/CUDA/common/CUFFT.h
+++ b/idg-lib/src/CUDA/common/CUFFT.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUFFT_H_
 #define IDG_CUFFT_H_
 
diff --git a/idg-lib/src/CUDA/common/InstanceCUDA.cpp b/idg-lib/src/CUDA/common/InstanceCUDA.cpp
index 472c368ccb48a3e416270d426e5695b140a2971b..747dea6ce5227a1db52ce2e9ab8a8a820c811128 100644
--- a/idg-lib/src/CUDA/common/InstanceCUDA.cpp
+++ b/idg-lib/src/CUDA/common/InstanceCUDA.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iomanip>  // setprecision
 
 #include "InstanceCUDA.h"
diff --git a/idg-lib/src/CUDA/common/InstanceCUDA.h b/idg-lib/src/CUDA/common/InstanceCUDA.h
index 3118f055d7d7fbb001417d065801d8ff14e71741..6a1910a0ed080e21bfd8e29af925f7f925072af3 100644
--- a/idg-lib/src/CUDA/common/InstanceCUDA.h
+++ b/idg-lib/src/CUDA/common/InstanceCUDA.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUDA_INSTANCE_H_
 #define IDG_CUDA_INSTANCE_H_
 
diff --git a/idg-lib/src/CUDA/common/PowerRecord.cpp b/idg-lib/src/CUDA/common/PowerRecord.cpp
index 075c34d59afc0e482c685d81a7f32dd1e84182ec..896e050c76e915a5ebfb9bb00ff9b9a4c81550df 100644
--- a/idg-lib/src/CUDA/common/PowerRecord.cpp
+++ b/idg-lib/src/CUDA/common/PowerRecord.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "PowerRecord.h"
 
 namespace idg {
diff --git a/idg-lib/src/CUDA/common/PowerRecord.h b/idg-lib/src/CUDA/common/PowerRecord.h
index 6ab6572c69bb86b75b2caf428c405d8c9448ad6b..478140065cd318eb017fd0f5ee10b30dd37e8d8e 100644
--- a/idg-lib/src/CUDA/common/PowerRecord.h
+++ b/idg-lib/src/CUDA/common/PowerRecord.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_POWER_RECORD_H_
 #define IDG_POWER_RECORD_H_
 
diff --git a/idg-lib/src/CUDA/common/kernels/KernelAdder.cu b/idg-lib/src/CUDA/common/kernels/KernelAdder.cu
index b4a6b1071ef4af7205eddf91b947ea36de1d77ea..0638aab7ac392501d84cd98c483c8e1a5bb87841 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelAdder.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelAdder.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cuComplex.h>
 
 #include "Types.h"
diff --git a/idg-lib/src/CUDA/common/kernels/KernelCalibrate.cu b/idg-lib/src/CUDA/common/kernels/KernelCalibrate.cu
index 8334cdb328009d9728d2d1c5bebd4a46f175c5c6..6a6f8078b5f776cd1a24f7030bb23eff72d7c1f4 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelCalibrate.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelCalibrate.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Types.h"
 #include "math.cu"
 
diff --git a/idg-lib/src/CUDA/common/kernels/KernelDegridder.cu b/idg-lib/src/CUDA/common/kernels/KernelDegridder.cu
index 6007c2789fdf64c73fb291b7a7f8225eae646bf1..9d0911e95648d6b818e076c3cfcd1e29d79aa9fa 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelDegridder.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelDegridder.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Types.h"
 #include "math.cu"
 
diff --git a/idg-lib/src/CUDA/common/kernels/KernelFFT.cu b/idg-lib/src/CUDA/common/kernels/KernelFFT.cu
index bd2bb13328c329d8d227a554b0dfdf50e9eed453..1317c7b539cfb9d64086bc15bdacfcb634f54799 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelFFT.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelFFT.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 
 //Run kernel_fft with global dim = {128*BatchSize}, local dim={128}
diff --git a/idg-lib/src/CUDA/common/kernels/KernelGridder.cu b/idg-lib/src/CUDA/common/kernels/KernelGridder.cu
index 68f56a358d58fabbd5ce2506d774014e8c8fa80b..7ce1ca5eebc70910fcc336f5dd697c6634495d8f 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelGridder.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelGridder.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "math.cu"
 #include "Types.h"
 
diff --git a/idg-lib/src/CUDA/common/kernels/KernelScaler.cu b/idg-lib/src/CUDA/common/kernels/KernelScaler.cu
index 43d636705a657ff1009176b2a631024686407d16..f390b356cdda0cfa04dfc10fa8222375fb2bb835 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelScaler.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelScaler.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cuComplex.h>
 
 #include "Types.h"
diff --git a/idg-lib/src/CUDA/common/kernels/KernelSplitter.cu b/idg-lib/src/CUDA/common/kernels/KernelSplitter.cu
index a935eed429a3a5ab08c96f8dceea5423f7eabd21..fea1efa6f99fc330c447799ef7d8860684dec7db 100644
--- a/idg-lib/src/CUDA/common/kernels/KernelSplitter.cu
+++ b/idg-lib/src/CUDA/common/kernels/KernelSplitter.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cuComplex.h>
 
 #include "Types.h"
diff --git a/idg-lib/src/CUDA/common/kernels/Types.h b/idg-lib/src/CUDA/common/kernels/Types.h
index 877268496ad004e4dbd302bde7c4dc3902a8a359..2f57dd57c7b190d4c5c9671a142fad523b73615f 100644
--- a/idg-lib/src/CUDA/common/kernels/Types.h
+++ b/idg-lib/src/CUDA/common/kernels/Types.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
     Structures
 */
diff --git a/idg-lib/src/CUDA/common/kernels/math.cu b/idg-lib/src/CUDA/common/kernels/math.cu
index d50aaad0b53b8c59b37df2cff5f5db32b00d2acb..9f3e0ca5aa9e7ca0b2dda469b997551fb43e3c61 100644
--- a/idg-lib/src/CUDA/common/kernels/math.cu
+++ b/idg-lib/src/CUDA/common/kernels/math.cu
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cuComplex.h>
 inline __device__ float2 conj(float2 a) {
     return cuConjf(a);
diff --git a/idg-lib/src/Hybrid/CMakeLists.txt b/idg-lib/src/Hybrid/CMakeLists.txt
index 29209c7b02d671388a1a98afb59d17aa876ccd16..2fb21529f4eb24cb80e651da2635827e921cc478 100644
--- a/idg-lib/src/Hybrid/CMakeLists.txt
+++ b/idg-lib/src/Hybrid/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid)
 
 # add subfolders
diff --git a/idg-lib/src/Hybrid/CUDA/CMakeLists.txt b/idg-lib/src/Hybrid/CUDA/CMakeLists.txt
index 92c78c7307cfb0ff319beb1db754943d08cbd90f..7f293bd69dcdd6e6ee3f50523a7c574fd5b5fbaf 100644
--- a/idg-lib/src/Hybrid/CUDA/CMakeLists.txt
+++ b/idg-lib/src/Hybrid/CUDA/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid-cuda)
 
 # add subfolders
diff --git a/idg-lib/src/Hybrid/CUDA/GenericOptimized/CMakeLists.txt b/idg-lib/src/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
index 3aa2db9c0ba5611e90d2064ecbaaae8621bdbeca..42234d349364a314884db2a4f61994c78ee3ac6e 100644
--- a/idg-lib/src/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
+++ b/idg-lib/src/Hybrid/CUDA/GenericOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid-cuda-generic-optimized)
 
 # Set headers
diff --git a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.cpp b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.cpp
index 98a671517b95cb2844c24bb5ea5121ca36436ed3..d7316c6af364295f48aa7fe160200ddbc5710550 100644
--- a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.cpp
+++ b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "GenericOptimized.h"
 
 #include <cuda.h>
diff --git a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.h b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.h
index a2d3d5affe7cb7919e6bcd83f64a500e709a47d7..4fe51003c719d0296934e1ef671b71895d76affb 100644
--- a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.h
+++ b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimized.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_HYBRID_GENERIC_OPTIMIZED_H_
 #define IDG_HYBRID_GENERIC_OPTIMIZED_H_
 
diff --git a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimizedC.h b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimizedC.h
index c08abfb3be81e2a085c1beb3116ea950b9216809..39b7e85578128c1c4fc4b216235a263bb4bff1dd 100644
--- a/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimizedC.h
+++ b/idg-lib/src/Hybrid/CUDA/GenericOptimized/GenericOptimizedC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::hybrid::GenericOptimized ProxyType;
 
diff --git a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
index a24ebb0237a64a02fe45c61a754e89dc43a86ea9..bb374dbca9b7be20c796f2a0d20b817c02d586fd 100644
--- a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
+++ b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(hybrid-cuda-unified-optimized)
 
 # Set headers
diff --git a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.cpp b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.cpp
index c74a1a11969f2b2a75663e305d7b3ddc7c14001a..d2984ec819d52505c67ad5adaafaac77ff019458 100644
--- a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.cpp
+++ b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "UnifiedOptimized.h"
 
 namespace idg {
diff --git a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.h b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.h
index 2f0c56822feeda991d4f49f924802f0177bb7093..f9218bcaedcda9c8ae138fc6d7074d78efff0c6e 100644
--- a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.h
+++ b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimized.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_HYBRID_UNIFIED_OPTIMIZED_H_
 #define IDG_HYBRID_UNIFIED_OPTIMIZED_H_
 
diff --git a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimizedC.h b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimizedC.h
index d6e2078c0ec595913fe4c94d3e2e8a789eff2d38..3214f40425c621c7bb2e191d86d35aff3f69c179 100644
--- a/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimizedC.h
+++ b/idg-lib/src/Hybrid/CUDA/UnifiedOptimized/UnifiedOptimizedC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::hybrid::UnifiedOptimized ProxyType;
 
diff --git a/idg-lib/src/OpenCL/CMakeLists.txt b/idg-lib/src/OpenCL/CMakeLists.txt
index 1fc816c0c25a729c96879adbab4f0ccc71f976fd..ae381141674189ced592560b7881e3f56bb5eaa5 100644
--- a/idg-lib/src/OpenCL/CMakeLists.txt
+++ b/idg-lib/src/OpenCL/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(opencl)
 
 # ignore warnings in OpenCL header file
diff --git a/idg-lib/src/OpenCL/Generic/CMakeLists.txt b/idg-lib/src/OpenCL/Generic/CMakeLists.txt
index b5737426a3a2343cb8718f2f05c0ecdf30580724..ae91e0463a5f9da71abe46a5d8c52e9c17ce27e8 100644
--- a/idg-lib/src/OpenCL/Generic/CMakeLists.txt
+++ b/idg-lib/src/OpenCL/Generic/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(opencl-generic)
 
 # Set headers
diff --git a/idg-lib/src/OpenCL/Generic/Generic.cpp b/idg-lib/src/OpenCL/Generic/Generic.cpp
index 218bfe4e873e3500f14b87e2be731bdd911f0c2d..1059a136958982f12a07ba1ed1e1359349bf7ace 100644
--- a/idg-lib/src/OpenCL/Generic/Generic.cpp
+++ b/idg-lib/src/OpenCL/Generic/Generic.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <clFFT.h>
 
 #include "Generic.h"
diff --git a/idg-lib/src/OpenCL/Generic/Generic.h b/idg-lib/src/OpenCL/Generic/Generic.h
index 622d26fac73db9aa4b6ee28408760d1e18c4bb36..2285aee4336d4069865a800a006d6f509560d6a4 100644
--- a/idg-lib/src/OpenCL/Generic/Generic.h
+++ b/idg-lib/src/OpenCL/Generic/Generic.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_OPENCL_GENERIC_H_
 #define IDG_OPENCL_GENERIC_H_
 
diff --git a/idg-lib/src/OpenCL/Generic/GenericC.h b/idg-lib/src/OpenCL/Generic/GenericC.h
index 3fbebe58fcbe3fcce1219a9aa762471c3ce10abd..fed9b147eafcf8bbdef6a4c6ee3e477cbabb96aa 100644
--- a/idg-lib/src/OpenCL/Generic/GenericC.h
+++ b/idg-lib/src/OpenCL/Generic/GenericC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 typedef idg::proxy::opencl::Generic ProxyType;
 
diff --git a/idg-lib/src/OpenCL/common/CMakeLists.txt b/idg-lib/src/OpenCL/common/CMakeLists.txt
index f1e1e1c56ffa6a456bde1ab3f90084afbe0779fb..6d35c7aa433da820b02c20cdade6eb03db9fd1fc 100644
--- a/idg-lib/src/OpenCL/common/CMakeLists.txt
+++ b/idg-lib/src/OpenCL/common/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(opencl-common)
 
 # sources and header files
diff --git a/idg-lib/src/OpenCL/common/InstanceOpenCL.cpp b/idg-lib/src/OpenCL/common/InstanceOpenCL.cpp
index 3390be70f884179927a55a1ebbac4f3c2ebc8953..8e4573a442d419b75905e53975f230912dc072c0 100644
--- a/idg-lib/src/OpenCL/common/InstanceOpenCL.cpp
+++ b/idg-lib/src/OpenCL/common/InstanceOpenCL.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <clFFT.h>
 
 #include "InstanceOpenCL.h"
diff --git a/idg-lib/src/OpenCL/common/InstanceOpenCL.h b/idg-lib/src/OpenCL/common/InstanceOpenCL.h
index 4f0a1f1f4fbc9a724c66cb586212033e3e8734b4..c9f5bd1c25c9d5d8c0485ae38bcedceb221cfa92 100644
--- a/idg-lib/src/OpenCL/common/InstanceOpenCL.h
+++ b/idg-lib/src/OpenCL/common/InstanceOpenCL.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_OPENCL_INSTANCE_H_
 #define IDG_OPENCL_INSTANCE_H_
 
diff --git a/idg-lib/src/OpenCL/common/OpenCL.cpp b/idg-lib/src/OpenCL/common/OpenCL.cpp
index a6b63e82f6cdc953e9fc5980a989122c0aabda1b..d04363121e463172555235f9bfb3e9e3ff62d01d 100644
--- a/idg-lib/src/OpenCL/common/OpenCL.cpp
+++ b/idg-lib/src/OpenCL/common/OpenCL.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <clFFT.h>
 
 #include "OpenCL.h"
diff --git a/idg-lib/src/OpenCL/common/OpenCL.h b/idg-lib/src/OpenCL/common/OpenCL.h
index 6b9d1905ce744ad23d0f155cf0d1221fdb56415d..83173305950c04f0c859b257c6e062c922f0535f 100644
--- a/idg-lib/src/OpenCL/common/OpenCL.h
+++ b/idg-lib/src/OpenCL/common/OpenCL.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_OPENCLNEW_H_
 #define IDG_OPENCLNEW_H_
 
diff --git a/idg-lib/src/OpenCL/common/PowerRecord.cpp b/idg-lib/src/OpenCL/common/PowerRecord.cpp
index 487b59b748f32f312acc9a121a42c7644b03d78d..f702778075c24548bdde50c949bfdaa9e97759a3 100644
--- a/idg-lib/src/OpenCL/common/PowerRecord.cpp
+++ b/idg-lib/src/OpenCL/common/PowerRecord.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "PowerRecord.h"
 
 #include <csignal>
diff --git a/idg-lib/src/OpenCL/common/PowerRecord.h b/idg-lib/src/OpenCL/common/PowerRecord.h
index ab5a30c5c9d8ae7518fa6b038d241555c4a178a4..958a3a3df41593d1d0163916748db6589002bb6e 100644
--- a/idg-lib/src/OpenCL/common/PowerRecord.h
+++ b/idg-lib/src/OpenCL/common/PowerRecord.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <cstdio>
 
 #include <CL/cl.hpp>
diff --git a/idg-lib/src/OpenCL/common/Util.cpp b/idg-lib/src/OpenCL/common/Util.cpp
index 0e5c78a69b7fed808b352740406961359d76376e..3c213c9df97d2e1692f82b7de681b615c84bffe1 100644
--- a/idg-lib/src/OpenCL/common/Util.cpp
+++ b/idg-lib/src/OpenCL/common/Util.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <array>
 
 #include "Util.h"
diff --git a/idg-lib/src/OpenCL/common/Util.h b/idg-lib/src/OpenCL/common/Util.h
index d5103a0a2c853606a8ab4e5c283a56ac7439ccef..035d4a3e0cc5d624e4e763774293a638496b2716 100644
--- a/idg-lib/src/OpenCL/common/Util.h
+++ b/idg-lib/src/OpenCL/common/Util.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_OPENCL_COMMON_H_
 #define IDG_OPENCL_COMMON_H_
 
diff --git a/idg-lib/src/OpenCL/common/kernels/KernelAdder.cl b/idg-lib/src/OpenCL/common/kernels/KernelAdder.cl
index 7ab2a57fe847bf5c580cfea1410ccc32d5e5dd37..03c008a659caefa54d05e3ea05efa047163c326a 100644
--- a/idg-lib/src/OpenCL/common/kernels/KernelAdder.cl
+++ b/idg-lib/src/OpenCL/common/kernels/KernelAdder.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
     Kernel
 */
diff --git a/idg-lib/src/OpenCL/common/kernels/KernelDegridder.cl b/idg-lib/src/OpenCL/common/kernels/KernelDegridder.cl
index d655c52700dd5e8da9f01d95a1896893ebe0e6ea..98a605fc842ca04393c1b21df69c821552482fa2 100644
--- a/idg-lib/src/OpenCL/common/kernels/KernelDegridder.cl
+++ b/idg-lib/src/OpenCL/common/kernels/KernelDegridder.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #define ALIGN(N,A) (((N)+(A)-1)/(A)*(A))
 
 #define MAX_NR_CHANNELS 8
diff --git a/idg-lib/src/OpenCL/common/kernels/KernelGridder.cl b/idg-lib/src/OpenCL/common/kernels/KernelGridder.cl
index a48238f4be9de0ec060e566c12f76d9ca333dee3..e8d38f50cc600423ee48d284001cd43b919d4271 100644
--- a/idg-lib/src/OpenCL/common/kernels/KernelGridder.cl
+++ b/idg-lib/src/OpenCL/common/kernels/KernelGridder.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #define ALIGN(N,A) (((N)+(A)-1)/(A)*(A))
 
 #define UNROLL_PIXELS   4
diff --git a/idg-lib/src/OpenCL/common/kernels/KernelScaler.cl b/idg-lib/src/OpenCL/common/kernels/KernelScaler.cl
index 6f0d82d99e3399a0abd203aeda4c313a9fe23521..d5f0e5578694833253575b0c8f2fedc83132e2a6 100644
--- a/idg-lib/src/OpenCL/common/kernels/KernelScaler.cl
+++ b/idg-lib/src/OpenCL/common/kernels/KernelScaler.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
     Kernel
 */
diff --git a/idg-lib/src/OpenCL/common/kernels/KernelSplitter.cl b/idg-lib/src/OpenCL/common/kernels/KernelSplitter.cl
index 888b92f211bb921f9a9348ca7c3d185a0b2f7b32..ff48aa7efa2375a0feaab923fb61961d048e6539 100644
--- a/idg-lib/src/OpenCL/common/kernels/KernelSplitter.cl
+++ b/idg-lib/src/OpenCL/common/kernels/KernelSplitter.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
     Kernel
 */
diff --git a/idg-lib/src/OpenCL/common/kernels/math.cl b/idg-lib/src/OpenCL/common/kernels/math.cl
index 0d9eb877c5fd8d8b965a9ccbe1b2030cf9a8ed78..49a77e642a63c01ca4e50e1a7a03d252697e76a5 100644
--- a/idg-lib/src/OpenCL/common/kernels/math.cl
+++ b/idg-lib/src/OpenCL/common/kernels/math.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 typedef float2 fcomplex;
 typedef float4 fcomplex2;
 typedef float8 fcomplex4;
diff --git a/idg-lib/src/OpenCL/common/kernels/types.cl b/idg-lib/src/OpenCL/common/kernels/types.cl
index 3b3654a5fa79aec5dc882e6f061f7555323f9abe..e246a97e65ab7fb06e3cd3df15cd0fa32075bd8f 100644
--- a/idg-lib/src/OpenCL/common/kernels/types.cl
+++ b/idg-lib/src/OpenCL/common/kernels/types.cl
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
 	Structures
 */
diff --git a/idg-lib/src/common/ArrayTypes.h b/idg-lib/src/common/ArrayTypes.h
index 3d7390b493514633b55a1de7f48cbda51bcc045b..1eb72502f21a6493245deec704d647d71154e10f 100644
--- a/idg-lib/src/common/ArrayTypes.h
+++ b/idg-lib/src/common/ArrayTypes.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_ARRAYTYPES_H
 #define IDG_ARRAYTYPES_H
 
diff --git a/idg-lib/src/common/CMakeLists.txt b/idg-lib/src/common/CMakeLists.txt
index b144d0b3c37833b9f6b1ce3de5ab0dba80dccfd6..1f12078b88d005c3127eb876001e1d5bba8e4ceb 100644
--- a/idg-lib/src/common/CMakeLists.txt
+++ b/idg-lib/src/common/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(common)
 
 # sources and header files
diff --git a/idg-lib/src/common/Exception.h b/idg-lib/src/common/Exception.h
index c23607388bd2ccaaac7b6ee965f7a1ade5772539..4fd72af58403d42f3a6b1b530f10d7380217400f 100644
--- a/idg-lib/src/common/Exception.h
+++ b/idg-lib/src/common/Exception.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_EXCEPTION_H_
 #define IDG_EXCEPTION_H_
 
diff --git a/idg-lib/src/common/Index.h b/idg-lib/src/common/Index.h
index b3913cbd588540c10cf696956db89a8a5c8e5ad6..37dd43246dea8a605bd020fa35136f9a8e539707 100644
--- a/idg-lib/src/common/Index.h
+++ b/idg-lib/src/common/Index.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_INDEX_H_
 #define IDG_INDEX_H_
 
diff --git a/idg-lib/src/common/KernelTypes.h b/idg-lib/src/common/KernelTypes.h
index a67d53e1873fbe0c74d3ec47dc41c2137286e0f3..dfedd356010005057a0af49a17c627c7f4c845b0 100644
--- a/idg-lib/src/common/KernelTypes.h
+++ b/idg-lib/src/common/KernelTypes.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #define NR_CORRELATIONS 4
 
 typedef struct {
diff --git a/idg-lib/src/common/KernelsInstance.cpp b/idg-lib/src/common/KernelsInstance.cpp
index 6506de5b20f83aa812c385b3ad6e6be14824dc6b..3d3c9a73777785bfc526a7382fbdd76bfd3a8349 100644
--- a/idg-lib/src/common/KernelsInstance.cpp
+++ b/idg-lib/src/common/KernelsInstance.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "KernelsInstance.h"
 
 #include <csignal>
diff --git a/idg-lib/src/common/KernelsInstance.h b/idg-lib/src/common/KernelsInstance.h
index ee0cf7e4cda322045ab749a5bbb78aa8e8623682..716dfe7037348267689931da9d8155bfe5bb6a75 100644
--- a/idg-lib/src/common/KernelsInstance.h
+++ b/idg-lib/src/common/KernelsInstance.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_KERNELS_H_
 #define IDG_KERNELS_H_
 
diff --git a/idg-lib/src/common/Math.h b/idg-lib/src/common/Math.h
index bd85cab1368999132f20e78406b63ed4267b07f7..506ebbf06da27f8715dfb6595c7acaa4d7039ec5 100644
--- a/idg-lib/src/common/Math.h
+++ b/idg-lib/src/common/Math.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef FUNCTION_ATTRIBUTES
 #define FUNCTION_ATTRIBUTES
 #endif
diff --git a/idg-lib/src/common/Plan.cpp b/idg-lib/src/common/Plan.cpp
index a3018c0a4786c3aff31020ffb92a521ecfde368d..378711a9a642bd3a10985e4c0db44f759828d3cf 100644
--- a/idg-lib/src/common/Plan.cpp
+++ b/idg-lib/src/common/Plan.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <cassert>    // assert
 #include <algorithm>  // max_element
diff --git a/idg-lib/src/common/Plan.h b/idg-lib/src/common/Plan.h
index 981d6f29e89d5a6fe281a57462cff9e5632a8a78..724d37895c812787d630d4a4b2a615012f5b3e19 100644
--- a/idg-lib/src/common/Plan.h
+++ b/idg-lib/src/common/Plan.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_PLAN_H_
 #define IDG_PLAN_H_
 
diff --git a/idg-lib/src/common/PlanC.h b/idg-lib/src/common/PlanC.h
index 50c6b2fb5314d57bde30734a8fa60e2d4fef4236..f8d9c09e6d0ddda24a1243b8a6b8a72c19dbbe3a 100644
--- a/idg-lib/src/common/PlanC.h
+++ b/idg-lib/src/common/PlanC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <limits>
 
 extern "C" {
diff --git a/idg-lib/src/common/PowerSensor.cpp b/idg-lib/src/common/PowerSensor.cpp
index 8c63f550fc61f40d13621419764fab1040affd0b..37150d76f67b5bd1d4389928e4a2554d3b1fa559 100644
--- a/idg-lib/src/common/PowerSensor.cpp
+++ b/idg-lib/src/common/PowerSensor.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <vector>
 #include <iostream>
 
diff --git a/idg-lib/src/common/PowerSensor.h b/idg-lib/src/common/PowerSensor.h
index 4a8e511510105da2ab004f8f276f8f0572c25406..370bf43e0b838401c19d43b4958d30c0c6111ac5 100644
--- a/idg-lib/src/common/PowerSensor.h
+++ b/idg-lib/src/common/PowerSensor.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_POWER_SENSOR_H_
 #define IDG_POWER_SENSOR_H_
 
diff --git a/idg-lib/src/common/Proxy.cpp b/idg-lib/src/common/Proxy.cpp
index 12c4cdf15a952f1ed1902c179facbc252b884c7f..089336f11a1f78c3e320cf5d1720118fa0dd6e20 100644
--- a/idg-lib/src/common/Proxy.cpp
+++ b/idg-lib/src/common/Proxy.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <ThrowAssert.hpp>  // assert
 #include <cmath>            // M_PI
 #include <climits>
diff --git a/idg-lib/src/common/Proxy.h b/idg-lib/src/common/Proxy.h
index 532abacfa323ecad151b8cd6eede632a85aa322e..fdef80b7ed3861468ba87170886ef0689027bee3 100644
--- a/idg-lib/src/common/Proxy.h
+++ b/idg-lib/src/common/Proxy.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_PROXY2_H_
 #define IDG_PROXY2_H_
 
diff --git a/idg-lib/src/common/ProxyC.cpp b/idg-lib/src/common/ProxyC.cpp
index 5f87983e89a4eeb9e1b0063b8c3db2c96b500cde..49353ddd772842b6e6a417e6ae0a13757b271314 100644
--- a/idg-lib/src/common/ProxyC.cpp
+++ b/idg-lib/src/common/ProxyC.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Proxy.h"
 #include "ProxyC.h"
 
diff --git a/idg-lib/src/common/ProxyC.h b/idg-lib/src/common/ProxyC.h
index f02a82acfa735d15e9ab59d4efbf3fc6f93f47f8..0e7424adade333dfa3cf256d914adf0504f72acf 100644
--- a/idg-lib/src/common/ProxyC.h
+++ b/idg-lib/src/common/ProxyC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 
 class Proxy {
diff --git a/idg-lib/src/common/ProxyInfo.cpp b/idg-lib/src/common/ProxyInfo.cpp
index 9a5efee16d039f141cd6545c998fcb59b4f5562c..0a815e89888a78f186bb6a8e9703173a9431b7e6 100644
--- a/idg-lib/src/common/ProxyInfo.cpp
+++ b/idg-lib/src/common/ProxyInfo.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <vector>
 #include <string>
diff --git a/idg-lib/src/common/ProxyInfo.h b/idg-lib/src/common/ProxyInfo.h
index 52a598f67495798f5ba35e9bf5838fc18e2dc6d6..2f44c91b177ebcb7af0bc8af12ba684bf7ffc10a 100644
--- a/idg-lib/src/common/ProxyInfo.h
+++ b/idg-lib/src/common/ProxyInfo.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /**
  *  \class ProxyInfo
  *
diff --git a/idg-lib/src/common/Report.cpp b/idg-lib/src/common/Report.cpp
index d6164fb8bb12023bd406afe6907ed5ca3b1e9c5b..76133d177e693632f6fd798a9c35d52bd1e95cdf 100644
--- a/idg-lib/src/common/Report.cpp
+++ b/idg-lib/src/common/Report.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Report.h"
 
 #include "idg-config.h"
diff --git a/idg-lib/src/common/Report.h b/idg-lib/src/common/Report.h
index 8124b3b030c84da9a7449f9481efa08c79b906d8..5553526fade7aaad7568728f9a4fbdfca2993f72 100644
--- a/idg-lib/src/common/Report.h
+++ b/idg-lib/src/common/Report.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_REPORT_H_
 #define IDG_REPORT_H_
 
diff --git a/idg-lib/src/common/RuntimeWrapper.cpp b/idg-lib/src/common/RuntimeWrapper.cpp
index c1250de95f40dc8febb13b8620d0cbef65707c84..31f1eff5fafb439b5b5f52fa11565fc5640e503e 100644
--- a/idg-lib/src/common/RuntimeWrapper.cpp
+++ b/idg-lib/src/common/RuntimeWrapper.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <sstream>
 
diff --git a/idg-lib/src/common/RuntimeWrapper.h b/idg-lib/src/common/RuntimeWrapper.h
index 60975444e27a007801916986991a0a260caacb80..0736717f563894a7d9bfc06153ac523ea4d4b20b 100644
--- a/idg-lib/src/common/RuntimeWrapper.h
+++ b/idg-lib/src/common/RuntimeWrapper.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_RUNTIME_WRAPPER_H
 #define IDG_RUNTIME_WRAPPER_H
 
diff --git a/idg-lib/src/common/Types.cpp b/idg-lib/src/common/Types.cpp
index 79e9bef466f0c37a86706c883ca87e0ebc1e8f9b..1b15a26d224d63bea1101029bc1c0c6106caed4c 100644
--- a/idg-lib/src/common/Types.cpp
+++ b/idg-lib/src/common/Types.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "Types.h"
 
 using namespace std;
diff --git a/idg-lib/src/common/Types.h b/idg-lib/src/common/Types.h
index aec7340faed932cf4c8b9a84003c9a21291304ae..0fd66e2c8703acc8c12913f3c689c5d0bb6d509e 100644
--- a/idg-lib/src/common/Types.h
+++ b/idg-lib/src/common/Types.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_TYPES_H_
 #define IDG_TYPES_H_
 
diff --git a/idg-lib/src/common/WTiles.cpp b/idg-lib/src/common/WTiles.cpp
index 373caf5c9bcb7293e9c61350e39f1691ab7d88ce..20806571bdfa4e8c2085ceb9aa7f6074f9fdeb33 100644
--- a/idg-lib/src/common/WTiles.cpp
+++ b/idg-lib/src/common/WTiles.cpp
@@ -1,3 +1,5 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 #include "WTiles.h"
 
diff --git a/idg-lib/src/common/WTiles.h b/idg-lib/src/common/WTiles.h
index 90d26346c3dfa2d03588349625858509a2a558fe..9c4e4761eea7dcd9f262ac32187130541ece6128 100644
--- a/idg-lib/src/common/WTiles.h
+++ b/idg-lib/src/common/WTiles.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_WTILES_H_
 #define IDG_WTILES_H_
 
diff --git a/idg-lib/src/common/auxiliary.cpp b/idg-lib/src/common/auxiliary.cpp
index bd38d14f40ea8beb43b2487d59d60a89aacaf78d..d13229cb29261e24a9461e8df5ce2f47652f8707 100644
--- a/idg-lib/src/common/auxiliary.cpp
+++ b/idg-lib/src/common/auxiliary.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <iostream>
 #include <iomanip>
 #include <cstdint>
diff --git a/idg-lib/src/common/auxiliary.h b/idg-lib/src/common/auxiliary.h
index 1f1fc491eeb99ee5a0b7f3d435791b0bc35a1665..0c759fce1e63c004722714023fa1b2d2e8fbdce7 100644
--- a/idg-lib/src/common/auxiliary.h
+++ b/idg-lib/src/common/auxiliary.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_AUX_H_
 #define IDG_AUX_H_
 
diff --git a/idg-lib/src/common/memory.h b/idg-lib/src/common/memory.h
index a4ad90d0ffc998f6045859c9415015402ec4f5e2..2dca04590fbcb555299a5a077372b19a7bb9619c 100644
--- a/idg-lib/src/common/memory.h
+++ b/idg-lib/src/common/memory.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <string>
 #include <sstream>
 #include <iostream>
diff --git a/idg-lib/src/external/CMakeLists.txt b/idg-lib/src/external/CMakeLists.txt
index 904aff03c5521bcc36f662f0723b7c03cf36f20f..c9a3e6c49454bb4268116d84f4f11ef27910a8dd 100644
--- a/idg-lib/src/external/CMakeLists.txt
+++ b/idg-lib/src/external/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(external)
 
 # sources and header files
diff --git a/idg-lib/src/fft/CMakeLists.txt b/idg-lib/src/fft/CMakeLists.txt
index c58799b04459f965f63daea9c943c22c75c95249..d6224f0f0962774a247e36dbddd24cd61dee2aa6 100644
--- a/idg-lib/src/fft/CMakeLists.txt
+++ b/idg-lib/src/fft/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(fft)
 
 # external header files
diff --git a/idg-lib/src/fft/FFT.cpp b/idg-lib/src/fft/FFT.cpp
index 39354bbc5cffd600b5e12af2c63a52518ed68cfb..c877e1406d5e5aaf6c8fcef43a7d7d7f89adbe13 100644
--- a/idg-lib/src/fft/FFT.cpp
+++ b/idg-lib/src/fft/FFT.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "FFT.h"
 
 #include <fftw3.h>
diff --git a/idg-lib/src/fft/FFT.h b/idg-lib/src/fft/FFT.h
index 77d4b73c63b265afb5483e895d3bf63bedb4d3e5..aeeda57612babc6cd6d4ee13ce05e131fcfc7ca3 100644
--- a/idg-lib/src/fft/FFT.h
+++ b/idg-lib/src/fft/FFT.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 /*
  *  Wrapper routines to FFTW library
  */
diff --git a/idg-lib/src/fft/FFTC.h b/idg-lib/src/fft/FFTC.h
index de83c1d344d58c7bde293e273d7269f4840c2b6f..76c27e8968d1873366a67e377a742710cb4b0165 100644
--- a/idg-lib/src/fft/FFTC.h
+++ b/idg-lib/src/fft/FFTC.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "FFT.h"
 
 using namespace std;
diff --git a/idg-lib/src/idg-common.h b/idg-lib/src/idg-common.h
index bf5c9cfa17f45ca4b483f5ad22c4abb6f320b937..bf36eb820042a01fdd8d2b9404d585a3ce10c9c0 100644
--- a/idg-lib/src/idg-common.h
+++ b/idg-lib/src/idg-common.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_COMMON_HEADER
 #define IDG_COMMON_HEADER
 
diff --git a/idg-lib/src/idg-cpu.h b/idg-lib/src/idg-cpu.h
index 95c606f66268afd705cd810714c5fdb786370c93..f8c3d86c56deb20c02ef33dd8481eb99fe87c7bc 100644
--- a/idg-lib/src/idg-cpu.h
+++ b/idg-lib/src/idg-cpu.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CPU_HEADER
 #define IDG_CPU_HEADER
 
diff --git a/idg-lib/src/idg-cuda.h b/idg-lib/src/idg-cuda.h
index 3b2bfa4c0c4dacec34d1b36ff03beb1900a0a378..696e0138d00be8929be367c1864c87eed09deb81 100644
--- a/idg-lib/src/idg-cuda.h
+++ b/idg-lib/src/idg-cuda.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_CUDA_HEADER
 #define IDG_CUDA_HEADER
 
diff --git a/idg-lib/src/idg-fft.h b/idg-lib/src/idg-fft.h
index 22ba42e8e88af90934bd12a7f7d54655a77ef224..306cf78e61b3059f38c44d7eb53ff1a5a3e3e547 100644
--- a/idg-lib/src/idg-fft.h
+++ b/idg-lib/src/idg-fft.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_FFT_HEADER
 #define IDG_FFT_HEADER
 
diff --git a/idg-lib/src/idg-hybrid-cuda.h b/idg-lib/src/idg-hybrid-cuda.h
index 3cc767f79bf9226d030edf429964c9e803a775e9..9ae5858856bda2339768a84f04eee66a2c488756 100644
--- a/idg-lib/src/idg-hybrid-cuda.h
+++ b/idg-lib/src/idg-hybrid-cuda.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_HYBRID_CUDA_HEADER
 #define IDG_HYBRID_CUDA_HEADER
 
diff --git a/idg-lib/src/idg-hybrid-opencl.h b/idg-lib/src/idg-hybrid-opencl.h
index f1fe257f969ab6446ea7d591d7a89b7a8e983b3c..0471c0a2457581714192ffe34e20f9e459f6744c 100644
--- a/idg-lib/src/idg-hybrid-opencl.h
+++ b/idg-lib/src/idg-hybrid-opencl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_HYBRID_OPENCL_HEADER
 #define IDG_HYBRID_OPENCL_HEADER
 
diff --git a/idg-lib/src/idg-opencl.h b/idg-lib/src/idg-opencl.h
index 48afad7a4729e41cc33c93900527067c16eb3472..124f330ba10277d430b15d7ab5cb1581df65a8fe 100644
--- a/idg-lib/src/idg-opencl.h
+++ b/idg-lib/src/idg-opencl.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_OPENCL_HEADER
 #define IDG_OPENCL_HEADER
 
diff --git a/idg-lib/src/idg.cpp b/idg-lib/src/idg.cpp
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6f524f6769f0023e02c80d1c78c2c5bba16e883e 100644
--- a/idg-lib/src/idg.cpp
+++ b/idg-lib/src/idg.cpp
@@ -0,0 +1,2 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/idg-lib/src/idg.h b/idg-lib/src/idg.h
index 0f49c09800ab69734ac2a73ce5b3889e38989f8b..651afacb5517c6c54cfbdbaeb8c83f4c05731df7 100644
--- a/idg-lib/src/idg.h
+++ b/idg-lib/src/idg.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_HEADER_
 #define IDG_HEADER_
 
diff --git a/idg-lib/src/python/CMakeLists.txt b/idg-lib/src/python/CMakeLists.txt
index f0c2ffbb6243846664a3c2c105961fcd2eae0ef9..58bfc0a98e37e9e77fb601f258287633f4d212e0 100644
--- a/idg-lib/src/python/CMakeLists.txt
+++ b/idg-lib/src/python/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Install Python modules.
 install(FILES
         __init__.py
diff --git a/idg-lib/src/python/CPU.py b/idg-lib/src/python/CPU.py
index ee896ba334c76b5e05d15a5118f3adfeb640e446..124d6641f4ac392e6cd7bf8731df6dc9181bac14 100644
--- a/idg-lib/src/python/CPU.py
+++ b/idg-lib/src/python/CPU.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy.ctypeslib
@@ -39,4 +42,3 @@ class Optimized(CPU):
                 ctypes.c_uint(subgrid_size))
         except AttributeError:
             print("The chosen proxy was not built into the library")
-
diff --git a/idg-lib/src/python/CUDA.py b/idg-lib/src/python/CUDA.py
index 7c696622208365046aa0e056b335e8fc038624ce..9ba73c71d8041c013dc24c9c3d108aefb1ab12b2 100644
--- a/idg-lib/src/python/CUDA.py
+++ b/idg-lib/src/python/CUDA.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy.ctypeslib
diff --git a/idg-lib/src/python/HybridCUDA.py b/idg-lib/src/python/HybridCUDA.py
index c9f58157b758a422528da825b012f7006e7645a0..7f931cfb8605a3999eb2f433c7ed8bc33048dca7 100644
--- a/idg-lib/src/python/HybridCUDA.py
+++ b/idg-lib/src/python/HybridCUDA.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy.ctypeslib
diff --git a/idg-lib/src/python/OpenCL.py b/idg-lib/src/python/OpenCL.py
index aa7df27ce05cdd5cc0f043248ea1ff7f60cb519e..2d1e248d666079402d006cce5f7dfec1861ddffc 100644
--- a/idg-lib/src/python/OpenCL.py
+++ b/idg-lib/src/python/OpenCL.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy.ctypeslib
diff --git a/idg-lib/src/python/Plan.py b/idg-lib/src/python/Plan.py
index 0bf1be1e1c8e7a9b6e9aba950e39f282b8156915..2246179633d356cdbdd5abfa01610d1d91e0ca6b 100644
--- a/idg-lib/src/python/Plan.py
+++ b/idg-lib/src/python/Plan.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy
diff --git a/idg-lib/src/python/Proxy.py b/idg-lib/src/python/Proxy.py
index 6e5536b94e709002ccc7e7772fcb0be6aef9fb5f..2135705d0d764368919efc3937dbfb77a5c61800 100644
--- a/idg-lib/src/python/Proxy.py
+++ b/idg-lib/src/python/Proxy.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy as np
diff --git a/idg-lib/src/python/__init__.py b/idg-lib/src/python/__init__.py
index 0c0a36130ec804356e2df2c15e2f88e85113cf7e..b30faf49dcecf8cfef77675e69829bd7ab9d955d 100644
--- a/idg-lib/src/python/__init__.py
+++ b/idg-lib/src/python/__init__.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy
@@ -36,5 +39,3 @@ try:
     from idg.Plan import *
 except OSError as e:
     handle_error("utils", e)
-
-
diff --git a/idg-lib/src/python/fft.py b/idg-lib/src/python/fft.py
index 093514a0b47b2a0dd0221b5d6b64d492c922d418..b297e957a211a71861cc979b1a962d9f8a21a468 100644
--- a/idg-lib/src/python/fft.py
+++ b/idg-lib/src/python/fft.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import ctypes
 import numpy
diff --git a/idg-lib/src/python/idgtypes.py b/idg-lib/src/python/idgtypes.py
index aead0c471d6c324941bec8fe41bbc03aff902681..3c6ec2568eb95f3d43b4ceb9e913dd7416e28aad 100644
--- a/idg-lib/src/python/idgtypes.py
+++ b/idg-lib/src/python/idgtypes.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import numpy
 
 visibilitiestype = numpy.complex64
diff --git a/idg-lib/src/python/proxies/CMakeLists.txt b/idg-lib/src/python/proxies/CMakeLists.txt
index 52577095ccba090a570e659244206dbfefd88836..6757b7f5325715536f67fd945239963162939fb9 100644
--- a/idg-lib/src/python/proxies/CMakeLists.txt
+++ b/idg-lib/src/python/proxies/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 install(
     FILES
     Python.py
diff --git a/idg-lib/src/python/proxies/Python.py b/idg-lib/src/python/proxies/Python.py
index f76b3a3933d25a8e8a8ee2aaf97f25184d4b25ed..cb5edd05c2f191c78b12c1c355f9e53a922ae301 100644
--- a/idg-lib/src/python/proxies/Python.py
+++ b/idg-lib/src/python/proxies/Python.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import numpy as np
 
 import idg
diff --git a/idg-lib/src/python/proxies/PythonReference.py b/idg-lib/src/python/proxies/PythonReference.py
index f0d195343426e6d242d40e5ec7b6dba3791c9aaf..82c7aa2efcd6b5fca868c9bc533188af7d63d7a4 100644
--- a/idg-lib/src/python/proxies/PythonReference.py
+++ b/idg-lib/src/python/proxies/PythonReference.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 from Python import *
 
 class Reference(Proxy):
diff --git a/idg-lib/tests/CMakeLists.txt b/idg-lib/tests/CMakeLists.txt
index b239160d5ffcfb8219ad24784674d960f4d4dd37..1ef1fe2bf9d5bf42dec52f0de4f3309cee253ab8 100644
--- a/idg-lib/tests/CMakeLists.txt
+++ b/idg-lib/tests/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(test-idg-lib.x)
 
 set (${PROJECT_NAME}_sources
diff --git a/idg-lib/tests/runtests.cpp b/idg-lib/tests/runtests.cpp
index 48c2c559e52665ade7506c62a668d59e1f7a3a1c..3d01ce3f4b34b37219a4fb811deadc6e5cccb4b1 100644
--- a/idg-lib/tests/runtests.cpp
+++ b/idg-lib/tests/runtests.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #define BOOST_TEST_MODULE IDG_LIB
 
 #include <boost/test/unit_test.hpp>
\ No newline at end of file
diff --git a/idg-lib/tests/tComputeN.cpp b/idg-lib/tests/tComputeN.cpp
index d70d778267be02bacbb920d5e3ebb191657ad57d..264eaaa3a76eab064ff2ae010e9b6d7c937318b5 100644
--- a/idg-lib/tests/tComputeN.cpp
+++ b/idg-lib/tests/tComputeN.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <boost/test/unit_test.hpp>
 
 #include "common/Types.h"
diff --git a/idg-util/CMakeLists.txt b/idg-util/CMakeLists.txt
index c7f2e99e194339e0dff9e46e4e061d580d6e3e52..355e39742607abab0e09037bb2db65f0615b3b2b 100644
--- a/idg-util/CMakeLists.txt
+++ b/idg-util/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 cmake_minimum_required(VERSION 2.8.0)
 
 # Installation
diff --git a/idg-util/cmake/config/idg-util-config.cmake.in b/idg-util/cmake/config/idg-util-config.cmake.in
index 9d5d81dcacfdee43a54df87fbb0f540e88a1344d..b23965d66b57039c57afde5a17168819d0dfdc43 100644
--- a/idg-util/cmake/config/idg-util-config.cmake.in
+++ b/idg-util/cmake/config/idg-util-config.cmake.in
@@ -1,5 +1,8 @@
 #  Config file for the idg-util library
 
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Compute paths
 get_filename_component(IDG_UTIL_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
 get_filename_component(IDG_UTIL_CMAKE_DIR_ABS "${IDG_UTIL_CMAKE_DIR}" ABSOLUTE)
diff --git a/idg-util/data/CMakeLists.txt b/idg-util/data/CMakeLists.txt
index bf6fa2b129c76a7c1dce8e060f7369576da0d3fb..f1a161ba70b099ce231750f273d8706dfa65d608 100644
--- a/idg-util/data/CMakeLists.txt
+++ b/idg-util/data/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # data files
 set (${PROJECT_NAME}_data
     SKA1_low.txt
diff --git a/idg-util/src/CMakeLists.txt b/idg-util/src/CMakeLists.txt
index 613398e8699e1f42d347df443d15fb7139529a4f..ee629b5b2240eccc8ff6d745a4098ead79b98890 100644
--- a/idg-util/src/CMakeLists.txt
+++ b/idg-util/src/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 add_subdirectory(external)
 include_directories(external)
 
diff --git a/idg-util/src/external/CMakeLists.txt b/idg-util/src/external/CMakeLists.txt
index c269b8e9118280c31c59a26149d0257da6b8e7b8..52ee237c96522ee7753d13b891f8718505f828ff 100644
--- a/idg-util/src/external/CMakeLists.txt
+++ b/idg-util/src/external/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(utility-external)
 
 # sources and header files
diff --git a/idg-util/src/idg-util.h b/idg-util/src/idg-util.h
index db9ec3ce0215f6f13e9694f69401e0aa84ef78a7..477d8d8ce32ca0429363b24340da2a831619fa40 100644
--- a/idg-util/src/idg-util.h
+++ b/idg-util/src/idg-util.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_UTIL_HEADER
 #define IDG_UTIL_HEADER
 
diff --git a/idg-util/src/initialize/CMakeLists.txt b/idg-util/src/initialize/CMakeLists.txt
index b4eb82e2f54a27a763e7214777fdfa71c63d3eeb..e8e537ebec4bdd5eb6e8f4c15bc2ae201ef24d57 100644
--- a/idg-util/src/initialize/CMakeLists.txt
+++ b/idg-util/src/initialize/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 project(utility-initialize)
 
 # external header files needed
diff --git a/idg-util/src/initialize/Data.cpp b/idg-util/src/initialize/Data.cpp
index 7e3d862aa4a975dff8f061b895386867d02a8369..59f8edc957127bb5c39480afd9905275438ed645 100644
--- a/idg-util/src/initialize/Data.cpp
+++ b/idg-util/src/initialize/Data.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include <algorithm>
 #include <random>
 
diff --git a/idg-util/src/initialize/Data.h b/idg-util/src/initialize/Data.h
index 7da7c4c170294218d16364a1bb59690a701e14fd..60cede6d4ea71454a13a6306e3431b16e97ef3f4 100644
--- a/idg-util/src/initialize/Data.h
+++ b/idg-util/src/initialize/Data.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_DATA_H_
 #define IDG_DATA_H_
 
diff --git a/idg-util/src/initialize/datac.h b/idg-util/src/initialize/datac.h
index 11b5219abca53eb70d6a8577dcff3b9cf1c4f1ff..5d696b3e0748426e6a2c813a1da4968aeca00080 100644
--- a/idg-util/src/initialize/datac.h
+++ b/idg-util/src/initialize/datac.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 
 idg::Data* DATA_init(const char* layout_file) {
diff --git a/idg-util/src/initialize/init.cpp b/idg-util/src/initialize/init.cpp
index 679feb6487f5a30cfafcc2999aead0c78c997479..292e8b8a21438458fc9d4cfec77af46a451d3d96 100644
--- a/idg-util/src/initialize/init.cpp
+++ b/idg-util/src/initialize/init.cpp
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #include "init.h"
 
 namespace idg {
diff --git a/idg-util/src/initialize/init.h b/idg-util/src/initialize/init.h
index 2b847c267b65c8739526e5c3faf7b0739cddbe1e..301d385c542d1264fb51657a1e153fd6c6d4d586 100644
--- a/idg-util/src/initialize/init.h
+++ b/idg-util/src/initialize/init.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 #ifndef IDG_INIT_H_
 #define IDG_INIT_H_
 
diff --git a/idg-util/src/initialize/initc.h b/idg-util/src/initialize/initc.h
index dc062d3378f9911b3ca127e63c96ea1637c70aaf..da83d6cc36cd44209716079f0a682c571d0229d2 100644
--- a/idg-util/src/initialize/initc.h
+++ b/idg-util/src/initialize/initc.h
@@ -1,3 +1,6 @@
+// Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 extern "C" {
 
 void utils_init_identity_spheroidal(void *ptr, int subgrid_size) {
diff --git a/idg-util/src/python/CMakeLists.txt b/idg-util/src/python/CMakeLists.txt
index b3cfe3bf9c0fd668402afcfb9235f6cdf02a016e..238a4a5c24f50e5c47d710e0f4496ab157bc63d4 100644
--- a/idg-util/src/python/CMakeLists.txt
+++ b/idg-util/src/python/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 install(FILES
         util.py
         data.py
diff --git a/idg-util/src/python/data.py b/idg-util/src/python/data.py
index 1a3c76a2f8b0fef19a7395e5e6f746320c9e2158..8d06777d3b39591445220fac0d57868c2982c459 100644
--- a/idg-util/src/python/data.py
+++ b/idg-util/src/python/data.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import numpy
 import ctypes
 import numpy.ctypeslib
diff --git a/idg-util/src/python/util.py b/idg-util/src/python/util.py
index bf7c5ab9b33690f240301329bc88116cc28fb668..b4a53d28483e6e1884d6045f87461d4bb77ec0ae 100644
--- a/idg-util/src/python/util.py
+++ b/idg-util/src/python/util.py
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 import os
 import math
 import numpy
diff --git a/scripts/download_lofar_ms.sh b/scripts/download_lofar_ms.sh
index 469546249dfc96fe59d8756835031a1df910bdd1..dd84a7c58deb729796faa691e14d636cd28f59ca 100755
--- a/scripts/download_lofar_ms.sh
+++ b/scripts/download_lofar_ms.sh
@@ -1,5 +1,8 @@
 #!/bin/bash
-#
+
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Author: Jakob Maljaars
 # Email: jakob.maljaars_@_stcorp.nl
 
diff --git a/scripts/load_modules.sh b/scripts/load_modules.sh
index 06346ca261c59cb2dc573df65a264dee37f5c030..0833c45a831a28634c44ab44a0a698ff8b4011a9 100755
--- a/scripts/load_modules.sh
+++ b/scripts/load_modules.sh
@@ -1,7 +1,10 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 module load cmake/3.16.2
 module load openblas/0.3.6-gcc-8.3.0
 module load hdf5/1.10.6-gcc-8.3.0
-module load gcc/8.3.0 
+module load gcc/8.3.0
 module load cfitsio/3.430-gcc-6.3.0
 module load fftw/3.3.8-gcc-8.3.0
 module load wcslib/5.18-gcc-6.3.0
diff --git a/scripts/run-clang-format.sh b/scripts/run-clang-format.sh
index 059eb53514c95cc56446a4a5462514f3c1ed8b29..fd89f29c382e843a319919997632976a0b3403df 100755
--- a/scripts/run-clang-format.sh
+++ b/scripts/run-clang-format.sh
@@ -1,9 +1,9 @@
 #!/bin/bash
-#
-# run-clang-format.sh: Formats source code in this repo in accordance with .clang-format file.
-# This file is part of the DP3 software package.
+
 # Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
-# License: GNU General Public License version 3 or any later version
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+# run-clang-format.sh: Formats source code in this repo in accordance with .clang-format file.
 #
 # To hook this script to pre-commit include the line
 # "./scripts/run-clang-format.sh" to .git/hooks/pre-commit
diff --git a/test/integration/CMakeLists.txt b/test/integration/CMakeLists.txt
index 59c707c482b10c0468c4c11745a685de15e102cf..9adc9e9467921af458eedcc74e628a4c09969c3c 100644
--- a/test/integration/CMakeLists.txt
+++ b/test/integration/CMakeLists.txt
@@ -1,3 +1,6 @@
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # List of integration tests
 set(INTEGRATION_TESTS
   tSinglePointSource
diff --git a/test/integration/common/casapy2bbs.py b/test/integration/common/casapy2bbs.py
index 21c8353a32c31c2fe61698fdf6fef4438fad175c..5f5279e0ee7d145d82be49fa18acb3925d2a17fa 100755
--- a/test/integration/common/casapy2bbs.py
+++ b/test/integration/common/casapy2bbs.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later3
 
 import sys
 import numpy as np
diff --git a/test/integration/gridding/test_gridding.py b/test/integration/gridding/test_gridding.py
index 8a5f33c10dfe667eb23bf945a8f5706f30d3d302..0e25715624483352e38b2f3a1e7284792b4c6da8 100755
--- a/test/integration/gridding/test_gridding.py
+++ b/test/integration/gridding/test_gridding.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later3
 #
 # Gridding/Degridding integration tests. Integration testing of gridding/degridding with
 # wsclean-idg. The degridding test compares DPPP generated "DATA" column against wsclean
diff --git a/test/integration/singlepointsource/test_pointsource.py b/test/integration/singlepointsource/test_pointsource.py
index 1ad514ecb61a97f524e5661ab121242fe644b465..2a023de2f5a23c9f103f738e8310ff1e0075ee18 100755
--- a/test/integration/singlepointsource/test_pointsource.py
+++ b/test/integration/singlepointsource/test_pointsource.py
@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later3
 
 import os
 from astropy.io import fits
diff --git a/test/integration/tGridDegrid.sh b/test/integration/tGridDegrid.sh
index ff5a7f6f29342c864a74493ca83337256a999bf4..25bbb608ff87d1a44c8cb6e6286f41060811453a 100755
--- a/test/integration/tGridDegrid.sh
+++ b/test/integration/tGridDegrid.sh
@@ -1,5 +1,8 @@
 #!/bin/bash
 
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
 
 # Set some environment variables
@@ -15,11 +18,11 @@ if [ -d $DATADIR/LOFAR_MOCK.ms ]
 then
     echo "LOFAR_MOCK.ms already exists"
 else
-    ./../../scripts/download_lofar_ms.sh 
+    ./../../scripts/download_lofar_ms.sh
 fi
 mkdir -p $WORKDIR
 cd $WORKDIR
 
 # pytest -s captures the print() statments
 # TODO: check/add more fine grained log levels
-pytest --exitfirst ${DIR}/gridding/test_gridding.py 
+pytest --exitfirst ${DIR}/gridding/test_gridding.py
diff --git a/test/integration/tSinglePointSource.sh b/test/integration/tSinglePointSource.sh
index effe1f480498f1a0e03c6bf60ea06510ec50031a..d90d3e8acb755c26d9d365536f1fdf7c279fddc4 100755
--- a/test/integration/tSinglePointSource.sh
+++ b/test/integration/tSinglePointSource.sh
@@ -1,5 +1,8 @@
 #!/bin/bash
-#
+
+# Copyright (C) 2020 ASTRON (Netherlands Institute for Radio Astronomy)
+# SPDX-License-Identifier: GPL-3.0-or-later
+
 # Integration test for single point source, centered at the image center
 #
 # Make sure that: