diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index ee275cafcc5f5f2a506fb1d2a79037f877963173..d394ac2ec631d32de0cf486af411aa27d7cda181 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,4 +1,10 @@
-ADD_SUBDIRECTORY( TNL )
+INSTALL( DIRECTORY TNL/ DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}
+         MESSAGE_NEVER
+         FILES_MATCHING PATTERN "*.h" PATTERN "*.hpp" )
+
+# TODO: TNL/Experimental/ should be moved somewhere else, the TNL subdirectory
+# should contain only header files
+add_subdirectory( TNL/Experimental )
 
 # Note that it is important to start building examples as soon as possible,
 # because they take the longest time and other stuff can be pipelined before
diff --git a/src/TNL/CMakeLists.txt b/src/TNL/CMakeLists.txt
deleted file mode 100644
index a5162c7a6997664713727f409d7cfd8f429a913f..0000000000000000000000000000000000000000
--- a/src/TNL/CMakeLists.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-ADD_SUBDIRECTORY( Config )
-ADD_SUBDIRECTORY( Containers )
-ADD_SUBDIRECTORY( Communicators )
-ADD_SUBDIRECTORY( Debugging )
-ADD_SUBDIRECTORY( Devices )
-ADD_SUBDIRECTORY( Exceptions )
-ADD_SUBDIRECTORY( Experimental )
-ADD_SUBDIRECTORY( Functions )
-ADD_SUBDIRECTORY( Images )
-ADD_SUBDIRECTORY( Matrices )
-ADD_SUBDIRECTORY( Meshes )
-ADD_SUBDIRECTORY( Operators )
-ADD_SUBDIRECTORY( Pointers )
-ADD_SUBDIRECTORY( Problems )
-ADD_SUBDIRECTORY( Solvers )
-
-set( headers
-     Atomic.h
-     Assert.h
-     CudaSharedMemory.h
-     CudaStreamPool.h
-     File.h
-     File_impl.h
-     FileName.h
-     FileName.hpp
-     Object.h
-     Object_impl.h
-     Logger.h
-     Logger_impl.h
-     Math.h
-     ParallelFor.h
-     param-types.h
-     StaticFor.h
-     String.h
-     String_impl.h
-     Timer.h
-     Timer_impl.h
-     StaticVectorFor.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY} )
diff --git a/src/TNL/Communicators/CMakeLists.txt b/src/TNL/Communicators/CMakeLists.txt
deleted file mode 100644
index fdf69b44d3c53057f96eed343dffef5dd1992203..0000000000000000000000000000000000000000
--- a/src/TNL/Communicators/CMakeLists.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-SET( headers MpiCommunicator.h
-             MpiDefs.h
-             MPIPrint.h
-             MPITypeResolver.h
-             NoDistrCommunicator.h
-             ScopedInitializer.h
-    )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Communicators )
diff --git a/src/TNL/Config/CMakeLists.txt b/src/TNL/Config/CMakeLists.txt
deleted file mode 100644
index b88a173fe84f6df4002e4cf5f1c07896844bcf8f..0000000000000000000000000000000000000000
--- a/src/TNL/Config/CMakeLists.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-SET( headers
-     ConfigEntryType.h
-     ConfigEntryBase.h
-     ConfigEntry.h
-     ConfigEntryList.h
-     ConfigDelimiter.h
-     ConfigDescription.h
-     make_unique.h
-     ParameterContainer.h
-     parseCommandLine.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Config )
diff --git a/src/TNL/Containers/Algorithms/CMakeLists.txt b/src/TNL/Containers/Algorithms/CMakeLists.txt
deleted file mode 100644
index e1ad17373ceff0576882e9d656ed45800e3ad8fb..0000000000000000000000000000000000000000
--- a/src/TNL/Containers/Algorithms/CMakeLists.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-set( headers ArrayIO.h
-             ArrayOperations.h
-             ArrayOperationsHost_impl.h
-             ArrayOperationsCuda_impl.h
-             ArrayOperationsMIC_impl.h
-             cuda-prefix-sum.h
-             cuda-prefix-sum_impl.h
-             CudaMultireductionKernel.h
-             CudaReductionBuffer.h
-             CudaReductionKernel.h
-             Multireduction.h
-             Multireduction_impl.h
-             Reduction.h
-             Reduction_impl.h
-             ReductionOperations.h
-             VectorOperations.h
-             VectorOperationsHost_impl.h
-             VectorOperationsCuda_impl.h
-             VectorOperationsMIC_impl.h
-   )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Containers/Algorithms )
diff --git a/src/TNL/Containers/CMakeLists.txt b/src/TNL/Containers/CMakeLists.txt
deleted file mode 100644
index 36f82d7109a3f17d3be907dd2c07a51c79cbcf5b..0000000000000000000000000000000000000000
--- a/src/TNL/Containers/CMakeLists.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-ADD_SUBDIRECTORY( Algorithms )
-ADD_SUBDIRECTORY( Multimaps )
-
-set( headers Array.h
-             Array_impl.h
-             ArrayView.h
-             ArrayView_impl.h
-             Vector.h
-             Vector_impl.h
-             VectorView.h
-             VectorView_impl.h
-             StaticArray.h
-             StaticArray_impl.h
-             StaticArray1D_impl.h
-             StaticArray2D_impl.h
-             StaticArray3D_impl.h
-             StaticVector.h
-             StaticVector_impl.h
-             StaticVector1D_impl.h
-             StaticVector2D_impl.h
-             StaticVector3D_impl.h
-             DistributedArray.h
-             DistributedArray_impl.h
-             DistributedArrayView.h
-             DistributedArrayView_impl.h
-             DistributedVector.h
-             DistributedVector_impl.h
-             DistributedVectorView.h
-             DistributedVectorView_impl.h
-             Partitioner.h
-             Subrange.h
-             IndexedMap.h
-             IndexedMap_impl.h
-             IndexedSet.h
-             IndexedSet_impl.h
-             UnorderedIndexedSet.h
-             UnorderedIndexedSet_impl.h
-             List.h
-             List_impl.h
-             MultiArray.h
-             MultiArray1D_impl.h
-             MultiArray2D_impl.h
-             MultiArray3D_impl.h
-             MultiArray4D_impl.h
-             MultiVector.h
-             MultiVector1D_impl.h
-             MultiVector2D_impl.h
-             MultiVector3D_impl.h
-             MultiVector4D_impl.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Containers )
diff --git a/src/TNL/Containers/Multimaps/CMakeLists.txt b/src/TNL/Containers/Multimaps/CMakeLists.txt
deleted file mode 100644
index 921c735f7bb71c2aca64027f0b70aecde34cf7c6..0000000000000000000000000000000000000000
--- a/src/TNL/Containers/Multimaps/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers EllpackIndexMultimap.h
-             EllpackIndexMultimap_impl.h
-             EllpackIndexMultimapValues.h
-             EllpackIndexMultimapValues_impl.h
-             StaticEllpackIndexMultimap.h
-             StaticEllpackIndexMultimap_impl.h
-             StaticEllpackIndexMultimapValues.h
-             StaticEllpackIndexMultimapValues_impl.h
-             MultimapPermutationApplier.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Containers/Multimaps )
diff --git a/src/TNL/Debugging/CMakeLists.txt b/src/TNL/Debugging/CMakeLists.txt
deleted file mode 100644
index c320f19fa9b6d13f4a7fe208d30003eccda19949..0000000000000000000000000000000000000000
--- a/src/TNL/Debugging/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-SET( headers
-         FPE.h
-         MemoryUsage.h
-         StackBacktrace.h
-)
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Debugging )
diff --git a/src/TNL/Devices/CMakeLists.txt b/src/TNL/Devices/CMakeLists.txt
deleted file mode 100644
index b2beec09623a675a0fb9743e388dd8befb90b957..0000000000000000000000000000000000000000
--- a/src/TNL/Devices/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-set (headers Cuda.h
-             Cuda_impl.h
-             CudaCallable.h
-             CudaDeviceInfo.h
-             CudaDeviceInfo_impl.h
-             Host.h
-             MIC.h
-             SystemInfo.h
-             SystemInfo_impl.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Devices )
diff --git a/src/TNL/Exceptions/CMakeLists.txt b/src/TNL/Exceptions/CMakeLists.txt
deleted file mode 100644
index 58ae9177f0d6e7432e213d4e17e6f638048a6a1f..0000000000000000000000000000000000000000
--- a/src/TNL/Exceptions/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers CudaBadAlloc.h
-             CudaRuntimeError.h
-             CudaSupportMissing.h
-             FileDeserializationError.h
-             FileSerializationError.h
-             MICBadAlloc.h
-             MICSupportMissing.h
-             MPIDimsCreateError.h
-             MPISupportMissing.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Exceptions )
diff --git a/src/TNL/Experimental/Arithmetics/CMakeLists.txt b/src/TNL/Experimental/Arithmetics/CMakeLists.txt
index b058dae9f452c69cd015f802781b01b8e2138668..60295b76b53f3cc1411c2e032ee00b869fd65dfb 100644
--- a/src/TNL/Experimental/Arithmetics/CMakeLists.txt
+++ b/src/TNL/Experimental/Arithmetics/CMakeLists.txt
@@ -1,21 +1 @@
 ADD_SUBDIRECTORY( UnitTests )
