From ff92e8ff30e22315dedbb172a6245ff06eba2e7d Mon Sep 17 00:00:00 2001
From: Joe Garcia <joe.garcia@ssec.wisc.edu>
Date: Mon, 15 Mar 2021 10:01:53 -0500
Subject: [PATCH] integrate allowing using egg with at least trying wheel first

---
 ShellB3/shallbethree.sh | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/ShellB3/shallbethree.sh b/ShellB3/shallbethree.sh
index aa509c1d..92e603a1 100755
--- a/ShellB3/shallbethree.sh
+++ b/ShellB3/shallbethree.sh
@@ -1921,6 +1921,8 @@ _setup_build_install() {
         && _maybefixwheel *.whl && ${PYTHON} "${BASE}/bin/pip${PYFSVER}" install ${extra_parameters} ${PIP_PARAMETERS} *.whl ) \
      || ( test -e setup.py && ${PYTHON} setup.py bdist_wheel --keep-temp ${PYBUILDFLAGS} && _maybefixwheel dist/*.whl  \
         && ${PYTHON} "${BASE}/bin/pip${PYFSVER}" install ${extra_parameters} ${PIP_PARAMETERS} dist/*.whl ) \
+     || ( isFalse NEEDWHEEL && ${PYTHON} setup.py build ${PYBUILDFLAGS} "$@" \
+        && ${PYTHON} setup.py install ${PYTHON_OPTIMIZATION} ) \
        ) ) \
    || oops "${name} pip build/install failed"
   else
@@ -5443,7 +5445,7 @@ mk_pycdf() {
      int num;
 PATCH
   
-  CFLAGS="$CFLAGS -I${BASE}/include" CANWHEEL=NO _setup_build_install pycdf $tarball pycdf-${PYCDFVER} || oops "pycdf didn't install"
+  CFLAGS="$CFLAGS -I${BASE}/include" NEEDWHEEL=NO _setup_build_install pycdf $tarball pycdf-${PYCDFVER} || oops "pycdf didn't install"
 }
 
 # more up-to-date than pycdf
@@ -8921,7 +8923,7 @@ mk_ipython() {
     simple_py_install src/optional/flit_core-*z || oops 'flit_core did not install'
   #  pip_install src/optional/flit-*z || oops 'flit did not install'
   #  simple_py_install src/optional/ptyprocess-0.*z || oops 'ptyprocess did not install'
-  CANWHEEL=NO simple_py_install src/optional/pexpect-*.gz  || oops 'pexpect did not install'
+  NEEDWHEEL=NO simple_py_install src/optional/pexpect-*.gz  || oops 'pexpect did not install'
   pip_install src/optional/ipython_genutils-*.gz  || oops 'ipython_genutils did not install'
   pip_install src/optional/decorator-*z || oops 'decorator did not install'
   mk_traitlets
@@ -8943,7 +8945,7 @@ mk_ipython() {
     pip_install src/optional/parso-* || oops "parso did not install"
     pip_install src/optional/jedi-* || oops 'jedi did not install'
    # pip_install src/optional/flit_core-* || oops 'flit_core did not pip install'
-   CANWHEEL=NO simple_py_install src/optional/backcall-* || oops 'backcall did not install'
+   NEEDWHEEL=NO simple_py_install src/optional/backcall-* || oops 'backcall did not install'
   mk__ipython
   resume_tracker
   pip_install src/optional/mod_pywebsocket*z || oops 'pywebsocket did not install'
@@ -8988,19 +8990,19 @@ mk_jupyter(){
   simple_py_install src/optional/pyrsistent-*.tar.* || oops "pyrsistent did not install"
   simple_py_install src/optional/jsonschema-*.tar.* || oops "jsonschema did not install"
   pip_install src/optional/nbformat-*.tar.* || oops "nbformat did not install"
-  CANWHEEL=NO simple_py_install src/optional/flit-*.tar.* || oops "flit did not install"
-  CANWHEEL=NO simple_py_install src/optional/entrypoints-*.tar.* || oops "entrypoints did not install"
+  NEEDWHEEL=NO simple_py_install src/optional/flit-*.tar.* || oops "flit did not install"
+  NEEDWHEEL=NO simple_py_install src/optional/entrypoints-*.tar.* || oops "entrypoints did not install"
   simple_py_install src/optional/webencodings-*.tar.* || oops "webencodings did not install"
   simple_py_install src/optional/bleach-*.tar.* || oops "bleach did not install"
   simple_py_install src/optional/pandocfilters-*.tar.* || oops "pandocfilters did not install"
-  CANWHEEL=NO simple_py_install src/optional/testpath-*.tar.* || oops "testpath did not install"
+  NEEDWHEEL=NO simple_py_install src/optional/testpath-*.tar.* || oops "testpath did not install"
   simple_py_install src/optional/defusedxml-*.tar.* || oops "defusedxml did not install"
   simple_py_install src/optional/async_generator-*.tar.* || oops "async_generator did not install"
   simple_py_install src/optional/nest_asyncio-*.tar.* || oops "nest_asyncio did not install"
   simple_py_install src/optional/jupyter_client-*.tar.* || oops "jupyter_client did not install"
   simple_py_install src/optional/nbclient-*.tar.* || oops "nbclient did not install"
   pip_install src/optional/nbconvert-*.tar.* || oops "nbconvert did not install"
-  CANWHEEL=NO simple_py_install src/optional/ptyprocess-0.*z || oops 'ptyprocess did not install'
+  NEEDWHEEL=NO simple_py_install src/optional/ptyprocess-0.*z || oops 'ptyprocess did not install'
   if isFalse DEPRECATE_EGGS ; then
   make_script ipykernel <<SCRIPT
 sed -i.bak -e "s,bdist_egg if,bdist_egg #if,g" setup.py
-- 
GitLab