diff --git a/wmake/rules/General/CGAL b/wmake/rules/General/CGAL
index f6c32e1bb6b0adf282ad251cca766238e0e9e7b3..1606a2a8ebe5ea05d3e5fc9bf76fc11c3a19f74c 100644
--- a/wmake/rules/General/CGAL
+++ b/wmake/rules/General/CGAL
@@ -3,6 +3,7 @@ CGAL_INC = \
     -I$(MPFR_ARCH_PATH)/include \
     -I$(BOOST_ARCH_PATH)/include \
     -I$(CGAL_ARCH_PATH)/include \
+    -I/usr/local/include \
     -I/usr/include
 
 CGAL_LIBS = \
diff --git a/wmake/scripts/have_boost b/wmake/scripts/have_boost
index c1cd39dbc173a21523382fa2713f1bcb666ed920..e78d8ab2280f96ee90625e6c1b8ac68757d843f3 100644
--- a/wmake/scripts/have_boost
+++ b/wmake/scripts/have_boost
@@ -82,12 +82,23 @@ have_boost()
         )
     elif isSystem "$BOOST_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_cgal b/wmake/scripts/have_cgal
index 9c14b0caec9bf22a6e0cbbd4a6c09948b366718d..d641ccad251cab08a8669a77e0f872b07c38983a 100644
--- a/wmake/scripts/have_cgal
+++ b/wmake/scripts/have_cgal
@@ -82,12 +82,23 @@ have_cgal()
         )
     elif isSystem "$CGAL_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_fftw b/wmake/scripts/have_fftw
index d3e87c5daba21c3abf479ed76a5b092973050178..1a899b050423e68d75e67f4d6009594047e1085b 100644
--- a/wmake/scripts/have_fftw
+++ b/wmake/scripts/have_fftw
@@ -82,12 +82,23 @@ have_fftw()
         )
     elif isSystem "$FFTW_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_kahip b/wmake/scripts/have_kahip
index 84e8cbde35c72c8782502dbd054b1ac418519b0c..3dcf7c952b7340d09543e8204cf7c856254d8813 100644
--- a/wmake/scripts/have_kahip
+++ b/wmake/scripts/have_kahip
@@ -90,12 +90,23 @@ have_kahip()
         )
     elif isSystem "$KAHIP_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_metis b/wmake/scripts/have_metis
index ec5b185c04186b4cba73a0b91e1ba4295154bc83..40752864183e3b92fa285affe0d6c4c9a743135c 100644
--- a/wmake/scripts/have_metis
+++ b/wmake/scripts/have_metis
@@ -91,12 +91,23 @@ have_metis()
         )
     elif isSystem "$METIS_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_mgridgen b/wmake/scripts/have_mgridgen
index 3c232c43fb5829443016be135fe11fb96c506fa5..d8900a56626b044f1e0ff18b8f46e24fe6ab378c 100644
--- a/wmake/scripts/have_mgridgen
+++ b/wmake/scripts/have_mgridgen
@@ -91,12 +91,23 @@ have_mgridgen()
         )
     elif isSystem "$MGRIDGEN_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_readline b/wmake/scripts/have_readline
index db85cdf0e8320d90c3b8da42403d9df061f97290..9f9509e40f37f5f4f2b49b599033032f55f9a34c 100644
--- a/wmake/scripts/have_readline
+++ b/wmake/scripts/have_readline
@@ -61,12 +61,23 @@ have_readline()
     library="libreadline$extLibso"
 
     # System only?
-    header=$(findFirstFile /usr/include/$header)
-
-    library=$(findFirstFile \
-        /usr/lib/$library \
-        /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-    )
+    header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+    case "$header" in
+    /usr/local/*)
+        library=$(findFirstFile \
+            /usr/local/lib/$library \
+            /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+        )
+        ;;
+
+    *)
+        library=$(findFirstFile \
+            /usr/lib/$library \
+            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+        )
+        ;;
+    esac
 
     # Header found?
     [ -n "$header" ] || {
diff --git a/wmake/scripts/have_scotch b/wmake/scripts/have_scotch
index bf613acf399b8e3183fcfecf56c38725e9d59261..98c298c2215db21b84b575cf3bb64cbd5b91ec85 100644
--- a/wmake/scripts/have_scotch
+++ b/wmake/scripts/have_scotch
@@ -91,12 +91,28 @@ have_scotch()
         )
     elif isSystem "$SCOTCH_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header /usr/include/scotch/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+        header=$(findFirstFile \
+            /usr/local/include/$header \
+            /usr/local/include/scotch/$header \
+            /usr/include/$header \
+            /usr/include/scotch/$header \
         )
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi
diff --git a/wmake/scripts/have_zoltan b/wmake/scripts/have_zoltan
index bd02ac54a4ea02fe360d4d521037bd2500a3e3cb..40d7a7d26c8881189ab563f2b48ca874c7722f97 100644
--- a/wmake/scripts/have_zoltan
+++ b/wmake/scripts/have_zoltan
@@ -90,12 +90,23 @@ have_zoltan()
         )
     elif isSystem "$ZOLTAN_ARCH_PATH"
     then
-        header=$(findFirstFile /usr/include/$header)
-
-        library=$(findFirstFile \
-            /usr/lib/$library \
-            /usr/lib$WM_COMPILER_LIB_ARCH/$library \
-        )
+        header=$(findFirstFile /usr/local/include/$header /usr/include/$header)
+
+        case "$header" in
+        /usr/local/*)
+            library=$(findFirstFile \
+                /usr/local/lib/$library \
+                /usr/local/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+
+        *)
+            library=$(findFirstFile \
+                /usr/lib/$library \
+                /usr/lib$WM_COMPILER_LIB_ARCH/$library \
+            )
+            ;;
+        esac
     else
         unset header library
     fi