-
-set( headers FlopsCounter.h
-             Quad.h # Modified by D. Simon
-             Quad_impl.h # Modified by D. Simon  
-             Real.h
-             MultiPrecision.h #Added by D. Simon
-             #Double.h #Added by D. Simon
-             #Double_impl.h #Added by D. Simon
-             )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Experimental/Arithmetics )
-
-set( tnl_experimental_arithmetics_SOURCES 
-                 ${CURRENT_DIR}/FlopsCounter.cpp
-                 ${CURRENT_DIR}/MultiPrecision.cpp #Added by D.Simon
-                 )
-
-set( tnl_experimental_arithmetics_CUDA__SOURCES )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Experimental/Arithmetics )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/CMakeLists.txt
index 3c15fe33154a4d5ce4dd2dff3ae524b768e21797..debeac3fb73f1d7570e7918ede128c3d08febe2f 100644
--- a/src/TNL/Experimental/Hamilton-Jacobi/CMakeLists.txt
+++ b/src/TNL/Experimental/Hamilton-Jacobi/CMakeLists.txt
@@ -1,3 +1 @@
-ADD_SUBDIRECTORY( Operators )
 ADD_SUBDIRECTORY( Solvers )
-
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Operators/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Operators/CMakeLists.txt
deleted file mode 100644
index 8ee63a0ac16a88e13ecb964013435160464e38b1..0000000000000000000000000000000000000000
--- a/src/TNL/Experimental/Hamilton-Jacobi/Operators/CMakeLists.txt
+++ /dev/null
@@ -1 +0,0 @@
-ADD_SUBDIRECTORY( Hamilton-Jacobi )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/CMakeLists.txt
deleted file mode 100644
index bce61025f2bae120464881216c62091e40604836..0000000000000000000000000000000000000000
--- a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/CMakeLists.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-ADD_SUBDIRECTORY( Godunov )
-ADD_SUBDIRECTORY( Godunov-Eikonal )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Eikonal/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Eikonal/CMakeLists.txt
deleted file mode 100644
index cf41c35e7bde3b273b8d6863c5b3df5494705303..0000000000000000000000000000000000000000
--- a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Eikonal/CMakeLists.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-set( headers godunov.h
-	     godunov1D_impl.h
-             godunov2D_impl.h
-             godunov3D_impl.h)
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/implementation/operators/godunov )
-
-if( BUILD_CUDA)
-      set( tnl_implementation_operators_godunov_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_implementation_operators_godunov_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/Godunov/ )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov-Eikonal/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov-Eikonal/CMakeLists.txt
deleted file mode 100644
index 1a5ffdbda44728884d5f468bad6bb3ca935a6266..0000000000000000000000000000000000000000
--- a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov-Eikonal/CMakeLists.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-set( headers godunovEikonal.h
-	     parallelGodunovEikonal.h
-	     parallelGodunovMap.h
-	     godunovEikonal1D_impl.h
-             godunovEikonal2D_impl.h
-             godunovEikonal3D_impl.h
-             parallelGodunovEikonal1D_impl.h
-             parallelGodunovEikonal2D_impl.h
-             parallelGodunovEikonal3D_impl.h
-             parallelGodunovMap2D_impl.h)
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/implementation/operators/godunov-eikonal )
-
-if( BUILD_CUDA)
-      set( tnl_implementation_operators_godunov-eikonal_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_implementation_operators_godunov-eikonal_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/Godunov-Eikonal/ )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov/CMakeLists.txt
deleted file mode 100644
index f1baf9e5a86bab1287040e896c6558053f8af414..0000000000000000000000000000000000000000
--- a/src/TNL/Experimental/Hamilton-Jacobi/Operators/Hamilton-Jacobi/Godunov/CMakeLists.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-set( headers godunov1D_impl.h
-             godunov2D_impl.h
-             godunov3D_impl.h)
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/implementation/operators/godunov )
-
-if( BUILD_CUDA)
-      set( tnl_implementation_operators_godunov_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_implementation_operators_godunov_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/Godunov/ )
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Solvers/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Solvers/CMakeLists.txt
index b4ec5170b50f7b9bfdf6b81f261f396c0c59d624..d2f1d09ec0aac8f1d3023eabd1210aee5f86006b 100644
--- a/src/TNL/Experimental/Hamilton-Jacobi/Solvers/CMakeLists.txt
+++ b/src/TNL/Experimental/Hamilton-Jacobi/Solvers/CMakeLists.txt
@@ -1,3 +1 @@
 ADD_SUBDIRECTORY( hamilton-jacobi )
