Selaa lähdekoodia

Search prefix /usr before root prefix /

Commit "Find locally installed software first" made /usr/local the first
prefix searched to be consistent with the Filesystem Hierarchy Standard:

  http://www.pathname.com/fhs/

The standard also implies that the root prefix "/" should not have any
package or development files.  The "/bin" and "/lib" directories should
have only minimal contents to boot the system.  No "/include" ever
exists.  This commit re-orders the search path prefix list from

  /usr/local
  /
  /usr

to

  /usr/local
  /usr
  /

to prefer package and development files over low-level system files.
See issue #10136.

On Cygwin /usr/lib == /lib and /usr/bin == /bin.  This change also makes
search results report locations as "/usr/..." instead of "/lib/...".
See issue #10122.
Brad King 16 vuotta sitten
vanhempi
sitoutus
12dcf9e4fb
1 muutettua tiedostoa jossa 1 lisäystä ja 1 poistoa
  1. 1 1
      Modules/Platform/UnixPaths.cmake

+ 1 - 1
Modules/Platform/UnixPaths.cmake

@@ -33,7 +33,7 @@ GET_FILENAME_COMPONENT(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH)
 # search types.
 LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH
   # Standard
-  /usr/local / /usr
+  /usr/local /usr /
 
   # CMake install location
   "${_CMAKE_INSTALL_DIR}"