diff --git a/CMakeLists.txt b/CMakeLists.txt
index aeadc0349d7b81115f27c15cfe08a402b9f57975..87e3f6ef4e50251ddae1d6336aba65864180bc53 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,11 +25,8 @@ if(MOREFEM_CHECK_NAN_AND_INF)
     add_definitions(-DMOREFEM_CHECK_NAN_AND_INF)
 endif()
 
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
 
-# ===================================================================================================================
-# Set some values in the path file that night be overridden by cache variables.
-# WARNING: all those calls must occur BEFORE the call to project, so that overriding remains possible.
-# ===================================================================================================================
 
 # From http://cmake.3232098.n2.nabble.com/Default-value-for-CMAKE-BUILD-TYPE-td7550756.html#a7550797
 # Set a default build type if none was specified
@@ -41,31 +38,16 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
     "MinSizeRel" "RelWithDebInfo")
 endif()
 
-set(MOREFEM_INSTALL_DIR ${MOREFEM_INSTALL_DIR}/${CMAKE_BUILD_TYPE})
+set(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/${CMAKE_BUILD_TYPE})
+set(MOREFEM_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/cmake)
 
-# Set C and CXX compilers from the values read in the setting file. Might be overridden in command line.
-
-# if (NOT DEFINED CMAKE_C_COMPILER)
-#     set(CMAKE_C_COMPILER ${MPI_CC})
-# endif()
-#
-# if (NOT DEFINED CMAKE_CXX_COMPILER)
-#     set(CMAKE_CXX_COMPILER ${MPI_CXX})
-# endif()
-#
 
 # ===================================================================================================================
 # Set project.
 # ===================================================================================================================
 project( "MoReFEM_CMAKE")
 
-set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF) # I want c++17, not gnu++17.
-
 include(CustomCommands)
 
 # All --all_load in target_link_libraries of executables if STATIC library are chosen.
diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt
index 37725a40c9e3fcc83dd0d0040c08626b53362ee0..22ed8f669a8dc4af43802a3437b711a34993e86c 100644
--- a/Sources/CMakeLists.txt
+++ b/Sources/CMakeLists.txt
@@ -71,11 +71,15 @@ install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/ DESTINATION ${MOREFEM_INSTALL_DIR_I
 
 install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/ DESTINATION ${MOREFEM_INSTALL_DIR_INCL}
         FILES_MATCHING PATTERN "*.hxx")
+
+# Only for Seldon...        
+install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/ DESTINATION ${MOREFEM_INSTALL_DIR_INCL}
+        FILES_MATCHING PATTERN "*.cxx")
         
         
 # TODO: also make the multiple lib case work!
-list(APPEND header_files "")
-extract_header_files(MoReFEM header_files ${CMAKE_CURRENT_LIST_DIR})
+# list(APPEND header_files "")
+# extract_header_files(MoReFEM header_files ${CMAKE_CURRENT_LIST_DIR})
 
 #message("HEAD" ${header_files})
 
@@ -84,7 +88,10 @@ extract_header_files(MoReFEM header_files ${CMAKE_CURRENT_LIST_DIR})
 #
 add_library(morefem_cmake INTERFACE)
 target_include_directories(morefem_cmake INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
-                                             $<INSTALL_INTERFACE:include>)
+                                                   $<INSTALL_INTERFACE:include>)
+                                                   
+target_link_libraries(morefem_cmake INTERFACE ${MOREFEM_MODEL} )
+                                                   
 # #
 #
 #
@@ -96,26 +103,24 @@ include(CMakePackageConfigHelpers)
 
 #Alias 
 
