diff --git a/Build/AtlasCMake/modules/AtlasDictionaryFunctions.cmake b/Build/AtlasCMake/modules/AtlasDictionaryFunctions.cmake
index 89f4d4dc95ce2e0ef7bb8f3cee537c4ffe792d4d..0b1b2698265a8f0e198e7a26548edadcb1e8ed0c 100644
--- a/Build/AtlasCMake/modules/AtlasDictionaryFunctions.cmake
+++ b/Build/AtlasCMake/modules/AtlasDictionaryFunctions.cmake
@@ -467,12 +467,11 @@ function( atlas_add_root_dictionary libName dictfile )
    # Get the current directory's compiler definitions. But remove the
    # PACKAGE_VERSION stuff from in there.
    get_directory_property( definitions COMPILE_DEFINITIONS )
-   string( REGEX REPLACE "[^ ]*PACKAGE_VERSION[^ ]*" ""
-      definitions ${definitions} )
+   list( REMOVE_DUPLICATES definitions )
 
    # Get the compile definitions from the main library:
    list( APPEND definitions
-      "$<TARGET_PROPERTY:${libName},COMPILE_DEFINITIONS>" )
+      "$<TARGET_PROPERTY:${libName},INTERFACE_COMPILE_DEFINITIONS>" )
 
    # Unfortunately at this point the escape characters are gone from the
    # definitions. Most notably for the PACKAGE_VERSION macro. So let's add
@@ -534,7 +533,7 @@ function( atlas_add_root_dictionary libName dictfile )
    # there are some bugs currently (3.3.2) in how add_custom_command handles
    # generator expressions. But file(GENERATE...) does do this correctly.
    set( scriptName "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}" )
-   set( scriptName "${scriptName}/make${libName}ReflexDict.sh" )
+   set( scriptName "${scriptName}/make${libName}CintDict.sh" )
    file( GENERATE OUTPUT ${scriptName}
       CONTENT "${cmd}" )
 
@@ -634,8 +633,7 @@ function( atlas_generate_reflex_dictionary dictfile dictname )
    # Get the current directory's compiler definitions. But remove the
    # PACKAGE_VERSION stuff from in there.
    get_directory_property( definitions COMPILE_DEFINITIONS )
-   string( REGEX REPLACE "[^ ]*PACKAGE_VERSION[^ ]*" ""
-      definitions ${definitions} )
+   list( REMOVE_DUPLICATES definitions )
 
    # Simply always use the definition needed to build dictionaries for Eigen
    # classes. As the definition doesn't hurt when Eigen is not used anyway...
@@ -643,7 +641,7 @@ function( atlas_generate_reflex_dictionary dictfile dictname )
 
    # Get the compile definitions from the dictionary library:
    list( APPEND definitions
-      "$<TARGET_PROPERTY:${dictname},COMPILE_DEFINITIONS>" )
+      "$<TARGET_PROPERTY:${dictname},INTERFACE_COMPILE_DEFINITIONS>" )
 
    # Unfortunately at this point the escape characters are gone from the
    # definitions. Most notably for the PACKAGE_VERSION macro. So let's add