diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b3383b1..97c6d461 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -42,9 +42,22 @@ message(STATUS "TRIQS : Adding compilation flags detected by the library (C++11/
add_subdirectory(c++)
add_subdirectory(python)
add_subdirectory(shells)
-add_subdirectory(test)
+#------------------------
+# tests
+#------------------------
+
+enable_testing()
+
+option(Build_Tests "Build the tests of the library " ON)
+if (Build_Tests)
+ message(STATUS "-------- Preparing tests -------------")
+ add_subdirectory(test)
+endif()
+#------------------------
+# Documentation
+#------------------------
option(BUILD_DOC "Build documentation" OFF)
if(${BUILD_DOC})
if(NOT TRIQS_WITH_DOCUMENTATION)
diff --git a/c++/plovasp/atm/CMakeLists.txt b/c++/plovasp/atm/CMakeLists.txt
index eb8b8340..afcb0176 100644
--- a/c++/plovasp/atm/CMakeLists.txt
+++ b/c++/plovasp/atm/CMakeLists.txt
@@ -1,6 +1,6 @@
add_library(atm_c dos_tetra3d.hpp dos_tetra3d.cpp argsort.hpp argsort.cpp)
target_link_libraries(atm_c triqs)
-target_compile_options(atm_c PRIVATE -std=c++14)
+target_compile_options(atm_c PRIVATE -std=c++17)
install(TARGETS atm_c DESTINATION lib)
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index 32a92ef2..3e481102 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -4,7 +4,14 @@ set(PYTHON_LIB_DEST ${CPP2PY_PYTHON_LIB_DEST_ROOT}/pytriqs/cthyb)
# site_customize for build
set(package_name "pytriqs.applications")
-configure_file(${CMAKE_SOURCE_DIR}/cmake/sitecustomize.py ${CMAKE_CURRENT_BINARY_DIR}/sitecustomize.py @ONLY)
+
+# Create a temporary copy of the python modules so that we can run before installation with the test
+FILE(GLOB_RECURSE all_py_files RELATIVE ${CMAKE_SOURCE_DIR}/python *.py )
+foreach(f ${all_py_files})
+ configure_file(${f} ${f} COPYONLY)
+endforeach()
+
+#configure_file(${CMAKE_SOURCE_DIR}/cmake/sitecustomize.py ${CMAKE_CURRENT_BINARY_DIR}/sitecustomize.py @ONLY)
# VASP converter
add_subdirectory(converters/plovasp)
diff --git a/python/converters/converter_tools.py b/python/converters/converter_tools.py
index 126ffd57..b971518d 100644
--- a/python/converters/converter_tools.py
+++ b/python/converters/converter_tools.py
@@ -19,10 +19,8 @@
# TRIQS. If not, see .
#
##########################################################################
-from pytriqs.cmake_info import hdf5_command_path
import pytriqs.utility.mpi as mpi
-
class ConverterTools:
def __init__(self):
@@ -73,7 +71,7 @@ class ConverterTools:
mpi.report("Repacking the file %s" % self.hdf_file)
retcode = subprocess.call(
- [hdf5_command_path + "/h5repack", "-i%s" % self.hdf_file, "-otemphgfrt.h5"])
+ ["h5repack", "-i%s" % self.hdf_file, "-otemphgfrt.h5"])
if retcode != 0:
mpi.report("h5repack failed!")
else:
diff --git a/python/converters/plovasp/CMakeLists.txt b/python/converters/plovasp/CMakeLists.txt
index 67c7b732..f9750662 100644
--- a/python/converters/plovasp/CMakeLists.txt
+++ b/python/converters/plovasp/CMakeLists.txt
@@ -3,7 +3,8 @@ set(python_destination pytriqs/applications/dft/converters/plovasp)
add_cpp2py_module(atm)
target_link_libraries(atm atm_c triqs)
#triqs_set_rpath_for_target(atm)
-target_compile_options(atm PRIVATE -std=c++14)
+target_compile_options(atm PRIVATE -std=c++17)
+target_include_directories(atm PRIVATE ${CMAKE_SOURCE_DIR}/c++)
# This we need in order for tests to work
#add_custom_command(TARGET atm POST_BUILD COMMAND ln -fs ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}/atm.so ${CMAKE_BINARY_DIR}/python/dft/converters/plovasp)
diff --git a/python/converters/plovasp/atm_desc.py b/python/converters/plovasp/atm_desc.py
index 1fd53f01..ac3776f0 100644
--- a/python/converters/plovasp/atm_desc.py
+++ b/python/converters/plovasp/atm_desc.py
@@ -8,11 +8,11 @@ module = module_(full_name = "atm", doc = "Analytical Tetrahedron Method for cal
# All the triqs C++/Python modules
# Add here all includes beyond what is automatically included by the triqs modules
-module.add_include("../../../c++/plovasp/atm/dos_tetra3d.hpp")
+module.add_include("plovasp/atm/dos_tetra3d.hpp")
# Add here anything to add in the C++ code at the start, e.g. namespace using
module.add_preamble("""
-#include
+#include
""")
module.add_function ("array_view dos_tetra_weights_3d (array_view eigk, double en, array_view itt)", doc = """DOS of a band by analytical tetrahedron method\n\n Returns corner weights for all tetrahedra for a given band and real energy.""")
diff --git a/test/blockstructure.py b/test/blockstructure.py
index 0d83123d..33f1a570 100644
--- a/test/blockstructure.py
+++ b/test/blockstructure.py
@@ -1,8 +1,8 @@
-from pytriqs.applications.dft.sumk_dft import *
+from sumk_dft import *
from pytriqs.utility.h5diff import h5diff
from pytriqs.gf import *
from pytriqs.utility.comparison_tests import assert_block_gfs_are_close
-from pytriqs.applications.dft import BlockStructure
+from block_structure import BlockStructure
SK = SumkDFT('blockstructure.in.h5',use_dft_blocks=True)
diff --git a/test/hk_convert.py b/test/hk_convert.py
index 439d457b..e1d72893 100644
--- a/test/hk_convert.py
+++ b/test/hk_convert.py
@@ -21,11 +21,12 @@
################################################################################
-from pytriqs.applications.dft.converters import *
from pytriqs.archive import *
from pytriqs.utility.h5diff import h5diff
import pytriqs.utility.mpi as mpi
+from converters import *
+
Converter = HkConverter(filename='hk_convert_hamiltonian.hk',hdf_filename='hk_convert.out.h5')
Converter.convert_dft_input()
diff --git a/test/plovasp/atm/test_atm.py b/test/plovasp/atm/test_atm.py
index 3e22b3f5..913fc40a 100644
--- a/test/plovasp/atm/test_atm.py
+++ b/test/plovasp/atm/test_atm.py
@@ -2,7 +2,7 @@
import os
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.atm import dos_tetra_weights_3d
+from converters.plovasp.atm import dos_tetra_weights_3d
import mytest
################################################################################
diff --git a/test/plovasp/inpconf/test_general.py b/test/plovasp/inpconf/test_general.py
index 8cc694de..14d04b3f 100644
--- a/test/plovasp/inpconf/test_general.py
+++ b/test/plovasp/inpconf/test_general.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/inpconf/test_groups.py b/test/plovasp/inpconf/test_groups.py
index 6f2a1cc2..b1d7153f 100644
--- a/test/plovasp/inpconf/test_groups.py
+++ b/test/plovasp/inpconf/test_groups.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/inpconf/test_input.py b/test/plovasp/inpconf/test_input.py
index 89418fdb..94941a19 100644
--- a/test/plovasp/inpconf/test_input.py
+++ b/test/plovasp/inpconf/test_input.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/inpconf/test_parameter_set.py b/test/plovasp/inpconf/test_parameter_set.py
index 36590dc6..c6748086 100644
--- a/test/plovasp/inpconf/test_parameter_set.py
+++ b/test/plovasp/inpconf/test_parameter_set.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/inpconf/test_shells.py b/test/plovasp/inpconf/test_shells.py
index 8d488481..98220d2b 100644
--- a/test/plovasp/inpconf/test_shells.py
+++ b/test/plovasp/inpconf/test_shells.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/inpconf/test_special_parsers.py b/test/plovasp/inpconf/test_special_parsers.py
index 9e8dab57..a751f480 100644
--- a/test/plovasp/inpconf/test_special_parsers.py
+++ b/test/plovasp/inpconf/test_special_parsers.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import arraytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.inpconf import ConfigParameters
################################################################################
#
diff --git a/test/plovasp/plotools/test_consistency.py b/test/plovasp/plotools/test_consistency.py
index 9add6920..216e89f7 100644
--- a/test/plovasp/plotools/test_consistency.py
+++ b/test/plovasp/plotools/test_consistency.py
@@ -1,8 +1,8 @@
-import pytriqs.applications.dft.converters.plovasp.vaspio
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.plotools import check_data_consistency
-from pytriqs.applications.dft.converters.plovasp.elstruct import ElectronicStructure
+import converters.plovasp.vaspio
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.plotools import check_data_consistency
+from converters.plovasp.elstruct import ElectronicStructure
import mytest
################################################################################
diff --git a/test/plovasp/proj_group/test_block_map.py b/test/plovasp/proj_group/test_block_map.py
index e7ab7993..80d6fd04 100644
--- a/test/plovasp/proj_group/test_block_map.py
+++ b/test/plovasp/proj_group/test_block_map.py
@@ -4,9 +4,9 @@ import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.proj_shell import ProjectorShell
-from pytriqs.applications.dft.converters.plovasp.proj_group import ProjectorGroup
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.proj_shell import ProjectorShell
+from converters.plovasp.proj_group import ProjectorGroup
import mytest
################################################################################
diff --git a/test/plovasp/proj_group/test_one_site.py b/test/plovasp/proj_group/test_one_site.py
index 9a4939e0..8a777d10 100644
--- a/test/plovasp/proj_group/test_one_site.py
+++ b/test/plovasp/proj_group/test_one_site.py
@@ -4,11 +4,11 @@ import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import VaspData
-from pytriqs.applications.dft.converters.plovasp.elstruct import ElectronicStructure
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.proj_shell import ProjectorShell
-from pytriqs.applications.dft.converters.plovasp.proj_group import ProjectorGroup
+from converters.plovasp.vaspio import VaspData
+from converters.plovasp.elstruct import ElectronicStructure
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.proj_shell import ProjectorShell
+from converters.plovasp.proj_group import ProjectorGroup
from pytriqs.archive import HDFArchive
import mytest
diff --git a/test/plovasp/proj_group/test_select_bands.py b/test/plovasp/proj_group/test_select_bands.py
index f3bfb61f..4d53c42b 100644
--- a/test/plovasp/proj_group/test_select_bands.py
+++ b/test/plovasp/proj_group/test_select_bands.py
@@ -4,11 +4,11 @@ import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import VaspData
-from pytriqs.applications.dft.converters.plovasp.elstruct import ElectronicStructure
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.proj_shell import ProjectorShell
-from pytriqs.applications.dft.converters.plovasp.proj_group import ProjectorGroup
+from converters.plovasp.vaspio import VaspData
+from converters.plovasp.elstruct import ElectronicStructure
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.proj_shell import ProjectorShell
+from converters.plovasp.proj_group import ProjectorGroup
import mytest
################################################################################
diff --git a/test/plovasp/proj_group/test_two_site.py b/test/plovasp/proj_group/test_two_site.py
index 4f62961a..8db9b951 100644
--- a/test/plovasp/proj_group/test_two_site.py
+++ b/test/plovasp/proj_group/test_two_site.py
@@ -4,11 +4,11 @@ import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import VaspData
-from pytriqs.applications.dft.converters.plovasp.elstruct import ElectronicStructure
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.proj_shell import ProjectorShell
-from pytriqs.applications.dft.converters.plovasp.proj_group import ProjectorGroup
+from converters.plovasp.vaspio import VaspData
+from converters.plovasp.elstruct import ElectronicStructure
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.proj_shell import ProjectorShell
+from converters.plovasp.proj_group import ProjectorGroup
from pytriqs.archive import HDFArchive
import mytest
diff --git a/test/plovasp/proj_shell/test_projshells.py b/test/plovasp/proj_shell/test_projshells.py
index 41480649..97e1693f 100644
--- a/test/plovasp/proj_shell/test_projshells.py
+++ b/test/plovasp/proj_shell/test_projshells.py
@@ -4,11 +4,11 @@ import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import VaspData
-from pytriqs.applications.dft.converters.plovasp.elstruct import ElectronicStructure
-from pytriqs.applications.dft.converters.plovasp.inpconf import ConfigParameters
-from pytriqs.applications.dft.converters.plovasp.proj_shell import ProjectorShell
-from pytriqs.applications.dft.converters.plovasp.proj_group import ProjectorGroup
+from converters.plovasp.vaspio import VaspData
+from converters.plovasp.elstruct import ElectronicStructure
+from converters.plovasp.inpconf import ConfigParameters
+from converters.plovasp.proj_shell import ProjectorShell
+from converters.plovasp.proj_group import ProjectorGroup
import mytest
################################################################################
diff --git a/test/plovasp/vaspio/test_doscar.py b/test/plovasp/vaspio/test_doscar.py
index 2b22a5df..68148d75 100644
--- a/test/plovasp/vaspio/test_doscar.py
+++ b/test/plovasp/vaspio/test_doscar.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import mytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import Doscar
+from converters.plovasp.vaspio import Doscar
################################################################################
#
diff --git a/test/plovasp/vaspio/test_eigenval.py b/test/plovasp/vaspio/test_eigenval.py
index 8a4a17a9..4cca5a8d 100644
--- a/test/plovasp/vaspio/test_eigenval.py
+++ b/test/plovasp/vaspio/test_eigenval.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import mytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import Eigenval
+from converters.plovasp.vaspio import Eigenval
################################################################################
#
diff --git a/test/plovasp/vaspio/test_kpoints.py b/test/plovasp/vaspio/test_kpoints.py
index 4a70338b..43f67ef3 100644
--- a/test/plovasp/vaspio/test_kpoints.py
+++ b/test/plovasp/vaspio/test_kpoints.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import mytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import Kpoints
+from converters.plovasp.vaspio import Kpoints
################################################################################
#
diff --git a/test/plovasp/vaspio/test_poscar.py b/test/plovasp/vaspio/test_poscar.py
index c0047b0e..25d37080 100644
--- a/test/plovasp/vaspio/test_poscar.py
+++ b/test/plovasp/vaspio/test_poscar.py
@@ -7,7 +7,7 @@ _rpath = os.path.dirname(rpath.__file__) + '/'
import mytest
import numpy as np
-from pytriqs.applications.dft.converters.plovasp.vaspio import Poscar
+from converters.plovasp.vaspio import Poscar
################################################################################
#
diff --git a/test/sigma_from_file.py b/test/sigma_from_file.py
index 7f8640c0..ccf88280 100644
--- a/test/sigma_from_file.py
+++ b/test/sigma_from_file.py
@@ -22,7 +22,7 @@
from pytriqs.archive import *
from pytriqs.gf import *
from pytriqs.gf.tools import *
-from pytriqs.applications.dft.sumk_dft_tools import *
+from sumk_dft_tools import *
from pytriqs.utility.comparison_tests import *
import numpy as np
diff --git a/test/srvo3_Gloc.py b/test/srvo3_Gloc.py
index 20f9d120..f10555e4 100644
--- a/test/srvo3_Gloc.py
+++ b/test/srvo3_Gloc.py
@@ -21,8 +21,8 @@
from pytriqs.archive import *
from pytriqs.gf import *
-from pytriqs.applications.dft.sumk_dft import *
-from pytriqs.applications.dft.converters.wien2k_converter import *
+from sumk_dft import *
+from converters.wien2k_converter import *
from pytriqs.operators.util import set_operator_structure
from pytriqs.utility.comparison_tests import *
from pytriqs.utility.h5diff import h5diff
diff --git a/test/srvo3_transp.py b/test/srvo3_transp.py
index 920459f0..cb609c2f 100644
--- a/test/srvo3_transp.py
+++ b/test/srvo3_transp.py
@@ -20,9 +20,9 @@
################################################################################
from numpy import *
-from pytriqs.applications.dft.converters.wien2k_converter import *
-from pytriqs.applications.dft.sumk_dft import *
-from pytriqs.applications.dft.sumk_dft_tools import *
+from converters.wien2k_converter import *
+from sumk_dft import *
+from sumk_dft_tools import *
from pytriqs.utility.comparison_tests import *
from pytriqs.utility.h5diff import h5diff
diff --git a/test/sumkdft_basic.py b/test/sumkdft_basic.py
index ba456060..52dd1a48 100644
--- a/test/sumkdft_basic.py
+++ b/test/sumkdft_basic.py
@@ -21,7 +21,7 @@
################################################################################
from pytriqs.archive import *
-from pytriqs.applications.dft.sumk_dft_tools import SumkDFTTools
+from sumk_dft_tools import SumkDFTTools
import pytriqs.utility.mpi as mpi
from pytriqs.utility.comparison_tests import *
from pytriqs.utility.h5diff import h5diff
diff --git a/test/w90_convert.py b/test/w90_convert.py
index e5c18ffd..1c483e50 100644
--- a/test/w90_convert.py
+++ b/test/w90_convert.py
@@ -21,7 +21,7 @@
################################################################################
-from pytriqs.applications.dft.converters import *
+from converters import *
from pytriqs.archive import *
from pytriqs.utility.h5diff import h5diff
import pytriqs.utility.mpi as mpi
diff --git a/test/wien2k_convert.py b/test/wien2k_convert.py
index c643f19a..77076068 100644
--- a/test/wien2k_convert.py
+++ b/test/wien2k_convert.py
@@ -21,11 +21,12 @@
################################################################################
from pytriqs.archive import *
-from pytriqs.applications.dft.converters import Wien2kConverter
from pytriqs.utility.comparison_tests import *
from pytriqs.utility.h5diff import h5diff
import pytriqs.utility.mpi as mpi
+from converters import Wien2kConverter
+
Converter = Wien2kConverter(filename='SrVO3')
Converter.hdf_file = 'wien2k_convert.out.h5'
Converter.convert_dft_input()