-set(MoReFEM_CMAKE_INCLUDE_DIRS ${MOREFEM_INSTALL_DIR_INCL})
-message("MoReFEM_CMAKE_INCLUDE_DIRS => " ${MoReFEM_CMAKE_INCLUDE_DIRS})
+#set(MoReFEM_CMAKE_INCLUDE_DIRS ${MOREFEM_INSTALL_DIR_INCL})
 
 
-install(TARGETS morefem_cmake
-        EXPORT ${PROJECT_NAME}-targets)
+install(TARGETS morefem_cmake ${MOREFEM_MODEL}
+        EXPORT ${PROJECT_NAME}-targets
+        LIBRARY DESTINATION ${MOREFEM_INSTALL_DIR_LIB}
+    )
 #
 # # Makes the project importable from the build directory
 export(EXPORT ${PROJECT_NAME}-targets
        FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake")
 
-install(FILES ${header_files}
-        DESTINATION ${MOREFEM_INSTALL_DIR_INCL})
+# install(FILES ${header_files}
+#         DESTINATION ${MOREFEM_INSTALL_DIR_INCL})
 
 # set(XTL_CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}" CACHE
 #     STRING "install path for xtlConfig.cmake")
 
-
-message("CHECK " ${CMAKE_CURRENT_BINARY_DIR})
-
 configure_package_config_file(../cmake/${PROJECT_NAME}Config.cmake.in
                               "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
                               INSTALL_DESTINATION ${MOREFEM_INSTALL_DIR_CMAKE})
@@ -123,7 +128,9 @@ configure_package_config_file(../cmake/${PROJECT_NAME}Config.cmake.in
 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
         DESTINATION ${MOREFEM_INSTALL_DIR_CMAKE})
         
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/../../cmake/CustomCommands.cmake
+install(FILES 
+            ${CMAKE_CURRENT_BINARY_DIR}/../../cmake/CustomCommands.cmake
+            ${CMAKE_CURRENT_BINARY_DIR}/../../cmake/Compiler.cmake
         DESTINATION ${MOREFEM_INSTALL_DIR_CMAKE})        
         
 #
diff --git a/cmake/Compiler.cmake b/cmake/Compiler.cmake
index f9403fa128eeffbcd1f3598d2da72927b123b0fe..3c68a476495cce181458b3dceb9518b61a510643 100644
--- a/cmake/Compiler.cmake
+++ b/cmake/Compiler.cmake
@@ -13,7 +13,7 @@ if(${CMAKE_C_COMPILER_ID} STREQUAL "AppleClang" OR ${CMAKE_C_COMPILER_ID} STREQU
     add_cxx_compiler_flag("-Wno-undefined-func-template")
     add_cxx_compiler_flag("-Wno-c++1z-extensions")
 
-    add_cxx_compiler_flag("-stdlib=libc++") 
+#    add_cxx_compiler_flag("-stdlib=libc++") 
     
     if (${CMAKE_BUILD_TYPE} STREQUAL "Debug")
         add_definitions(-D_LIBCPP_DEBUG2=0) # Additional checks such as index out of bounds in vectors in libc++; might 
diff --git a/cmake/Settings/clang_shared_lib.cmake b/cmake/Settings/clang_shared_lib.cmake
index 257309a150699f4b2e3fe8dfe78aead97d3e8195..2e1a10bf00af29cf9c57f91460431dcca4f05a91 100644
--- a/cmake/Settings/clang_shared_lib.cmake
+++ b/cmake/Settings/clang_shared_lib.cmake
@@ -1,8 +1,15 @@
-set(MOREFEM_INSTALL_DIR /Volumes/Data/sebastien/MoReFEM/CMake/shared CACHE PATH "Installation directory for executables and libraries. This will be completed with a subdirectory giving away the compilation mode (Debug, Release, etc...)")
+set(CMAKE_INSTALL_PREFIX /Volumes/Data/sebastien/MoReFEM/CMake/shared CACHE PATH "Installation directory for executables and libraries. This will be completed with a subdirectory giving away the compilation mode (Debug, Release, etc...)")
 
-set(CMAKE_C_COMPILER /Users/Shared/LibraryVersions/llvm-clang/Openmpi/bin/mpicc CACHE FILEPATH "C compiler. Prefer to use an openmpi wrapper.")
+
+set(CMAKE_C_COMPILER /Users/Shared/LibraryVersions/clang/Openmpi/bin/mpicc CACHE FILEPATH "C compiler. Prefer to use an openmpi wrapper.")
 set(CMAKE_CXX_COMPILER /Users/Shared/LibraryVersions/clang/Openmpi/bin/mpic++ CACHE FILEPATH "C++ compiler. Prefer to use an openmpi wrapper.")
 
+
+
+set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ standard; at least 17 is expected.")
+set(CMAKE_CXX_STANDARD_REQUIRED ON CACHE STRING "Leave this one active.")
+set(CMAKE_CXX_EXTENSIONS OFF CACHE STRING "If ON you might be using gnu++17; with OFF you'll use c++17.")
+
 set(LIBRARY_TYPE SHARED CACHE BOOL "Choose either STATIC or SHARED.")
 
 set(BUILD_MOREFEM_UNIQUE_LIBRARY True CACHE BOOL "Whether a unique library is built for MoReFEM core libraries or on the contrary if it is splitted in modules.")