-
-
diff --git a/src/TNL/Experimental/Hamilton-Jacobi/Solvers/hamilton-jacobi/CMakeLists.txt b/src/TNL/Experimental/Hamilton-Jacobi/Solvers/hamilton-jacobi/CMakeLists.txt
index 480a5ccb80add384ee19897831f761a958109c67..6cfecd31da35117ddf8c4293fab85e68de3a4161 100644
--- a/src/TNL/Experimental/Hamilton-Jacobi/Solvers/hamilton-jacobi/CMakeLists.txt
+++ b/src/TNL/Experimental/Hamilton-Jacobi/Solvers/hamilton-jacobi/CMakeLists.txt
@@ -1,17 +1,8 @@
-set( tnl_hamilton_jacobi_SOURCES
-     hamiltonJacobiProblemSetter.h
-     hamiltonJacobiProblemSetter_impl.h
-     hamiltonJacobiProblemSolver.h
-     hamiltonJacobiProblemSolver_impl.h
-     main.cpp
-     hamiltonJacobiProblemConfig.h
-     tnl-direct-eikonal-solver.h )
-               
 #ADD_EXECUTABLE(tnl-hamilton-jacobi main.cpp)
 
 IF( BUILD_CUDA )
     CUDA_ADD_EXECUTABLE(tnl-direct-eikonal-solver tnl-direct-eikonal-solver.cu )
-ELSE(  BUILD_CUDA )               
+ELSE(  BUILD_CUDA )
     ADD_EXECUTABLE(tnl-direct-eikonal-solver tnl-direct-eikonal-solver.cpp )
 ENDIF( BUILD_CUDA )
 
