Browse Source

Fix scikit-learn macOS script

Lutz Roeder 7 years ago
parent
commit
42dd452f64
7 changed files with 39 additions and 75 deletions
  1. 2 6
      tools/coreml
  2. 2 6
      tools/keras
  3. 6 18
      tools/onnx
  4. 6 14
      tools/pytorch
  5. 15 7
      tools/sklearn
  6. 4 12
      tools/tf
  7. 4 12
      tools/tflite

+ 2 - 6
tools/coreml

@@ -43,12 +43,8 @@ sync() {
 
 install() {
     bold "coreml install"
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     ${python} -m pip install --quiet ${third_party}/${identifier}
     deactivate

+ 2 - 6
tools/keras

@@ -45,12 +45,8 @@ sync() {
 
 install() {
     bold "keras install"
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     ${python} -m pip install --quiet tensorflow
     ${python} -m pip install --quiet ${third_party}/${identifier}

+ 6 - 18
tools/onnx

@@ -50,28 +50,16 @@ install() {
     bold "onnx install"
     case "$(uname)" in
         "Linux")
-            if [ -z "$(which cmake)" ]; then
-                sudo apt install -y cmake
-            fi
-            if [ -z "$(which protoc)" ]; then
-                sudo apt install -y protobuf-compiler libprotoc-dev
-            fi
+            [ -n "$(which cmake)" ] || sudo apt install -y cmake
+            [ -n "$(which protoc)" ] || sudo apt install -y protobuf-compiler libprotoc-dev
             ;;
         "Darwin")
-            if [ -z "$(which cmake)" ]; then
-                brew install cmake
-            fi
-            if [ -z "$(which protoc)" ]; then
-                brew install protobuf
-            fi
+            brew list cmake > /dev/null 2>&1 || brew install cmake > /dev/null
+            brew list protobuf > /dev/null 2>&1 || brew install protobuf > /dev/null
             ;;
     esac
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     ${python} -m pip install --quiet protobuf
     export ONNX_ML=1

+ 6 - 14
tools/pytorch

@@ -54,22 +54,14 @@ install() {
             fi
             ;;
         "Darwin")
-            if [ -z "$(which cmake)" ]; then
-                brew bundle --file=- <<-EOS
-brew "automake"
-brew "cmake"
-brew "gflags"
-brew "glog"
-EOS
-            fi
+            brew list automake > /dev/null 2>&1 || brew install automake > /dev/null
+            brew list cmake > /dev/null 2>&1 || brew install cmake > /dev/null
+            brew list gflags > /dev/null 2>&1 || brew install gflags > /dev/null
+            brew list glog > /dev/null 2>&1 || brew install glog > /dev/null
             ;;
     esac
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     pushd "${third_party}/pytorch" > /dev/null
     ${python} -m pip install --quiet future leveldb numpy protobuf pydot python-gflags pyyaml scikit-image setuptools six hypothesis typing tqdm

+ 15 - 7
tools/sklearn

@@ -38,16 +38,24 @@ sync() {
 
 install() {
     bold "sklearn install"
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    case "$(uname)" in
+        "Darwin")
+            brew list libomp > /dev/null 2>&1 || brew install libomp > /dev/null
+            export CC=/usr/bin/clang
+            export CXX=/usr/bin/clang++
+            export CPPFLAGS="$CPPFLAGS -Xpreprocessor -fopenmp"
+            export CFLAGS="$CFLAGS -I/usr/local/opt/libomp/include"
+            export CXXFLAGS="$CXXFLAGS -I/usr/local/opt/libomp/include"
+            export LDFLAGS="$LDFLAGS -L/usr/local/opt/libomp/lib -lomp"
+            export DYLD_LIBRARY_PATH=/usr/local/opt/libomp/lib
+            ;;
+    esac
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     ${python} -m pip install --quiet Cython
     ${python} -m pip install --quiet numpy
-    ${python} -m pip install --quiet ${third_party}/scikit-learn
+    ${python} -m pip install ${third_party}/scikit-learn
     deactivate
 }
 

+ 4 - 12
tools/tf

@@ -47,22 +47,14 @@ install() {
     bold "tf install"
     case "$(uname)" in
         "Linux")
-            if [ -z "$(which protoc)" ]; then
-                sudo apt install -y protobuf-compiler libprotoc-dev
-            fi
+            [ -n "$(which protoc)" ] || sudo apt install -y protobuf-compiler libprotoc-dev
             ;;
         "Darwin")
-            if [ -z "$(which protoc)" ]; then
-                brew install protobuf
-            fi
+            brew list protobuf > /dev/null 2>&1 || brew install protobuf > /dev/null
             ;;
     esac
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
     source ${virtualenv}/bin/activate
     ${python} -m pip install --quiet protobuf
     deactivate

+ 4 - 12
tools/tflite

@@ -47,26 +47,18 @@ install() {
     bold "flatbuffers install"
     case "$(uname)" in
         "Linux")
-            if [ -z "$(which cmake)" ]; then
-                sudo apt install -y cmake
-            fi
+            [ -n "$(which cmake)" ] || sudo apt install -y cmake
             ;;
         "Darwin")
-            if [ -z "$(which cmake)" ]; then
-                brew install cmake
-            fi
+            brew list cmake > /dev/null 2>&1 || brew install cmake > /dev/null
             ;;
     esac
     pushd "${third_party}/flatbuffers" > /dev/null
     cmake -G "Unix Makefiles" .
     make
     popd > /dev/null
-    if [ -z "$(which virtualenv)" ]; then
-        sudo ${python} -m pip install --force-reinstall --quiet virtualenv
-    fi
-    if [ ! -d "${virtualenv}" ]; then
-        virtualenv --quiet -p ${python} ${virtualenv}
-    fi
+    [ -n "$(which virtualenv)" ] || ${python} -m pip install --force-reinstall --user --quiet virtualenv
+    [ -d "${virtualenv}" ] || virtualenv --quiet -p ${python} ${virtualenv}
 }
 
 schema() {