From 9e8b8e2931c9ff8580462246ad3d8c3ebc154226 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 14:59:45 -0700 Subject: [PATCH 01/58] print python executable used to run when running without MET_PYTHON_EXE --- data/wrappers/set_python_env.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/data/wrappers/set_python_env.py b/data/wrappers/set_python_env.py index 5b6c2743c2..2470414023 100644 --- a/data/wrappers/set_python_env.py +++ b/data/wrappers/set_python_env.py @@ -7,3 +7,5 @@ import os import sys import numpy as np + +print(f'Python Executable: {sys.executable}') From 6246c2582066a4afb658139a5283096598a7f932 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 15:00:20 -0700 Subject: [PATCH 02/58] Revert "print python executable used to run when running without MET_PYTHON_EXE" This reverts commit 9e8b8e2931c9ff8580462246ad3d8c3ebc154226. --- data/wrappers/set_python_env.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/data/wrappers/set_python_env.py b/data/wrappers/set_python_env.py index 2470414023..5b6c2743c2 100644 --- a/data/wrappers/set_python_env.py +++ b/data/wrappers/set_python_env.py @@ -7,5 +7,3 @@ import os import sys import numpy as np - -print(f'Python Executable: {sys.executable}') From 3910cad32462a5f4a4b2ff533e2a987470424005 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 15:01:44 -0700 Subject: [PATCH 03/58] print python executable used to run when running without MET_PYTHON_EXE --- data/wrappers/set_python_env.py | 1 + 1 file changed, 1 insertion(+) diff --git a/data/wrappers/set_python_env.py b/data/wrappers/set_python_env.py index 5b6c2743c2..b5eb7d2828 100644 --- a/data/wrappers/set_python_env.py +++ b/data/wrappers/set_python_env.py @@ -7,3 +7,4 @@ import os import sys import numpy as np +print(f'Python executable: {sys.executable}') From 88759f629e1558e7665af67bbfdaba33359c2b52 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 15:02:23 -0700 Subject: [PATCH 04/58] add MET_BASE/python to python path so met_point_obs can be found my Python Embedding point obs without having to set PYTHONPATH --- data/wrappers/write_tmp_dataplane.py | 4 ++++ data/wrappers/write_tmp_mpr.py | 4 ++++ data/wrappers/write_tmp_point.py | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/data/wrappers/write_tmp_dataplane.py b/data/wrappers/write_tmp_dataplane.py index ff254bf978..476d2348c3 100644 --- a/data/wrappers/write_tmp_dataplane.py +++ b/data/wrappers/write_tmp_dataplane.py @@ -21,6 +21,10 @@ pyembed_module_name = sys.argv[2] sys.argv = sys.argv[2:] +# add share/met/python directory to system path to find met_point_obs +sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), + os.pardir, 'python'))) + # append user script dir to system path pyembed_dir, pyembed_file = os.path.split(pyembed_module_name) if pyembed_dir: diff --git a/data/wrappers/write_tmp_mpr.py b/data/wrappers/write_tmp_mpr.py index ed0f4f0675..3eee0379f5 100644 --- a/data/wrappers/write_tmp_mpr.py +++ b/data/wrappers/write_tmp_mpr.py @@ -20,6 +20,10 @@ pyembed_module_name = sys.argv[2] sys.argv = sys.argv[2:] +# add share/met/python directory to system path to find met_point_obs +sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), + os.pardir, 'python'))) + # append user script dir to system path pyembed_dir, pyembed_file = os.path.split(pyembed_module_name) if pyembed_dir: diff --git a/data/wrappers/write_tmp_point.py b/data/wrappers/write_tmp_point.py index b6cecddfbb..916fca5549 100644 --- a/data/wrappers/write_tmp_point.py +++ b/data/wrappers/write_tmp_point.py @@ -20,6 +20,10 @@ pyembed_module_name = sys.argv[2] sys.argv = sys.argv[2:] +# add share/met/python directory to system path to find met_point_obs +sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), + os.pardir, 'python'))) + # append user script dir to system path pyembed_dir, pyembed_file = os.path.split(pyembed_module_name) if pyembed_dir: From 5ad920b3fab2ddf1c5fe5aa3a73e014addab9a74 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 15:04:06 -0700 Subject: [PATCH 05/58] add MET_BASE/python to python path for global python environment (used when MET_PYTHON_EXE is not set) so Python Embedding point obs scripts can find met_point_obs without setting PYTHONPATH --- src/libcode/vx_python3_utils/global_python.h | 3 +++ src/libcode/vx_python3_utils/python3_util.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/libcode/vx_python3_utils/global_python.h b/src/libcode/vx_python3_utils/global_python.h index ac796d5187..8674a7b655 100644 --- a/src/libcode/vx_python3_utils/global_python.h +++ b/src/libcode/vx_python3_utils/global_python.h @@ -75,6 +75,9 @@ if ( ! is_initialized ) { command << cs_erase << "sys.path.append(\"" << replace_path(wrappers_dir) + << "\");" + << "sys.path.append(\"" + << replace_path(python_dir) << "\")"; run_python_string(command.text()); diff --git a/src/libcode/vx_python3_utils/python3_util.h b/src/libcode/vx_python3_utils/python3_util.h index b1681463c0..9464142566 100644 --- a/src/libcode/vx_python3_utils/python3_util.h +++ b/src/libcode/vx_python3_utils/python3_util.h @@ -30,6 +30,8 @@ static const char user_python_path_env [] = "MET_PYTHON_EXE"; static const char wrappers_dir [] = "MET_BASE/wrappers"; +static const char python_dir [] = "MET_BASE/python"; + //////////////////////////////////////////////////////////////////////// From 14d787a7338beddd19f9eeba14bfe61ba2166afe Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 23 Dec 2022 15:09:38 -0700 Subject: [PATCH 06/58] Example call to force set Python executable used in global python calls in MET code. This ensures that the Python libraries/packages from the version of Python used to install MET are used instead of the user's version. The value set here corresponds to the version of Python used to install MET on seneca. This info (/usr/local/met-python3) will have to be passed into MET on the configure step to set this value properly based on the install environment. --- src/libcode/vx_python3_utils/global_python.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libcode/vx_python3_utils/global_python.h b/src/libcode/vx_python3_utils/global_python.h index 8674a7b655..1931a57ab4 100644 --- a/src/libcode/vx_python3_utils/global_python.h +++ b/src/libcode/vx_python3_utils/global_python.h @@ -59,7 +59,7 @@ inline void GlobalPython::initialize() { if ( ! is_initialized ) { - + Py_SetProgramName(L"/usr/local/met-python3/bin/python3"); Py_Initialize(); is_initialized = true; From 8cc48cdfd27bef66bdcc65ca581aa51cc473d7bc Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 30 Dec 2022 11:18:09 -0700 Subject: [PATCH 07/58] Fixed typo that adds LIB_JASPER to list if LIB_LIBPNG is set instead of LIB_LIBPNG. Added missing colons so that a colon is added before the new values if the corresponding variable is set --- internal/scripts/installation/compile_MET_all.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index d8a5918f2e..38fbcdd309 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -95,7 +95,7 @@ if [ ! -e $TAR_DIR ]; then fi # Update library linker path -export LD_LIBRARY_PATH=${TEST_BASE}/external_libs/lib${MET_PYTHON:+:$MET_PYTHON/lib}${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${LIB_JASPER:+$LIB_JASPER}${LIB_LIBPNG:+:$LIB_JASPER}${LIB_Z:+$LIB_Z}${MET_GSL:+:$MET_GSL/lib}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} +export LD_LIBRARY_PATH=${TEST_BASE}/external_libs/lib${MET_PYTHON:+:$MET_PYTHON/lib}${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${LIB_JASPER:+:$LIB_JASPER}${LIB_LIBPNG:+:$LIB_LIBPNG}${LIB_Z:+:$LIB_Z}${MET_GSL:+:$MET_GSL/lib}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} echo "LD_LIBRARY_PATH = ${LD_LIBRARY_PATH}" # Constants From 3a1f24f8b600866bab5e24d16a01afe9621b54e4 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 30 Dec 2022 11:19:03 -0700 Subject: [PATCH 08/58] added a comment to remember to investigate why .a file is removed. If it is still needed, update comment to explain why, otherwise remove it --- internal/scripts/installation/compile_MET_all.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 38fbcdd309..df3e5294c7 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -421,6 +421,8 @@ if [ $COMPILE_ZLIB -eq 1 ]; then echo "make install returned with non-zero ($ret) status" exit 1 fi + # GPM: why is this removed? Could we add a comment to + # describe why this is needed? echo "rm ${LIB_DIR}/lib/zlib.a" rm ${LIB_DIR}/lib/libz.a fi From 9f398b62c0214fbf98f71d8e8d5ae83911a13a04 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 30 Dec 2022 11:20:04 -0700 Subject: [PATCH 09/58] Per #2390, set LIB_Z to /lib if it is not set so that the HDF5 configure command will properly install with zlib support. Update echo of HDF5 configure command to match what is being called --- internal/scripts/installation/compile_MET_all.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index df3e5294c7..f0a51eda35 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -98,6 +98,12 @@ fi export LD_LIBRARY_PATH=${TEST_BASE}/external_libs/lib${MET_PYTHON:+:$MET_PYTHON/lib}${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${LIB_JASPER:+:$LIB_JASPER}${LIB_LIBPNG:+:$LIB_LIBPNG}${LIB_Z:+:$LIB_Z}${MET_GSL:+:$MET_GSL/lib}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} echo "LD_LIBRARY_PATH = ${LD_LIBRARY_PATH}" +# if LIB_Z is not set in the environment file, set it to the +# lib directory so it can be used to install HDF5 with zlib support +if [[ -z "$LIB_Z" ]]; then + LIB_Z=${LIB_DIR}/lib +fi + # Constants if [[ -z ${MET_GRIB2CLIB} ]] && [[ -z ${MET_GRIB2C} ]]; then COMPILE_ZLIB=1 @@ -619,7 +625,7 @@ if [ $COMPILE_NETCDF -eq 1 ]; then tar -xzf ${TAR_DIR}/hdf5*.tar.gz cd hdf5* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_DIR}/lib CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + echo "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" ./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib:${LIB_Z} CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 ret=$? if [ $ret != 0 ]; then From 67425160559a50a93cd92f7306fd07f2acc37086 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Mon, 9 Jan 2023 14:58:05 -0700 Subject: [PATCH 10/58] Per discussion dtcenter/METplus#1997, add support for setting optional arguments to make that allows multi job compilation to speed up installs --- .../scripts/installation/compile_MET_all.sh | 99 ++++++++++--------- 1 file changed, 51 insertions(+), 48 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index f0a51eda35..dd43be292f 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -79,6 +79,7 @@ echo "COMPILER = ${COMPILER? "ERROR: COMPILER must be set"}" echo "MET_SUBDIR = ${MET_SUBDIR? "ERROR: MET_SUBDIR must be set"}" echo "MET_TARBALL = ${MET_TARBALL? "ERROR: MET_TARBALL must be set"}" echo "USE_MODULES = ${USE_MODULES? "ERROR: USE_MODULES must be set to TRUE if using modules or FALSE otherwise"}" +echo ${MAKE_ARGS:+MAKE_ARGS = $MAKE_ARGS} export LIB_DIR=${TEST_BASE}/external_libs MET_DIR=${MET_SUBDIR} @@ -347,15 +348,15 @@ if [ $COMPILE_GSL -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -413,15 +414,15 @@ if [ $COMPILE_ZLIB -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -450,15 +451,15 @@ if [[ $COMPILE_LIBPNG -eq 1 && $HOST != ys* ]]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -484,15 +485,15 @@ if [ $COMPILE_JASPER -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -517,6 +518,8 @@ if [ $COMPILE_G2CLIB -eq 1 ]; then mv makefile_new makefile export CC_COMPILER=${CC} echo "cd `pwd`" + # g2clib appears to compile but causes failure compiling MET if -j argument is used + # so exclude it from this call echo "make > make.log 2>&1" make > make.log 2>&1 ret=$? @@ -563,15 +566,15 @@ if [ $COMPILE_HDF -eq 1 ]; then > Makefile_new fi mv Makefile_new hdf/src/Makefile - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -597,15 +600,15 @@ if [ $COMPILE_HDFEOS -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -632,8 +635,8 @@ if [ $COMPILE_NETCDF -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -657,8 +660,8 @@ if [ $COMPILE_NETCDF -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -678,8 +681,8 @@ if [ $COMPILE_NETCDF -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -704,15 +707,15 @@ if [ $COMPILE_FREETYPE -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1 --with-zlib=${LIB_DIR} LDFLAGS=-L${LIB_DIR} CPPFLAGS=-I${LIB_DIR}" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1 --with-zlib=${LIB_DIR} LDFLAGS=-L${LIB_DIR} CPPFLAGS=-I${LIB_DIR}" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -741,15 +744,15 @@ if [ $COMPILE_CAIRO -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -776,15 +779,15 @@ if [ $COMPILE_CAIRO -eq 1 ]; then echo "configure returned with non-zero ($ret) status" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" @@ -904,24 +907,24 @@ g 2>&1" exit 1 fi - echo "make > make.log 2>&1" - make > make.log 2>&1 + echo "make ${MAKE_ARGS} > make.log 2>&1" + make ${MAKE_ARGS} > make.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "make returned with non-zero ($ret) status" exit 1 fi - echo "make install > make_install.log 2>&1" - make install > make_install.log 2>&1 + echo "make ${MAKE_ARGS} install > make_install.log 2>&1" + make ${MAKE_ARGS} install > make_install.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make install returned with non-zero ($ret) status" exit 1 fi - echo "make test > make_test.log 2>&1" - make test > make_test.log 2>&1 + echo "make ${MAKE_ARGS} test > make_test.log 2>&1" + make ${MAKE_ARGS} test > make_test.log 2>&1 ret=$? if [ $? != 0 ]; then echo "make test returned with non-zero ($ret) status" From 940f3cdb7e8d2d1d8e9954c75bee0784aa2ef562 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Mon, 9 Jan 2023 16:47:56 -0700 Subject: [PATCH 11/58] add -j argument to make commands when building MET in docker to test that all tests run successfully when MET is compiled that way, ci-run-unit --- internal/scripts/docker/build_met_docker.sh | 8 ++++++-- internal/scripts/environment/development.docker | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 3e900f3a90..a7e2aa7a07 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -13,16 +13,20 @@ if [ $? != 0 ]; then exit 1 fi +if [ ! -z "${MAKE_ARGS}" ]; then + echo Adding make arguments: ${MAKE_ARGS} +fi + LOG_FILE=/met/MET-${MET_GIT_NAME}/make_install.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make install > ${LOG_FILE} +make ${MAKE_ARGS} install > ${LOG_FILE} if [ $? != 0 ]; then exit 1 fi LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_test.log echo "Testing MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make test > ${LOG_FILE} 2>&1 +make ${MAKE_ARGS} test > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then exit 1 fi diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index c6674b231b..9654403969 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -42,3 +42,5 @@ export MET_FONT_DIR=${MET_TEST_INPUT}/fonts # Define Rscript to use a version with the ncdf4 package 1.17 or later export MET_TEST_RSCRIPT=/usr/bin/Rscript +# set make arguments to build using multiple jobs +export MAKE_ARGS=-j From a4fef9d7c492a683da9b287f57e1ce695def6eda Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 11:11:20 -0700 Subject: [PATCH 12/58] per discussion dtcenter/metplus#1997, handle NetCDF4-C for new tar.gz file and old zip file --- internal/scripts/installation/compile_MET_all.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index dd43be292f..6b75e256f4 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -648,8 +648,8 @@ if [ $COMPILE_NETCDF -eq 1 ]; then mkdir -p ${LIB_DIR}/netcdf cd ${LIB_DIR}/netcdf rm -rf netcdf* - tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz - cd netcdf-c-4* + tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz > /dev/null 2>&1 || unzip ${TAR_DIR}/netcdf-4*.zip > /dev/null 2>&1 + cd netcdf-c-* > /dev/null 2>&1 || cd netcdf-4* export FC='' export F90='' echo "cd `pwd`" From 20ac6a2ab0c9c13eb981882c25a6e755d273a29d Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 11:47:07 -0700 Subject: [PATCH 13/58] clean up setting of compiler env vars --- .../scripts/installation/compile_MET_all.sh | 97 ++++++------------- 1 file changed, 28 insertions(+), 69 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index dd43be292f..7e453058c0 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -224,77 +224,36 @@ if [ ${USE_MODULES} = "TRUE" ]; then fi if [ ${COMPILER_FAMILY} = "gnu" ]; then - if [ -z ${CC} ]; then - export CC=`which gcc` - else - export CC=${CC} - fi - if [ -z ${CXX} ]; then - export CXX=`which g++` - else - export CXX=${CXX} - fi - if [ -z ${FC} ]; then - export FC=`which gfortran` - else - export FC=${FC} - fi - if [ -z ${F77} ]; then - export F77=`which gfortran` - else - export F77=${F77} - fi - if [ -z ${F90} ]; then - export F90=`which gfortran` - else - export F90=${F90} - fi + if [ -z ${CC} ]; then CC=`which gcc`; fi + export CC + if [ -z ${CXX} ]; then CXX=`which g++`; fi + export CXX + if [ -z ${FC} ]; then FC=`which gfortran`; fi + export FC + if [ -z ${F77} ]; then F77=`which gfortran`; fi + export F77 + if [ -z ${F90} ]; then F90=`which gfortran`; fi + export F90 elif [ ${COMPILER_FAMILY} = "pgi" ]; then - if [ -z ${CC} ]; then - export CC=`which pgcc` - else - export CC=${CC} - fi - if [ -z ${CXX} ]; then - export CXX=`which pgc++` - else - export CXX=${CXX} - fi - if [ -z ${F90} ]; then - export F90=`which pgf90` - export F77=${F90} - export FC=${F90} - else - export F90=${F90} - export F77=${F90} - export FC=${F90} - fi + if [ -z ${CC} ]; then CC=`which pgcc`; fi + export CC + if [ -z ${CXX} ]; then CXX=`which pgc++`; fi + export CXX + if [ -z ${F90} ]; then F90=`which pgf90`; fi + export F90 + export F77=${F90} + export FC=${F90} elif [[ ${COMPILER_FAMILY} == "intel" ]] || [[ ${COMPILER_FAMILY} == "ics" ]] || [[ ${COMPILER_FAMILY} == "ips" ]] || [[ ${COMPILER_FAMILY} == "PrgEnv-intel" ]]; then - if [ -z ${CC} ]; then - export CC=`which icc` - else - export CC=${CC} - fi - if [ -z ${CXX} ]; then - export CXX=`which icc` - else - export CXX=${CXX} - fi - if [ -z ${FC} ]; then - export FC=`which ifort` - else - export FC=${FC} - fi - if [ -z ${F77} ]; then - export F77=`which ifort` - else - export F77=${F77} - fi - if [ -z ${F90} ]; then - export F90=`which ifort` - else - export F90=${F90} - fi + if [ -z ${CC} ]; then CC=`which icc`; fi + export CC + if [ -z ${CXX} ]; then CXX=`which icc`; fi + export CXX + if [ -z ${FC} ]; then FC=`which ifort`; fi + export FC + if [ -z ${F77} ]; then F77=`which ifort`; fi + export F77 + if [ -z ${F90} ]; then F90=`which ifort`; fi + export F90 else echo "ERROR: \${COMPILER} must start with gnu, intel, ics, ips, PrgEnv-intel, or pgi" exit From d941d181c195caf4152a5dbdd43b439f68361b8b Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 11:47:26 -0700 Subject: [PATCH 14/58] clean up building of configure command for MET --- .../scripts/installation/compile_MET_all.sh | 59 +++++-------------- 1 file changed, 16 insertions(+), 43 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 7e453058c0..f181f5fd87 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -816,50 +816,24 @@ if [ $COMPILE_MET -eq 1 ]; then export OPT_ARGS="${OPT_ARGS} FFLAGS=-lpgf90" fi - echo "cd `pwd`" - if [[ -z ${MET_PYTHON_CC} && -z ${MET_PYTHON_LD} ]]; then - if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && ! -z ${MET_CAIROINC} && ! -z ${MET_CAIROLIB} ]]; then - if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-mode_graphics --enable-lidar2nc ${OPT_ARGS} > configure.log 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-mode_graphics --enable-lidar2nc ${OPT_ARGS} > configure.log 2>&1 - else - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-mode_graphics ${OPT_ARGS} > configure.log 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-mode_graphics ${OPT_ARGS} > configure.log 2>&1 - fi - else - if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-lidar2nc ${OPT_ARGS} > configure.log 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-lidar2nc ${OPT_ARGS} > configure.log 2>&1 - else - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 ${OPT_ARGS} > configure.lo\ -g 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 ${OPT_ARGS} > configure.log 2>&1 - fi - fi - else - if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && ! -z ${MET_CAIROINC} && ! -z ${MET_CAIROLIB} ]]; then - if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-mode_graphics --enable-lidar2nc --enable-python ${OPT_ARGS} > configure.lo\ -g 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-mode_graphics --enable-lidar2nc --enable-python ${OPT_ARGS} > configure.log 2>&1 - else - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-mode_graphics --enable-python ${OPT_ARGS} > configure.lo\ -g 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-mode_graphics --enable-python ${OPT_ARGS} > configure.log 2>&1 - fi - else - if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-lidar2nc --enable-python ${OPT_ARGS} > configure.lo\ -g 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-modis --enable-lidar2nc --enable-python ${OPT_ARGS} > configure.log 2>&1 - else - echo "./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-python ${OPT_ARGS} > configure.lo\ -g 2>&1" - ./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2 --enable-python ${OPT_ARGS} > configure.log 2>&1 - fi - fi + configure_cmd="./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2" + if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && ! -z ${MET_CAIROINC} && ! -z ${MET_CAIROLIB} ]]; then + OPT_ARGS="--enable-mode_graphics ${OPT_ARGS}" + fi + + if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then + OPT_ARGS="--enable-modis --enable-lidar2nc ${OPT_ARGS}" fi + if [[ ! -z ${MET_PYTHON_CC} || ! -z ${MET_PYTHON_LD} ]]; then + OPT_ARGS="--enable-python ${OPT_ARGS}" + fi + + configure_cmd="${configure_cmd} ${OPT_ARGS}" + + echo "cd `pwd`" + echo "${configure_cmd} > configure.log 2>&1" + ${configure_cmd} > configure.log 2>&1 ret=$? if [ $ret != 0 ]; then echo "configure returned with non-zero ($ret) status" @@ -892,4 +866,3 @@ g 2>&1" fi echo "Finished compiling at `date`" - From 274ff23de70dc72e756710506b185a8a18333af5 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 11:53:31 -0700 Subject: [PATCH 15/58] Skip MET compliation if SKIP_MET is set in the environment. This allows the compilation script to be used to create the METbaseimage to install only the external libraries needed to install MET --- internal/scripts/installation/compile_MET_all.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index f181f5fd87..6488eaf617 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -182,6 +182,9 @@ fi COMPILE_MET=1 +# skip compilation of components if SKIP_* is set +if [ ! -z "${SKIP_MET}" ]; then COMPILE_MET=0; fi + if [ -z ${BIN_DIR_PATH} ]; then BIN_DIR_PATH=${TEST_BASE}/bin else From 8ece11a6a409721e22f38c34959a8e1e14afd270 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 14:40:51 -0700 Subject: [PATCH 16/58] more cleanup of compiler env var setting --- .../scripts/installation/compile_MET_all.sh | 23 +++++++------------ 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 6488eaf617..a51a0788b0 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -228,40 +228,33 @@ fi if [ ${COMPILER_FAMILY} = "gnu" ]; then if [ -z ${CC} ]; then CC=`which gcc`; fi - export CC if [ -z ${CXX} ]; then CXX=`which g++`; fi - export CXX if [ -z ${FC} ]; then FC=`which gfortran`; fi - export FC if [ -z ${F77} ]; then F77=`which gfortran`; fi - export F77 if [ -z ${F90} ]; then F90=`which gfortran`; fi - export F90 elif [ ${COMPILER_FAMILY} = "pgi" ]; then if [ -z ${CC} ]; then CC=`which pgcc`; fi - export CC if [ -z ${CXX} ]; then CXX=`which pgc++`; fi - export CXX + if [ -z ${FC} ]; then FC=`which pgf90`; fi + if [ -z ${F77} ]; then F77=`which pgf90`; fi if [ -z ${F90} ]; then F90=`which pgf90`; fi - export F90 - export F77=${F90} - export FC=${F90} elif [[ ${COMPILER_FAMILY} == "intel" ]] || [[ ${COMPILER_FAMILY} == "ics" ]] || [[ ${COMPILER_FAMILY} == "ips" ]] || [[ ${COMPILER_FAMILY} == "PrgEnv-intel" ]]; then if [ -z ${CC} ]; then CC=`which icc`; fi - export CC if [ -z ${CXX} ]; then CXX=`which icc`; fi - export CXX if [ -z ${FC} ]; then FC=`which ifort`; fi - export FC if [ -z ${F77} ]; then F77=`which ifort`; fi - export F77 if [ -z ${F90} ]; then F90=`which ifort`; fi - export F90 else echo "ERROR: \${COMPILER} must start with gnu, intel, ics, ips, PrgEnv-intel, or pgi" exit fi +export CC +export CXX +export FC +export F77 +export F90 + echo "export CC=${CC}" echo "export CXX=${CXX}" echo "export FC=${FC}" From 42de5594bb88abc53c49bd7e4c424ea56beb5287 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 14:53:22 -0700 Subject: [PATCH 17/58] removed unnecessary else --- internal/scripts/installation/compile_MET_all.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index a51a0788b0..c319fc0b61 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -68,9 +68,9 @@ else if [ ! -f "$1" ]; then echo "The file \"$1\" does not exist!" exit 1 - else - source $1 fi + + source $1 fi echo From b3898e3be18d8b078f3352b02a76fd3603d6074b Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 14:54:02 -0700 Subject: [PATCH 18/58] add ability to skip compilation of external libraries by setting SKIP_LIBS to any non-empty value --- .../scripts/installation/compile_MET_all.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index c319fc0b61..80e0f585e0 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -182,9 +182,24 @@ fi COMPILE_MET=1 -# skip compilation of components if SKIP_* is set +# skip compilation of MET if SKIP_MET is set if [ ! -z "${SKIP_MET}" ]; then COMPILE_MET=0; fi +# skip compilation of external libraries if SKIP_LIBS is set +if [ ! -z "${SKIP_LIBS}" ]; then + COMPILE_GSL=0 + COMPILE_BUFRLIB=0 + COMPILE_ZLIB=0 + COMPILE_LIBPNG=0 + COMPILE_JASPER=0 + COMPILE_G2CLIB=0 + COMPILE_HDF=0 + COMPILE_HDFEOS=0 + COMPILE_NETCDF=0 + COMPILE_FREETYPE=0 + COMPILE_CAIRO=0 +fi + if [ -z ${BIN_DIR_PATH} ]; then BIN_DIR_PATH=${TEST_BASE}/bin else From bcc73514cb9913f792d036399a5f2933bf5077d5 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 15:09:40 -0700 Subject: [PATCH 19/58] remove redundant setting of env var --- internal/scripts/installation/compile_MET_all.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 80e0f585e0..73fb03670d 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -202,8 +202,6 @@ fi if [ -z ${BIN_DIR_PATH} ]; then BIN_DIR_PATH=${TEST_BASE}/bin -else - BIN_DIR_PATH=${BIN_DIR_PATH} fi if [ -z ${USE_MET_TAR_FILE} ]; then From 481707751079a268a2fa6aefe4d2e0045b445a11 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 10 Jan 2023 16:26:32 -0700 Subject: [PATCH 20/58] added function to run commands and check return value. clean up logic to create or empty directories to use full paths to remove with wildcard --- .../scripts/installation/compile_MET_all.sh | 424 ++++-------------- 1 file changed, 97 insertions(+), 327 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 73fb03670d..0d3c0a0492 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -60,6 +60,17 @@ # #================================================ +# print command, run it, then error and exit if non-zero value is returned +function run_cmd { + echo $* + eval "$@" + ret=$? + if [ $ret != 0 ]; then + cmd_name=$(basename $1) + echo "${cmd_name} returned with non-zero ($ret) status" + exit $ret + fi +} if [ -z $1 ]; then echo @@ -304,32 +315,13 @@ if [ $COMPILE_GSL -eq 1 ]; then echo echo "Compiling GSL_${vrs} at `date`" mkdir -p ${LIB_DIR}/gsl - cd ${LIB_DIR}/gsl - rm -rf gsl* - tar -xf ${TAR_DIR}/gsl-${vrs}.tar.gz - cd gsl* + rm -rf ${LIB_DIR}/gsl/gsl* + tar -xf ${TAR_DIR}/gsl-${vrs}.tar.gz -C ${LIB_DIR}/gsl + cd ${LIB_DIR}/gsl/gsl* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile BUFRLIB @@ -340,10 +332,10 @@ if [ $COMPILE_BUFRLIB -eq 1 ]; then echo echo "Compiling BUFRLIB_${vrs} at `date`" mkdir -p ${LIB_DIR}/bufrlib/BUFRLIB_${vrs} + rm -rf ${LIB_DIR}/bufrlib/BUFRLIB_${vrs}/* cd ${LIB_DIR}/bufrlib/BUFRLIB_${vrs} echo "cd `pwd`" - rm -rf * - tar -xf ${TAR_DIR}/BUFRLIB_`echo $vrs | sed 's/\./-/g'`.tar + tar -xf ${TAR_DIR}/BUFRLIB_`echo $vrs | sed 's/\./-/g'`.tar -C ${LIB_DIR}/bufrlib/BUFRLIB_${vrs} ${CC} -c -DUNDERSCORE `./getdefflags_C.sh` *.c >> make.log 2>&1 @@ -370,32 +362,14 @@ if [ $COMPILE_ZLIB -eq 1 ]; then echo echo "Compiling ZLIB at `date`" mkdir -p ${LIB_DIR}/zlib - cd ${LIB_DIR}/zlib - rm -rf zlib* - tar -xzf ${TAR_DIR}/zlib*.tar.gz - cd zlib* + rm -rf ${LIB_DIR}/zlib/zlib* + tar -xzf ${TAR_DIR}/zlib*.tar.gz -C ${LIB_DIR}/zlib + cd ${LIB_DIR}/zlib/zlib* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" + # GPM: why is this removed? Could we add a comment to # describe why this is needed? echo "rm ${LIB_DIR}/lib/zlib.a" @@ -407,32 +381,13 @@ if [[ $COMPILE_LIBPNG -eq 1 && $HOST != ys* ]]; then echo echo "Compiling LIBPNG at `date`" mkdir -p ${LIB_DIR}/libpng - cd ${LIB_DIR}/libpng - rm -rf libpng* - tar -xzf ${TAR_DIR}/libpng*.tar.gz - cd libpng* + rm -rf ${LIB_DIR}/libpng/libpng* + tar -xzf ${TAR_DIR}/libpng*.tar.gz -C ${LIB_DIR}/libpng + cd ${LIB_DIR}/libpng/libpng* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile JASPER @@ -441,32 +396,14 @@ if [ $COMPILE_JASPER -eq 1 ]; then echo "Compiling JASPER at `date`" mkdir -p ${LIB_DIR}/jasper cd ${LIB_DIR}/jasper - rm -rf jasper* - unzip ${TAR_DIR}/jasper*.zip > /dev/null 2>&1 - cd jasper* + rm -rf ${LIB_DIR}/jasper/jasper* + unzip ${TAR_DIR}/jasper*.zip -d ${LIB_DIR}/jasper > /dev/null 2>&1 + cd ${LIB_DIR}/jasper/jasper* export CPPFLAGS="-I${LIB_DIR}/include" echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile G2CLIB @@ -474,10 +411,9 @@ if [ $COMPILE_G2CLIB -eq 1 ]; then echo echo "Compiling G2CLIB at `date`" mkdir -p ${LIB_DIR}/g2clib - cd ${LIB_DIR}/g2clib - rm -rf g2clib* - tar -xf ${TAR_DIR}/g2clib*.tar - cd g2clib* + rm -rf ${LIB_DIR}/g2clib/g2clib* + tar -xf ${TAR_DIR}/g2clib*.tar -C ${LIB_DIR}/g2clib + cd ${LIB_DIR}/g2clib/g2clib* cat makefile | \ sed -r 's/INC=.*/INC=-I${LIB_DIR}\/include -I${LIB_DIR}\/include\/jasper/g' | \ sed 's/CC=gcc/CC=${CC_COMPILER}/g' | \ @@ -488,13 +424,8 @@ if [ $COMPILE_G2CLIB -eq 1 ]; then echo "cd `pwd`" # g2clib appears to compile but causes failure compiling MET if -j argument is used # so exclude it from this call - echo "make > make.log 2>&1" - make > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "make > make.log 2>&1" + cp libg2c*.a ${LIB_DIR}/lib/libgrib2c.a cp *.h ${LIB_DIR}/include/. fi @@ -508,18 +439,11 @@ if [ $COMPILE_HDF -eq 1 ]; then echo echo "Compiling HDF at `date`" mkdir -p ${LIB_DIR}/hdf - cd ${LIB_DIR}/hdf - rm -rf HDF* - tar -xf ${TAR_DIR}/HDF4.2*.tar.gz - cd HDF* + rm -rf ${LIB_DIR}/hdf/HDF* + tar -xf ${TAR_DIR}/HDF4.2*.tar.gz -C ${LIB_DIR}/hdf + cd ${LIB_DIR}/hdf/HDF* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --disable-netcdf --with-jpeg=${LIB_DIR} --with-zlib=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} --disable-netcdf --with-jpeg=${LIB_DIR} --with-zlib=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} --disable-netcdf --with-jpeg=${LIB_DIR} --with-zlib=${LIB_DIR} > configure.log 2>&1" cat mfhdf/hdiff/Makefile | \ sed 's/LIBS = -ljpeg -lz/LIBS = -ljpeg -lz -lm/g' \ > Makefile_new @@ -534,20 +458,8 @@ if [ $COMPILE_HDF -eq 1 ]; then > Makefile_new fi mv Makefile_new hdf/src/Makefile - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile HDFEOS @@ -556,32 +468,14 @@ if [ $COMPILE_HDFEOS -eq 1 ]; then echo echo "Compiling HDFEOS at `date`" mkdir -p ${LIB_DIR}/hdfeos - cd ${LIB_DIR}/hdfeos - rm -rf HDF-EOS* - tar -xzf ${TAR_DIR}/HDF-EOS*.tar.* - cd hdfeos + rm -rf ${LIB_DIR}/hdfeos/HDF-EOS* + tar -xzf ${TAR_DIR}/HDF-EOS*.tar.* -C ${LIB_DIR}/hdfeos + cd ${LIB_DIR}/hdfeos/hdfeos echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --with-hdf4=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} --with-hdf4=${LIB_DIR} --with-jpeg=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} --with-hdf4=${LIB_DIR} --with-jpeg=${LIB_DIR} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" + cp include/*.h ${LIB_DIR}/include/ fi @@ -591,71 +485,32 @@ if [ $COMPILE_NETCDF -eq 1 ]; then echo echo "Compiling HDF5 at `date`" mkdir -p ${LIB_DIR}/hdf5 - cd ${LIB_DIR}/hdf5 - rm -rf hdf5* - tar -xzf ${TAR_DIR}/hdf5*.tar.gz - cd hdf5* + rm -rf ${LIB_DIR}/hdf5/hdf5* + tar -xzf ${TAR_DIR}/hdf5*.tar.gz -C ${LIB_DIR}/hdf5 + cd ${LIB_DIR}/hdf5/hdf5* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib:${LIB_Z} CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib:${LIB_Z} CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" echo echo "Compiling NetCDF-C at `date`" mkdir -p ${LIB_DIR}/netcdf - cd ${LIB_DIR}/netcdf - rm -rf netcdf* - tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz - cd netcdf-c-4* + rm -rf ${LIB_DIR}/netcdf/netcdf* + tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz -C ${LIB_DIR}/netcdf + cd ${LIB_DIR}/netcdf/netcdf-c-4* export FC='' export F90='' echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} CFLAGS=-fPIC CXXFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} CFLAGS=-fPIC CXXFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} CFLAGS=-fPIC CXXFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" echo echo "Compiling NetCDF-CXX at `date`" - cd ${LIB_DIR}/netcdf - tar -xzf ${TAR_DIR}/netcdf-cxx*.tar.gz - cd netcdf-cxx* + tar -xzf ${TAR_DIR}/netcdf-cxx*.tar.gz -C ${LIB_DIR}/netcdf + cd ${LIB_DIR}/netcdf/netcdf-cxx* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile FREETYPE @@ -663,32 +518,13 @@ if [ $COMPILE_FREETYPE -eq 1 ]; then echo echo "Compiling FREETYPE at `date`" mkdir -p ${LIB_DIR}/freetype - cd ${LIB_DIR}/freetype - rm -rf freetype* - tar -xzf ${TAR_DIR}/freetype*.tar.gz - cd freetype* + rm -rf ${LIB_DIR}/freetype/freetype* + tar -xzf ${TAR_DIR}/freetype*.tar.gz -C ${LIB_DIR}/freetype + cd ${LIB_DIR}/freetype/freetype* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --with-png=yes > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} --with-png=yes > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1 --with-zlib=${LIB_DIR} LDFLAGS=-L${LIB_DIR} CPPFLAGS=-I${LIB_DIR}" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} --with-png=yes > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi @@ -700,67 +536,29 @@ if [ $COMPILE_CAIRO -eq 1 ]; then echo echo "Compiling pixman at `date`" mkdir -p ${LIB_DIR}/pixman - cd ${LIB_DIR}/pixman - rm -rf pixman* - tar -xzf ${TAR_DIR}/pixman*.tar.gz - cd pixman* + rm -rf ${LIB_DIR}/pixman/pixman* + tar -xzf ${TAR_DIR}/pixman*.tar.gz -C ${LIB_DIR}/pixman + cd ${LIB_DIR}/pixman/pixman* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi echo echo "Compiling CAIRO at `date`" mkdir -p ${LIB_DIR}/cairo - cd ${LIB_DIR}/cairo - rm -rf cairo* - tar -xf ${TAR_DIR}/cairo*.tar* - cd cairo* + rm -rf ${LIB_DIR}/cairo/cairo* + tar -xf ${TAR_DIR}/cairo*.tar* -C ${LIB_DIR}/cairo + cd ${LIB_DIR}/cairo/cairo* export PKG_CONFIG=`which pkg-config` if [ ${COMPILER_FAMILY} = "PrgEnv-intel" ]; then export PKG_CONFIG_PATH=${LIB_DIR}/lib/pkgconfig/ fi echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} ax_cv_c_float_words_bigendian=no LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" - ./configure --prefix=${LIB_DIR} ax_cv_c_float_words_bigendian=no LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "./configure --prefix=${LIB_DIR} ax_cv_c_float_words_bigendian=no LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" fi # Compile MET @@ -768,14 +566,13 @@ if [ $COMPILE_MET -eq 1 ]; then echo echo "Compiling MET at `date`" - cd ${MET_DIR} # If using source from a tar file remove everything and unpack the tar file # FALSE = compiling from github repo and we don't want to overwrite the files if [ ${USE_MET_TAR_FILE} = "TRUE" ]; then - rm -rf MET* - tar -xzf ${MET_TARBALL} + rm -rf ${MET_DIR}/MET* + tar -xzf ${MET_TARBALL} -C ${MET_DIR} fi - cd MET* + cd ${MET_DIR}/MET* if [ -z ${MET_BUFRLIB} ]; then export MET_BUFRLIB=${LIB_DIR}/lib @@ -800,8 +597,8 @@ if [ $COMPILE_MET -eq 1 ]; then export MET_GSL=${LIB_DIR} fi - export MET_PYTHON_LD=${MET_PYTHON_LD} - export MET_PYTHON_CC=${MET_PYTHON_CC} + export MET_PYTHON_LD + export MET_PYTHON_CC export LDFLAGS="-Wl,--disable-new-dtags" # https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html # ${parameter:+word} @@ -841,37 +638,10 @@ if [ $COMPILE_MET -eq 1 ]; then configure_cmd="${configure_cmd} ${OPT_ARGS}" echo "cd `pwd`" - echo "${configure_cmd} > configure.log 2>&1" - ${configure_cmd} > configure.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "configure returned with non-zero ($ret) status" - exit 1 - fi - - echo "make ${MAKE_ARGS} > make.log 2>&1" - make ${MAKE_ARGS} > make.log 2>&1 - ret=$? - if [ $ret != 0 ]; then - echo "make returned with non-zero ($ret) status" - exit 1 - fi - - echo "make ${MAKE_ARGS} install > make_install.log 2>&1" - make ${MAKE_ARGS} install > make_install.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make install returned with non-zero ($ret) status" - exit 1 - fi - - echo "make ${MAKE_ARGS} test > make_test.log 2>&1" - make ${MAKE_ARGS} test > make_test.log 2>&1 - ret=$? - if [ $? != 0 ]; then - echo "make test returned with non-zero ($ret) status" - exit 1 - fi + run_cmd "${configure_cmd} > configure.log 2>&1" + run_cmd "make ${MAKE_ARGS} > make.log 2>&1" + run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" + run_cmd "make ${MAKE_ARGS} test > make_test.log 2>&1" fi echo "Finished compiling at `date`" From 2e5540733ed173426463f6a912b9be47863d2ba0 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 10:36:01 -0700 Subject: [PATCH 21/58] clean up formatting of long elif statement --- internal/scripts/installation/compile_MET_all.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 0d3c0a0492..6c276f35fc 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -262,7 +262,10 @@ elif [ ${COMPILER_FAMILY} = "pgi" ]; then if [ -z ${FC} ]; then FC=`which pgf90`; fi if [ -z ${F77} ]; then F77=`which pgf90`; fi if [ -z ${F90} ]; then F90=`which pgf90`; fi -elif [[ ${COMPILER_FAMILY} == "intel" ]] || [[ ${COMPILER_FAMILY} == "ics" ]] || [[ ${COMPILER_FAMILY} == "ips" ]] || [[ ${COMPILER_FAMILY} == "PrgEnv-intel" ]]; then +elif [[ ${COMPILER_FAMILY} == "intel" ]] || \ + [[ ${COMPILER_FAMILY} == "ics" ]] || \ + [[ ${COMPILER_FAMILY} == "ips" ]] || \ + [[ ${COMPILER_FAMILY} == "PrgEnv-intel" ]]; then if [ -z ${CC} ]; then CC=`which icc`; fi if [ -z ${CXX} ]; then CXX=`which icc`; fi if [ -z ${FC} ]; then FC=`which ifort`; fi From 35ed5ec6a0d0d89de6573f777aba0300f1aa436c Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 10:36:35 -0700 Subject: [PATCH 22/58] add execute permissions for compile script --- internal/scripts/installation/compile_MET_all.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 internal/scripts/installation/compile_MET_all.sh diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh old mode 100644 new mode 100755 From 519e68905fd273caf8919b98b286e4fa5298a5f1 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 10:49:59 -0700 Subject: [PATCH 23/58] removed extra cd command --- internal/scripts/installation/compile_MET_all.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 6c276f35fc..354ec82eaa 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -398,7 +398,6 @@ if [ $COMPILE_JASPER -eq 1 ]; then echo echo "Compiling JASPER at `date`" mkdir -p ${LIB_DIR}/jasper - cd ${LIB_DIR}/jasper rm -rf ${LIB_DIR}/jasper/jasper* unzip ${TAR_DIR}/jasper*.zip -d ${LIB_DIR}/jasper > /dev/null 2>&1 cd ${LIB_DIR}/jasper/jasper* From 0933433c56334a8b5a39552ceb1a7f5d43776338 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 11:52:46 -0700 Subject: [PATCH 24/58] changed logic to set COMPILE_* to compile optional libraries in env config file instead of having to modify script to install them --- .../scripts/installation/compile_MET_all.sh | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 354ec82eaa..fba1c023e4 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -49,9 +49,8 @@ # The optional libraries HDF4, HDFEOS, FREETYPE, and CAIRO are # used for the following, not widely used tools, MODIS-Regrid, # lidar2nc, and MODE Graphics. To enable building of these libraries, -# directly modify this script changing the value of the compile flags -# for the library (e.g. COMPILE_HDF, COMPILE_HDFEOS) in the code -# below as directed by the comments. If these libraries have already +# set the compile flags for the library (e.g. COMPILE_HDF, COMPILE_HDFEOS) to +# any value in the environment config file. If these libraries have already # been installed and don't need to be reinstalled, please # supply values for the following environment variables in the input # environment configuration file (install_met_env.): @@ -147,10 +146,15 @@ else COMPILE_GSL=0 fi +# Only set COMPILE_HDF and COMPILE_HDFEOS if you want to compile and enable MODIS-Regrid (not widely used) +if [ ! -z "${COMPILE_HDF}" ]; then COMPILE_HDF=1; else COMPILE_HDF=0; fi +if [ ! -z "${COMPILE_HDFEOS}" ]; then COMPILE_HDFEOS=1; else COMPILE_HDFEOS=0; fi + +# Only set COMPILE_FREETYPE and COMPILE_CAIRO if you want to compile and enable MODE Graphics (not widely used) +if [ ! -z "${COMPILE_FREETYPE}" ]; then COMPILE_FREETYPE=1; else COMPILE_FREETYPE=0; fi +if [ ! -z "${COMPILE_CAIRO}" ]; then COMPILE_CAIRO=1; else COMPILE_CAIRO=0; fi + if [[ -z ${MET_HDF} ]] && [[ -z ${MET_HDFEOS} ]]; then - # Only set COMPILE_HDF and COMPILE_HDFEOS to 1 if you want to compile and enable MODIS-Regrid (not widely used) - COMPILE_HDF=0 - COMPILE_HDFEOS=0 if [[ $COMPILE_HDF -eq 1 && $COMPILE_HDFEOS -eq 1 ]]; then export MET_HDF=${LIB_DIR} export MET_HDFEOS=${LIB_DIR} @@ -174,9 +178,6 @@ if [[ ! -z ${MET_CAIRO} ]]; then fi if [[ -z ${MET_FREETYPEINC} && -z ${MET_FREETYPELIB} && -z ${MET_CAIROINC} && -z ${MET_CAIROLIB} ]]; then - # Only set COMPILE_FREETYPE and COMPILE_CAIRO to 1 if you want to compile and enable MODE Graphics (not widely used) - COMPILE_FREETYPE=0 - COMPILE_CAIRO=0 if [[ $COMPILE_CAIRO -eq 1 && $COMPILE_FREETYPE -eq 1 ]]; then export MET_CAIROINC=${LIB_DIR}/include/cairo export MET_CAIROLIB=${LIB_DIR}/lib From e277faf53972c953bd2d74b2c056bef2d68f86e2 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 11:53:19 -0700 Subject: [PATCH 25/58] changed command failure log to include ERROR: and print full command that failed --- internal/scripts/installation/compile_MET_all.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index fba1c023e4..e581524898 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -65,8 +65,7 @@ function run_cmd { eval "$@" ret=$? if [ $ret != 0 ]; then - cmd_name=$(basename $1) - echo "${cmd_name} returned with non-zero ($ret) status" + echo "ERROR: Command returned with non-zero ($ret) status: $*" exit $ret fi } From 4da0c0a63a740c7b6216dae08e2623f45f1341cd Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 11 Jan 2023 11:55:12 -0700 Subject: [PATCH 26/58] changed logic to exit 0 if MET compilation is skipped and shifted indent of rest of code --- .../scripts/installation/compile_MET_all.sh | 144 +++++++++--------- 1 file changed, 75 insertions(+), 69 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index e581524898..633d771b23 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -564,86 +564,92 @@ if [ $COMPILE_CAIRO -eq 1 ]; then fi # Compile MET -if [ $COMPILE_MET -eq 1 ]; then - - echo - echo "Compiling MET at `date`" - # If using source from a tar file remove everything and unpack the tar file - # FALSE = compiling from github repo and we don't want to overwrite the files - if [ ${USE_MET_TAR_FILE} = "TRUE" ]; then - rm -rf ${MET_DIR}/MET* - tar -xzf ${MET_TARBALL} -C ${MET_DIR} - fi - cd ${MET_DIR}/MET* +if [ $COMPILE_MET -eq 0 ]; then + echo Skipping MET compilation + echo "Finished compiling at `date`" + exit 0 +fi - if [ -z ${MET_BUFRLIB} ]; then - export MET_BUFRLIB=${LIB_DIR}/lib - export BUFRLIB_NAME=-lbufr - fi +echo +echo "Compiling MET at `date`" +# If using source from a tar file remove everything and unpack the tar file +# FALSE = compiling from github repo and we don't want to overwrite the files +if [ ${USE_MET_TAR_FILE} = "TRUE" ]; then + rm -rf ${MET_DIR}/MET* + tar -xzf ${MET_TARBALL} -C ${MET_DIR} +fi +cd ${MET_DIR}/MET* - if [ -z ${MET_GRIB2CLIB} ]; then - export MET_GRIB2CLIB=${LIB_DIR}/lib - export MET_GRIB2CINC=${LIB_DIR}/include - export LIB_JASPER=${LIB_DIR}/lib - export LIB_LIBPNG=${LIB_DIR}/lib - export LIB_Z=${LIB_DIR}/lib - export GRIB2CLIB_NAME=-lgrib2c - fi +if [ -z ${MET_BUFRLIB} ]; then + export MET_BUFRLIB=${LIB_DIR}/lib + export BUFRLIB_NAME=-lbufr +fi - if [ -z ${MET_NETCDF} ]; then - export MET_NETCDF=${LIB_DIR} - export MET_HDF5=${LIB_DIR} - fi +if [ -z ${MET_GRIB2CLIB} ]; then + export MET_GRIB2CLIB=${LIB_DIR}/lib + export MET_GRIB2CINC=${LIB_DIR}/include + export LIB_JASPER=${LIB_DIR}/lib + export LIB_LIBPNG=${LIB_DIR}/lib + export LIB_Z=${LIB_DIR}/lib + export GRIB2CLIB_NAME=-lgrib2c +fi - if [ -z ${MET_GSL} ]; then - export MET_GSL=${LIB_DIR} - fi +if [ -z ${MET_NETCDF} ]; then + export MET_NETCDF=${LIB_DIR} + export MET_HDF5=${LIB_DIR} +fi - export MET_PYTHON_LD - export MET_PYTHON_CC - export LDFLAGS="-Wl,--disable-new-dtags" - # https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html - # ${parameter:+word} - # If parameter is null or unset, nothing is substituted, otherwise the expansion of word is substituted. - export LDFLAGS="${LDFLAGS} -Wl,-rpath,${LIB_DIR}/lib${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${MET_PYTHON:+:$MET_PYTHON/lib}${MET_GSL:+:$MET_GSL/lib}" - export LDFLAGS="${LDFLAGS} -Wl,-rpath,${LIB_JASPER:+$LIB_JASPER}${LIB_LIBPNG:+:$LIB_PNG}${LIB_Z:+$LIB_Z}" - export LDFLAGS="${LDFLAGS} ${LIB_JASPER:+-L$LIB_JASPER} ${LIB_LIBPNG:+-L$LIB_LIBPNG} ${MET_HDF5:+-L$MET_HDF5/lib}" - export LIBS="${LIBS} -lhdf5_hl -lhdf5 -lz" - export MET_FONT_DIR=${TEST_BASE}/fonts - - if [ "${SET_D64BIT}" = "TRUE" ]; then - export CFLAGS="-D__64BIT__" - export CXXFLAGS="-D__64BIT__" - fi +if [ -z ${MET_GSL} ]; then + export MET_GSL=${LIB_DIR} +fi - echo "MET Configuration settings..." - printenv | egrep "^MET_" | sed -r 's/^/export /g' - echo "LDFLAGS = ${LDFLAGS}" - export OPT_ARGS='' - if [[ $COMPILER_FAMILY == "pgi" ]]; then - export OPT_ARGS="${OPT_ARGS} FFLAGS=-lpgf90" - fi +export MET_PYTHON_LD +export MET_PYTHON_CC +export LDFLAGS="-Wl,--disable-new-dtags" +# https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html +# ${parameter:+word} +# If parameter is null or unset, nothing is substituted, otherwise the expansion of word is substituted. +export LDFLAGS="${LDFLAGS} -Wl,-rpath,${LIB_DIR}/lib${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${MET_PYTHON:+:$MET_PYTHON/lib}${MET_GSL:+:$MET_GSL/lib}" +export LDFLAGS="${LDFLAGS} -Wl,-rpath,${LIB_JASPER:+$LIB_JASPER}${LIB_LIBPNG:+:$LIB_PNG}${LIB_Z:+$LIB_Z}" +export LDFLAGS="${LDFLAGS} ${LIB_JASPER:+-L$LIB_JASPER} ${LIB_LIBPNG:+-L$LIB_LIBPNG} ${MET_HDF5:+-L$MET_HDF5/lib}" +export LIBS="${LIBS} -lhdf5_hl -lhdf5 -lz" +export MET_FONT_DIR=${TEST_BASE}/fonts - configure_cmd="./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH} BUFRLIB_NAME=${BUFRLIB_NAME} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2" - if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && ! -z ${MET_CAIROINC} && ! -z ${MET_CAIROLIB} ]]; then - OPT_ARGS="--enable-mode_graphics ${OPT_ARGS}" - fi +if [ "${SET_D64BIT}" = "TRUE" ]; then + export CFLAGS="-D__64BIT__" + export CXXFLAGS="-D__64BIT__" +fi - if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then - OPT_ARGS="--enable-modis --enable-lidar2nc ${OPT_ARGS}" - fi +echo "MET Configuration settings..." +printenv | egrep "^MET_" | sed -r 's/^/export /g' +echo "LDFLAGS = ${LDFLAGS}" +export OPT_ARGS='' +if [[ $COMPILER_FAMILY == "pgi" ]]; then + export OPT_ARGS="${OPT_ARGS} FFLAGS=-lpgf90" +fi - if [[ ! -z ${MET_PYTHON_CC} || ! -z ${MET_PYTHON_LD} ]]; then - OPT_ARGS="--enable-python ${OPT_ARGS}" - fi +configure_cmd="./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH}" +configure_cmd="${configure_cmd} BUFRLIB_NAME=${BUFRLIB_NAME}" +configure_cmd="${configure_cmd} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2" +if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && \ + ! -z ${MET_CAIROINC} && ! -z ${MET_CAIROLIB} ]]; then + configure_cmd="${configure_cmd} --enable-mode_graphics" +fi - configure_cmd="${configure_cmd} ${OPT_ARGS}" +if [[ ! -z $MET_HDF && ! -z $MET_HDFEOS ]]; then + configure_cmd="${configure_cmd} --enable-modis --enable-lidar2nc" +fi - echo "cd `pwd`" - run_cmd "${configure_cmd} > configure.log 2>&1" - run_cmd "make ${MAKE_ARGS} > make.log 2>&1" - run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" - run_cmd "make ${MAKE_ARGS} test > make_test.log 2>&1" +if [[ ! -z ${MET_PYTHON_CC} || ! -z ${MET_PYTHON_LD} ]]; then + configure_cmd="${configure_cmd} --enable-python" fi +configure_cmd="${configure_cmd} ${OPT_ARGS}" + +echo "cd `pwd`" +run_cmd "${configure_cmd} > configure.log 2>&1" +run_cmd "make ${MAKE_ARGS} > make.log 2>&1" +run_cmd "make ${MAKE_ARGS} install > make_install.log 2>&1" +run_cmd "make ${MAKE_ARGS} test > make_test.log 2>&1" + echo "Finished compiling at `date`" From 9b5cd1f27a0e74bc2bf3e01f03c632dd7ba9e176 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Thu, 12 Jan 2023 15:32:00 -0700 Subject: [PATCH 27/58] Per #2388, make MET_PYTHON_BIN_EXE a required configuration setting for python embedding. Update the global python instance to reference the variable. Update development.seneca to set it. Still need to: update the documentation, compile script, and other development.machine files. --- Makefile.in | 1 + configure | 32 +++++++++++++++++-- configure.ac | 27 ++++++++++++++-- data/Makefile.in | 1 + data/climo/Makefile.in | 1 + data/climo/seeps/Makefile.in | 1 + data/colortables/Makefile.in | 1 + data/colortables/NCL_colortables/Makefile.in | 1 + data/config/Makefile.in | 1 + data/map/Makefile.in | 1 + data/map/admin_by_country/Makefile.in | 1 + data/poly/HMT_masks/Makefile.in | 1 + data/poly/Makefile.in | 1 + data/poly/NCEP_masks/Makefile.in | 1 + data/ps/Makefile.in | 1 + data/table_files/Makefile.in | 1 + data/tc_data/Makefile.in | 1 + data/wrappers/Makefile.in | 1 + .../scripts/environment/development.seneca | 1 + internal/test_util/Makefile.in | 1 + internal/test_util/basic/Makefile.in | 1 + .../test_util/basic/vx_config/Makefile.in | 1 + internal/test_util/basic/vx_log/Makefile.in | 1 + internal/test_util/basic/vx_util/Makefile.in | 1 + internal/test_util/libcode/Makefile.in | 1 + .../test_util/libcode/vx_data2d/Makefile.in | 1 + .../libcode/vx_data2d_factory/Makefile.in | 1 + .../libcode/vx_data2d_grib/Makefile.in | 1 + .../libcode/vx_data2d_nc_met/Makefile.in | 1 + .../libcode/vx_data2d_nccf/Makefile.in | 1 + .../test_util/libcode/vx_geodesy/Makefile.in | 1 + .../test_util/libcode/vx_grid/Makefile.in | 1 + .../test_util/libcode/vx_nc_util/Makefile.in | 1 + .../test_util/libcode/vx_physics/Makefile.in | 1 + .../libcode/vx_plot_util/Makefile.in | 1 + internal/test_util/libcode/vx_ps/Makefile.in | 1 + .../libcode/vx_series_data/Makefile.in | 1 + .../test_util/libcode/vx_solar/Makefile.in | 1 + .../test_util/libcode/vx_tc_util/Makefile.in | 1 + internal/test_util/tools/Makefile.in | 1 + internal/test_util/tools/other/Makefile.in | 1 + .../tools/other/mode_time_domain/Makefile.in | 1 + scripts/Rscripts/Makefile.in | 1 + scripts/Rscripts/include/Makefile.in | 1 + scripts/python/Makefile.in | 1 + scripts/utility/Makefile.in | 1 + src/Makefile.in | 1 + src/basic/Makefile.in | 1 + src/basic/enum_to_string/Makefile.in | 1 + src/basic/vx_cal/Makefile.in | 1 + src/basic/vx_config/Makefile.in | 1 + src/basic/vx_log/Makefile.in | 1 + src/basic/vx_math/Makefile.in | 1 + src/basic/vx_util/Makefile.in | 1 + src/basic/vx_util_math/Makefile.in | 1 + src/libcode/Makefile.in | 1 + src/libcode/vx_afm/Makefile.in | 1 + src/libcode/vx_analysis_util/Makefile.in | 1 + src/libcode/vx_bool_calc/Makefile.in | 1 + src/libcode/vx_color/Makefile.in | 1 + src/libcode/vx_data2d/Makefile.in | 1 + src/libcode/vx_data2d_factory/Makefile.in | 1 + src/libcode/vx_data2d_grib/Makefile.in | 1 + src/libcode/vx_data2d_grib2/Makefile.in | 1 + src/libcode/vx_data2d_nc_met/Makefile.in | 1 + src/libcode/vx_data2d_nc_pinterp/Makefile.in | 1 + src/libcode/vx_data2d_nccf/Makefile.in | 1 + src/libcode/vx_data2d_python/Makefile.in | 1 + src/libcode/vx_geodesy/Makefile.in | 1 + src/libcode/vx_gis/Makefile.in | 1 + src/libcode/vx_gnomon/Makefile.in | 1 + src/libcode/vx_grid/Makefile.in | 1 + src/libcode/vx_gsl_prob/Makefile.in | 1 + src/libcode/vx_nav/Makefile.in | 1 + src/libcode/vx_nc_obs/Makefile.in | 1 + src/libcode/vx_nc_util/Makefile.in | 1 + src/libcode/vx_pb_util/Makefile.in | 1 + src/libcode/vx_physics/Makefile.in | 1 + src/libcode/vx_plot_util/Makefile.in | 1 + src/libcode/vx_pointdata_python/Makefile.in | 1 + src/libcode/vx_ps/Makefile.in | 1 + src/libcode/vx_pxm/Makefile.in | 1 + src/libcode/vx_python3_utils/Makefile.in | 1 + src/libcode/vx_python3_utils/global_python.h | 7 +++- src/libcode/vx_regrid/Makefile.in | 1 + src/libcode/vx_render/Makefile.in | 1 + src/libcode/vx_seeps/Makefile.in | 1 + src/libcode/vx_series_data/Makefile.in | 1 + src/libcode/vx_shapedata/Makefile.in | 1 + src/libcode/vx_solar/Makefile.in | 1 + src/libcode/vx_stat_out/Makefile.in | 1 + src/libcode/vx_statistics/Makefile.in | 1 + src/libcode/vx_summary/Makefile.in | 1 + src/libcode/vx_tc_util/Makefile.in | 1 + src/libcode/vx_time_series/Makefile.in | 1 + src/tools/Makefile.in | 1 + src/tools/core/Makefile.in | 1 + src/tools/core/ensemble_stat/Makefile.in | 1 + src/tools/core/grid_stat/Makefile.in | 1 + src/tools/core/mode/Makefile.in | 1 + src/tools/core/mode_analysis/Makefile.in | 1 + src/tools/core/pcp_combine/Makefile.in | 1 + src/tools/core/point_stat/Makefile.in | 1 + src/tools/core/series_analysis/Makefile.in | 1 + src/tools/core/stat_analysis/Makefile.in | 1 + src/tools/core/wavelet_stat/Makefile.in | 1 + src/tools/dev_utils/Makefile.in | 1 + src/tools/dev_utils/shapefiles/Makefile.in | 1 + src/tools/other/Makefile.in | 1 + src/tools/other/ascii2nc/Makefile.in | 1 + src/tools/other/gen_ens_prod/Makefile.in | 1 + src/tools/other/gen_vx_mask/Makefile.in | 1 + src/tools/other/gis_utils/Makefile.in | 1 + src/tools/other/grid_diag/Makefile.in | 1 + src/tools/other/gsi_tools/Makefile.in | 1 + src/tools/other/ioda2nc/Makefile.in | 1 + src/tools/other/lidar2nc/Makefile.in | 1 + src/tools/other/madis2nc/Makefile.in | 1 + src/tools/other/mode_graphics/Makefile.in | 1 + src/tools/other/mode_time_domain/Makefile.in | 1 + src/tools/other/modis_regrid/Makefile.in | 1 + src/tools/other/pb2nc/Makefile.in | 1 + src/tools/other/plot_data_plane/Makefile.in | 1 + src/tools/other/plot_point_obs/Makefile.in | 1 + src/tools/other/point2grid/Makefile.in | 1 + src/tools/other/regrid_data_plane/Makefile.in | 1 + src/tools/other/shift_data_plane/Makefile.in | 1 + src/tools/other/wwmca_tool/Makefile.in | 1 + src/tools/tc_utils/Makefile.in | 1 + src/tools/tc_utils/rmw_analysis/Makefile.in | 1 + src/tools/tc_utils/tc_dland/Makefile.in | 1 + src/tools/tc_utils/tc_gen/Makefile.in | 1 + src/tools/tc_utils/tc_pairs/Makefile.in | 1 + src/tools/tc_utils/tc_rmw/Makefile.in | 1 + src/tools/tc_utils/tc_stat/Makefile.in | 1 + 135 files changed, 191 insertions(+), 7 deletions(-) diff --git a/Makefile.in b/Makefile.in index e1277cbbcd..8236187480 100644 --- a/Makefile.in +++ b/Makefile.in @@ -274,6 +274,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/configure b/configure index cb89948353..d9f40a47de 100755 --- a/configure +++ b/configure @@ -746,6 +746,7 @@ MET_GSLINC MET_GSL MET_PYTHON_LD MET_PYTHON_CC +MET_PYTHON_BIN_EXE GRIB2CLIB_NAME MET_GRIB2CLIB MET_GRIB2CINC @@ -897,6 +898,7 @@ MET_GRIB2C MET_GRIB2CINC MET_GRIB2CLIB GRIB2CLIB_NAME +MET_PYTHON_BIN_EXE MET_PYTHON_CC MET_PYTHON_LD MET_GSL @@ -1647,13 +1649,16 @@ Some influential environment variables: Name of grib2c library to link with. For example, -lgrib2c_v1.6.0 or -lgrib2c, etc. If it is -lgrib2c, you don't have to specify it. + MET_PYTHON_BIN_EXE + Full path to the python executable corresponding to + MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/local/bin/python3. MET_PYTHON_CC Where the python header files are located, e.g. -I. - Set to the output of 'python-config --cflags'. + Set to the output of 'python3-config --cflags'. MET_PYTHON_LD Where the python library files are located, e.g. -L, followed by the python library names, e.g. -l. Set to - the output of 'python-config --ldflags'. + the output of 'python3-config --ldflags'. MET_GSL Where gsl lib and include subdirectories are located. If they are installed in /usr/local, you don't have to specify them. MET_GSLINC Where gsl include files are located. Use if the libraries and @@ -4648,7 +4653,7 @@ if test -n "$MET_GRIB2CLIB"; then fi # -# Look for the PYTHON library +# Look for the PYTHON executable and library # # Configure the variables. The help text will appear if the user uses "configure --help". @@ -4656,6 +4661,27 @@ fi + +# Ensure that all or none are specified. + +if (test -n "$MET_PYTHON_BIN_EXE" || \ + test -n "$MET_PYTHON_CC" || \ + test -n "$MET_PYTHON_LD"); then + if test -z "$MET_PYTHON_BIN_EXE"; then + as_fn_error $? "MET_PYTHON_CC or MET_PYTHON_LD environment variable set, but MET_PYTHON_BIN_EXE not set. If one of these variables is set, then all must be set." "$LINENO" 5 + elif test -z "$MET_PYTHON_CC"; then + as_fn_error $? "MET_PYTHON_BIN_EXE or MET_PYTHON_LD environment variable set, but MET_PYTHON_CC not set. If one of these variables is set, then all must be set." "$LINENO" 5 + elif test -z "$MET_PYTHON_LD"; then + as_fn_error $? "MET_PYTHON_BIN_EXE or MET_PYTHON_CC environment variable set, but MET_PYTHON_LD not set. If one of these variables is set, then all must be set." "$LINENO" 5 + fi +fi + +# Add MET_PYTHON_BIN_EXE to the CPPFLAGS + +if test -n "$MET_PYTHON_BIN_EXE"; then + CPPFLAGS=$CPPFLAGS' -DMET_PYTHON_BIN_EXE="\"${MET_PYTHON_BIN_EXE}\""' +fi + if test -n "$MET_PYTHON_CC"; then CPPFLAGS="${CPPFLAGS} -I../../basic/vx_log -I../../basic/vx_util ${MET_PYTHON_CC}" fi diff --git a/configure.ac b/configure.ac index efd3aaf7bc..9549451bf1 100644 --- a/configure.ac +++ b/configure.ac @@ -155,13 +155,34 @@ if test -n "$MET_GRIB2CLIB"; then fi # -# Look for the PYTHON library +# Look for the PYTHON executable and library # # Configure the variables. The help text will appear if the user uses "configure --help". -AC_ARG_VAR([MET_PYTHON_CC], [Where the python header files are located, e.g. -I. Set to the output of 'python-config --cflags'.]) -AC_ARG_VAR([MET_PYTHON_LD], [Where the python library files are located, e.g. -L, followed by the python library names, e.g. -l. Set to the output of 'python-config --ldflags'.]) +AC_ARG_VAR([MET_PYTHON_BIN_EXE], [Full path to the python executable corresponding to MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/local/bin/python3.]) +AC_ARG_VAR([MET_PYTHON_CC], [Where the python header files are located, e.g. -I. Set to the output of 'python3-config --cflags'.]) +AC_ARG_VAR([MET_PYTHON_LD], [Where the python library files are located, e.g. -L, followed by the python library names, e.g. -l. Set to the output of 'python3-config --ldflags'.]) + +# Ensure that all or none are specified. + +if (test -n "$MET_PYTHON_BIN_EXE" || \ + test -n "$MET_PYTHON_CC" || \ + test -n "$MET_PYTHON_LD"); then + if test -z "$MET_PYTHON_BIN_EXE"; then + AC_MSG_ERROR([MET_PYTHON_CC or MET_PYTHON_LD environment variable set, but MET_PYTHON_BIN_EXE not set. If one of these variables is set, then all must be set.]) + elif test -z "$MET_PYTHON_CC"; then + AC_MSG_ERROR([MET_PYTHON_BIN_EXE or MET_PYTHON_LD environment variable set, but MET_PYTHON_CC not set. If one of these variables is set, then all must be set.]) + elif test -z "$MET_PYTHON_LD"; then + AC_MSG_ERROR([MET_PYTHON_BIN_EXE or MET_PYTHON_CC environment variable set, but MET_PYTHON_LD not set. If one of these variables is set, then all must be set.]) + fi +fi + +# Add MET_PYTHON_BIN_EXE to the CPPFLAGS + +if test -n "$MET_PYTHON_BIN_EXE"; then + CPPFLAGS=$CPPFLAGS' -DMET_PYTHON_BIN_EXE="\"${MET_PYTHON_BIN_EXE}\""' +fi if test -n "$MET_PYTHON_CC"; then CPPFLAGS="${CPPFLAGS} -I../../basic/vx_log -I../../basic/vx_util ${MET_PYTHON_CC}" diff --git a/data/Makefile.in b/data/Makefile.in index 426a2b15bf..acf549d2de 100644 --- a/data/Makefile.in +++ b/data/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/climo/Makefile.in b/data/climo/Makefile.in index c612befe6e..9157b38272 100644 --- a/data/climo/Makefile.in +++ b/data/climo/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/climo/seeps/Makefile.in b/data/climo/seeps/Makefile.in index 911a2cbb2b..e8ef783b4d 100644 --- a/data/climo/seeps/Makefile.in +++ b/data/climo/seeps/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/colortables/Makefile.in b/data/colortables/Makefile.in index a077ec500b..7c1f6997b1 100644 --- a/data/colortables/Makefile.in +++ b/data/colortables/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/colortables/NCL_colortables/Makefile.in b/data/colortables/NCL_colortables/Makefile.in index fe4f8a028a..831de55b27 100644 --- a/data/colortables/NCL_colortables/Makefile.in +++ b/data/colortables/NCL_colortables/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/config/Makefile.in b/data/config/Makefile.in index a9e630c26c..eaad379a8e 100644 --- a/data/config/Makefile.in +++ b/data/config/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/map/Makefile.in b/data/map/Makefile.in index 143c083f3b..feec2dd2f7 100644 --- a/data/map/Makefile.in +++ b/data/map/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/map/admin_by_country/Makefile.in b/data/map/admin_by_country/Makefile.in index d117a4dc4e..6459056796 100644 --- a/data/map/admin_by_country/Makefile.in +++ b/data/map/admin_by_country/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/poly/HMT_masks/Makefile.in b/data/poly/HMT_masks/Makefile.in index 136ff8fad2..efb0ff9e20 100644 --- a/data/poly/HMT_masks/Makefile.in +++ b/data/poly/HMT_masks/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/poly/Makefile.in b/data/poly/Makefile.in index 45c5bf74a2..e21a12d8f9 100644 --- a/data/poly/Makefile.in +++ b/data/poly/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/poly/NCEP_masks/Makefile.in b/data/poly/NCEP_masks/Makefile.in index db456806ec..59224ac306 100644 --- a/data/poly/NCEP_masks/Makefile.in +++ b/data/poly/NCEP_masks/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/ps/Makefile.in b/data/ps/Makefile.in index 0d0f9700f0..e2501d83ba 100644 --- a/data/ps/Makefile.in +++ b/data/ps/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/table_files/Makefile.in b/data/table_files/Makefile.in index ed5514f48f..e64044a945 100644 --- a/data/table_files/Makefile.in +++ b/data/table_files/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/tc_data/Makefile.in b/data/tc_data/Makefile.in index fa5d0ed638..7fde41b40e 100644 --- a/data/tc_data/Makefile.in +++ b/data/tc_data/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/data/wrappers/Makefile.in b/data/wrappers/Makefile.in index 9ab052cca5..7d69426340 100644 --- a/data/wrappers/Makefile.in +++ b/data/wrappers/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/scripts/environment/development.seneca b/internal/scripts/environment/development.seneca index f4b37c5aa1..9565d5e04b 100644 --- a/internal/scripts/environment/development.seneca +++ b/internal/scripts/environment/development.seneca @@ -23,6 +23,7 @@ export MET_JASPER=${MET_DST}/jasper-1.900.1 # For Python 3 in met-9.0 export MET_PYTHON=/usr/local/met-python3 +export MET_PYTHON_BIN_EXE=${MET_PYTHON}/bin/python3.8 export MET_PYTHON_CC="-I${MET_PYTHON}/include/python3.8" export MET_PYTHON_LD="-L${MET_PYTHON}/lib -lpython3.8 -lcrypt -lpthread -ldl -lutil -lm" diff --git a/internal/test_util/Makefile.in b/internal/test_util/Makefile.in index 6da5b75dda..333d20944e 100644 --- a/internal/test_util/Makefile.in +++ b/internal/test_util/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/basic/Makefile.in b/internal/test_util/basic/Makefile.in index a8c4739023..f11b231015 100644 --- a/internal/test_util/basic/Makefile.in +++ b/internal/test_util/basic/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/basic/vx_config/Makefile.in b/internal/test_util/basic/vx_config/Makefile.in index ed1b6f00cf..15fbe1495e 100644 --- a/internal/test_util/basic/vx_config/Makefile.in +++ b/internal/test_util/basic/vx_config/Makefile.in @@ -274,6 +274,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/basic/vx_log/Makefile.in b/internal/test_util/basic/vx_log/Makefile.in index e62f883a2e..b2645f0632 100644 --- a/internal/test_util/basic/vx_log/Makefile.in +++ b/internal/test_util/basic/vx_log/Makefile.in @@ -243,6 +243,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/basic/vx_util/Makefile.in b/internal/test_util/basic/vx_util/Makefile.in index 0827617613..927779187f 100644 --- a/internal/test_util/basic/vx_util/Makefile.in +++ b/internal/test_util/basic/vx_util/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/Makefile.in b/internal/test_util/libcode/Makefile.in index 851e209354..6eaddab183 100644 --- a/internal/test_util/libcode/Makefile.in +++ b/internal/test_util/libcode/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_data2d/Makefile.in b/internal/test_util/libcode/vx_data2d/Makefile.in index 6dbf10dd85..23aaf9a609 100644 --- a/internal/test_util/libcode/vx_data2d/Makefile.in +++ b/internal/test_util/libcode/vx_data2d/Makefile.in @@ -247,6 +247,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_data2d_factory/Makefile.in b/internal/test_util/libcode/vx_data2d_factory/Makefile.in index 902879f0e6..2819f915fd 100644 --- a/internal/test_util/libcode/vx_data2d_factory/Makefile.in +++ b/internal/test_util/libcode/vx_data2d_factory/Makefile.in @@ -245,6 +245,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_data2d_grib/Makefile.in b/internal/test_util/libcode/vx_data2d_grib/Makefile.in index b6eed1a9d1..b5915e8267 100644 --- a/internal/test_util/libcode/vx_data2d_grib/Makefile.in +++ b/internal/test_util/libcode/vx_data2d_grib/Makefile.in @@ -238,6 +238,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_data2d_nc_met/Makefile.in b/internal/test_util/libcode/vx_data2d_nc_met/Makefile.in index 5593c9c5ee..07eac4f39c 100644 --- a/internal/test_util/libcode/vx_data2d_nc_met/Makefile.in +++ b/internal/test_util/libcode/vx_data2d_nc_met/Makefile.in @@ -239,6 +239,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_data2d_nccf/Makefile.in b/internal/test_util/libcode/vx_data2d_nccf/Makefile.in index 5d9b74d852..0c18295922 100644 --- a/internal/test_util/libcode/vx_data2d_nccf/Makefile.in +++ b/internal/test_util/libcode/vx_data2d_nccf/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_geodesy/Makefile.in b/internal/test_util/libcode/vx_geodesy/Makefile.in index 844e4f4090..45a8923ec8 100644 --- a/internal/test_util/libcode/vx_geodesy/Makefile.in +++ b/internal/test_util/libcode/vx_geodesy/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_grid/Makefile.in b/internal/test_util/libcode/vx_grid/Makefile.in index e8038cb4c0..df505544ad 100644 --- a/internal/test_util/libcode/vx_grid/Makefile.in +++ b/internal/test_util/libcode/vx_grid/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_nc_util/Makefile.in b/internal/test_util/libcode/vx_nc_util/Makefile.in index bc6cf1d1db..59da8f8a92 100644 --- a/internal/test_util/libcode/vx_nc_util/Makefile.in +++ b/internal/test_util/libcode/vx_nc_util/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_physics/Makefile.in b/internal/test_util/libcode/vx_physics/Makefile.in index 03f6d974f1..3bbc795eb2 100644 --- a/internal/test_util/libcode/vx_physics/Makefile.in +++ b/internal/test_util/libcode/vx_physics/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_plot_util/Makefile.in b/internal/test_util/libcode/vx_plot_util/Makefile.in index 04a2fe1039..fd5faa8f00 100644 --- a/internal/test_util/libcode/vx_plot_util/Makefile.in +++ b/internal/test_util/libcode/vx_plot_util/Makefile.in @@ -238,6 +238,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_ps/Makefile.in b/internal/test_util/libcode/vx_ps/Makefile.in index e2f8ce7ffb..06d19a7bf0 100644 --- a/internal/test_util/libcode/vx_ps/Makefile.in +++ b/internal/test_util/libcode/vx_ps/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_series_data/Makefile.in b/internal/test_util/libcode/vx_series_data/Makefile.in index 6dd2865b07..13f34075ba 100644 --- a/internal/test_util/libcode/vx_series_data/Makefile.in +++ b/internal/test_util/libcode/vx_series_data/Makefile.in @@ -239,6 +239,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_solar/Makefile.in b/internal/test_util/libcode/vx_solar/Makefile.in index c410af9ce9..dcd7455458 100644 --- a/internal/test_util/libcode/vx_solar/Makefile.in +++ b/internal/test_util/libcode/vx_solar/Makefile.in @@ -237,6 +237,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/libcode/vx_tc_util/Makefile.in b/internal/test_util/libcode/vx_tc_util/Makefile.in index 1d6a17442c..899010b408 100644 --- a/internal/test_util/libcode/vx_tc_util/Makefile.in +++ b/internal/test_util/libcode/vx_tc_util/Makefile.in @@ -247,6 +247,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/tools/Makefile.in b/internal/test_util/tools/Makefile.in index 67e36b9f07..f1d2a1f3fe 100644 --- a/internal/test_util/tools/Makefile.in +++ b/internal/test_util/tools/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/tools/other/Makefile.in b/internal/test_util/tools/other/Makefile.in index 9ed1cf32eb..9599a8dfd5 100644 --- a/internal/test_util/tools/other/Makefile.in +++ b/internal/test_util/tools/other/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/internal/test_util/tools/other/mode_time_domain/Makefile.in b/internal/test_util/tools/other/mode_time_domain/Makefile.in index 6a57baf133..4b9c136b1b 100644 --- a/internal/test_util/tools/other/mode_time_domain/Makefile.in +++ b/internal/test_util/tools/other/mode_time_domain/Makefile.in @@ -262,6 +262,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/scripts/Rscripts/Makefile.in b/scripts/Rscripts/Makefile.in index cb53537961..ecfeb05665 100644 --- a/scripts/Rscripts/Makefile.in +++ b/scripts/Rscripts/Makefile.in @@ -279,6 +279,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/scripts/Rscripts/include/Makefile.in b/scripts/Rscripts/include/Makefile.in index 3962ab2a85..ba65effd91 100644 --- a/scripts/Rscripts/include/Makefile.in +++ b/scripts/Rscripts/include/Makefile.in @@ -219,6 +219,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/scripts/python/Makefile.in b/scripts/python/Makefile.in index 80da2e8f84..bfcc683427 100644 --- a/scripts/python/Makefile.in +++ b/scripts/python/Makefile.in @@ -221,6 +221,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/scripts/utility/Makefile.in b/scripts/utility/Makefile.in index c8a3703b34..a515a31201 100644 --- a/scripts/utility/Makefile.in +++ b/scripts/utility/Makefile.in @@ -221,6 +221,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/Makefile.in b/src/Makefile.in index 6e6c718c05..934182add5 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/Makefile.in b/src/basic/Makefile.in index b6f34032a8..bf83fcf031 100644 --- a/src/basic/Makefile.in +++ b/src/basic/Makefile.in @@ -251,6 +251,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/enum_to_string/Makefile.in b/src/basic/enum_to_string/Makefile.in index d2f57cb5c7..814fdfda3d 100644 --- a/src/basic/enum_to_string/Makefile.in +++ b/src/basic/enum_to_string/Makefile.in @@ -268,6 +268,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_cal/Makefile.in b/src/basic/vx_cal/Makefile.in index a3292808f4..e3e4399f86 100644 --- a/src/basic/vx_cal/Makefile.in +++ b/src/basic/vx_cal/Makefile.in @@ -275,6 +275,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_config/Makefile.in b/src/basic/vx_config/Makefile.in index 4c152e5961..f4f2a345a5 100644 --- a/src/basic/vx_config/Makefile.in +++ b/src/basic/vx_config/Makefile.in @@ -323,6 +323,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_log/Makefile.in b/src/basic/vx_log/Makefile.in index 64b1b5ccc7..7057cfead1 100644 --- a/src/basic/vx_log/Makefile.in +++ b/src/basic/vx_log/Makefile.in @@ -254,6 +254,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_math/Makefile.in b/src/basic/vx_math/Makefile.in index b99d0c4ebd..267f4e3bb2 100644 --- a/src/basic/vx_math/Makefile.in +++ b/src/basic/vx_math/Makefile.in @@ -268,6 +268,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_util/Makefile.in b/src/basic/vx_util/Makefile.in index 624a71121a..9888ef5d13 100644 --- a/src/basic/vx_util/Makefile.in +++ b/src/basic/vx_util/Makefile.in @@ -373,6 +373,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/basic/vx_util_math/Makefile.in b/src/basic/vx_util_math/Makefile.in index 969d375ad2..db47183f09 100644 --- a/src/basic/vx_util_math/Makefile.in +++ b/src/basic/vx_util_math/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/Makefile.in b/src/libcode/Makefile.in index 631e84600e..f4aa5ac826 100644 --- a/src/libcode/Makefile.in +++ b/src/libcode/Makefile.in @@ -260,6 +260,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_afm/Makefile.in b/src/libcode/vx_afm/Makefile.in index 70550c8c8a..5f4661b089 100644 --- a/src/libcode/vx_afm/Makefile.in +++ b/src/libcode/vx_afm/Makefile.in @@ -262,6 +262,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_analysis_util/Makefile.in b/src/libcode/vx_analysis_util/Makefile.in index 7f3ea7e257..ff0b55ec5e 100644 --- a/src/libcode/vx_analysis_util/Makefile.in +++ b/src/libcode/vx_analysis_util/Makefile.in @@ -269,6 +269,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_bool_calc/Makefile.in b/src/libcode/vx_bool_calc/Makefile.in index 6dbd6f7811..cb58b490a9 100644 --- a/src/libcode/vx_bool_calc/Makefile.in +++ b/src/libcode/vx_bool_calc/Makefile.in @@ -264,6 +264,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_color/Makefile.in b/src/libcode/vx_color/Makefile.in index 00b1a1a487..74de00208e 100644 --- a/src/libcode/vx_color/Makefile.in +++ b/src/libcode/vx_color/Makefile.in @@ -281,6 +281,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d/Makefile.in b/src/libcode/vx_data2d/Makefile.in index e961349c9b..708d731dc6 100644 --- a/src/libcode/vx_data2d/Makefile.in +++ b/src/libcode/vx_data2d/Makefile.in @@ -264,6 +264,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_factory/Makefile.in b/src/libcode/vx_data2d_factory/Makefile.in index 1d17ebff51..ed3da07481 100644 --- a/src/libcode/vx_data2d_factory/Makefile.in +++ b/src/libcode/vx_data2d_factory/Makefile.in @@ -267,6 +267,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_grib/Makefile.in b/src/libcode/vx_data2d_grib/Makefile.in index cfbc007885..df5f23bfe9 100644 --- a/src/libcode/vx_data2d_grib/Makefile.in +++ b/src/libcode/vx_data2d_grib/Makefile.in @@ -264,6 +264,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_grib2/Makefile.in b/src/libcode/vx_data2d_grib2/Makefile.in index 11fbfb0aeb..fec9efaa4e 100644 --- a/src/libcode/vx_data2d_grib2/Makefile.in +++ b/src/libcode/vx_data2d_grib2/Makefile.in @@ -257,6 +257,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_nc_met/Makefile.in b/src/libcode/vx_data2d_nc_met/Makefile.in index 4c3c5965b5..1548295a50 100644 --- a/src/libcode/vx_data2d_nc_met/Makefile.in +++ b/src/libcode/vx_data2d_nc_met/Makefile.in @@ -261,6 +261,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_nc_pinterp/Makefile.in b/src/libcode/vx_data2d_nc_pinterp/Makefile.in index 729aafabde..ac2869fb14 100644 --- a/src/libcode/vx_data2d_nc_pinterp/Makefile.in +++ b/src/libcode/vx_data2d_nc_pinterp/Makefile.in @@ -262,6 +262,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_nccf/Makefile.in b/src/libcode/vx_data2d_nccf/Makefile.in index d70230d844..44d23bbc8d 100644 --- a/src/libcode/vx_data2d_nccf/Makefile.in +++ b/src/libcode/vx_data2d_nccf/Makefile.in @@ -258,6 +258,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_data2d_python/Makefile.in b/src/libcode/vx_data2d_python/Makefile.in index f059f127f7..fdd274cc72 100644 --- a/src/libcode/vx_data2d_python/Makefile.in +++ b/src/libcode/vx_data2d_python/Makefile.in @@ -265,6 +265,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_geodesy/Makefile.in b/src/libcode/vx_geodesy/Makefile.in index bbabdfb872..3cd3bc8c93 100644 --- a/src/libcode/vx_geodesy/Makefile.in +++ b/src/libcode/vx_geodesy/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_gis/Makefile.in b/src/libcode/vx_gis/Makefile.in index 33f813a774..254974527b 100644 --- a/src/libcode/vx_gis/Makefile.in +++ b/src/libcode/vx_gis/Makefile.in @@ -262,6 +262,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_gnomon/Makefile.in b/src/libcode/vx_gnomon/Makefile.in index dd2cd0e514..4c5548a7af 100644 --- a/src/libcode/vx_gnomon/Makefile.in +++ b/src/libcode/vx_gnomon/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_grid/Makefile.in b/src/libcode/vx_grid/Makefile.in index 7e60a24082..d0fa2c9af6 100644 --- a/src/libcode/vx_grid/Makefile.in +++ b/src/libcode/vx_grid/Makefile.in @@ -277,6 +277,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_gsl_prob/Makefile.in b/src/libcode/vx_gsl_prob/Makefile.in index 52a1a3e506..a16c772b92 100644 --- a/src/libcode/vx_gsl_prob/Makefile.in +++ b/src/libcode/vx_gsl_prob/Makefile.in @@ -261,6 +261,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_nav/Makefile.in b/src/libcode/vx_nav/Makefile.in index d624c55b0c..b3b9073674 100644 --- a/src/libcode/vx_nav/Makefile.in +++ b/src/libcode/vx_nav/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_nc_obs/Makefile.in b/src/libcode/vx_nc_obs/Makefile.in index d0c296409e..fa930a532b 100644 --- a/src/libcode/vx_nc_obs/Makefile.in +++ b/src/libcode/vx_nc_obs/Makefile.in @@ -263,6 +263,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_nc_util/Makefile.in b/src/libcode/vx_nc_util/Makefile.in index 6966323260..28ab8cb87c 100644 --- a/src/libcode/vx_nc_util/Makefile.in +++ b/src/libcode/vx_nc_util/Makefile.in @@ -261,6 +261,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_pb_util/Makefile.in b/src/libcode/vx_pb_util/Makefile.in index 4844a7563a..1c858815c0 100644 --- a/src/libcode/vx_pb_util/Makefile.in +++ b/src/libcode/vx_pb_util/Makefile.in @@ -259,6 +259,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_physics/Makefile.in b/src/libcode/vx_physics/Makefile.in index 08176f1717..186bf1d838 100644 --- a/src/libcode/vx_physics/Makefile.in +++ b/src/libcode/vx_physics/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_plot_util/Makefile.in b/src/libcode/vx_plot_util/Makefile.in index b168a35271..0560b6742a 100644 --- a/src/libcode/vx_plot_util/Makefile.in +++ b/src/libcode/vx_plot_util/Makefile.in @@ -258,6 +258,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_pointdata_python/Makefile.in b/src/libcode/vx_pointdata_python/Makefile.in index d45f6a82da..a68210285d 100644 --- a/src/libcode/vx_pointdata_python/Makefile.in +++ b/src/libcode/vx_pointdata_python/Makefile.in @@ -260,6 +260,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_ps/Makefile.in b/src/libcode/vx_ps/Makefile.in index 2839b6a919..4870c08043 100644 --- a/src/libcode/vx_ps/Makefile.in +++ b/src/libcode/vx_ps/Makefile.in @@ -263,6 +263,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_pxm/Makefile.in b/src/libcode/vx_pxm/Makefile.in index 35f49ed59e..9e4525b171 100644 --- a/src/libcode/vx_pxm/Makefile.in +++ b/src/libcode/vx_pxm/Makefile.in @@ -260,6 +260,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_python3_utils/Makefile.in b/src/libcode/vx_python3_utils/Makefile.in index a7a5bc74ef..2e2be4096c 100644 --- a/src/libcode/vx_python3_utils/Makefile.in +++ b/src/libcode/vx_python3_utils/Makefile.in @@ -266,6 +266,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_python3_utils/global_python.h b/src/libcode/vx_python3_utils/global_python.h index 1931a57ab4..50dbe22986 100644 --- a/src/libcode/vx_python3_utils/global_python.h +++ b/src/libcode/vx_python3_utils/global_python.h @@ -28,6 +28,7 @@ extern "C" { #include "python3_util.h" #include "concat_string.h" +#include "vx_log.h" //////////////////////////////////////////////////////////////////////// @@ -59,7 +60,11 @@ inline void GlobalPython::initialize() { if ( ! is_initialized ) { - Py_SetProgramName(L"/usr/local/met-python3/bin/python3"); + + mlog << Debug(3) << "Initializing python: " << MET_PYTHON_BIN_EXE << "\n"; + + wchar_t *python_path = Py_DecodeLocale(MET_PYTHON_BIN_EXE, NULL); + Py_SetProgramName(python_path); Py_Initialize(); is_initialized = true; diff --git a/src/libcode/vx_regrid/Makefile.in b/src/libcode/vx_regrid/Makefile.in index b8f5585605..1e1abd9e7e 100644 --- a/src/libcode/vx_regrid/Makefile.in +++ b/src/libcode/vx_regrid/Makefile.in @@ -255,6 +255,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_render/Makefile.in b/src/libcode/vx_render/Makefile.in index 6ba231977c..46a34c50d2 100644 --- a/src/libcode/vx_render/Makefile.in +++ b/src/libcode/vx_render/Makefile.in @@ -277,6 +277,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_seeps/Makefile.in b/src/libcode/vx_seeps/Makefile.in index a8801149e5..e4710b5830 100644 --- a/src/libcode/vx_seeps/Makefile.in +++ b/src/libcode/vx_seeps/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_series_data/Makefile.in b/src/libcode/vx_series_data/Makefile.in index 0bccd1843c..91a471ea3c 100644 --- a/src/libcode/vx_series_data/Makefile.in +++ b/src/libcode/vx_series_data/Makefile.in @@ -256,6 +256,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_shapedata/Makefile.in b/src/libcode/vx_shapedata/Makefile.in index b1401fdc85..16e8a8fda7 100644 --- a/src/libcode/vx_shapedata/Makefile.in +++ b/src/libcode/vx_shapedata/Makefile.in @@ -269,6 +269,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_solar/Makefile.in b/src/libcode/vx_solar/Makefile.in index 4ad908aec8..e72e1e9f68 100644 --- a/src/libcode/vx_solar/Makefile.in +++ b/src/libcode/vx_solar/Makefile.in @@ -255,6 +255,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_stat_out/Makefile.in b/src/libcode/vx_stat_out/Makefile.in index 51e4a5d23c..0742054db0 100644 --- a/src/libcode/vx_stat_out/Makefile.in +++ b/src/libcode/vx_stat_out/Makefile.in @@ -255,6 +255,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_statistics/Makefile.in b/src/libcode/vx_statistics/Makefile.in index 024978f723..ea08eed52f 100644 --- a/src/libcode/vx_statistics/Makefile.in +++ b/src/libcode/vx_statistics/Makefile.in @@ -280,6 +280,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_summary/Makefile.in b/src/libcode/vx_summary/Makefile.in index 1f3c6e2e39..35ae2159fa 100644 --- a/src/libcode/vx_summary/Makefile.in +++ b/src/libcode/vx_summary/Makefile.in @@ -275,6 +275,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_tc_util/Makefile.in b/src/libcode/vx_tc_util/Makefile.in index 236c0abd6f..86ec3f0107 100644 --- a/src/libcode/vx_tc_util/Makefile.in +++ b/src/libcode/vx_tc_util/Makefile.in @@ -289,6 +289,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/libcode/vx_time_series/Makefile.in b/src/libcode/vx_time_series/Makefile.in index 5375464040..82b0d7d6f3 100644 --- a/src/libcode/vx_time_series/Makefile.in +++ b/src/libcode/vx_time_series/Makefile.in @@ -257,6 +257,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/Makefile.in b/src/tools/Makefile.in index 2b0e3b9c8b..5b75053efb 100644 --- a/src/tools/Makefile.in +++ b/src/tools/Makefile.in @@ -251,6 +251,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/Makefile.in b/src/tools/core/Makefile.in index b0376710ac..ea28f37143 100644 --- a/src/tools/core/Makefile.in +++ b/src/tools/core/Makefile.in @@ -259,6 +259,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/ensemble_stat/Makefile.in b/src/tools/core/ensemble_stat/Makefile.in index d65846ec4b..ea646c09c1 100644 --- a/src/tools/core/ensemble_stat/Makefile.in +++ b/src/tools/core/ensemble_stat/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/grid_stat/Makefile.in b/src/tools/core/grid_stat/Makefile.in index 9cf9df8068..f872e48230 100644 --- a/src/tools/core/grid_stat/Makefile.in +++ b/src/tools/core/grid_stat/Makefile.in @@ -241,6 +241,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/mode/Makefile.in b/src/tools/core/mode/Makefile.in index 34488bdbc9..1c94c9cbcb 100644 --- a/src/tools/core/mode/Makefile.in +++ b/src/tools/core/mode/Makefile.in @@ -260,6 +260,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/mode_analysis/Makefile.in b/src/tools/core/mode_analysis/Makefile.in index f7f149c327..a1a56d3a9c 100644 --- a/src/tools/core/mode_analysis/Makefile.in +++ b/src/tools/core/mode_analysis/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/pcp_combine/Makefile.in b/src/tools/core/pcp_combine/Makefile.in index 469664b3a3..24d1d97fb2 100644 --- a/src/tools/core/pcp_combine/Makefile.in +++ b/src/tools/core/pcp_combine/Makefile.in @@ -239,6 +239,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/point_stat/Makefile.in b/src/tools/core/point_stat/Makefile.in index 58f5811a41..be6f9f3aa2 100644 --- a/src/tools/core/point_stat/Makefile.in +++ b/src/tools/core/point_stat/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/series_analysis/Makefile.in b/src/tools/core/series_analysis/Makefile.in index d1e066eae0..2d8ac414ee 100644 --- a/src/tools/core/series_analysis/Makefile.in +++ b/src/tools/core/series_analysis/Makefile.in @@ -243,6 +243,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/stat_analysis/Makefile.in b/src/tools/core/stat_analysis/Makefile.in index cf531b2d07..3ea6da1a30 100644 --- a/src/tools/core/stat_analysis/Makefile.in +++ b/src/tools/core/stat_analysis/Makefile.in @@ -248,6 +248,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/core/wavelet_stat/Makefile.in b/src/tools/core/wavelet_stat/Makefile.in index 86f163f0b8..5f78a9200a 100644 --- a/src/tools/core/wavelet_stat/Makefile.in +++ b/src/tools/core/wavelet_stat/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/dev_utils/Makefile.in b/src/tools/dev_utils/Makefile.in index 902859fd19..860995c34e 100644 --- a/src/tools/dev_utils/Makefile.in +++ b/src/tools/dev_utils/Makefile.in @@ -385,6 +385,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/dev_utils/shapefiles/Makefile.in b/src/tools/dev_utils/shapefiles/Makefile.in index 41203ec2e4..ca79d9c227 100644 --- a/src/tools/dev_utils/shapefiles/Makefile.in +++ b/src/tools/dev_utils/shapefiles/Makefile.in @@ -238,6 +238,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/Makefile.in b/src/tools/other/Makefile.in index 58ed5aacdd..2fe8bcc902 100644 --- a/src/tools/other/Makefile.in +++ b/src/tools/other/Makefile.in @@ -271,6 +271,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/ascii2nc/Makefile.in b/src/tools/other/ascii2nc/Makefile.in index c4610b6d10..2c18cd019d 100644 --- a/src/tools/other/ascii2nc/Makefile.in +++ b/src/tools/other/ascii2nc/Makefile.in @@ -287,6 +287,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/gen_ens_prod/Makefile.in b/src/tools/other/gen_ens_prod/Makefile.in index a569327ee7..75762ae308 100644 --- a/src/tools/other/gen_ens_prod/Makefile.in +++ b/src/tools/other/gen_ens_prod/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/gen_vx_mask/Makefile.in b/src/tools/other/gen_vx_mask/Makefile.in index 1b6f49ad05..112c26b3a3 100644 --- a/src/tools/other/gen_vx_mask/Makefile.in +++ b/src/tools/other/gen_vx_mask/Makefile.in @@ -239,6 +239,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/gis_utils/Makefile.in b/src/tools/other/gis_utils/Makefile.in index 2612a7c3cc..d40b28e556 100644 --- a/src/tools/other/gis_utils/Makefile.in +++ b/src/tools/other/gis_utils/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/grid_diag/Makefile.in b/src/tools/other/grid_diag/Makefile.in index e4b4bb8972..3c32c0c4d1 100644 --- a/src/tools/other/grid_diag/Makefile.in +++ b/src/tools/other/grid_diag/Makefile.in @@ -241,6 +241,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/gsi_tools/Makefile.in b/src/tools/other/gsi_tools/Makefile.in index f4f846b2c6..45fb7ea8b6 100644 --- a/src/tools/other/gsi_tools/Makefile.in +++ b/src/tools/other/gsi_tools/Makefile.in @@ -277,6 +277,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/ioda2nc/Makefile.in b/src/tools/other/ioda2nc/Makefile.in index 833d72a4a4..1d276363af 100644 --- a/src/tools/other/ioda2nc/Makefile.in +++ b/src/tools/other/ioda2nc/Makefile.in @@ -254,6 +254,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/lidar2nc/Makefile.in b/src/tools/other/lidar2nc/Makefile.in index 04ae0045bf..fc1473ceb3 100644 --- a/src/tools/other/lidar2nc/Makefile.in +++ b/src/tools/other/lidar2nc/Makefile.in @@ -254,6 +254,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/madis2nc/Makefile.in b/src/tools/other/madis2nc/Makefile.in index 94579deef3..388acac988 100644 --- a/src/tools/other/madis2nc/Makefile.in +++ b/src/tools/other/madis2nc/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/mode_graphics/Makefile.in b/src/tools/other/mode_graphics/Makefile.in index 3b18cedc1e..8f92c53860 100644 --- a/src/tools/other/mode_graphics/Makefile.in +++ b/src/tools/other/mode_graphics/Makefile.in @@ -262,6 +262,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/mode_time_domain/Makefile.in b/src/tools/other/mode_time_domain/Makefile.in index 9a321b9805..a98d2fc5b2 100644 --- a/src/tools/other/mode_time_domain/Makefile.in +++ b/src/tools/other/mode_time_domain/Makefile.in @@ -280,6 +280,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/modis_regrid/Makefile.in b/src/tools/other/modis_regrid/Makefile.in index a71b4cd8d4..dc660ffd56 100644 --- a/src/tools/other/modis_regrid/Makefile.in +++ b/src/tools/other/modis_regrid/Makefile.in @@ -250,6 +250,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/pb2nc/Makefile.in b/src/tools/other/pb2nc/Makefile.in index a8f71ec6b4..57fb246f48 100644 --- a/src/tools/other/pb2nc/Makefile.in +++ b/src/tools/other/pb2nc/Makefile.in @@ -270,6 +270,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/plot_data_plane/Makefile.in b/src/tools/other/plot_data_plane/Makefile.in index 69e64aa697..0b343901f1 100644 --- a/src/tools/other/plot_data_plane/Makefile.in +++ b/src/tools/other/plot_data_plane/Makefile.in @@ -241,6 +241,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/plot_point_obs/Makefile.in b/src/tools/other/plot_point_obs/Makefile.in index bb6cef27ae..f95166f747 100644 --- a/src/tools/other/plot_point_obs/Makefile.in +++ b/src/tools/other/plot_point_obs/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/point2grid/Makefile.in b/src/tools/other/point2grid/Makefile.in index a78b4bd269..24fca973b6 100644 --- a/src/tools/other/point2grid/Makefile.in +++ b/src/tools/other/point2grid/Makefile.in @@ -254,6 +254,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/regrid_data_plane/Makefile.in b/src/tools/other/regrid_data_plane/Makefile.in index c0cfece3f4..847b6fdc3a 100644 --- a/src/tools/other/regrid_data_plane/Makefile.in +++ b/src/tools/other/regrid_data_plane/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/shift_data_plane/Makefile.in b/src/tools/other/shift_data_plane/Makefile.in index a151336841..2a25213a86 100644 --- a/src/tools/other/shift_data_plane/Makefile.in +++ b/src/tools/other/shift_data_plane/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/other/wwmca_tool/Makefile.in b/src/tools/other/wwmca_tool/Makefile.in index 8790efcea3..c487c252a2 100644 --- a/src/tools/other/wwmca_tool/Makefile.in +++ b/src/tools/other/wwmca_tool/Makefile.in @@ -300,6 +300,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/Makefile.in b/src/tools/tc_utils/Makefile.in index 14e319d00e..97a28db892 100644 --- a/src/tools/tc_utils/Makefile.in +++ b/src/tools/tc_utils/Makefile.in @@ -249,6 +249,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/rmw_analysis/Makefile.in b/src/tools/tc_utils/rmw_analysis/Makefile.in index a6dfaa3dd9..07e9e99ccf 100644 --- a/src/tools/tc_utils/rmw_analysis/Makefile.in +++ b/src/tools/tc_utils/rmw_analysis/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/tc_dland/Makefile.in b/src/tools/tc_utils/tc_dland/Makefile.in index 8cb08b78fe..848be3854d 100644 --- a/src/tools/tc_utils/tc_dland/Makefile.in +++ b/src/tools/tc_utils/tc_dland/Makefile.in @@ -253,6 +253,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/tc_gen/Makefile.in b/src/tools/tc_utils/tc_gen/Makefile.in index 35cd8d681e..a59aac542f 100644 --- a/src/tools/tc_utils/tc_gen/Makefile.in +++ b/src/tools/tc_utils/tc_gen/Makefile.in @@ -242,6 +242,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/tc_pairs/Makefile.in b/src/tools/tc_utils/tc_pairs/Makefile.in index 3b34b63f9b..911b9e2465 100644 --- a/src/tools/tc_utils/tc_pairs/Makefile.in +++ b/src/tools/tc_utils/tc_pairs/Makefile.in @@ -266,6 +266,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/tc_rmw/Makefile.in b/src/tools/tc_utils/tc_rmw/Makefile.in index 3a00b9ee32..4a13708c11 100644 --- a/src/tools/tc_utils/tc_rmw/Makefile.in +++ b/src/tools/tc_utils/tc_rmw/Makefile.in @@ -244,6 +244,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ diff --git a/src/tools/tc_utils/tc_stat/Makefile.in b/src/tools/tc_utils/tc_stat/Makefile.in index 620bbce060..3ec221bf43 100644 --- a/src/tools/tc_utils/tc_stat/Makefile.in +++ b/src/tools/tc_utils/tc_stat/Makefile.in @@ -244,6 +244,7 @@ MET_HDFLIB = @MET_HDFLIB@ MET_NETCDF = @MET_NETCDF@ MET_NETCDFINC = @MET_NETCDFINC@ MET_NETCDFLIB = @MET_NETCDFLIB@ +MET_PYTHON_BIN_EXE = @MET_PYTHON_BIN_EXE@ MET_PYTHON_CC = @MET_PYTHON_CC@ MET_PYTHON_LD = @MET_PYTHON_LD@ MKDIR_P = @MKDIR_P@ From ba40fb97c63203cf773590f910f8386dc205e181 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Thu, 12 Jan 2023 15:41:43 -0700 Subject: [PATCH 28/58] Per #2388, switch MET_PYTHON_BIN_EXE help message to be more consistent with the documentation. --- configure | 2 +- configure.ac | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index d9f40a47de..d47929b214 100755 --- a/configure +++ b/configure @@ -1651,7 +1651,7 @@ Some influential environment variables: have to specify it. MET_PYTHON_BIN_EXE Full path to the python executable corresponding to - MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/local/bin/python3. + MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/bin/python3. MET_PYTHON_CC Where the python header files are located, e.g. -I. Set to the output of 'python3-config --cflags'. diff --git a/configure.ac b/configure.ac index 9549451bf1..60cc07bcd7 100644 --- a/configure.ac +++ b/configure.ac @@ -160,7 +160,7 @@ fi # Configure the variables. The help text will appear if the user uses "configure --help". -AC_ARG_VAR([MET_PYTHON_BIN_EXE], [Full path to the python executable corresponding to MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/local/bin/python3.]) +AC_ARG_VAR([MET_PYTHON_BIN_EXE], [Full path to the python executable corresponding to MET_PYTHON_CC and MET_PYTHON_LD, e.g. /usr/bin/python3.]) AC_ARG_VAR([MET_PYTHON_CC], [Where the python header files are located, e.g. -I. Set to the output of 'python3-config --cflags'.]) AC_ARG_VAR([MET_PYTHON_LD], [Where the python library files are located, e.g. -L, followed by the python library names, e.g. -l. Set to the output of 'python3-config --ldflags'.]) From 70815357eaae0710f7a0e109ef45b43f4f9d21a6 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Thu, 12 Jan 2023 15:43:03 -0700 Subject: [PATCH 29/58] Per #2388, add MET_PYTHON_BIN_EXE to the documentation. --- docs/Users_Guide/appendixF.rst | 4 +++- docs/Users_Guide/installation.rst | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/Users_Guide/appendixF.rst b/docs/Users_Guide/appendixF.rst index 9f37d24374..3a32cc425e 100644 --- a/docs/Users_Guide/appendixF.rst +++ b/docs/Users_Guide/appendixF.rst @@ -16,7 +16,9 @@ In order to use Python embedding, the user's local Python installation must have The local Python installation must also support a minimum set of required packages. The MET build includes some python wrapper scripts to facilitate the passing of data in memory as well as the reading and writing of temporary files. The packages required by those wrapper scripts are **sys, os, argparse, importlib, numpy and netCDF4**. While most of these are standard packages and readily available, numpy and netCDF4 may not be. Users are advised to confirm their availability prior to compiling MET with python embedding support. -In addition to the **configure** option mentioned above, two variables, **MET_PYTHON_CC** and **MET_PYTHON_LD**, must also be set for the configuration process. These may either be set as environment variables or as command line options to **configure**. These constants are passed as compiler command line options when building MET to enable the compiler to find the requisite Python header files and libraries in the user's local filesystem. Fortunately, Python provides a way to set these variables properly. This frees the user from the necessity of having any expert knowledge of the compiling and linking process. Along with the **Python** executable, there should be another executable called **python3-config**, whose output can be used to set these environment variables as follows: +In addition to the **configure** option mentioned above, three variables, **MET_PYTHON_BIN_EXE**, **MET_PYTHON_CC**, and **MET_PYTHON_LD**, must also be set for the configuration process. These may either be set as environment variables or as command line options to **configure**. These constants are passed as compiler command line options when building MET to enable the compiler to find the requisite Python executable, header files, and libraries in the user's local filesystem. Fortunately, Python provides a way to set these variables properly. This frees the user from the necessity of having any expert knowledge of the compiling and linking process. Along with the **Python** executable, there should be another executable called **python3-config**, whose output can be used to set these environment variables as follows: + +• Set **MET_PYTHON_BIN_EXE** to the full path of the desired python executable. • On the command line, run "**python3-config --cflags**". Set the value of **MET_PYTHON_CC** to the output of that command. diff --git a/docs/Users_Guide/installation.rst b/docs/Users_Guide/installation.rst index b6a73a21be..9db4d6993f 100644 --- a/docs/Users_Guide/installation.rst +++ b/docs/Users_Guide/installation.rst @@ -201,10 +201,11 @@ The following environment variables should also be set: * If compiling support for GRIB2, set $MET_GRIB2CINC and $MET_GRIB2CLIB to point to the main GRIB2C directory which contains both the include and library files. These are used instead of $MET_GRIB2C since the main GRIB2C directory does not contain include and lib subdirectories. -* If compiling support for PYTHON, set $MET_PYTHON_CC and $MET_PYTHON_LD to specify the compiler (-I) and linker (-L) flags required for python. Set $MET_PYTHON_CC for the directory containing the "Python.h" header file. Set $MET_PYTHON_LD for the directory containing the python library file and indicate the name of that file. For example: +* If compiling support for PYTHON, set $MET_PYTHON_BIN_EXE to specify the desired python executable to be used. Also set $MET_PYTHON_CC, and $MET_PYTHON_LD to specify the compiler (-I) and linker (-L) flags required for python. Set $MET_PYTHON_CC for the directory containing the "Python.h" header file. Set $MET_PYTHON_LD for the directory containing the python library file and indicate the name of that file. For example: .. code-block:: none + MET_PYTHON_BIN_EXE='/usr/bin/python3.6' MET_PYTHON_CC='-I/usr/include/python3.6' MET_PYTHON_LD='-L/usr/lib/python3.6/config-x86_64-linux-gnu -lpython3.6m' From e251079dd92fb9532adf10c8e3c6334befb457b4 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Thu, 12 Jan 2023 15:53:30 -0700 Subject: [PATCH 30/58] Per #2388, if not already set, set MET_PYTHON_BIN_EXE = /opt/local/Library/Frameworks/Python.framework/Versions/3.10/bin/python3 --- internal/scripts/installation/compile_MET_all.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index d8a5918f2e..830e5c4b6b 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -10,8 +10,7 @@ # and USE_MODULES. # # If compiling support for Python embedding, users will need to -# set MET_PYTHON, MET_PYTHON_CC, and -# MET_PYTHON_LD. +# set MET_PYTHON, MET_PYTHON_BIN_EXE, MET_PYTHON_CC, and MET_PYTHON_LD. # # For a description of these and other variables, visit the MET # downloads page under "Sample Script For Compiling External @@ -821,6 +820,7 @@ if [ $COMPILE_MET -eq 1 ]; then export MET_GSL=${LIB_DIR} fi + export MET_PYTHON_BIN_EXE=${MET_PYTHON_BIN_EXE:=${MET_PYTHON}/bin/python3} export MET_PYTHON_LD=${MET_PYTHON_LD} export MET_PYTHON_CC=${MET_PYTHON_CC} export LDFLAGS="-Wl,--disable-new-dtags" From 0ac332aeeec0fb1ddb8249415e82c1b86ff965a3 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 10:58:05 -0700 Subject: [PATCH 31/58] set MET_PYTHON_BIN_EXE in docker env --- internal/scripts/environment/development.docker | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index c6674b231b..363114d1c7 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -23,7 +23,7 @@ export MET_FREETYPEINC=/usr/include/freetype2 export MET_FREETYPELIB=/usr/lib64 export MET_JASPERLIB=/usr/lib64 -export MET_PYTHON=/usr/bin/python3 +export MET_PYTHON_BIN_EXE=/usr/bin/python3 export MET_PYTHON_CC="-I/usr/include/python3.6m" export MET_PYTHON_LD="-L/usr/lib64 -lpython3.6m -lpthread -ldl -lutil -lm" From 0f5f9795529bac195fb8b094a80997489d15051c Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 13:44:57 -0700 Subject: [PATCH 32/58] changes to install using tar_files.tgz using METbaseimage based on debian:10-slim and using python 3.10.4 --- .../scripts/environment/development.docker | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index c7be4a77fe..e7262fd7e0 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -7,25 +7,26 @@ MET_PROJ_DIR=`ls -1d /met/MET*` # Variables required to build MET export MET_DEVELOPMENT=true -export MET_NETCDF=/usr/local -export MET_HDF5INC=/usr/include -export MET_HDF5LIB=/usr/lib64 -export MET_HDF=/usr/local/hdf -export MET_HDFEOS=/usr/local/hdfeos -export MET_BUFR=/usr/local -export MET_GRIB2CINC=/usr/include -export MET_GRIB2CLIB=/usr/lib64 -export MET_GSLINC=/usr/include/gsl -export MET_GSLLIB=/usr/lib64 -export MET_CAIROINC=/usr/include/cairo -export MET_CAIROLIB=/usr/lib64 -export MET_FREETYPEINC=/usr/include/freetype2 -export MET_FREETYPELIB=/usr/lib64 -export MET_JASPERLIB=/usr/lib64 - -export MET_PYTHON_BIN_EXE=/usr/bin/python3 -export MET_PYTHON_CC="-I/usr/include/python3.6m" -export MET_PYTHON_LD="-L/usr/lib64 -lpython3.6m -lpthread -ldl -lutil -lm" +#export MET_NETCDF=/usr/local +#export MET_HDF5INC=/usr/include +#export MET_HDF5LIB=/usr/lib64 +#export MET_HDF=/usr/local/hdf +#export MET_HDFEOS=/usr/local/hdfeos +#export MET_BUFR=/usr/local +#export MET_GRIB2CINC=/usr/include +#export MET_GRIB2CLIB=/usr/lib64 +#export MET_GSLINC=/usr/include/gsl +#export MET_GSLLIB=/usr/lib64 +#export MET_CAIROINC=/usr/include/cairo +#export MET_CAIROLIB=/usr/lib64 +#export MET_FREETYPEINC=/usr/include/freetype2 +#export MET_FREETYPELIB=/usr/lib64 +#export MET_JASPERLIB=/usr/lib64 + +export MET_PYTHON_BIN_EXE=/usr/local/bin/python3 +export MET_PYTHON_CC="-I/usr/local/include/python3.10" +export MET_PYTHON_LD="-L/usr/local/lib -lcrypt -lpthread -ldl -lutil -lm" +#-L/usr/local/lib -lpython3.6m -lpthread -ldl -lutil -lm" # -D__64BIT__ is required because we've compiled libgrib2c.a with that flag export CFLAGS="-DUNDERSCORE -fPIC -D__64BIT__ -g" @@ -33,7 +34,8 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" -export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:${MET_HDF}/lib:${MET_HDFEOS}/lib" +#export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:${MET_HDF}/lib:${MET_HDFEOS}/lib" +export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test From e311c57ff0f4b83461937c173c8eb7cdeb783d67 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 13:54:19 -0700 Subject: [PATCH 33/58] added env vars needed to use compile script --- internal/scripts/environment/development.docker | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index e7262fd7e0..e1916b1deb 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -46,3 +46,9 @@ export MET_TEST_RSCRIPT=/usr/bin/Rscript # set make arguments to build using multiple jobs export MAKE_ARGS=-j + +export TEST_BASE=/usr/local +export COMPILER=gnu +export MET_SUBDIR=${TEST_BASE} +export MET_TARBALL=none +export USE_MODULES=FALSE From 7754d67049847c5f768a945bb07901c1ed8ef739 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 13:56:21 -0700 Subject: [PATCH 34/58] changed test base --- internal/scripts/environment/development.docker | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index e1916b1deb..6cfd9aec6c 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -47,7 +47,7 @@ export MET_TEST_RSCRIPT=/usr/bin/Rscript # set make arguments to build using multiple jobs export MAKE_ARGS=-j -export TEST_BASE=/usr/local +export TEST_BASE=/met export COMPILER=gnu export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=none From 9dc0c6e97710f609e57280a8388d295c6e958482 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 14:55:23 -0700 Subject: [PATCH 35/58] fixed values for python setup --- .../scripts/environment/development.docker | 28 ++++--------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 6cfd9aec6c..01eac19d9b 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -1,5 +1,4 @@ -# Define the development environment for NCAR project machine seneca -# Based on settings in /usr/local/src/met/README.snat +# Define the development environment for Docker # Top-level MET project directory MET_PROJ_DIR=`ls -1d /met/MET*` @@ -7,26 +6,10 @@ MET_PROJ_DIR=`ls -1d /met/MET*` # Variables required to build MET export MET_DEVELOPMENT=true -#export MET_NETCDF=/usr/local -#export MET_HDF5INC=/usr/include -#export MET_HDF5LIB=/usr/lib64 -#export MET_HDF=/usr/local/hdf -#export MET_HDFEOS=/usr/local/hdfeos -#export MET_BUFR=/usr/local -#export MET_GRIB2CINC=/usr/include -#export MET_GRIB2CLIB=/usr/lib64 -#export MET_GSLINC=/usr/include/gsl -#export MET_GSLLIB=/usr/lib64 -#export MET_CAIROINC=/usr/include/cairo -#export MET_CAIROLIB=/usr/lib64 -#export MET_FREETYPEINC=/usr/include/freetype2 -#export MET_FREETYPELIB=/usr/lib64 -#export MET_JASPERLIB=/usr/lib64 - -export MET_PYTHON_BIN_EXE=/usr/local/bin/python3 -export MET_PYTHON_CC="-I/usr/local/include/python3.10" -export MET_PYTHON_LD="-L/usr/local/lib -lcrypt -lpthread -ldl -lutil -lm" -#-L/usr/local/lib -lpython3.6m -lpthread -ldl -lutil -lm" +export MET_PYTHON=/usr/local +export MET_PYTHON_BIN_EXE=${MET_PYTHON}/bin/python3 +export MET_PYTHON_CC="-I${MET_PYTHON}/include/python3.10" +export MET_PYTHON_LD="-L${MET_PYTHON}/lib -lpython3.10 -lcrypt -lpthread -ldl -lutil -lm" # -D__64BIT__ is required because we've compiled libgrib2c.a with that flag export CFLAGS="-DUNDERSCORE -fPIC -D__64BIT__ -g" @@ -34,7 +17,6 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" -#export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:${MET_HDF}/lib:${MET_HDFEOS}/lib" export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64" # Variables required to run MET From f354b707bf831949d1b6199c819a39f2ee176167 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 15:38:47 -0700 Subject: [PATCH 36/58] set BIN_DIR_PATH to install MET exes into /usr/local/bin --- internal/scripts/environment/development.docker | 2 ++ 1 file changed, 2 insertions(+) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 01eac19d9b..67b8aee39a 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -34,3 +34,5 @@ export COMPILER=gnu export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=none export USE_MODULES=FALSE + +export BIN_DIR_PATH=/usr/local/bin From 937ed60f3beb99bef530c28d72ea9b66edea0180 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 15:56:44 -0700 Subject: [PATCH 37/58] attempt to build MET through GHA using compile script and debian image --- .github/jobs/set_job_controls.sh | 2 +- internal/scripts/docker/build_met_docker.sh | 28 +++------------------ 2 files changed, 5 insertions(+), 25 deletions(-) diff --git a/.github/jobs/set_job_controls.sh b/.github/jobs/set_job_controls.sh index e897aaa912..82628ae11d 100755 --- a/.github/jobs/set_job_controls.sh +++ b/.github/jobs/set_job_controls.sh @@ -6,7 +6,7 @@ run_unit_tests=false run_diff=false run_update_truth=false met_base_repo=met-base -met_base_tag=v1.1 +met_base_tag=debian input_data_version=develop truth_data_version=develop diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index a7e2aa7a07..e39912171e 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -2,34 +2,14 @@ echo "Running script to build MET in Docker" -LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log - source internal/scripts/environment/development.docker -echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python > ${LOG_FILE} -if [ $? != 0 ]; then - exit 1 -fi - -if [ ! -z "${MAKE_ARGS}" ]; then - echo Adding make arguments: ${MAKE_ARGS} -fi +export SKIP_LIBS=yes +export USE_MET_TAR_FILE=FALSE -LOG_FILE=/met/MET-${MET_GIT_NAME}/make_install.log +LOG_FILE=/met/MET-${MET_GIT_NAME}/compile_MET_all.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make ${MAKE_ARGS} install > ${LOG_FILE} -if [ $? != 0 ]; then - exit 1 -fi - -LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_test.log -echo "Testing MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make ${MAKE_ARGS} test > ${LOG_FILE} 2>&1 -if [ $? != 0 ]; then - exit 1 -fi +../installation/compile_MET_all.sh > ${LOG_FILE} if [[ $MET_GIT_NAME == "v"* ]]; then cd /met; rm -rf MET-*; From d8c27379b937b06b96b0011723b56bfd4635db65 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 16:02:03 -0700 Subject: [PATCH 38/58] fixed call to compile script --- internal/scripts/docker/build_met_docker.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index e39912171e..085d887db9 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,11 @@ export USE_MET_TAR_FILE=FALSE LOG_FILE=/met/MET-${MET_GIT_NAME}/compile_MET_all.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -../installation/compile_MET_all.sh > ${LOG_FILE} +./internal/scripts/installation/compile_MET_all.sh > ${LOG_FILE} +if [ $? != 0 ]; then + echo "ERROR: Compilation failed" + exit 1 +fi if [[ $MET_GIT_NAME == "v"* ]]; then cd /met; rm -rf MET-*; From 82197c387c026cc40d2b1bf841496110cd509d1e Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 13 Jan 2023 16:13:40 -0700 Subject: [PATCH 39/58] change met base tag to debian and ci-run-unit --- .github/workflows/build_docker_and_trigger_metplus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_docker_and_trigger_metplus.yml b/.github/workflows/build_docker_and_trigger_metplus.yml index 15cd652caf..8fb55bf925 100644 --- a/.github/workflows/build_docker_and_trigger_metplus.yml +++ b/.github/workflows/build_docker_and_trigger_metplus.yml @@ -29,7 +29,7 @@ jobs: env: SOURCE_BRANCH: ${{ steps.get_branch_name.outputs.branch_name }}-lite MET_BASE_REPO: met-base - MET_BASE_TAG: v1.1 + MET_BASE_TAG: debian - name: Push Docker Image run: .github/jobs/push_docker_image.sh From 6259aa9268a1b9194e56f81bcdde0eb98dd35bc2 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 17 Jan 2023 13:55:29 -0700 Subject: [PATCH 40/58] allow MET_INSTALL_DIR env var to control where MET is installed, ci-run-unit --- .../scripts/environment/development.docker | 2 +- .../scripts/installation/compile_MET_all.sh | 20 ++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 67b8aee39a..d8d338c1e9 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -35,4 +35,4 @@ export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=none export USE_MODULES=FALSE -export BIN_DIR_PATH=/usr/local/bin +export MET_INSTALL_DIR=/usr/local diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index b75382032c..d8732b45ac 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -91,6 +91,20 @@ echo ${MAKE_ARGS:+MAKE_ARGS = $MAKE_ARGS} export LIB_DIR=${TEST_BASE}/external_libs MET_DIR=${MET_SUBDIR} + +if [ -z "${BIN_DIR_PATH}" ]; then + if [ -z "${MET_INSTALL_DIR}" ]; then + BIN_DIR_PATH=${TEST_BASE}/bin + else + BIN_DIR_PATH=${MET_INSTALL_DIR}/bin + fi +fi + +if [ -z "${MET_INSTALL_DIR}" ]; then + MET_INSTALL_DIR=${MET_DIR} +fi + + TAR_DIR=${TEST_BASE}/tar_files MET_TARBALL=${TAR_DIR}/${MET_TARBALL} @@ -210,10 +224,6 @@ if [ ! -z "${SKIP_LIBS}" ]; then COMPILE_CAIRO=0 fi -if [ -z ${BIN_DIR_PATH} ]; then - BIN_DIR_PATH=${TEST_BASE}/bin -fi - if [ -z ${USE_MET_TAR_FILE} ]; then export USE_MET_TAR_FILE=TRUE fi @@ -629,7 +639,7 @@ if [[ $COMPILER_FAMILY == "pgi" ]]; then export OPT_ARGS="${OPT_ARGS} FFLAGS=-lpgf90" fi -configure_cmd="./configure --prefix=${MET_DIR} --bindir=${BIN_DIR_PATH}" +configure_cmd="./configure --prefix=${MET_INSTALL_DIR} --bindir=${BIN_DIR_PATH}" configure_cmd="${configure_cmd} BUFRLIB_NAME=${BUFRLIB_NAME}" configure_cmd="${configure_cmd} GRIB2CLIB_NAME=${GRIB2CLIB_NAME} --enable-grib2" if [[ ! -z ${MET_FREETYPEINC} && ! -z ${MET_FREETYPELIB} && \ From 2353457b65c66b28becd374a366893f33a692faf Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 17 Jan 2023 14:19:14 -0700 Subject: [PATCH 41/58] set env vars to compile optional libs, ci-run-unit --- internal/scripts/environment/development.docker | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index d8d338c1e9..655aaf2a7a 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -36,3 +36,8 @@ export MET_TARBALL=none export USE_MODULES=FALSE export MET_INSTALL_DIR=/usr/local + +export COMPILE_HDF=1 +export COMPILE_HDFEOS=1 +export COMPILE_FREETYPE=1 +export COMPILE_CAIRO=1 From 420540d057848eb482c4a9e61a98981e51be900a Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 10:07:24 -0700 Subject: [PATCH 42/58] redirect stderr to log file and output its contents on failure --- internal/scripts/docker/build_met_docker.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 085d887db9..77cd68f79a 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,8 +9,9 @@ export USE_MET_TAR_FILE=FALSE LOG_FILE=/met/MET-${MET_GIT_NAME}/compile_MET_all.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -./internal/scripts/installation/compile_MET_all.sh > ${LOG_FILE} +./internal/scripts/installation/compile_MET_all.sh > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then + cat ${LOG_FILE} echo "ERROR: Compilation failed" exit 1 fi From 77bbcfdf66b683e6fe17423c951c63f5d22ae7df Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 10:24:56 -0700 Subject: [PATCH 43/58] revert back to installing MET without using the compilation script so logs can be more easily captured --- .github/jobs/build_docker_image.sh | 3 --- internal/scripts/docker/build_met_docker.sh | 23 ++++++++++++++++----- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/.github/jobs/build_docker_image.sh b/.github/jobs/build_docker_image.sh index 4fabd88d2e..55bd37c644 100755 --- a/.github/jobs/build_docker_image.sh +++ b/.github/jobs/build_docker_image.sh @@ -15,8 +15,5 @@ time_command docker build -t ${DOCKERHUB_TAG} \ -f $DOCKERFILE_PATH ${GITHUB_WORKSPACE} if [ $? != 0 ]; then cat ${GITHUB_WORKSPACE}/docker_build.log - # Append the full make_install.log file - echo "Appending make_install.log to docker_build.log. See the logs artifact for details." - cat ${GITHUB_WORKSPACE}/make_install.log >> ${GITHUB_WORKSPACE}/docker_build.log exit 1 fi diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 77cd68f79a..b2c895f291 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -4,15 +4,28 @@ echo "Running script to build MET in Docker" source internal/scripts/environment/development.docker -export SKIP_LIBS=yes -export USE_MET_TAR_FILE=FALSE +LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log +echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" +./bootstrap +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python > ${LOG_FILE} +if [ $? != 0 ]; then + cat ${LOG_FILE} + exit 1 +fi -LOG_FILE=/met/MET-${MET_GIT_NAME}/compile_MET_all.log +LOG_FILE=/met/logs/MET-${MET_GIT_NAME}/make_install.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -./internal/scripts/installation/compile_MET_all.sh > ${LOG_FILE} 2>&1 +make install > ${LOG_FILE} +if [ $? != 0 ]; then + cat ${LOG_FILE} + exit 1 +fi + +LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_test.log +echo "Testing MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" +make test > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} - echo "ERROR: Compilation failed" exit 1 fi From 32a710b3950698461bc50574c23d297dd4eac2f6 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 10:29:09 -0700 Subject: [PATCH 44/58] create logs dir --- internal/scripts/docker/build_met_docker.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index b2c895f291..70f52a1bfc 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -4,6 +4,8 @@ echo "Running script to build MET in Docker" source internal/scripts/environment/development.docker +mkdir -p /met/logs + LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap @@ -13,7 +15,7 @@ if [ $? != 0 ]; then exit 1 fi -LOG_FILE=/met/logs/MET-${MET_GIT_NAME}/make_install.log +LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_install.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" make install > ${LOG_FILE} if [ $? != 0 ]; then From e4b4951a21c54b18e0fdfd085f0921d851b1625f Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 12:08:08 -0700 Subject: [PATCH 45/58] send stderr to log file --- internal/scripts/docker/build_met_docker.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 70f52a1bfc..a8474d778a 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python > ${LOG_FILE} +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 @@ -17,7 +17,7 @@ fi LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_install.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make install > ${LOG_FILE} +make install > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 From b9b497c8fe51d820516771d90444b51aa94dc1b6 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:35:44 -0700 Subject: [PATCH 46/58] add external_libs dir to rpath and set MET install dir to put share/met files in same area as bin --- internal/scripts/environment/development.docker | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 67b8aee39a..2598a56204 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -17,7 +17,7 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" -export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64" +export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test @@ -35,4 +35,4 @@ export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=none export USE_MODULES=FALSE -export BIN_DIR_PATH=/usr/local/bin +export MET_INSTALL_DIR=/usr/local From 6f1397004892ba79b98e6dfd77b041db74f18530 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:47:46 -0700 Subject: [PATCH 47/58] add external libs include and lib to flags --- internal/scripts/docker/build_met_docker.sh | 2 +- internal/scripts/environment/development.docker | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index a8474d778a..dee67bddda 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python > ${LOG_FILE} 2>&1 +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS=-I/met/external_libs/include > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index a192dcde80..4f9df9cebe 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -17,7 +17,7 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" -export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs" +export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs/lib" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test From 42d5102e0938af0bf2b7da513d0581eb43b99253 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:55:49 -0700 Subject: [PATCH 48/58] add external libs with -L --- internal/scripts/environment/development.docker | 1 + 1 file changed, 1 insertion(+) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 4f9df9cebe..f51455077d 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -18,6 +18,7 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs/lib" + export LDFLAGS="${LDFLAGS} -L/met/external_libs/lib" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test From 78d802149b9a9909eccf5b9ba7b06167bacfac5a Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 15:07:39 -0700 Subject: [PATCH 49/58] added freetype include --- internal/scripts/docker/build_met_docker.sh | 2 +- internal/scripts/environment/development.docker | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index dee67bddda..4bc33b4fac 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS=-I/met/external_libs/include > ${LOG_FILE} 2>&1 +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS=-I/met/external_libs/include:/met/external_libs/include/freetype2 > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index f51455077d..eaae5dcc47 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -18,7 +18,7 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs/lib" - export LDFLAGS="${LDFLAGS} -L/met/external_libs/lib" +export LDFLAGS="${LDFLAGS} -L/met/external_libs/lib" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test From 0a8aee55b72bb42cfe362bc2851901ab5a812af4 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 15:11:23 -0700 Subject: [PATCH 50/58] fix includes --- internal/scripts/docker/build_met_docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 4bc33b4fac..f145e35c4b 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS=-I/met/external_libs/include:/met/external_libs/include/freetype2 > ${LOG_FILE} 2>&1 +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS="-I/met/external_libs/include -I/met/external_libs/include/freetype2" > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 From 0aa45e8d093e26ddec4dc9b9b00b44c8d4783e97 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 15:25:51 -0700 Subject: [PATCH 51/58] add cairo include --- internal/scripts/docker/build_met_docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index f145e35c4b..331c2e2f6e 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS="-I/met/external_libs/include -I/met/external_libs/include/freetype2" > ${LOG_FILE} 2>&1 +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS="-I/met/external_libs/include -I/met/external_libs/include/freetype2 -I/met/external_libs/include/cairo" > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 From 35835d02b6ad9fc22d51f8e5cce06b80e3e5990b Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:40:05 -0700 Subject: [PATCH 52/58] remove -D__64BIT__ flag from MET compilation because the compilation script removes this flag from g2clib and MET and this library must match to prevent runtime errors --- internal/scripts/environment/development.docker | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index eaae5dcc47..99f7a9ddb9 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -11,8 +11,7 @@ export MET_PYTHON_BIN_EXE=${MET_PYTHON}/bin/python3 export MET_PYTHON_CC="-I${MET_PYTHON}/include/python3.10" export MET_PYTHON_LD="-L${MET_PYTHON}/lib -lpython3.10 -lcrypt -lpthread -ldl -lutil -lm" -# -D__64BIT__ is required because we've compiled libgrib2c.a with that flag -export CFLAGS="-DUNDERSCORE -fPIC -D__64BIT__ -g" +export CFLAGS="-DUNDERSCORE -fPIC -g" export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET From a2b83368e94bcc13977db15f60a2763e849b2ce6 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:40:37 -0700 Subject: [PATCH 53/58] clean up sed commands to replace values in place, ci-run-unit --- internal/scripts/installation/compile_MET_all.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 6b0a63dc31..30d9bf63bc 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -429,12 +429,14 @@ if [ $COMPILE_G2CLIB -eq 1 ]; then rm -rf ${LIB_DIR}/g2clib/g2clib* tar -xf ${TAR_DIR}/g2clib*.tar -C ${LIB_DIR}/g2clib cd ${LIB_DIR}/g2clib/g2clib* - cat makefile | \ - sed -r 's/INC=.*/INC=-I${LIB_DIR}\/include -I${LIB_DIR}\/include\/jasper/g' | \ - sed 's/CC=gcc/CC=${CC_COMPILER}/g' | \ - sed 's/-D__64BIT__//g' \ - > makefile_new - mv makefile_new makefile + sed -i 's|INC=.*|INC=-I${LIB_DIR}/include -I${LIB_DIR}/include/jasper|g' makefile + + # allow other compilers besides gcc + sed -i 's/CC=gcc/CC=${CC_COMPILER}/g' makefile + + # remove -D__64BIT__ flag because compiling with it has + # shown issues with GRIB/GRIB2 files that are over 2GB in size + sed -i 's/-D__64BIT__//g' makefile export CC_COMPILER=${CC} echo "cd `pwd`" # g2clib appears to compile but causes failure compiling MET if -j argument is used From cdf399dc0194db5cb35f95b95e0aa7c90d37bc14 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:52:48 -0700 Subject: [PATCH 54/58] added note that removal of -D__64BIT__ from g2clib makefile will not be necessary if we move to using 1.6.4+ --- internal/scripts/installation/compile_MET_all.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 30d9bf63bc..97d965839a 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -436,6 +436,8 @@ if [ $COMPILE_G2CLIB -eq 1 ]; then # remove -D__64BIT__ flag because compiling with it has # shown issues with GRIB/GRIB2 files that are over 2GB in size + # This flag was removed in g2clib 1.6.4 + # so this can be removed if the version is updated sed -i 's/-D__64BIT__//g' makefile export CC_COMPILER=${CC} echo "cd `pwd`" From 30e36a9c71f113e6720908f35528f41399b5f314 Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Thu, 19 Jan 2023 13:33:12 -0700 Subject: [PATCH 55/58] changed location of python exe to match new location in docker, ci-run-unit --- .github/jobs/test_env_vars.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/jobs/test_env_vars.sh b/.github/jobs/test_env_vars.sh index 4607e58f07..a77a9ca0f8 100755 --- a/.github/jobs/test_env_vars.sh +++ b/.github/jobs/test_env_vars.sh @@ -10,4 +10,4 @@ export MET_TEST_TRUTH=/data/output/met_test_truth export MET_TEST_DIFF=/data/output/met_test_diff export MET_TEST_RSCRIPT=/usr/bin/Rscript -export MET_TEST_MET_PYTHON_EXE=/usr/bin/python3 +export MET_TEST_MET_PYTHON_EXE=/usr/local/bin/python3 From 7b0159785426b290106b871c2ad7872a9fa267db Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Tue, 24 Jan 2023 15:28:11 -0700 Subject: [PATCH 56/58] update MET base tag name --- .github/jobs/set_job_controls.sh | 2 +- .github/workflows/build_docker_and_trigger_metplus.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/jobs/set_job_controls.sh b/.github/jobs/set_job_controls.sh index 82628ae11d..76a123d18b 100755 --- a/.github/jobs/set_job_controls.sh +++ b/.github/jobs/set_job_controls.sh @@ -6,7 +6,7 @@ run_unit_tests=false run_diff=false run_update_truth=false met_base_repo=met-base -met_base_tag=debian +met_base_tag=v2.0_debian10 input_data_version=develop truth_data_version=develop diff --git a/.github/workflows/build_docker_and_trigger_metplus.yml b/.github/workflows/build_docker_and_trigger_metplus.yml index 8fb55bf925..89e5e14f67 100644 --- a/.github/workflows/build_docker_and_trigger_metplus.yml +++ b/.github/workflows/build_docker_and_trigger_metplus.yml @@ -29,7 +29,7 @@ jobs: env: SOURCE_BRANCH: ${{ steps.get_branch_name.outputs.branch_name }}-lite MET_BASE_REPO: met-base - MET_BASE_TAG: debian + MET_BASE_TAG: v2.0_debian10 - name: Push Docker Image run: .github/jobs/push_docker_image.sh From b8cc17ee44d7c6f1ae5e9881dbd0767a4a5a817f Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 3 Feb 2023 09:40:08 -0700 Subject: [PATCH 57/58] set LIB_DIR to MET_INSTALL_DIR if it is set --- internal/scripts/installation/compile_MET_all.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 97d965839a..9810a124f2 100755 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -89,7 +89,7 @@ echo "MET_TARBALL = ${MET_TARBALL? "ERROR: MET_TARBALL must be set"}" echo "USE_MODULES = ${USE_MODULES? "ERROR: USE_MODULES must be set to TRUE if using modules or FALSE otherwise"}" echo ${MAKE_ARGS:+MAKE_ARGS = $MAKE_ARGS} -export LIB_DIR=${TEST_BASE}/external_libs +LIB_DIR=${TEST_BASE}/external_libs MET_DIR=${MET_SUBDIR} if [ -z "${BIN_DIR_PATH}" ]; then @@ -102,9 +102,10 @@ fi if [ -z "${MET_INSTALL_DIR}" ]; then MET_INSTALL_DIR=${MET_DIR} +else + LIB_DIR=${MET_INSTALL_DIR} fi - TAR_DIR=${TEST_BASE}/tar_files MET_TARBALL=${TAR_DIR}/${MET_TARBALL} From 28c7730bebcc434e0187fcf473354e58b01ddb5f Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Fri, 3 Feb 2023 10:43:30 -0700 Subject: [PATCH 58/58] updates to match move of METbaseimage to install in /usr/local instead of /met/external_libs, ci-run-unit --- internal/scripts/docker/build_met_docker.sh | 2 +- internal/scripts/environment/development.docker | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index f1c8d2bb6e..df02108390 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -9,7 +9,7 @@ mkdir -p /met/logs LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" ./bootstrap -./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS="-I/met/external_libs/include -I/met/external_libs/include/freetype2 -I/met/external_libs/include/cairo" > ${LOG_FILE} 2>&1 +./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python CPPFLAGS="-I/usr/local/include -I/usr/local/include/freetype2 -I/usr/local/include/cairo" > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then cat ${LOG_FILE} exit 1 diff --git a/internal/scripts/environment/development.docker b/internal/scripts/environment/development.docker index 99f7a9ddb9..e7968889f6 100644 --- a/internal/scripts/environment/development.docker +++ b/internal/scripts/environment/development.docker @@ -16,8 +16,7 @@ export CXXFLAGS=${CFLAGS} # Set LDFLAGS to include -rpath settings when compiling MET export LDFLAGS="-Wl,--disable-new-dtags" -export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64:/met/external_libs/lib" -export LDFLAGS="${LDFLAGS} -L/met/external_libs/lib" +export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/local/lib:/usr/lib64" # Variables required to run MET export MET_TEST_INPUT=${MET_PROJ_DIR}/MET_test_data/unit_test