@@ -20,4 +11,3 @@ INSTALL( TARGETS #tnl-hamilton-jacobi
                  tnl-direct-eikonal-solver
          RUNTIME DESTINATION bin
          PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
-        
diff --git a/src/TNL/Functions/Analytic/CMakeLists.txt b/src/TNL/Functions/Analytic/CMakeLists.txt
deleted file mode 100644
index 7ef6ee65d85521690a9a0a8761af79a8d0f83366..0000000000000000000000000000000000000000
--- a/src/TNL/Functions/Analytic/CMakeLists.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-SET( headers Blob.h
-             Blob_impl.h  
-             Constant.h
-             Constant_impl.h
-             Cylinder.h
-             Cylinder_impl.h  
-             ExpBump.h
-             ExpBump_impl.h
-	     Flowerpot.h
-             Flowerpot_impl.h
-             Paraboloid.h
-             Paraboloid_impl.h
-             ParaboloidSDF.h
-             ParaboloidSDF_impl.h
-	     PseudoSquare.h
-             PseudoSquare_impl.h
-             SinBumps.h
-             SinBumps_impl.h
-             SinBumpsSDF.h
-             SinBumpsSDF_impl.h
-             SinWave.h
-             SinWave_impl.h
-             SinWaveSDF.h
-             SinWaveSDF_impl.h
-	     Twins.h
-             Twins_impl.h 
-   )
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Functions/Analytic )
diff --git a/src/TNL/Functions/CMakeLists.txt b/src/TNL/Functions/CMakeLists.txt
deleted file mode 100644
index f596e3da6980356bbe1abd5c422b2a053872dd93..0000000000000000000000000000000000000000
--- a/src/TNL/Functions/CMakeLists.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-ADD_SUBDIRECTORY( Analytic )
-
-SET( headers BoundaryMeshFunction.h
-             Domain.h
-             ExactOperatorFunction.h
-             FunctionAdapter.h
-             MeshFunction.h
-             MeshFunction_impl.h
-             MeshFunctionEvaluator.h
-             MeshFunctionEvaluator_impl.h
-             MeshFunctionGnuplotWriter.h
-             MeshFunctionNormGetter.h
-             MeshFunctionVTKWriter.h
-             OperatorFunction.h
-             TestFunction.h
-             TestFunction_impl.h
-             VectorField.h
-             VectorFieldEvaluator.h
-             VectorFieldEvaluator_impl.h
-             VectorFieldGnuplotWriter.h
-             VectorFieldGnuplotWriter_impl.h
-             VectorFieldVTKWriter.h
-             VectorFieldVTKWriter_impl.h
-             CutMeshFunction.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Functions )
diff --git a/src/TNL/Images/CMakeLists.txt b/src/TNL/Images/CMakeLists.txt
deleted file mode 100644
index d7a46f4022f16d57ea927a55a55238ea272a8908..0000000000000000000000000000000000000000
--- a/src/TNL/Images/CMakeLists.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-set( headers DicomHeader.h
-             DicomHeader_impl.h
-             DicomImageInfo.h
-             DicomImageInfo_impl.h
-             DicomSeriesInfo.h
-             DicomSeriesInfo_impl.h
-             DicomSeries.h
-             DicomSeries_impl.h
-             DicomPatientInfo.h
-             DicomPatientInfo_impl.h
-             Image.h
-             JPEGImage.h
-             JPEGImage_impl.h
-             PGMImage.h
-             PGMImage_impl.h
-             PNGImage.h
-             PNGImage_impl.h            
-             RegionOfInterest.h                                                    
-             RegionOfInterest_impl.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Images )
-
-####
-# DCMTK currently does not support shared libraries. When it does _impl.h files
-# could be replaced with .cpp and DCMTK might be link with TNL.
-#
-if( DCMTK_FOUND )
-    set( common_SOURCES )       
-else()
-   set( common_SOURCES )
-endif()
-
-IF( BUILD_CUDA )
-   set( tnl_images_CUDA__SOURCES
-        ${common_SOURCES}             
-        PARENT_SCOPE )
-ELSE()
-    set( tnl_images_SOURCES     
-         ${common_SOURCES}          
-         PARENT_SCOPE )
-ENDIF()    
-
-        
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Images )
diff --git a/src/TNL/Matrices/CMakeLists.txt b/src/TNL/Matrices/CMakeLists.txt
deleted file mode 100644
index 2aa3d54dfe028b6badf576072d623076f00faec3..0000000000000000000000000000000000000000
--- a/src/TNL/Matrices/CMakeLists.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-SET( headers AdEllpack.h
-             AdEllpack_impl.h
-             BiEllpack.h
-             BiEllpack_impl.h
-             COOMatrix.h
-             COOMatrix_impl.h
-             Matrix.h
-             Matrix_impl.h
-             Dense.h
-             Dense_impl.h
-             Tridiagonal.h
-             Tridiagonal_impl.h
-             Multidiagonal.h
-             Multidiagonal_impl.h
-             Sparse.h
-             Sparse_impl.h
-             SparseOperations.h
-             SparseOperations_impl.h
-             Ellpack.h
-             Ellpack_impl.h
-             SlicedEllpack.h
-             SlicedEllpack_impl.h
-             ChunkedEllpack.h
-             ChunkedEllpack_impl.h
-             CSR.h
-             CSR_impl.h
-             MatrixOperations.h
-             MatrixReader.h
-             MatrixReader_impl.h
-             MatrixWriter.h
-             MatrixWriter_impl.h
-             MatrixSetter.h
-             MatrixSetter_impl.h
-             SparseRow.h
-             SparseRow_impl.h
-             DenseRow.h
-             DenseRow_impl.h
-             TridiagonalRow.h
-             TridiagonalRow_impl.h
-             MultidiagonalMatrixSetter.h
-             MultidiagonalMatrixSetter_impl.h
-             MultidiagonalRow.h
-             MultidiagonalRow_impl.h
-             DistributedMatrix.h
-             DistributedMatrix_impl.h
-             DistributedSpMV.h
-             ThreePartVector.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Matrices )
diff --git a/src/TNL/Meshes/CMakeLists.txt b/src/TNL/Meshes/CMakeLists.txt
deleted file mode 100644
index 9dd51e9b858050cb095d3a3cb68b672a3ba263ae..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/CMakeLists.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-ADD_SUBDIRECTORY( Geometry )
-ADD_SUBDIRECTORY( GridDetails )
-ADD_SUBDIRECTORY( MeshDetails )
-ADD_SUBDIRECTORY( DistributedMeshes )
-ADD_SUBDIRECTORY( Readers )
-ADD_SUBDIRECTORY( Topologies )
-ADD_SUBDIRECTORY( TypeResolver )
-ADD_SUBDIRECTORY( Writers )
-
-SET( headers BuildConfigTags.h
-             DefaultConfig.h
-             DimensionTag.h
-             DummyMesh.h
-             GridEntityConfig.h
-             GridEntity.h
-             Grid.h
-             MeshBuilder.h
-             MeshEntity.h
-             Mesh.h
-             Traverser.h
-    )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Meshes )    
-SET( tnl_mesh_SOURCES ${tnl_mesh_griddetails_SOURCES} 
-     PARENT_SCOPE )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes )
-
diff --git a/src/TNL/Meshes/DistributedMeshes/CMakeLists.txt b/src/TNL/Meshes/DistributedMeshes/CMakeLists.txt
deleted file mode 100644
index 89a64d74c16a41e0ad7343de4a01fd2c9df17001..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/DistributedMeshes/CMakeLists.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-SET( headers BufferEntitiesHelper.h
-             CopyEntitiesHelper.h
-             DistributedMesh.h
-             DistributedMeshSynchronizer.h
-             DistributedGrid.h
-             DistributedGrid.hpp
-             DistributedGridSynchronizer.h
-             DistributedGridIO.h
-             DistributedGridIO_MeshFunction.h
-             DistributedGridIO_VectorField.h
-             Directions.h
-             SubdomainOverlapsGetter.h
-             SubdomainOverlapsGetter.hpp
-             )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/DistributedMeshes )
diff --git a/src/TNL/Meshes/Geometry/CMakeLists.txt b/src/TNL/Meshes/Geometry/CMakeLists.txt
deleted file mode 100644
index c743984d782fee8eb9a28960b67682172306f4ff..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/Geometry/CMakeLists.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-SET( headers getEntityCenter.h
-             getEntityMeasure.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/Geometry )
diff --git a/src/TNL/Meshes/GridDetails/CMakeLists.txt b/src/TNL/Meshes/GridDetails/CMakeLists.txt
deleted file mode 100644
index 3386ec242531431fc12b59649760a8a9e35b6cb7..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/GridDetails/CMakeLists.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-SET( headers BoundaryGridEntityChecker.h
-             BoundaryGridEntityChecker.h
-             GnuplotWriter.h
-             Grid1D.h
-             Grid1D_impl.h
-             Grid2D.h
-             Grid2D_impl.h
-             Grid3D.h
-             Grid3D_impl.h
-             GridEntityCenterGetter.h
-             GridEntityGetter.h
-             GridEntityGetter_impl.h
-             GridEntity_impl.h
-             GridEntityMeasureGetter.h
-             GridEntityTopology.h
-             GridTraverser.h
-             GridTraverser_1D.hpp
-             GridTraverser_2D.hpp
-             GridTraverser_3D.hpp
-             NeighborGridEntitiesStorage.h
-             NeighborGridEntityGetter1D_impl.h
-             NeighborGridEntityGetter2D_impl.h
-             NeighborGridEntityGetter3D_impl.h
-             NeighborGridEntityGetter.h
-             Traverser_Grid1D.h
-             Traverser_Grid1D_impl.h
-             Traverser_Grid2D.h
-             Traverser_Grid2D_impl.h
-             Traverser_Grid3D.h
-             Traverser_Grid3D_impl.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/GridDetails )
diff --git a/src/TNL/Meshes/MeshDetails/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/CMakeLists.txt
deleted file mode 100644
index 7e6b56e832798053c25c3bac527f2bebba90b586..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/CMakeLists.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-ADD_SUBDIRECTORY( initializer )
-ADD_SUBDIRECTORY( EntityLayers )
-ADD_SUBDIRECTORY( MeshLayers )
-ADD_SUBDIRECTORY( traits )
-
-SET( headers ConfigValidator.h
-             EntityStorageRebinder.h
-             IndexPermutationApplier.h
-             MeshEntityIndex.h
-             MeshEntityOrientation.h
-             MeshEntityReferenceOrientation.h
-             MeshEntity_impl.h
-             MeshIntegrityChecker.h
-             MeshIntegrityCheckerLayer.h
-             Mesh_impl.h
-             Traverser_impl.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails )
diff --git a/src/TNL/Meshes/MeshDetails/EntityLayers/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/EntityLayers/CMakeLists.txt
deleted file mode 100644
index a53be02ead6d8dea884e6d7ab7f5f926a2617286..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/EntityLayers/CMakeLists.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-SET( headers SubentityAccess.h
-             SuperentityAccess.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails/EntityLayers )
diff --git a/src/TNL/Meshes/MeshDetails/MeshLayers/BoundaryTags/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/MeshLayers/BoundaryTags/CMakeLists.txt
deleted file mode 100644
index 5cf6216c750686a27d87c157fbd85a6239febbad..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/MeshLayers/BoundaryTags/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-SET( headers ConfigValidator.h
-             Layer.h
-             LayerFamily.h
-             Initializer.h
-             Traits.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails/MeshLayers/BoundaryTags )
diff --git a/src/TNL/Meshes/MeshDetails/MeshLayers/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/MeshLayers/CMakeLists.txt
deleted file mode 100644
index a213ba3ae1da52cde09adb2fb5850e78a6ce75d5..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/MeshLayers/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-ADD_SUBDIRECTORY( BoundaryTags )
-
-SET( headers StorageLayer.h
-             SubentityStorageLayer.h
-             SuperentityStorageLayer.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails/MeshLayers )
diff --git a/src/TNL/Meshes/MeshDetails/initializer/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/initializer/CMakeLists.txt
deleted file mode 100644
index f452c0c02285e94471d7cd8cf91f991b48146132..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/initializer/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-SET( headers EntityInitializer.h
-             EntitySeed.h 
-             Initializer.h
-             SubentitySeedsCreator.h
-             SuperentityStorageInitializer.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails/initializer )
diff --git a/src/TNL/Meshes/MeshDetails/traits/CMakeLists.txt b/src/TNL/Meshes/MeshDetails/traits/CMakeLists.txt
deleted file mode 100644
index 90b0fafc1c54ec0891b343dc4ac3e3b178f77d14..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/MeshDetails/traits/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-SET( headers MeshTraits.h
-             MeshEntityTraits.h
-             MeshSubentityTraits.h
-             MeshSuperentityTraits.h
-             WeakStorageTraits.h
-               )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/MeshDetails/traits )
diff --git a/src/TNL/Meshes/Readers/CMakeLists.txt b/src/TNL/Meshes/Readers/CMakeLists.txt
deleted file mode 100644
index 5d46f5259dc41e2713eeca95adfdf8ec8f6d810d..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/Readers/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-SET( headers EntityShape.h
-             NetgenReader.h
-             TNLReader.h
-             VTKReader.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/Readers )
diff --git a/src/TNL/Meshes/Topologies/CMakeLists.txt b/src/TNL/Meshes/Topologies/CMakeLists.txt
deleted file mode 100644
index 797662306a257537a98fd9c756818be02e1923c6..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/Topologies/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers Edge.h
-             Hexahedron.h
-             Quadrilateral.h
-             Simplex.h
-             SubentityVertexMap.h
-             Tetrahedron.h
-             Triangle.h
-             Vertex.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/Topologies )
diff --git a/src/TNL/Meshes/TypeResolver/CMakeLists.txt b/src/TNL/Meshes/TypeResolver/CMakeLists.txt
deleted file mode 100644
index 83c105cd54b89b17e8cecd0a29b030e14fa820b6..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/TypeResolver/CMakeLists.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-SET( headers GridTypeResolver.h
-             GridTypeResolver_impl.h
-             MeshTypeResolver.h
-             MeshTypeResolver_impl.h
-             TypeResolver.h
-             TypeResolver_impl.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/TypeResolver )
diff --git a/src/TNL/Meshes/Writers/CMakeLists.txt b/src/TNL/Meshes/Writers/CMakeLists.txt
deleted file mode 100644
index b06a95b0cf7aea43bd9e4d1b3b8fe1d1aded0385..0000000000000000000000000000000000000000
--- a/src/TNL/Meshes/Writers/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-SET( headers AsymptoteWriter.h
-             NetgenWriter.h
-             VTKWriter.h
-             VTKWriter_impl.h
-)
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Meshes/Writers )
diff --git a/src/TNL/Operators/Advection/CMakeLists.txt b/src/TNL/Operators/Advection/CMakeLists.txt
deleted file mode 100644
index 2db8cf1c2ed75909bcc8f56c5d139072d174123d..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/Advection/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-SET( headers LaxFridrichs.h
-             Upwind.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/Advection )
-
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/Advection )
diff --git a/src/TNL/Operators/Analytic/CMakeLists.txt b/src/TNL/Operators/Analytic/CMakeLists.txt
deleted file mode 100644
index f6b591d2c2ad7b05aaaf25d5a5e2c516b22ffe44..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/Analytic/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers Sign.h
-             Heaviside.h
-             Identity.h
-             SmoothHeaviside.h
-             Shift.h
-             Rotation.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/Analytic )
-
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/Analytic )
diff --git a/src/TNL/Operators/CMakeLists.txt b/src/TNL/Operators/CMakeLists.txt
deleted file mode 100644
index 19cda7c16f8b39c933f0932606d6143a3c53705c..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/CMakeLists.txt
+++ /dev/null
@@ -1,49 +0,0 @@
-ADD_SUBDIRECTORY( Advection )
-ADD_SUBDIRECTORY( Analytic )
-ADD_SUBDIRECTORY( diffusion )
-ADD_SUBDIRECTORY( euler )
-ADD_SUBDIRECTORY( interpolants )
-ADD_SUBDIRECTORY( operator-Q )
-ADD_SUBDIRECTORY( operator-curvature )
-
-
-SET( headers DirichletBoundaryConditions.h
-             ExactFunctionInverseOperator.h
-             ExactIdentityOperator.h
-             ExactOperatorComposition.h
-             FiniteDifferences.h
-             FiniteDifferences_impl.h
-             FunctionInverseOperator.h
-             IdentityOperator.h
-             NeumannBoundaryConditions.h
-             OperatorComposition.h
-             Operator.h )
-             
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators )
-
-if( BUILD_CUDA)
-      set( tnl_operators_CUDA__SOURCES        
-        ${tnl_operators_diffusion_CUDA__SOURCES}
-        ${tnl_operators_gradient_CUDA__SOURCES}
-        ${tnl_operators_euler_CUDA__SOURCES}
-#        ${tnl_operators_godunov_CUDA__SOURCES}
-        ${tnl_operators_godunov-eikonal_CUDA__SOURCES}
-#        ${tnl_operators_upwind_CUDA__SOURCES}
-#        ${tnl_operators_upwind-eikonal_CUDA__SOURCES}
-        ${common_SOURCES}
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_operators_SOURCES     
-     ${tnl_operators_diffusion_SOURCES}
-     ${tnl_operators_gradient_SOURCES}
-     ${tnl_operators_euler_SOURCES}
-#     ${tnl_operators_godunov_SOURCES}
-     ${tnl_operators_godunov-eikonal_SOURCES}
-#     ${tnl_operators_upwind_SOURCES}
-#     ${tnl_operators_upwind-eikonal_SOURCES}
-     ${common_SOURCES}
-     PARENT_SCOPE )
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators )
diff --git a/src/TNL/Operators/diffusion/CMakeLists.txt b/src/TNL/Operators/diffusion/CMakeLists.txt
deleted file mode 100644
index 5deae0159fd2cfe9a64d78cf643c8bf8eac19f45..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/diffusion/CMakeLists.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-SET( headers LinearDiffusion.h
-             LinearDiffusion_impl.h
-             ExactLinearDiffusion.h             
-             ExactLinearDiffusion_impl.h
-	     OneSidedNonlinearDiffusion.h             
-             ExactNonlinearDiffusion.h
-             OneSidedMeanCurvature.h
-             FiniteVolumeNonlinearOperator.h
-             FiniteVolumeNonlinearOperator_impl.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/diffusion )
-
-if( BUILD_CUDA)
-      set( tnl_schemes_diffusion_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_schemes_diffusion_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )    
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/diffusion )
diff --git a/src/TNL/Operators/euler/CMakeLists.txt b/src/TNL/Operators/euler/CMakeLists.txt
deleted file mode 100644
index 84f46c55ac3ff0ba99b350c8a4409d1b7360ea87..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/euler/CMakeLists.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-ADD_SUBDIRECTORY( fvm )
-
diff --git a/src/TNL/Operators/euler/fvm/CMakeLists.txt b/src/TNL/Operators/euler/fvm/CMakeLists.txt
deleted file mode 100644
index 825be0d1df1fa7b9436703d85cc40f77ce5e8916..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/euler/fvm/CMakeLists.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-SET( headers LaxFridrichs.h
-             LaxFridrichs_impl.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/schemes/euler/fvm )
-
-if( BUILD_CUDA)
-      set( tnl_schemes_euler_fvm_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_schemes_euler_fvm_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )
-     
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/euler/fvm )
diff --git a/src/TNL/Operators/fdm/CMakeLists.txt b/src/TNL/Operators/fdm/CMakeLists.txt
deleted file mode 100644
index 0d38a18be8f8e34792204458bf7fef783c60512e..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/fdm/CMakeLists.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-SET( headers BackwardFiniteDifference.h
-             CentralFiniteDifference.h
-             ExactDifference.h
-             tnlFiniteDifference.h
-             tnlFiniteDifference_1D.h
-             tnlFiniteDifference_2D.h
-             tnlFiniteDifference_3D.h
-             tnlForwardFinteDifference.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/fdm )
-
-if( BUILD_CUDA)
-      set( tnl_operators_fdm_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_operators_fdm_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )   
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/operators/fdm )
diff --git a/src/TNL/Operators/geometric/CMakeLists.txt b/src/TNL/Operators/geometric/CMakeLists.txt
deleted file mode 100644
index 2bed8b330136efeba4237cdf41986303138ab2cc..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/geometric/CMakeLists.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-SET( headers ExactGradientNorm.h
-             FDMGradientNorm.h             
-             TwoSidedGradientNorm.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/geometric )
-
-if( BUILD_CUDA)
-      set( tnl_operators_geometric_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_operators_geometric_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )   
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/operators/geometric )
diff --git a/src/TNL/Operators/interpolants/CMakeLists.txt b/src/TNL/Operators/interpolants/CMakeLists.txt
deleted file mode 100644
index b151b56a2da3161f4ed2fdd8cd3814960b5b6e87..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/interpolants/CMakeLists.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-SET( headers  )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Operators/interpolants )
-
-if( BUILD_CUDA)
-      set( tnl_operators_interpolants_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_operators_interpolants_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )   
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/operators/interpolants )
diff --git a/src/TNL/Operators/operator-Q/CMakeLists.txt b/src/TNL/Operators/operator-Q/CMakeLists.txt
deleted file mode 100644
index d87f05223a884d5ba2b76f5ce3603973271c396c..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/operator-Q/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-SET( headers tnlOneSideDiffOperatorQ.h             
-             tnlOneSideDiffOperatorQ_impl.h
-	     tnlFiniteVolumeOperatorQ.h             
-             tnlFiniteVolumeOperatorQ_impl.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/operator-Q )
diff --git a/src/TNL/Operators/operator-curvature/CMakeLists.txt b/src/TNL/Operators/operator-curvature/CMakeLists.txt
deleted file mode 100644
index 3bcf32743f85f5b8b362f722849ec9f96758540e..0000000000000000000000000000000000000000
--- a/src/TNL/Operators/operator-curvature/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-SET( headers ExactOperatorCurvature.h
-             ExactOperatorCurvature_impl.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Operators/operator-curvature )
diff --git a/src/TNL/Pointers/CMakeLists.txt b/src/TNL/Pointers/CMakeLists.txt
deleted file mode 100644
index d1cd9c47fe99b6b2b7334c853ef1f4069d328a0b..0000000000000000000000000000000000000000
--- a/src/TNL/Pointers/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers DevicePointer.h
-             SharedPointer.h
-             SharedPointerCuda.h
-             SharedPointerHost.h
-             SharedPointerMic.h
-             SmartPointer.h
-             SmartPointersRegister.h
-             UniquePointer.h
-   )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Pointers )
diff --git a/src/TNL/Problems/CMakeLists.txt b/src/TNL/Problems/CMakeLists.txt
deleted file mode 100644
index 5585608e895f4651231dfcfe905610bacd89c259..0000000000000000000000000000000000000000
--- a/src/TNL/Problems/CMakeLists.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-SET( headers CommonData.h
-             Problem.h
-             PDEProblem.h
-             PDEProblem_impl.h
-             HeatEquationProblem.h
-             HeatEquationProblem_impl.h
-             HeatEquationEocProblem.h
-             HeatEquationEocProblem_impl.h             
-             HeatEquationEocRhs.h 
-	     MeanCurvatureFlowEocProblem.h
-	     MeanCurvatureFlowEocProblem_impl.h
-	     MeanCurvatureFlowEocRhs.h
-	     MeanCurvatureFlowProblem.h
-	     MeanCurvatureFlowProblem_impl.h            
-   )
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Problems )
diff --git a/src/TNL/Problems/cfd/CMakeLists.txt b/src/TNL/Problems/cfd/CMakeLists.txt
deleted file mode 100644
index 24a481fe9dfc40667f59716ced29ffa7490d0775..0000000000000000000000000000000000000000
--- a/src/TNL/Problems/cfd/CMakeLists.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-ADD_SUBDIRECTORY( navier-stokes )
-
diff --git a/src/TNL/Problems/cfd/navier-stokes/CMakeLists.txt b/src/TNL/Problems/cfd/navier-stokes/CMakeLists.txt
deleted file mode 100644
index dd8ea495a0435ef1521fbc330684e05811f49e57..0000000000000000000000000000000000000000
--- a/src/TNL/Problems/cfd/navier-stokes/CMakeLists.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-SET( headers NavierStokesSolver.h 
-             NavierStokesSolver_impl.h )
-
-SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Solvers/cfd/navier-stokes )
-
-if( BUILD_CUDA)
-      set( tnl_solvers_cfd_navier_stokes_CUDA__SOURCES
-        ${common_SOURCES}
-        PARENT_SCOPE )
-endif()
-
-set( tnl_solvers_cfd_navier_stokes_SOURCES
-     ${common_SOURCES}
-     PARENT_SCOPE )
-   
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/solvers/cfd/navier-stokes )
diff --git a/src/TNL/Solvers/CMakeLists.txt b/src/TNL/Solvers/CMakeLists.txt
deleted file mode 100644
index e1df958fb903f52c9c8f03991a0fe08feb8af1f3..0000000000000000000000000000000000000000
--- a/src/TNL/Solvers/CMakeLists.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-ADD_SUBDIRECTORY( Linear )
-ADD_SUBDIRECTORY( ODE )
-ADD_SUBDIRECTORY( PDE )
-
-SET( headers IterativeSolver.h
-             IterativeSolver_impl.h
-             BuildConfigTags.h
-             FastBuildConfigTag.h
-             LinearSolverTypeResolver.h
-             Solver.h
-             Solver_impl.h
-             SolverStarter.h
-             SolverStarter_impl.h
-             SolverInitiator.h
-             SolverInitiator_impl.h
-             SolverMonitor.h
-             SolverConfig.h
-             SolverConfig_impl.h
-             DummyProblem.h
-             IterativeSolverMonitor.h
-             IterativeSolverMonitor_impl.h )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Solvers )
diff --git a/src/TNL/Solvers/Linear/CMakeLists.txt b/src/TNL/Solvers/Linear/CMakeLists.txt
deleted file mode 100644
index f5815d34f7f161d1082779eadffe565249a6a9ed..0000000000000000000000000000000000000000
--- a/src/TNL/Solvers/Linear/CMakeLists.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-ADD_SUBDIRECTORY( Preconditioners )
-
-SET( headers BICGStab.h
-             BICGStab_impl.h
-             BICGStabL.h
-             BICGStabL_impl.h
-             CG.h
-             CG_impl.h
-             GMRES.h
-             GMRES_impl.h
-             Jacobi.h
-             LinearResidueGetter.h
-             LinearResidueGetter_impl.h
-             LinearSolver.h
-             SOR.h
-             SOR_impl.h
-             TFQMR.h
-             TFQMR_impl.h
-             Traits.h
-             UmfpackWrapper.h
-             UmfpackWrapper_impl.h
-   )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Solvers/Linear )
diff --git a/src/TNL/Solvers/Linear/Preconditioners/CMakeLists.txt b/src/TNL/Solvers/Linear/Preconditioners/CMakeLists.txt
deleted file mode 100644
index 13f733c8ee4d2287de1082aee085d6d64bccd894..0000000000000000000000000000000000000000
--- a/src/TNL/Solvers/Linear/Preconditioners/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-SET( headers Preconditioner.h
-             Diagonal.h
-             Diagonal_impl.h
-             ILU0.h
-             ILU0_impl.h
-             ILUT.h
-             ILUT_impl.h
-             TriangularSolve.h
-   )
-
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Solvers/Linear/Preconditioners )
diff --git a/src/TNL/Solvers/ODE/CMakeLists.txt b/src/TNL/Solvers/ODE/CMakeLists.txt
deleted file mode 100644
index a360eb6b4b6255cd68c1850bf35e92a6546c9cfe..0000000000000000000000000000000000000000
--- a/src/TNL/Solvers/ODE/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-SET( headers Euler.h
-             Euler_impl.h
-             Merson.h
-             Merson_impl.h
-             ExplicitSolver.h
-             ExplicitSolver_impl.h )
-                
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Solvers/ODE )
diff --git a/src/TNL/Solvers/PDE/CMakeLists.txt b/src/TNL/Solvers/PDE/CMakeLists.txt
deleted file mode 100644
index 98f367667d351e9f5dfbcc82b8e0b6a4502acdd2..0000000000000000000000000000000000000000
--- a/src/TNL/Solvers/PDE/CMakeLists.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-SET( headers BackwardTimeDiscretisation.h
-             BoundaryConditionsSetter.h
-             ExplicitTimeStepper.h
-             ExplicitTimeStepper_impl.h
-             ExplicitUpdater.h
-             LinearSystemAssembler.h
-             MeshDependentTimeSteps.h
-             NoTimeDiscretisation.h
-             PDESolver.h
-             PDESolver_impl.h
-             PDESolverTypeResolver.h
-             TimeDependentPDESolver.h
-             TimeDependentPDESolver_impl.h
-             TimeIndependentPDESolver.h
-             TimeIndependentPDESolver_impl.h
-             SemiImplicitTimeStepper.h
-             SemiImplicitTimeStepper_impl.h )
-
-             
-INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Solvers/PDE )