diff --git a/Modules/CPackNSIS.cmake b/Modules/CPackNSIS.cmake
index 7d9f29b..5e2ba17 100644
--- a/Modules/CPackNSIS.cmake
+++ b/Modules/CPackNSIS.cmake
@@ -15,16 +15,22 @@
 ##end
 #
 ##variable
-#   CPACK_NSIS_MUI_ICON - The icon file (.ico) for the generated
+#   CPACK_NSIS_MUI_ICON - An icon filename.
+#   The name of a *.ico file used as the main icon for the generated
 #   install program.
 ##end
 #
 ##variable
-#   CPACK_NSIS_MUI_UNIICON - The icon file (.ico) for the generated
+#   CPACK_NSIS_MUI_UNIICON - An icon filename.
+#   The name of a *.ico file used as the main icon for the generated
 #   uninstall program.
 ##end
 #
 ##variable
+#   CPACK_NSIS_INSTALLER_MUI_ICON_CODE - undocumented.
+##end
+#
+##variable
 #   CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that will
 #   be added to the install Section.
 ##end
@@ -40,7 +46,8 @@
 ##end
 #
 ##variable
-#   CPACK_NSIS_MODIFY_PATH - If this is set to "ON", then an extra page
+#   CPACK_NSIS_MODIFY_PATH - Modify PATH toggle.
+#   If this is set to "ON", then an extra page
 #   will appear in the installer that will allow the user to choose
 #   whether the program directory should be added to the system PATH
 #   variable.
diff --git a/Modules/CheckIncludeFiles.cmake b/Modules/CheckIncludeFiles.cmake
index 642d962..a94644e 100644
--- a/Modules/CheckIncludeFiles.cmake
+++ b/Modules/CheckIncludeFiles.cmake
@@ -13,7 +13,7 @@
 #  CMAKE_REQUIRED_INCLUDES = list of include directories
 
 #=============================================================================
-# Copyright 2003-2009 Kitware, Inc.
+# Copyright 2003-2012 Kitware, Inc.
 #
 # Distributed under the OSI-approved BSD License (the "License");
 # see accompanying file Copyright.txt for details.
@@ -44,7 +44,17 @@
     CONFIGURE_FILE("${CMAKE_ROOT}/Modules/CMakeConfigurableFile.in"
       "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFiles.c" @ONLY IMMEDIATE)
 
-    MESSAGE(STATUS "Looking for include files ${INCLUDE}")
+    SET(_INCLUDE ${INCLUDE}) # remove empty elements
+    IF("${_INCLUDE}" MATCHES "^([^;]+);.+;([^;]+)$")
+      LIST(LENGTH _INCLUDE _INCLUDE_LEN)
+      SET(_description "${_INCLUDE_LEN} include files ${CMAKE_MATCH_1}, ..., ${CMAKE_MATCH_2}")
+    ELSEIF("${_INCLUDE}" MATCHES "^([^;]+);([^;]+)$")
+      SET(_description "include files ${CMAKE_MATCH_1}, ${CMAKE_MATCH_2}")
+    ELSE()
+      SET(_description "include file ${_INCLUDE}")
+    ENDIF()
+
+    MESSAGE(STATUS "Looking for ${_description}")
     TRY_COMPILE(${VARIABLE}
       ${CMAKE_BINARY_DIR}
       ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFiles.c
@@ -54,14 +64,14 @@
       "${CHECK_INCLUDE_FILES_INCLUDE_DIRS}"
       OUTPUT_VARIABLE OUTPUT)
     IF(${VARIABLE})
-      MESSAGE(STATUS "Looking for include files ${INCLUDE} - found")
+      MESSAGE(STATUS "Looking for ${_description} - found")
       SET(${VARIABLE} 1 CACHE INTERNAL "Have include ${INCLUDE}")
       FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log 
         "Determining if files ${INCLUDE} "
         "exist passed with the following output:\n"
         "${OUTPUT}\n\n")
     ELSE(${VARIABLE})
-      MESSAGE(STATUS "Looking for include files ${INCLUDE} - not found.")
+      MESSAGE(STATUS "Looking for ${_description} - not found.")
       SET(${VARIABLE} "" CACHE INTERNAL "Have includes ${INCLUDE}")
       FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log 
         "Determining if files ${INCLUDE} "
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index 9c03b3d..7504ea4 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -65,7 +65,8 @@
 # 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1,
 # 1.36, 1.36.0, 1.36.1, 1.37, 1.37.0, 1.38, 1.38.0, 1.39, 1.39.0,
 # 1.40, 1.40.0, 1.41, 1.41.0, 1.42, 1.42.0, 1.43, 1.43.0, 1.44, 1.44.0,
-# 1.45, 1.45.0, 1.46, 1.46.0, 1.46.1, 1.47, 1.47.0, 1.48, 1.48.0
+# 1.45, 1.45.0, 1.46, 1.46.0, 1.46.1, 1.47, 1.47.0, 1.48, 1.48.0,
+# 1.49, 1.49.0, 1.50, 1.50.0
 #
 # NOTE: If you add a new major 1.x version in Boost_ADDITIONAL_VERSIONS you should
 # add both 1.x and 1.x.0 as shown above.  Official Boost include directories
@@ -449,7 +450,7 @@
   # The user has not requested an exact version.  Among known
   # versions, find those that are acceptable to the user request.
   set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
-    "1.48.0" "1.48" "1.47.0" "1.47" "1.46.1"
+    "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47" "1.46.1"
     "1.46.0" "1.46" "1.45.0" "1.45" "1.44.0" "1.44" "1.43.0" "1.43" "1.42.0" "1.42"
     "1.41.0" "1.41" "1.40.0" "1.40" "1.39.0" "1.39" "1.38.0" "1.38" "1.37.0" "1.37"
     "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0"
diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
index c4b5635..f9d37c3 100644
--- a/Modules/Platform/Darwin.cmake
+++ b/Modules/Platform/Darwin.cmake
@@ -56,6 +56,7 @@
 # hardcode CMAKE_INSTALL_NAME_TOOL here to install_name_tool, so it behaves as it did before, Alex
 IF(NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
   FIND_PROGRAM(CMAKE_INSTALL_NAME_TOOL install_name_tool)
+  MARK_AS_ADVANCED(CMAKE_INSTALL_NAME_TOOL)
 ENDIF(NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
 
 # Set the assumed (Pre 10.5 or Default) location of the developer tools
@@ -63,6 +64,7 @@
 
 # Use the xcode-select tool if it's available (Xcode >= 3.0 installations)
 FIND_PROGRAM(CMAKE_XCODE_SELECT xcode-select)
+MARK_AS_ADVANCED(CMAKE_XCODE_SELECT)
 IF(CMAKE_XCODE_SELECT)
   EXECUTE_PROCESS(COMMAND ${CMAKE_XCODE_SELECT} "-print-path"
     OUTPUT_VARIABLE OSX_DEVELOPER_ROOT
@@ -239,10 +241,22 @@
 # default to searching for application bundles first
 SET(CMAKE_FIND_APPBUNDLE FIRST)
 # set up the default search directories for application bundles
+SET(_apps_paths)
+FOREACH(_path
+  "~/Applications"
+  "/Applications"
+  "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+
+  "${OSX_DEVELOPER_ROOT}/Applications"    # pre-4.3
+  )
+  GET_FILENAME_COMPONENT(_apps "${_path}" ABSOLUTE)
+  IF(EXISTS "${_apps}")
+    LIST(APPEND _apps_paths "${_apps}")
+  ENDIF()
+ENDFOREACH()
+LIST(REMOVE_DUPLICATES _apps_paths)
 SET(CMAKE_SYSTEM_APPBUNDLE_PATH
-  ~/Applications
-  /Applications
-  /Developer/Applications)
+  ${_apps_paths})
+UNSET(_apps_paths)
 
 INCLUDE(Platform/UnixPaths)
 LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH
diff --git a/Source/kwsys/kwsysDateStamp.cmake b/Source/kwsys/kwsysDateStamp.cmake
index 8b87ed4..f157607 100644
--- a/Source/kwsys/kwsysDateStamp.cmake
+++ b/Source/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 04)
 
 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   05)
+SET(KWSYS_DATE_STAMP_DAY   18)
