From 7c5a318c34891ceb9965244d3a7f0ad424bfd406 Mon Sep 17 00:00:00 2001 From: atj Date: Wed, 31 Jan 2018 12:59:51 -0500 Subject: [PATCH] Get rid of complicated and unnecessary spack bits --- .../scripts}/create-builder.sh | 0 .../scripts}/destroy-builder.sh | 0 .../scripts}/docker-builder-backend.sh | 1 + .../scripts}/singularity-builder-backend.sh | 1 + CMakeLists.txt | 10 +- .../create-builder-image.sh | 0 {Scripts => Provisioning}/create-queue.sh | 0 .../destroy-builder-image.sh | 0 {Scripts => Provisioning}/destroy-queue.sh | 0 .../disable-TCP-timestamps.sh | 0 .../provision-builder.sh | 0 {Scripts => Provisioning}/provision-queue.sh | 0 deploy-titan.sh | 55 +- spack-etc-summitdev/compilers.yaml | 19 - spack-etc-titan/compilers.yaml | 36 - spack-repo/README.md | 16 - spack-repo/container-builder/.gitignore | 1 - .../packages/boost/boost_1.63.0_pgi.patch | 290 ------- .../boost_1.63.0_pgi_17.4_workaround.patch | 250 ------ .../packages/boost/boost_11856.patch | 34 - .../packages/boost/call_once_variadic.patch | 57 -- .../packages/boost/package.py | 382 --------- .../packages/boost/python_jam.patch | 42 - .../packages/boost/python_jam_pre156.patch | 42 - .../packages/boost/xl_1_62_0_le.patch | 787 ------------------ .../packages/container-builder/package.py | 15 - spack-repo/container-builder/repo.yaml | 2 - 27 files changed, 30 insertions(+), 2010 deletions(-) rename {Scripts => Builder/scripts}/create-builder.sh (100%) rename {Scripts => Builder/scripts}/destroy-builder.sh (100%) rename {Scripts => Builder/scripts}/docker-builder-backend.sh (97%) rename {Scripts => Builder/scripts}/singularity-builder-backend.sh (97%) rename {Scripts => Provisioning}/create-builder-image.sh (100%) rename {Scripts => Provisioning}/create-queue.sh (100%) rename {Scripts => Provisioning}/destroy-builder-image.sh (100%) rename {Scripts => Provisioning}/destroy-queue.sh (100%) rename {Scripts => Provisioning}/disable-TCP-timestamps.sh (100%) rename {Scripts => Provisioning}/provision-builder.sh (100%) rename {Scripts => Provisioning}/provision-queue.sh (100%) delete mode 100644 spack-etc-summitdev/compilers.yaml delete mode 100644 spack-etc-titan/compilers.yaml delete mode 100644 spack-repo/README.md delete mode 100644 spack-repo/container-builder/.gitignore delete mode 100644 spack-repo/container-builder/packages/boost/boost_1.63.0_pgi.patch delete mode 100644 spack-repo/container-builder/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch delete mode 100644 spack-repo/container-builder/packages/boost/boost_11856.patch delete mode 100644 spack-repo/container-builder/packages/boost/call_once_variadic.patch delete mode 100644 spack-repo/container-builder/packages/boost/package.py delete mode 100644 spack-repo/container-builder/packages/boost/python_jam.patch delete mode 100644 spack-repo/container-builder/packages/boost/python_jam_pre156.patch delete mode 100644 spack-repo/container-builder/packages/boost/xl_1_62_0_le.patch delete mode 100644 spack-repo/container-builder/packages/container-builder/package.py delete mode 100644 spack-repo/container-builder/repo.yaml diff --git a/Scripts/create-builder.sh b/Builder/scripts/create-builder.sh similarity index 100% rename from Scripts/create-builder.sh rename to Builder/scripts/create-builder.sh diff --git a/Scripts/destroy-builder.sh b/Builder/scripts/destroy-builder.sh similarity index 100% rename from Scripts/destroy-builder.sh rename to Builder/scripts/destroy-builder.sh diff --git a/Scripts/docker-builder-backend.sh b/Builder/scripts/docker-builder-backend.sh similarity index 97% rename from Scripts/docker-builder-backend.sh rename to Builder/scripts/docker-builder-backend.sh index c15c80b..2b111ce 100755 --- a/Scripts/docker-builder-backend.sh +++ b/Builder/scripts/docker-builder-backend.sh @@ -34,4 +34,5 @@ docker ${DEBUG_FLAG} build -t localhost:5000/docker_image . docker ${DEBUG_FLAG} push localhost:5000/docker_image # Build the singularity container from the docker image +export SINGULARITY_DISABLE_CACHE=1 singularity ${DEBUG_FLAG} pull --name container.simg docker://localhost:5000/docker_image \ No newline at end of file diff --git a/Scripts/singularity-builder-backend.sh b/Builder/scripts/singularity-builder-backend.sh similarity index 97% rename from Scripts/singularity-builder-backend.sh rename to Builder/scripts/singularity-builder-backend.sh index a821fdb..397665b 100755 --- a/Scripts/singularity-builder-backend.sh +++ b/Builder/scripts/singularity-builder-backend.sh @@ -37,4 +37,5 @@ if [[ ${GREP_RC} -eq 0 ]] ; then export SINGULARITY_DOCKER_PASSWORD=${DOCKERHUB_READONLY_TOKEN} fi +export SINGULARITY_DISABLE_CACHE=1 /usr/bin/unbuffer /usr/local/bin/singularity ${DEBUG_FLAG} build ./container.simg ./container.def \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a70d8c..7afaffd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,11 +38,11 @@ set(SOURCE_FILES_CLIENT Common/include/ClientData.h) # Scripts required for runtime -set(SCRIPTS - Scripts/create-builder.sh - Scripts/destroy-builder.sh - Scripts/singularity-builder-backend.sh - Scripts/docker-builder-backend.sh) +set(Provisioning + Builder/scripts/create-builder.sh + Builder/scripts/destroy-builder.sh + Builder/scripts/singularity-builder-backend.sh + Builder/scripts/docker-builder-backend.sh) # Create executables add_executable(builder-queue ${SOURCE_FILES_QUEUE}) diff --git a/Scripts/create-builder-image.sh b/Provisioning/create-builder-image.sh similarity index 100% rename from Scripts/create-builder-image.sh rename to Provisioning/create-builder-image.sh diff --git a/Scripts/create-queue.sh b/Provisioning/create-queue.sh similarity index 100% rename from Scripts/create-queue.sh rename to Provisioning/create-queue.sh diff --git a/Scripts/destroy-builder-image.sh b/Provisioning/destroy-builder-image.sh similarity index 100% rename from Scripts/destroy-builder-image.sh rename to Provisioning/destroy-builder-image.sh diff --git a/Scripts/destroy-queue.sh b/Provisioning/destroy-queue.sh similarity index 100% rename from Scripts/destroy-queue.sh rename to Provisioning/destroy-queue.sh diff --git a/Scripts/disable-TCP-timestamps.sh b/Provisioning/disable-TCP-timestamps.sh similarity index 100% rename from Scripts/disable-TCP-timestamps.sh rename to Provisioning/disable-TCP-timestamps.sh diff --git a/Scripts/provision-builder.sh b/Provisioning/provision-builder.sh similarity index 100% rename from Scripts/provision-builder.sh rename to Provisioning/provision-builder.sh diff --git a/Scripts/provision-queue.sh b/Provisioning/provision-queue.sh similarity index 100% rename from Scripts/provision-queue.sh rename to Provisioning/provision-queue.sh diff --git a/deploy-titan.sh b/deploy-titan.sh index f7ddd59..73c9f58 100755 --- a/deploy-titan.sh +++ b/deploy-titan.sh @@ -5,12 +5,14 @@ set -o xtrace VERSION=$1 -export HOME=$(pwd) +export TOP_LEVEL=$(pwd) source ${MODULESHOME}/init/bash export PATH=$PATH:${MODULESHOME}/bin -module unload xalt PrgEnv-pgi PrgEnv-gnu PrgEnv-intel PrgEnv-cray +module unload xalt +module unload PrgEnv-pgi +module load gcc set -x @@ -18,37 +20,23 @@ unset CRAYPE_VERSION SW_ROOT=/sw/xk6/container-builder/${VERSION} mkdir -p ${SW_ROOT} -# Build with spack; install spack if it's not already present. -SPACKROOT=${SW_ROOT}/.spack -if [ ! -d ${SPACKROOT} ]; then - git clone https://github.com/spack/spack.git ${SPACKROOT} - cd ${SPACKROOT} - git checkout d3519af7de84fa72dee0618c7754f7ebeaa23142 - cd ${HOME} -fi +mkdir boost_install && cd boost_install -# Update the spack configuration files to the latest. -cp spack-etc-titan/*.yaml ${SPACKROOT}/etc/spack +# Install boost +cd ${TOP_LEVEL} +mkdir build && cd build +curl -L https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.gz -O +tar xf boost_1_66_0.tar.gz +cd ${TOP_LEVEL}/boost_1_66_0 +./bootstrap.sh --with-libraries=filesystem,regex,system,serialization,thread,program_options --prefix=${SW_ROOT} +./b2 install || : +rm -rf /boost_1_66_0 -# Ensure spack is aware of our third-party package repo. -${SPACKROOT}/bin/spack repo add spack-repo/container-builder +# Install container-builder +cd ${TOP_LEVEL} +cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${SW_ROOT} .. -# Remove any remnants of past failed builds. -${SPACKROOT}/bin/spack clean --stage --misc-cache - -# Record how spack will build the app in the log. -${SPACKROOT}/bin/spack spec -NIl "container-builder%gcc@5.3.0" - -# Have spack build the app. -${SPACKROOT}/bin/spack install "container-builder%gcc@5.3.0" - -# Find where spack generated the modulefile. -root=$(${SPACKROOT}/bin/spack config get config | grep "\btcl:" | awk '{print $2}' | sed 's/^$spack/./') -arch=$(${SPACKROOT}/bin/spack arch) -mfname=$(${SPACKROOT}/bin/spack module find "container-builder%gcc@5.3.0") -real_mf_path="$SPACKROOT/$root/$arch/$mfname" - -# Generate a public modulefile the loads the spack-generated one. +# Generate a public modulefile MF_ROOT=/sw/xk6/modulefiles/container-builder mkdir -p ${MF_ROOT} @@ -60,5 +48,8 @@ cat << EOF > ${MF_ROOT}/${VERSION} setenv QUEUE_HOST ${QUEUE_HOST} setenv QUEUE_PORT 8080 -module load ${real_mf_path} -EOF + +module load load gcc +prepend-path LD_LIBRARY_PATH ${SW_ROOT}/lib +prepend-path PATH ${SW_ROOT}/bin +EOF \ No newline at end of file diff --git a/spack-etc-summitdev/compilers.yaml b/spack-etc-summitdev/compilers.yaml deleted file mode 100644 index b6571b5..0000000 --- a/spack-etc-summitdev/compilers.yaml +++ /dev/null @@ -1,19 +0,0 @@ -compilers: -- compiler: - spec: gcc@4.8.5 - operating_system: rhel7 - paths: - cc: /usr/bin/gcc - cxx: /usr/bin/g++ - f77: /usr/bin/gfortran - fc: /usr/bin/gfortran - -- compiler: - spec: gcc@7.1.0 - operating_system: rhel7 - modules: [gcc/7.1.0] - paths: - cc: /sw/summitdev/gcc/7.1.0/bin/gcc - cxx: /sw/summitdev/gcc/7.1.0/bin/g++ - f77: /sw/summitdev/gcc/7.1.0/bin/gfortran - fc: /sw/summitdev/gcc/7.1.0/bin/gfortran diff --git a/spack-etc-titan/compilers.yaml b/spack-etc-titan/compilers.yaml deleted file mode 100644 index b8f7c1f..0000000 --- a/spack-etc-titan/compilers.yaml +++ /dev/null @@ -1,36 +0,0 @@ -compilers: -- compiler: - spec: gcc@4.3.4 - operating_system: suse_linux11 - target: x86_64 - modules: [] - paths: - cc: /usr/bin/gcc - cxx: /usr/bin/g++ - f77: /usr/bin/gfortran - fc: /usr/bin/gfortran - extra_rpaths: [] - environment: {} - flags: - cflags: -Wl,--disable-new-dtags - cxxflags: -Wl,--disable-new-dtags - fflags: -Wl,--disable-new-dtags - -- compiler: - spec: gcc@5.3.0 - operating_system: suse_linux11 - target: x86_64 - modules: [ gcc/5.3.0 ] - paths: - cc: /opt/gcc/5.3.0/bin/gcc - cxx: /opt/gcc/5.3.0/bin/g++ - f77: /opt/gcc/5.3.0/bin/gfortran - fc: /opt/gcc/5.3.0/bin/gfortran - extra_rpaths: - - /opt/gcc/5.3.0/snos/lib64 - - /opt/gcc/5.3.0/snos/lib - environment: {} - flags: - cflags: -Wl,--disable-new-dtags - cxxflags: -Wl,--disable-new-dtags - fflags: -Wl,--disable-new-dtags diff --git a/spack-repo/README.md b/spack-repo/README.md deleted file mode 100644 index 235a515..0000000 --- a/spack-repo/README.md +++ /dev/null @@ -1,16 +0,0 @@ -Spack Package Repository -======================== - -In order to integrate container-builder with an existing Spack installation, -we separate the container-builder package into its own "Spack Repository" which -can be dynamically added to an existing spack installation like this: - - -```bash -# Assumes a loaded spack environment -spack repo add spack-repo/container-builder -spack install container-builder -``` - -This repository is structured according to Spack's repository definitions. For -example, see [Spack itself](https://github.com/spack/spack/tree/develop/var/spack/repos/builtin.mock). diff --git a/spack-repo/container-builder/.gitignore b/spack-repo/container-builder/.gitignore deleted file mode 100644 index 0d20b64..0000000 --- a/spack-repo/container-builder/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.pyc diff --git a/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi.patch b/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi.patch deleted file mode 100644 index 925592e..0000000 --- a/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi.patch +++ /dev/null @@ -1,290 +0,0 @@ -diff -uNr boost_1_63_0/boost/mpl/assert.hpp boost_1_63_0/boost/mpl/assert.hpp ---- boost_1_63_0/boost/mpl/assert.hpp 2016-12-22 07:33:17.000000000 -0500 -+++ boost_1_63_0/boost/mpl/assert.hpp 2017-05-31 20:09:43.704689605 -0400 -@@ -56,7 +56,7 @@ - // and GCC (which issues "unused variable" warnings when static constants are used - // at a function scope) - #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \ -- || (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0) -+ || (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0) || defined(__PGI) - # define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr } - #else - # define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) BOOST_STATIC_CONSTANT(T, expr) -diff -uNr boost_1_63_0/boost/type_traits/is_floating_point.hpp boost_1_63_0/boost/type_traits/is_floating_point.hpp ---- boost_1_63_0/boost/type_traits/is_floating_point.hpp 2016-12-22 07:33:20.000000000 -0500 -+++ boost_1_63_0/boost/type_traits/is_floating_point.hpp 2017-05-31 20:12:50.187001957 -0400 -@@ -20,8 +20,9 @@ - template<> struct is_floating_point : public true_type{}; - template<> struct is_floating_point : public true_type{}; - template<> struct is_floating_point : public true_type{}; -- --#if defined(BOOST_HAS_FLOAT128) -+ -+// In PGI compiler, __float128 is a typedef, not its own type. -+#if defined(BOOST_HAS_FLOAT128) && !defined(__PGI) - template<> struct is_floating_point<__float128> : public true_type{}; - #endif - -diff -uNr boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp ---- boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp 2016-12-22 07:33:20.000000000 -0500 -+++ boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp 2017-05-31 20:11:12.365788989 -0400 -@@ -98,11 +98,7 @@ - }; - - public: -- functor() --#if defined(__PGI) -- : eof() --#endif -- {} -+ functor() {} - - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1310) - // somehow VC7.1 needs this (meaningless) assignment operator -diff -uNr boost_1_63_0/boost/cstdint.hpp boost_1_63_0/boost/cstdint.hpp ---- boost_1_63_0/boost/cstdint.hpp 2016-12-22 07:33:14.000000000 -0500 -+++ boost_1_63_0/boost/cstdint.hpp 2017-05-31 20:04:52.821068853 -0400 -@@ -367,9 +367,6 @@ - #include - #endif - --// PGI seems to not support intptr_t/uintptr_t properly. BOOST_HAS_STDINT_H is not defined for this compiler by Boost.Config. --#if !defined(__PGIC__) -- - #if (defined(BOOST_WINDOWS) && !defined(_WIN32_WCE)) \ - || (defined(_XOPEN_UNIX) && (_XOPEN_UNIX+0 > 0) && !defined(__UCLIBC__)) \ - || defined(__CYGWIN__) \ -@@ -393,8 +390,6 @@ - - #endif - --#endif // !defined(__PGIC__) -- - #endif // BOOST_CSTDINT_HPP - - -diff -uNr boost_1_63_0/libs/filesystem/src/operations.cpp boost_1_63_0/libs/filesystem/src/operations.cpp ---- boost_1_63_0/libs/filesystem/src/operations.cpp 2016-12-22 07:33:15.000000000 -0500 -+++ boost_1_63_0/libs/filesystem/src/operations.cpp 2017-05-31 20:06:26.492231150 -0400 -@@ -2051,10 +2051,6 @@ - return ok; - } - --#if defined(__PGI) && defined(__USE_FILE_OFFSET64) --#define dirent dirent64 --#endif -- - error_code dir_itr_first(void *& handle, void *& buffer, - const char* dir, string& target, - fs::file_status &, fs::file_status &) -diff -uNr boost_1_63_0/tools/build/src/engine/boehm_gc/configure boost_1_63_0/tools/build/src/engine/boehm_gc/configure ---- boost_1_63_0/tools/build/src/engine/boehm_gc/configure 2016-12-22 07:33:21.000000000 -0500 -+++ boost_1_63_0/tools/build/src/engine/boehm_gc/configure 2017-05-31 13:02:25.089265415 -0400 -@@ -9286,7 +9286,7 @@ - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-static' - ;; -- pgcc* | pgf77* | pgf90* | pgf95*) -+ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - lt_prog_compiler_wl='-Wl,' -@@ -9722,7 +9722,7 @@ - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - tmp_addflag= - case $cc_basename,$host_cpu in -- pgcc*) # Portland Group C compiler -+ pgcc* | pgc++*) # Portland Group C compiler - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; -@@ -13421,7 +13421,7 @@ - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' - whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; -- pgCC*) -+ pgc++*) - # Portland Group C++ compiler - archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' -@@ -14098,7 +14098,7 @@ - lt_prog_compiler_pic_CXX='-KPIC' - lt_prog_compiler_static_CXX='-static' - ;; -- pgCC*) -+ pgc++*) - # Portland Group C++ compiler. - lt_prog_compiler_wl_CXX='-Wl,' - lt_prog_compiler_pic_CXX='-fpic' -@@ -15812,7 +15812,7 @@ - lt_prog_compiler_pic_F77='-KPIC' - lt_prog_compiler_static_F77='-static' - ;; -- pgcc* | pgf77* | pgf90* | pgf95*) -+ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - lt_prog_compiler_wl_F77='-Wl,' -@@ -16248,7 +16248,7 @@ - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - tmp_addflag= - case $cc_basename,$host_cpu in -- pgcc*) # Portland Group C compiler -+ pgcc* | pgc++*) # Portland Group C compiler - whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; -@@ -18386,7 +18386,7 @@ - lt_prog_compiler_pic_GCJ='-KPIC' - lt_prog_compiler_static_GCJ='-static' - ;; -- pgcc* | pgf77* | pgf90* | pgf95*) -+ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - lt_prog_compiler_wl_GCJ='-Wl,' -@@ -18822,7 +18822,7 @@ - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - tmp_addflag= - case $cc_basename,$host_cpu in -- pgcc*) # Portland Group C compiler -+ pgcc* | pgc++*) # Portland Group C compiler - whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; -diff -uNr boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 ---- boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 2016-12-22 07:33:21.000000000 -0500 -+++ boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 2017-05-31 13:02:56.629643895 -0400 -@@ -3325,7 +3325,7 @@ - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; -- pgCC*) -+ pgc++*) - # Portland Group C++ compiler - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' -@@ -4977,7 +4977,7 @@ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; -- pgCC*) -+ pgc++*) - # Portland Group C++ compiler. - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' -@@ -5225,7 +5225,7 @@ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; -- pgcc* | pgf77* | pgf90* | pgf95*) -+ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -diff -uNr boost_1_63_0/tools/build/src/tools/pgi.jam boost_1_63_0/tools/build/src/tools/pgi.jam ---- boost_1_63_0/tools/build/src/tools/pgi.jam 2016-12-22 07:33:21.000000000 -0500 -+++ boost_1_63_0/tools/build/src/tools/pgi.jam 2017-05-31 20:25:19.726296130 -0400 -@@ -25,7 +25,7 @@ - { - local condition = [ common.check-init-parameters pgi : version $(version) ] ; - -- local l_command = [ common.get-invocation-command pgi : pgCC : $(command) ] ; -+ local l_command = [ common.get-invocation-command pgi : pgc++ : $(command) ] ; - - common.handle-options pgi : $(condition) : $(l_command) : $(options) ; - -@@ -36,17 +36,10 @@ - flags pgi.compile DEFINES $(condition) : - [ feature.get-values : $(options) ] : unchecked ; - -- # IOV_MAX support -- flags pgi.compile DEFINES $(condition) : __need_IOV_MAX : unchecked ; -- - # set link flags - flags pgi.link FINDLIBS-ST : [ - feature.get-values : $(options) ] : unchecked ; - -- # always link lib rt to resolve clock_gettime() -- flags pgi.link FINDLIBS-SA : rt [ -- feature.get-values : $(options) ] : unchecked ; -- - gcc.init-link-flags pgi gnu $(condition) ; - } - -@@ -56,18 +49,19 @@ - generators.register-fortran-compiler pgi.compile.fortran : FORTRAN : OBJ : pgi ; - - # Declare flags and actions for compilation --flags pgi.compile OPTIONS : -Kieee ; --flags pgi.compile OPTIONS shared : -fpic -fPIC ; -+flags pgi.compile OPTIONS shared : -fpic ; - flags pgi.compile OPTIONS on : -gopt ; --flags pgi.compile OPTIONS on : -xprofile=tcov ; --flags pgi.compile OPTIONS speed : -fast -Mx,8,0x10000000 ; --flags pgi.compile OPTIONS space : -xO2 -xspace ; --# flags pgi.compile OPTIONS multi : -mt ; -+flags pgi.compile OPTIONS off : -O0 ; -+flags pgi.compile OPTIONS speed : -fast ; -+flags pgi.compile OPTIONS space : -fast ; - - flags pgi.compile OPTIONS off : -Minform=severe ; - flags pgi.compile OPTIONS on : -Minform=warn ; -+flags pgi.compile OPTIONS on : -Werror ; - - flags pgi.compile.c++ OPTIONS off : -INLINE:none ; -+flags pgi.compile.c++ OPTIONS off : --no_rtti ; -+flags pgi.compile.c++ OPTIONS off : --no_exceptions ; - - flags pgi.compile OPTIONS ; - flags pgi.compile.c++ OPTIONS ; -@@ -95,9 +89,8 @@ - flags pgi.link OPTIONS on : -gopt ; - # Strip the binary when no debugging is needed - flags pgi.link OPTIONS off : -s ; --flags pgi.link OPTIONS on : -xprofile=tcov ; - flags pgi.link OPTIONS ; --flags pgi.link OPTIONS shared : -fpic -fPIC ; -+flags pgi.link OPTIONS shared : -fpic ; - flags pgi.link LINKPATH ; - flags pgi.link FINDLIBS-ST ; - flags pgi.link FINDLIBS-SA ; -@@ -107,24 +100,14 @@ - flags pgi.link LINK-RUNTIME shared : dynamic ; - flags pgi.link RPATH ; - --# On gcc, there are separate options for dll path at runtime and --# link time. On Solaris, there's only one: -R, so we have to use --# it, even though it's bad idea. --flags pgi.link RPATH ; -- - rule link ( targets * : sources * : properties * ) - { - SPACE on $(targets) = " " ; - } - --# reddish can only link statically and, somehow, the presence of -Bdynamic on the link line --# marks the executable as a dynamically linked exec even though no dynamic libraries are supplied. --# Yod on redstorm refuses to load an executable that is dynamically linked. --# removing the dynamic link options should get us where we need to be on redstorm. --# "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME) - actions link bind LIBRARIES - { -- "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -Bstatic -l$(FINDLIBS-ST) -Bdynamic -l$(FINDLIBS-SA) -B$(LINK-RUNTIME) -+ "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-ST) -l$(FINDLIBS-SA) - } - - # Slight mods for dlls -@@ -133,11 +116,10 @@ - SPACE on $(targets) = " " ; - } - --# "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" -h$(<[1]:D=) -G "$(>)" "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME) - - actions link.dll bind LIBRARIES - { -- "$(CONFIG_COMMAND)" $(OPTIONS) -shared -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" -Wl,-h -Wl,$(<[1]:D=) "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME) -+ "$(CONFIG_COMMAND)" $(OPTIONS) -shared -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) - } - - actions updated together piecemeal pgi.archive diff --git a/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch b/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch deleted file mode 100644 index 3bfb989..0000000 --- a/spack-repo/container-builder/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch +++ /dev/null @@ -1,250 +0,0 @@ -diff -uNr boost_1_63_0/boost/archive/archive_exception.hpp boost_1_63_0/boost/archive/archive_exception.hpp ---- boost_1_63_0/boost/archive/archive_exception.hpp 2016-12-22 07:33:19.000000000 -0500 -+++ boost_1_63_0/boost/archive/archive_exception.hpp 2017-06-01 22:07:26.013983567 -0400 -@@ -42,13 +42,6 @@ - class BOOST_SYMBOL_VISIBLE archive_exception : - public virtual std::exception - { --private: -- char m_buffer[128]; --protected: -- BOOST_ARCHIVE_DECL unsigned int -- append(unsigned int l, const char * a); -- BOOST_ARCHIVE_DECL -- archive_exception() BOOST_NOEXCEPT; - public: - typedef enum { - no_exception, // initialized without code -@@ -90,6 +83,15 @@ - BOOST_ARCHIVE_DECL archive_exception(archive_exception const &) BOOST_NOEXCEPT ; - virtual BOOST_ARCHIVE_DECL ~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ; - virtual BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ; -+protected: -+ BOOST_ARCHIVE_DECL unsigned int -+ append(unsigned int l, const char * a); -+ BOOST_ARCHIVE_DECL -+ archive_exception() BOOST_NOEXCEPT; -+private: -+ char m_buffer[128]; -+ BOOST_ARCHIVE_DECL void -+ pgi_bug_workaround_init(archive_exception *, const char *, const char *); - }; - - }// namespace archive -diff -uNr boost_1_63_0/boost/archive/xml_archive_exception.hpp boost_1_63_0/boost/archive/xml_archive_exception.hpp ---- boost_1_63_0/boost/archive/xml_archive_exception.hpp 2016-12-22 07:33:19.000000000 -0500 -+++ boost_1_63_0/boost/archive/xml_archive_exception.hpp 2017-05-31 21:02:03.373700156 -0400 -@@ -47,6 +47,9 @@ - ); - BOOST_ARCHIVE_DECL xml_archive_exception(xml_archive_exception const &) ; - virtual BOOST_ARCHIVE_DECL ~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ; -+private: -+ BOOST_ARCHIVE_DECL void -+ pgi_bug_workaround_init_xml(xml_archive_exception *, exception_code, const char *, const char *); - }; - - }// namespace archive -diff -uNr boost_1_63_0/libs/serialization/src/archive_exception.cpp boost_1_63_0/libs/serialization/src/archive_exception.cpp ---- boost_1_63_0/libs/serialization/src/archive_exception.cpp 2016-12-22 07:33:19.000000000 -0500 -+++ boost_1_63_0/libs/serialization/src/archive_exception.cpp 2017-06-01 22:06:14.193128909 -0400 -@@ -37,83 +37,90 @@ - } - - BOOST_ARCHIVE_DECL --archive_exception::archive_exception( -- exception_code c, -- const char * e1, -- const char * e2 --) BOOST_NOEXCEPT : -- code(c) -+void -+archive_exception::pgi_bug_workaround_init(archive_exception *new_object, const char *e1, const char *e2) - { - unsigned int length = 0; -- switch(code){ -+ switch(new_object->code){ - case no_exception: -- length = append(length, "uninitialized exception"); -+ length = new_object->append(length, "uninitialized exception"); - break; -- case unregistered_class: -- length = append(length, "unregistered class"); -+ case archive_exception::unregistered_class: -+ length = new_object->append(length, "unregistered class"); - if(NULL != e1){ -- length = append(length, " - "); -- length = append(length, e1); -+ length = new_object->append(length, " - "); -+ length = new_object->append(length, e1); - } - break; - case invalid_signature: -- length = append(length, "invalid signature"); -+ length = new_object->append(length, "invalid signature"); - break; - case unsupported_version: -- length = append(length, "unsupported version"); -+ length = new_object->append(length, "unsupported version"); - break; - case pointer_conflict: -- length = append(length, "pointer conflict"); -+ length = new_object->append(length, "pointer conflict"); - break; - case incompatible_native_format: -- length = append(length, "incompatible native format"); -+ length = new_object->append(length, "incompatible native format"); - if(NULL != e1){ -- length = append(length, " - "); -- length = append(length, e1); -+ length = new_object->append(length, " - "); -+ length = new_object->append(length, e1); - } - break; - case array_size_too_short: -- length = append(length, "array size too short"); -+ length = new_object->append(length, "array size too short"); - break; - case input_stream_error: -- length = append(length, "input stream error"); -+ length = new_object->append(length, "input stream error"); - break; - case invalid_class_name: -- length = append(length, "class name too long"); -+ length = new_object->append(length, "class name too long"); - break; - case unregistered_cast: -- length = append(length, "unregistered void cast "); -- length = append(length, (NULL != e1) ? e1 : "?"); -- length = append(length, "<-"); -- length = append(length, (NULL != e2) ? e2 : "?"); -+ length = new_object->append(length, "unregistered void cast "); -+ length = new_object->append(length, (NULL != e1) ? e1 : "?"); -+ length = new_object->append(length, "<-"); -+ length = new_object->append(length, (NULL != e2) ? e2 : "?"); - break; - case unsupported_class_version: -- length = append(length, "class version "); -- length = append(length, (NULL != e1) ? e1 : ""); -+ length = new_object->append(length, "class version "); -+ length = new_object->append(length, (NULL != e1) ? e1 : ""); - break; - case other_exception: - // if get here - it indicates a derived exception - // was sliced by passing by value in catch -- length = append(length, "unknown derived exception"); -+ length = new_object->append(length, "unknown derived exception"); - break; - case multiple_code_instantiation: -- length = append(length, "code instantiated in more than one module"); -+ length = new_object->append(length, "code instantiated in more than one module"); - if(NULL != e1){ -- length = append(length, " - "); -- length = append(length, e1); -+ length = new_object->append(length, " - "); -+ length = new_object->append(length, e1); - } - break; - case output_stream_error: -- length = append(length, "output stream error"); -+ length = new_object->append(length, "output stream error"); - break; - default: - BOOST_ASSERT(false); -- length = append(length, "programming error"); -+ length = new_object->append(length, "programming error"); - break; - } - } - - BOOST_ARCHIVE_DECL -+archive_exception::archive_exception( -+ exception_code c, -+ const char * e1, -+ const char * e2 -+) BOOST_NOEXCEPT : -+ code(c) -+{ -+ pgi_bug_workaround_init(this, e1, e2); -+} -+ -+BOOST_ARCHIVE_DECL - archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT : - std::exception(oth), - code(oth.code) -diff -uNr boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp ---- boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp 2016-12-22 07:33:19.000000000 -0500 -+++ boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp 2017-05-31 20:58:15.650876427 -0400 -@@ -26,41 +26,48 @@ - namespace archive { - - BOOST_ARCHIVE_DECL -+void -+xml_archive_exception::pgi_bug_workaround_init_xml(xml_archive_exception *new_object, exception_code c, const char *e1, const char *e2) -+{ -+ switch(c){ -+ case xml_archive_parsing_error: -+ new_object->append(0, "unrecognized XML syntax"); -+ break; -+ case xml_archive_tag_mismatch:{ -+ unsigned int l; -+ l = new_object->append(0, "XML start/end tag mismatch"); -+ if(NULL != e1){ -+ l = new_object->append(l, " - "); -+ new_object->append(l, e1); -+ } -+ break; -+ } -+ case xml_archive_tag_name_error: -+ new_object->append(0, "Invalid XML tag name"); -+ break; -+ default: -+ BOOST_ASSERT(false); -+ new_object->append(0, "programming error"); -+ break; -+ } -+} -+ -+BOOST_ARCHIVE_DECL - xml_archive_exception::xml_archive_exception( - exception_code c, - const char * e1, - const char * e2 - ) : - archive_exception(other_exception, e1, e2) -- { -- switch(c){ -- case xml_archive_parsing_error: -- archive_exception::append(0, "unrecognized XML syntax"); -- break; -- case xml_archive_tag_mismatch:{ -- unsigned int l; -- l = archive_exception::append(0, "XML start/end tag mismatch"); -- if(NULL != e1){ -- l = archive_exception::append(l, " - "); -- archive_exception::append(l, e1); -- } -- break; -- } -- case xml_archive_tag_name_error: -- archive_exception::append(0, "Invalid XML tag name"); -- break; -- default: -- BOOST_ASSERT(false); -- archive_exception::append(0, "programming error"); -- break; -- } -- } -+{ -+ pgi_bug_workaround_init_xml(this, c, e1, e2); -+} - - BOOST_ARCHIVE_DECL - xml_archive_exception::xml_archive_exception(xml_archive_exception const & oth) : - archive_exception(oth) -- { -- } -+{ -+} - - BOOST_ARCHIVE_DECL xml_archive_exception::~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {} - diff --git a/spack-repo/container-builder/packages/boost/boost_11856.patch b/spack-repo/container-builder/packages/boost/boost_11856.patch deleted file mode 100644 index 3b4052c..0000000 --- a/spack-repo/container-builder/packages/boost/boost_11856.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- a/libs/container/src/pool_resource.cpp 2015-11-06 12:49:55.000000000 -0800 -+++ b/libs/container/src/pool_resource.cpp 2015-12-22 07:54:36.202131121 -0800 -@@ -32,11 +32,11 @@ - class pool_data_t - : public block_slist_base<> - { -- typedef block_slist_base<> block_slist_base; -+ typedef block_slist_base<> block_slist_base_t; - - public: - explicit pool_data_t(std::size_t initial_blocks_per_chunk) -- : block_slist_base(), next_blocks_per_chunk(initial_blocks_per_chunk) -+ : block_slist_base_t(), next_blocks_per_chunk(initial_blocks_per_chunk) - { slist_algo::init_header(&free_slist); } - - void *allocate_block() BOOST_NOEXCEPT -@@ -59,7 +59,7 @@ - void release(memory_resource &upstream) - { - slist_algo::init_header(&free_slist); -- this->block_slist_base::release(upstream); -+ this->block_slist_base_t::release(upstream); - next_blocks_per_chunk = pool_options_minimum_max_blocks_per_chunk; - } - -@@ -72,7 +72,7 @@ - - //Minimum block size is at least max_align, so all pools allocate sizes that are multiple of max_align, - //meaning that all blocks are max_align-aligned. -- char *p = static_cast(block_slist_base::allocate(blocks_per_chunk*pool_block, mr)); -+ char *p = static_cast(block_slist_base_t::allocate(blocks_per_chunk*pool_block, mr)); - - //Create header types. This is no-throw - for(std::size_t i = 0, max = blocks_per_chunk; i != max; ++i){ diff --git a/spack-repo/container-builder/packages/boost/call_once_variadic.patch b/spack-repo/container-builder/packages/boost/call_once_variadic.patch deleted file mode 100644 index f143644..0000000 --- a/spack-repo/container-builder/packages/boost/call_once_variadic.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff --git a/boost/thread/pthread/once.hpp b/boost/thread/pthread/once.hpp -index ccfb051..0bef038 100644 ---- a/boost/thread/pthread/once.hpp -+++ b/boost/thread/pthread/once.hpp -@@ -42,7 +42,7 @@ namespace boost - } - - #ifdef BOOST_THREAD_PROVIDES_ONCE_CXX11 --#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES -+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - template - inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args); - #else -@@ -65,7 +65,7 @@ namespace boost - private: - volatile thread_detail::uintmax_atomic_t epoch; - --#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES -+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - template - friend void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args); - #else -@@ -118,7 +118,7 @@ namespace boost - // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2444.html - - --#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES -+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - - - template -diff --git a/boost/thread/pthread/once_atomic.hpp b/boost/thread/pthread/once_atomic.hpp -index 9e2f876..923f07b 100644 ---- a/boost/thread/pthread/once_atomic.hpp -+++ b/boost/thread/pthread/once_atomic.hpp -@@ -115,7 +115,7 @@ namespace boost - #endif - - --#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES -+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - - template - inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args) -diff --git a/boost/thread/win32/once.hpp b/boost/thread/win32/once.hpp -index cafcfd4..9b37b31 100644 ---- a/boost/thread/win32/once.hpp -+++ b/boost/thread/win32/once.hpp -@@ -227,7 +227,7 @@ namespace boost - } - } - --#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES -+#if !defined BOOST_NO_CXX11_VARIADIC_TEMPLATES && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - //#if defined(BOOST_THREAD_RVALUE_REFERENCES_DONT_MATCH_FUNTION_PTR) - inline void call_once(once_flag& flag, void (*f)()) - { diff --git a/spack-repo/container-builder/packages/boost/package.py b/spack-repo/container-builder/packages/boost/package.py deleted file mode 100644 index 5c317db..0000000 --- a/spack-repo/container-builder/packages/boost/package.py +++ /dev/null @@ -1,382 +0,0 @@ -############################################################################## -# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC. -# Produced at the Lawrence Livermore National Laboratory. -# -# This file is part of Spack. -# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved. -# LLNL-CODE-647188 -# -# For details, see https://github.com/spack/spack -# Please also see the NOTICE and LICENSE files for our notice and the LGPL. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License (as -# published by the Free Software Foundation) version 2.1, February 1999. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and -# conditions of the GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -############################################################################## -from spack import * -import sys -import os - - -class Boost(Package): - """Boost provides free peer-reviewed portable C++ source - libraries, emphasizing libraries that work well with the C++ - Standard Library. - - Boost libraries are intended to be widely useful, and usable - across a broad spectrum of applications. The Boost license - encourages both commercial and non-commercial use. - """ - homepage = "http://www.boost.org" - url = "http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2" - list_url = "http://sourceforge.net/projects/boost/files/boost/" - list_depth = 1 - - version('develop', - git='https://github.com/boostorg/boost.git', - branch='develop', - submodules=True) - - version('1.66.0', 'b2dfbd6c717be4a7bb2d88018eaccf75', - url='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.bz2') - version('1.65.1', '41d7542ce40e171f3f7982aff008ff0d', - url='https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2') - version('1.65.0', '5512d3809801b0a1b9dd58447b70915d', - url='https://dl.bintray.com/boostorg/release/1.65.0/source/boost_1_65_0.tar.bz2') - # NOTE: 1.64.0 seems fine for *most* applications, but if you need - # +python and +mpi, there seem to be errors with out-of-date - # API calls from mpi/python. - # See: https://github.com/spack/spack/issues/3963 - version('1.64.0', '93eecce2abed9d2442c9676914709349') - version('1.63.0', '1c837ecd990bb022d07e7aab32b09847') - version('1.62.0', '5fb94629535c19e48703bdb2b2e9490f') - version('1.61.0', '6095876341956f65f9d35939ccea1a9f') - version('1.60.0', '65a840e1a0b13a558ff19eeb2c4f0cbe') - version('1.59.0', '6aa9a5c6a4ca1016edd0ed1178e3cb87') - version('1.58.0', 'b8839650e61e9c1c0a89f371dd475546') - version('1.57.0', '1be49befbdd9a5ce9def2983ba3e7b76') - version('1.56.0', 'a744cf167b05d72335f27c88115f211d') - version('1.55.0', 'd6eef4b4cacb2183f2bf265a5a03a354') - version('1.54.0', '15cb8c0803064faef0c4ddf5bc5ca279') - version('1.53.0', 'a00d22605d5dbcfb4c9936a9b35bc4c2') - version('1.52.0', '3a855e0f919107e0ca4de4d84ad3f750') - version('1.51.0', '4b6bd483b692fd138aef84ed2c8eb679') - version('1.50.0', '52dd00be775e689f55a987baebccc462') - version('1.49.0', '0d202cb811f934282dea64856a175698') - version('1.48.0', 'd1e9a7a7f532bb031a3c175d86688d95') - version('1.47.0', 'a2dc343f7bc7f83f8941e47ed4a18200') - version('1.46.1', '7375679575f4c8db605d426fc721d506') - version('1.46.0', '37b12f1702319b73876b0097982087e0') - version('1.45.0', 'd405c606354789d0426bc07bea617e58') - version('1.44.0', 'f02578f5218f217a9f20e9c30e119c6a') - version('1.43.0', 'dd49767bfb726b0c774f7db0cef91ed1') - version('1.42.0', '7bf3b4eb841b62ffb0ade2b82218ebe6') - version('1.41.0', '8bb65e133907db727a2a825c5400d0a6') - version('1.40.0', 'ec3875caeac8c52c7c129802a8483bd7') - version('1.39.0', 'a17281fd88c48e0d866e1a12deecbcc0') - version('1.38.0', '5eca2116d39d61382b8f8235915cb267') - version('1.37.0', '8d9f990bfb7e83769fa5f1d6f065bc92') - version('1.36.0', '328bfec66c312150e4c2a78dcecb504b') - version('1.35.0', 'dce952a7214e72d6597516bcac84048b') - version('1.34.1', '2d938467e8a448a2c9763e0a9f8ca7e5') - version('1.34.0', 'ed5b9291ffad776f8757a916e1726ad0') - - default_install_libs = set(['atomic', - 'chrono', - 'date_time', - 'filesystem', - 'graph', - 'iostreams', - 'locale', - 'log', - 'math', - 'program_options', - 'random', - 'regex', - 'serialization', - 'signals', - 'system', - 'test', - 'thread', - 'timer', - 'wave']) - - # mpi/python are not installed by default because they pull in many - # dependencies and/or because there is a great deal of customization - # possible (and it would be difficult to choose sensible defaults) - default_noinstall_libs = set(['mpi', 'python', 'coroutine']) - - all_libs = default_install_libs | default_noinstall_libs - - for lib in all_libs: - variant(lib, default=(lib not in default_noinstall_libs), - description="Compile with {0} library".format(lib)) - - variant('debug', default=False, - description='Switch to the debug version of Boost') - variant('shared', default=True, - description="Additionally build shared libraries") - variant('multithreaded', default=True, - description="Build multi-threaded versions of libraries") - variant('singlethreaded', default=False, - description="Build single-threaded versions of libraries") - variant('icu', default=False, - description="Build with Unicode and ICU suport") - variant('graph', default=False, - description="Build the Boost Graph library") - variant('taggedlayout', default=False, - description="Augment library names with build options") - variant('versionedlayout', default=False, - description="Augment library layout with versioned subdirs") - variant('clanglibcpp', default=False, - description='Compile with clang libc++ instead of libstdc++') - - depends_on('icu4c', when='+icu') - depends_on('python', when='+python') - depends_on('mpi', when='+mpi') - depends_on('bzip2', when='+iostreams') - depends_on('zlib', when='+iostreams') - - conflicts('+taggedlayout', when='+versionedlayout') - - # Patch fix from https://svn.boost.org/trac/boost/ticket/11856 - patch('boost_11856.patch', when='@1.60.0%gcc@4.4.7') - - # Patch fix from https://svn.boost.org/trac/boost/ticket/11120 - patch('python_jam.patch', when='@1.56.0: ^python@3:') - patch('python_jam_pre156.patch', when='@:1.55.0 ^python@3:') - - # Patch fix for IBM XL compiler - patch('xl_1_62_0_le.patch', when='@1.62.0%xl_r') - patch('xl_1_62_0_le.patch', when='@1.62.0%xl') - - # Patch fix from https://svn.boost.org/trac/boost/ticket/10125 - patch('call_once_variadic.patch', when='@1.54.0:1.55.9999%gcc@5.0:5.9') - - # Patch fix for PGI compiler - patch('boost_1.63.0_pgi.patch', when='@1.63.0%pgi') - patch('boost_1.63.0_pgi_17.4_workaround.patch', when='@1.63.0%pgi@17.4') - - def url_for_version(self, version): - url = "http://downloads.sourceforge.net/project/boost/boost/{0}/boost_{1}.tar.bz2" - return url.format(version.dotted, version.underscored) - - def determine_toolset(self, spec): - if spec.satisfies("platform=darwin"): - return 'darwin' - - toolsets = {'g++': 'gcc', - 'icpc': 'intel', - 'clang++': 'clang', - 'xlc++': 'xlcpp', - 'xlc++_r': 'xlcpp', - 'pgc++': 'pgi'} - - if spec.satisfies('@1.47:'): - toolsets['icpc'] += '-linux' - for cc, toolset in toolsets.items(): - if cc in self.compiler.cxx_names: - return toolset - - # fallback to gcc if no toolset found - return 'gcc' - - def bjam_python_line(self, spec): - return 'using python : {0} : {1} : {2} : {3} ;\n'.format( - spec['python'].version.up_to(2), - spec['python'].command.path, - spec['python'].headers.directories[0], - spec['python'].libs[0] - ) - - def determine_bootstrap_options(self, spec, withLibs, options): - boostToolsetId = self.determine_toolset(spec) - options.append('--with-toolset=%s' % boostToolsetId) - options.append("--with-libraries=%s" % ','.join(withLibs)) - - if '+python' in spec: - options.append('--with-python=%s' % spec['python'].command.path) - - with open('user-config.jam', 'w') as f: - # Boost may end up using gcc even though clang+gfortran is set in - # compilers.yaml. Make sure this does not happen: - if not spec.satisfies('%intel'): - # using intel-linux : : spack_cxx in user-config.jam leads to - # error: at project-config.jam:12 - # error: duplicate initialization of intel-linux with the following parameters: # noqa - # error: version = - # error: previous initialization at ./user-config.jam:1 - f.write("using {0} : : {1} ;\n".format(boostToolsetId, - spack_cxx)) - - if '+mpi' in spec: - - # Use the correct mpi compiler. If the compiler options are - # empty or undefined, Boost will attempt to figure out the - # correct options by running "${mpicxx} -show" or something - # similar, but that doesn't work with the Cray compiler - # wrappers. Since Boost doesn't use the MPI C++ bindings, - # that can be used as a compiler option instead. - - mpi_line = 'using mpi : %s' % spec['mpi'].mpicxx - - if 'platform=cray' in spec: - mpi_line += ' : MPICH_SKIP_MPICXX' - - f.write(mpi_line + ' ;\n') - - if '+python' in spec: - f.write(self.bjam_python_line(spec)) - - def determine_b2_options(self, spec, options): - if '+debug' in spec: - options.append('variant=debug') - else: - options.append('variant=release') - - if '+icu_support' in spec: - options.extend(['-s', 'ICU_PATH=%s' % spec['icu'].prefix]) - - if '+iostreams' in spec: - options.extend([ - '-s', 'BZIP2_INCLUDE=%s' % spec['bzip2'].prefix.include, - '-s', 'BZIP2_LIBPATH=%s' % spec['bzip2'].prefix.lib, - '-s', 'ZLIB_INCLUDE=%s' % spec['zlib'].prefix.include, - '-s', 'ZLIB_LIBPATH=%s' % spec['zlib'].prefix.lib]) - - linkTypes = ['static'] - if '+shared' in spec: - linkTypes.append('shared') - - threadingOpts = [] - if '+multithreaded' in spec: - threadingOpts.append('multi') - if '+singlethreaded' in spec: - threadingOpts.append('single') - if not threadingOpts: - raise RuntimeError("At least one of {singlethreaded, " + - "multithreaded} must be enabled") - - if '+taggedlayout' in spec: - layout = 'tagged' - elif '+versionedlayout' in spec: - layout = 'versioned' - else: - if len(threadingOpts) > 1: - raise RuntimeError("Cannot build both single and " + - "multi-threaded targets with system layout") - layout = 'system' - - options.extend([ - 'link=%s' % ','.join(linkTypes), - '--layout=%s' % layout - ]) - - if not spec.satisfies('%intel'): - options.extend([ - 'toolset=%s' % self.determine_toolset(spec) - ]) - - # clang is not officially supported for pre-compiled headers - # and at least in clang 3.9 still fails to build - # http://www.boost.org/build/doc/html/bbv2/reference/precompiled_headers.html - # https://svn.boost.org/trac/boost/ticket/12496 - if spec.satisfies('%clang'): - options.extend(['pch=off']) - if '+clanglibcpp' in spec: - options.extend(['toolset=clang', - 'cxxflags="-stdlib=libc++"', - 'linkflags="-stdlib=libc++"']) - - return threadingOpts - - def add_buildopt_symlinks(self, prefix): - with working_dir(prefix.lib): - for lib in os.listdir(os.curdir): - prefix, remainder = lib.split('.', 1) - symlink(lib, '%s-mt.%s' % (prefix, remainder)) - - def install(self, spec, prefix): - # On Darwin, Boost expects the Darwin libtool. However, one of the - # dependencies may have pulled in Spack's GNU libtool, and these two - # are not compatible. We thus create a symlink to Darwin's libtool - # and add it at the beginning of PATH. - if sys.platform == 'darwin': - newdir = os.path.abspath('darwin-libtool') - mkdirp(newdir) - force_symlink('/usr/bin/libtool', join_path(newdir, 'libtool')) - env['PATH'] = newdir + ':' + env['PATH'] - - withLibs = list() - for lib in Boost.all_libs: - if "+{0}".format(lib) in spec: - withLibs.append(lib) - if not withLibs: - # if no libraries are specified for compilation, then you dont have - # to configure/build anything, just copy over to the prefix - # directory. - src = join_path(self.stage.source_path, 'boost') - mkdirp(join_path(prefix, 'include')) - dst = join_path(prefix, 'include', 'boost') - install_tree(src, dst) - return - - # Remove libraries that the release version does not support - if not spec.satisfies('@1.54.0:'): - withLibs.remove('log') - if not spec.satisfies('@1.53.0:'): - withLibs.remove('atomic') - if not spec.satisfies('@1.48.0:'): - withLibs.remove('locale') - if not spec.satisfies('@1.47.0:'): - withLibs.remove('chrono') - if not spec.satisfies('@1.43.0:'): - withLibs.remove('random') - if '+graph' in spec and '+mpi' in spec: - withLibs.append('graph_parallel') - - # to make Boost find the user-config.jam - env['BOOST_BUILD_PATH'] = './' - - bootstrap = Executable('./bootstrap.sh') - - bootstrap_options = ['--prefix=%s' % prefix] - self.determine_bootstrap_options(spec, withLibs, bootstrap_options) - - bootstrap(*bootstrap_options) - - # b2 used to be called bjam, before 1.47 (sigh) - b2name = './b2' if spec.satisfies('@1.47:') else './bjam' - - b2 = Executable(b2name) - jobs = make_jobs - # in 1.59 max jobs became dynamic - if jobs > 64 and spec.satisfies('@:1.58'): - jobs = 64 - b2_options = ['-j', '%s' % jobs] - - threadingOpts = self.determine_b2_options(spec, b2_options) - - b2('--clean') - - # In theory it could be done on one call but it fails on - # Boost.MPI if the threading options are not separated. - for threadingOpt in threadingOpts: - b2('install', 'threading=%s' % threadingOpt, *b2_options) - - if '+multithreaded' in spec and '~taggedlayout' in spec: - self.add_buildopt_symlinks(prefix) - - # The shared libraries are not installed correctly - # on Darwin; correct this - if (sys.platform == 'darwin') and ('+shared' in spec): - fix_darwin_install_name(prefix.lib) diff --git a/spack-repo/container-builder/packages/boost/python_jam.patch b/spack-repo/container-builder/packages/boost/python_jam.patch deleted file mode 100644 index 70054ba..0000000 --- a/spack-repo/container-builder/packages/boost/python_jam.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/tools/build/src/tools/python.jam b/tools/build/src/tools/python.jam -index 90377ea..123f66a 100644 ---- a/tools/build/src/tools/python.jam -+++ b/tools/build/src/tools/python.jam -@@ -493,6 +493,10 @@ local rule probe ( python-cmd ) - sys.$(s) = [ SUBST $(output) \\<$(s)=([^$(nl)]+) $1 ] ; - } - } -+ # Try to get python abiflags -+ full-cmd = $(python-cmd)" -c \"from sys import abiflags; print(abiflags, end='')\"" ; -+ -+ sys.abiflags = [ SHELL $(full-cmd) ] ; - return $(output) ; - } - } -@@ -502,7 +506,7 @@ local rule probe ( python-cmd ) - # have a value based on the information given. - # - local rule compute-default-paths ( target-os : version ? : prefix ? : -- exec-prefix ? ) -+ exec-prefix ? : abiflags ? ) - { - exec-prefix ?= $(prefix) ; - -@@ -539,7 +543,7 @@ local rule compute-default-paths ( target-os : version ? : prefix ? : - } - else - { -- includes ?= $(prefix)/include/python$(version) ; -+ includes ?= $(prefix)/include/python$(version)$(abiflags) ; - - local lib = $(exec-prefix)/lib ; - libraries ?= $(lib)/python$(version)/config $(lib) ; -@@ -783,7 +787,7 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : - exec-prefix = $(sys.exec_prefix) ; - - compute-default-paths $(target-os) : $(sys.version) : -- $(sys.prefix) : $(sys.exec_prefix) ; -+ $(sys.prefix) : $(sys.exec_prefix) : $(sys.abiflags) ; - - version = $(sys.version) ; - interpreter-cmd ?= $(cmd) ; diff --git a/spack-repo/container-builder/packages/boost/python_jam_pre156.patch b/spack-repo/container-builder/packages/boost/python_jam_pre156.patch deleted file mode 100644 index b5c6404..0000000 --- a/spack-repo/container-builder/packages/boost/python_jam_pre156.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/tools/build/v2/tools/python.jam b/tools/build/v2/tools/python.jam -index 90377ea..123f66a 100644 ---- a/tools/build/v2/tools/python.jam -+++ b/tools/build/v2/tools/python.jam -@@ -493,6 +493,10 @@ local rule probe ( python-cmd ) - sys.$(s) = [ SUBST $(output) \\<$(s)=([^$(nl)]+) $1 ] ; - } - } -+ # Try to get python abiflags -+ full-cmd = $(python-cmd)" -c \"from sys import abiflags; print(abiflags, end='')\"" ; -+ -+ sys.abiflags = [ SHELL $(full-cmd) ] ; - return $(output) ; - } - } -@@ -502,7 +506,7 @@ local rule probe ( python-cmd ) - # have a value based on the information given. - # - local rule compute-default-paths ( target-os : version ? : prefix ? : -- exec-prefix ? ) -+ exec-prefix ? : abiflags ? ) - { - exec-prefix ?= $(prefix) ; - -@@ -539,7 +543,7 @@ local rule compute-default-paths ( target-os : version ? : prefix ? : - } - else - { -- includes ?= $(prefix)/include/python$(version) ; -+ includes ?= $(prefix)/include/python$(version)$(abiflags) ; - - local lib = $(exec-prefix)/lib ; - libraries ?= $(lib)/python$(version)/config $(lib) ; -@@ -783,7 +787,7 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : - exec-prefix = $(sys.exec_prefix) ; - - compute-default-paths $(target-os) : $(sys.version) : -- $(sys.prefix) : $(sys.exec_prefix) ; -+ $(sys.prefix) : $(sys.exec_prefix) : $(sys.abiflags) ; - - version = $(sys.version) ; - interpreter-cmd ?= $(cmd) ; diff --git a/spack-repo/container-builder/packages/boost/xl_1_62_0_le.patch b/spack-repo/container-builder/packages/boost/xl_1_62_0_le.patch deleted file mode 100644 index fd0eba3..0000000 --- a/spack-repo/container-builder/packages/boost/xl_1_62_0_le.patch +++ /dev/null @@ -1,787 +0,0 @@ -diff -uNr boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp ---- boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp 2015-03-23 13:17:14.000000000 -0400 -+++ boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp 2016-01-08 13:29:52.612408601 -0500 -@@ -10,7 +10,7 @@ - - #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__) - # pragma message ("Warning: This header is deprecated. Please use: boost/accumulators/statistics/p_square_cumul_dist.hpp") --#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) -+#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__) - # warning "This header is deprecated. Please use: boost/accumulators/statistics/p_square_cumul_dist.hpp" - #endif - -diff -uNr boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp ---- boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp 2015-03-23 13:17:14.000000000 -0400 -+++ boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp 2016-01-08 13:29:52.649942984 -0500 -@@ -10,7 +10,7 @@ - - #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__) - # pragma message ("Warning: This header is deprecated. Please use: boost/accumulators/statistics/weighted_p_square_cumul_dist.hpp") --#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) -+#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__) - # warning "This header is deprecated. Please use: boost/accumulators/statistics/weighted_p_square_cumul_dist.hpp" - #endif - -diff -uNr boost_1_62_0/boost/asio/detail/pop_options.hpp boost_1_62_0/boost/asio/detail/pop_options.hpp ---- boost_1_62_0/boost/asio/detail/pop_options.hpp 2015-03-23 16:24:12.000000000 -0400 -+++ boost_1_62_0/boost/asio/detail/pop_options.hpp 2016-01-08 13:29:52.725151630 -0500 -@@ -107,7 +107,7 @@ - - // MPW MrCpp or SCpp - --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - - // IBM Visual Age - -diff -uNr boost_1_62_0/boost/asio/detail/push_options.hpp boost_1_62_0/boost/asio/detail/push_options.hpp ---- boost_1_62_0/boost/asio/detail/push_options.hpp 2015-03-23 16:24:12.000000000 -0400 -+++ boost_1_62_0/boost/asio/detail/push_options.hpp 2016-01-08 13:29:52.779979004 -0500 -@@ -114,7 +114,7 @@ - - // MPW MrCpp or SCpp - --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - - // IBM Visual Age - -diff -uNr boost_1_62_0/boost/asio/impl/src.cpp boost_1_62_0/boost/asio/impl/src.cpp ---- boost_1_62_0/boost/asio/impl/src.cpp 2015-03-23 16:24:12.000000000 -0400 -+++ boost_1_62_0/boost/asio/impl/src.cpp 2016-01-08 13:29:52.855662358 -0500 -@@ -17,7 +17,7 @@ - #elif defined(__GNUC__) \ - || defined(__HP_aCC) \ - || defined(__SUNPRO_CC) \ -- || defined(__IBMCPP__) -+ || defined(__IBMCPP__) && !defined(__ibmxl__) - # warning "This file is deprecated." - # warning "Please #include instead." - #endif -diff -uNr boost_1_62_0/boost/bind/bind.hpp boost_1_62_0/boost/bind/bind.hpp ---- boost_1_62_0/boost/bind/bind.hpp 2015-05-03 18:08:08.000000000 -0400 -+++ boost_1_62_0/boost/bind/bind.hpp 2016-01-08 13:29:52.921370966 -0500 -@@ -1970,7 +1970,7 @@ - typedef void type; - }; - --#if !defined(__IBMCPP__) || __IBMCPP_FUNC_CV_TMPL_ARG_DEDUCTION -+#if !(defined(__IBMCPP__) && !defined(__ibmxl__)) || __IBMCPP_FUNC_CV_TMPL_ARG_DEDUCTION - - template< class R, class T > struct add_cref< R (T::*) () const, 1 > - { -diff -uNr boost_1_62_0/boost/config/requires_threads.hpp boost_1_62_0/boost/config/requires_threads.hpp ---- boost_1_62_0/boost/config/requires_threads.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/config/requires_threads.hpp 2016-01-08 13:29:53.028994548 -0500 -@@ -70,7 +70,7 @@ - // HP aCC - # error "Compiler threading support is not turned on. Please set the correct command line options for threading: -mt" - --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - // IBM Visual Age - # error "Compiler threading support is not turned on. Please compile the code with the xlC_r compiler" - -diff -uNr boost_1_62_0/boost/config/select_compiler_config.hpp boost_1_62_0/boost/config/select_compiler_config.hpp ---- boost_1_62_0/boost/config/select_compiler_config.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/config/select_compiler_config.hpp 2016-01-08 13:29:53.495533933 -0500 -@@ -96,7 +96,7 @@ - // IBM XL C/C++ for Linux (Little Endian) - # define BOOST_COMPILER_CONFIG "boost/config/compiler/xlcpp.hpp" - --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - // IBM Visual Age or IBM XL C/C++ for Linux (Big Endian) - # define BOOST_COMPILER_CONFIG "boost/config/compiler/vacpp.hpp" - -diff -uNr boost_1_62_0/boost/config/select_platform_config.hpp boost_1_62_0/boost/config/select_platform_config.hpp ---- boost_1_62_0/boost/config/select_platform_config.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/config/select_platform_config.hpp 2016-01-08 13:29:53.575187839 -0500 -@@ -53,7 +53,7 @@ - // MacOS - # define BOOST_PLATFORM_CONFIG "boost/config/platform/macos.hpp" - --#elif defined(__IBMCPP__) || defined(_AIX) -+#elif (defined(__IBMCPP__) && !defined(__ibmxl__)) || defined(_AIX) - // IBM - # define BOOST_PLATFORM_CONFIG "boost/config/platform/aix.hpp" - -diff -uNr boost_1_62_0/boost/config/select_stdlib_config.hpp boost_1_62_0/boost/config/select_stdlib_config.hpp ---- boost_1_62_0/boost/config/select_stdlib_config.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/config/select_stdlib_config.hpp 2016-01-08 13:29:53.626526177 -0500 -@@ -37,7 +37,7 @@ - // #include if they know whose std lib they are using. - #if !defined(__LIBCOMO__) && !defined(__STD_RWCOMPILER_H__) && !defined(_RWSTD_VER)\ - && !defined(_LIBCPP_VERSION) && !defined(__GLIBCPP__) && !defined(__GLIBCXX__)\ -- && !defined(__STL_CONFIG_H) && !defined(__MSL_CPP__) && !defined(__IBMCPP__)\ -+ && !defined(__STL_CONFIG_H) && !defined(__MSL_CPP__) && !(defined(__IBMCPP__) && !defined(__ibmxl__) )\ - && !defined(MSIPL_COMPILE_H) && !defined(_YVALS) && !defined(_CPPLIB_VER) - #include - #endif -@@ -66,7 +66,7 @@ - // MSL standard lib: - # define BOOST_STDLIB_CONFIG "boost/config/stdlib/msl.hpp" - --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - // take the default VACPP std lib - # define BOOST_STDLIB_CONFIG "boost/config/stdlib/vacpp.hpp" - -@@ -74,7 +74,7 @@ - // Modena C++ standard library - # define BOOST_STDLIB_CONFIG "boost/config/stdlib/modena.hpp" - --#elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER) -+#elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__) )) || defined(_CPPLIB_VER) - // Dinkumware Library (this has to appear after any possible replacement libraries): - # define BOOST_STDLIB_CONFIG "boost/config/stdlib/dinkumware.hpp" - -diff -uNr boost_1_62_0/boost/core/explicit_operator_bool.hpp boost_1_62_0/boost/core/explicit_operator_bool.hpp ---- boost_1_62_0/boost/core/explicit_operator_bool.hpp 2015-07-20 05:32:52.000000000 -0400 -+++ boost_1_62_0/boost/core/explicit_operator_bool.hpp 2016-01-08 13:29:53.895509554 -0500 -@@ -78,7 +78,7 @@ - - namespace detail { - --#if !defined(_MSC_VER) && !defined(__IBMCPP__) -+#if !defined(_MSC_VER) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) - - struct unspecified_bool - { -diff -uNr boost_1_62_0/boost/cstdint.hpp boost_1_62_0/boost/cstdint.hpp ---- boost_1_62_0/boost/cstdint.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/cstdint.hpp 2016-01-08 13:29:53.969672718 -0500 -@@ -54,7 +54,7 @@ - // this is triggered with GCC, because it defines __cplusplus < 199707L - # define BOOST_NO_INT64_T - # endif --# elif defined(__FreeBSD__) || defined(__IBMCPP__) || defined(_AIX) -+# elif defined(__FreeBSD__) || (defined(__IBMCPP__) && !defined(__ibmxl__))|| defined(_AIX) - # include - # else - # include -diff -uNr boost_1_62_0/boost/current_function.hpp boost_1_62_0/boost/current_function.hpp ---- boost_1_62_0/boost/current_function.hpp 2015-01-30 18:08:49.000000000 -0500 -+++ boost_1_62_0/boost/current_function.hpp 2016-01-08 13:29:54.012897946 -0500 -@@ -40,7 +40,7 @@ - - # define BOOST_CURRENT_FUNCTION __FUNCSIG__ - --#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500)) -+#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 500)) - - # define BOOST_CURRENT_FUNCTION __FUNCTION__ - -diff -uNr boost_1_62_0/boost/detail/container_fwd.hpp boost_1_62_0/boost/detail/container_fwd.hpp ---- boost_1_62_0/boost/detail/container_fwd.hpp 2015-04-01 11:49:11.000000000 -0400 -+++ boost_1_62_0/boost/detail/container_fwd.hpp 2016-01-08 13:29:54.062758504 -0500 -@@ -70,12 +70,12 @@ - # elif defined(__MSL_CPP__) - // MSL standard lib: - # define BOOST_DETAIL_NO_CONTAINER_FWD --# elif defined(__IBMCPP__) -+# elif defined(__IBMCPP__) && !defined(__ibmxl__) - // The default VACPP std lib, forward declaration seems to be fine. - # elif defined(MSIPL_COMPILE_H) - // Modena C++ standard library - # define BOOST_DETAIL_NO_CONTAINER_FWD --# elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER) -+# elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER) - // Dinkumware Library (this has to appear after any possible replacement - // libraries) - # else -diff -uNr boost_1_62_0/boost/detail/workaround.hpp boost_1_62_0/boost/detail/workaround.hpp ---- boost_1_62_0/boost/detail/workaround.hpp 2015-08-04 07:44:49.000000000 -0400 -+++ boost_1_62_0/boost/detail/workaround.hpp 2016-01-09 13:56:47.218685439 -0500 -@@ -85,7 +85,7 @@ - #else - #define __GNUC_PATCHLEVEL___WORKAROUND_GUARD 0 - #endif --#ifndef __IBMCPP__ -+#if !defined(__IBMCPP__) || defined(__ibmxl__) - #define __IBMCPP___WORKAROUND_GUARD 1 - #else - #define __IBMCPP___WORKAROUND_GUARD 0 -diff -uNr boost_1_62_0/boost/foreach.hpp boost_1_62_0/boost/foreach.hpp ---- boost_1_62_0/boost/foreach.hpp 2015-03-04 15:36:38.000000000 -0500 -+++ boost_1_62_0/boost/foreach.hpp 2016-01-09 13:58:39.495427757 -0500 -@@ -55,7 +55,7 @@ - || BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \ - || BOOST_WORKAROUND(BOOST_INTEL_WIN, BOOST_TESTED_AT(1400)) \ - || (BOOST_WORKAROUND(__GNUC__, == 3) && (__GNUC_MINOR__ <= 3) && defined(__APPLE_CC__)) \ -- || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) \ -+ || (BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) && (__IBMCPP__ < 1300)) \ - || BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3206)) \ - || BOOST_WORKAROUND(__SUNPRO_CC, >= 0x5100) \ - || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x590)) -diff -uNr boost_1_62_0/boost/functional/hash/detail/float_functions.hpp boost_1_62_0/boost/functional/hash/detail/float_functions.hpp ---- boost_1_62_0/boost/functional/hash/detail/float_functions.hpp 2015-01-24 09:37:21.000000000 -0500 -+++ boost_1_62_0/boost/functional/hash/detail/float_functions.hpp 2016-01-08 13:29:54.116374393 -0500 -@@ -47,7 +47,7 @@ - #elif defined(__MSL_CPP__) - // MSL standard lib: - # define BOOST_HASH_CONFORMANT_FLOATS 0 --#elif defined(__IBMCPP__) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) - // VACPP std lib (probably conformant for much earlier version). - # if __IBMCPP__ >= 1210 - # define BOOST_HASH_CONFORMANT_FLOATS 1 -@@ -57,7 +57,7 @@ - #elif defined(MSIPL_COMPILE_H) - // Modena C++ standard library - # define BOOST_HASH_CONFORMANT_FLOATS 0 --#elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER) -+#elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER) - // Dinkumware Library (this has to appear after any possible replacement libraries): - # if _CPPLIB_VER >= 405 - # define BOOST_HASH_CONFORMANT_FLOATS 1 -diff -uNr boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp ---- boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp 2014-08-03 15:46:30.000000000 -0400 -+++ boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp 2016-01-08 13:29:54.165330185 -0500 -@@ -10,7 +10,7 @@ - - #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__) - # pragma message ("Warning: This header is deprecated. Please use: boost/graph/edmonds_karp_max_flow.hpp") --#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) -+#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || (defined(__IBMCPP__) && !defined(__ibmxl__)) - # warning "This header is deprecated. Please use: boost/graph/edmonds_karp_max_flow.hpp" - #endif - -diff -uNr boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp ---- boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp 2015-07-21 17:39:18.000000000 -0400 -+++ boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp 2016-01-08 13:29:54.266801426 -0500 -@@ -71,7 +71,7 @@ - - //This works with gcc, msvc, ac++, ibmcpp - #elif defined(__GNUC__) || defined(__HP_aCC) || defined(BOOST_INTEL) || \ -- defined(__IBMCPP__) || defined(__DECCXX) -+ defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__DECCXX) - const Parent * const parent = 0; - const char *const member = static_cast(static_cast(&(parent->*ptr_to_member))); - return std::ptrdiff_t(member - static_cast(static_cast(parent))); -diff -uNr boost_1_62_0/boost/iostreams/detail/add_facet.hpp boost_1_62_0/boost/iostreams/detail/add_facet.hpp ---- boost_1_62_0/boost/iostreams/detail/add_facet.hpp 2015-01-25 14:33:40.000000000 -0500 -+++ boost_1_62_0/boost/iostreams/detail/add_facet.hpp 2016-01-08 13:29:54.290652933 -0500 -@@ -23,7 +23,7 @@ - #if (defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)) && \ - defined(_STLP_NO_OWN_IOSTREAMS) \ - /**/ --# if (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER) -+# if (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER) - # define BOOST_IOSTREMS_STLPORT_WITH_OLD_DINKUMWARE - # endif - #endif -diff -uNr boost_1_62_0/boost/iostreams/positioning.hpp boost_1_62_0/boost/iostreams/positioning.hpp ---- boost_1_62_0/boost/iostreams/positioning.hpp 2015-01-25 14:33:40.000000000 -0500 -+++ boost_1_62_0/boost/iostreams/positioning.hpp 2016-01-08 13:29:54.321832608 -0500 -@@ -82,7 +82,7 @@ - // Converts a std::fpos_t to a stream_offset - inline stream_offset fpos_t_to_offset(std::fpos_t pos) - { --# if defined(_POSIX_) || (_INTEGRAL_MAX_BITS >= 64) || defined(__IBMCPP__) -+# if defined(_POSIX_) || (_INTEGRAL_MAX_BITS >= 64) || defined(__IBMCPP__) && !defined(__ibmxl__) - return pos; - # else - return _FPOSOFF(pos); -@@ -92,7 +92,7 @@ - // Extracts the member _Fpos from a std::fpos - inline std::fpos_t streampos_to_fpos_t(std::streampos pos) - { --# if defined (_CPPLIB_VER) || defined(__IBMCPP__) -+# if defined (_CPPLIB_VER) || defined(__IBMCPP__) && !defined(__ibmxl__) - return pos.seekpos(); - # else - return pos.get_fpos_t(); -diff -uNr boost_1_62_0/boost/math/tools/config.hpp boost_1_62_0/boost/math/tools/config.hpp ---- boost_1_62_0/boost/math/tools/config.hpp 2015-05-05 08:32:10.000000000 -0400 -+++ boost_1_62_0/boost/math/tools/config.hpp 2016-01-08 13:29:54.360466863 -0500 -@@ -43,7 +43,7 @@ - # define BOOST_MATH_CONTROL_FP _control87(MCW_EM,MCW_EM) - # include - #endif --#ifdef __IBMCPP__ -+#if defined(__IBMCPP__) && !defined(__ibmxl__) - // - // For reasons I don't unserstand, the tests with IMB's compiler all - // pass at long double precision, but fail with real_concept, those tests -@@ -98,7 +98,7 @@ - # define BOOST_MATH_CONTROL_FP _control87(MCW_EM,MCW_EM) - #endif - --#ifdef __IBMCPP__ -+#if defined(__IBMCPP__) && !defined(__ibmxl__) - # define BOOST_MATH_NO_DEDUCED_FUNCTION_POINTERS - #endif - -@@ -336,7 +336,7 @@ - # endif - #endif - --#if ((defined(__linux__) && !defined(__UCLIBC__) && !defined(BOOST_MATH_HAVE_FIXED_GLIBC)) || defined(__QNX__) || defined(__IBMCPP__)) && !defined(BOOST_NO_FENV_H) -+#if ((defined(__linux__) && !defined(__UCLIBC__) && !defined(BOOST_MATH_HAVE_FIXED_GLIBC)) || defined(__QNX__) || (defined(__IBMCPP__) && !defined(__ibmxl__))) && !defined(BOOST_NO_FENV_H) - // - // This code was introduced in response to this glibc bug: http://sourceware.org/bugzilla/show_bug.cgi?id=2445 - // Basically powl and expl can return garbage when the result is small and certain exception flags are set -diff -uNr boost_1_62_0/boost/math/tools/tuple.hpp boost_1_62_0/boost/math/tools/tuple.hpp ---- boost_1_62_0/boost/math/tools/tuple.hpp 2015-05-05 08:32:10.000000000 -0400 -+++ boost_1_62_0/boost/math/tools/tuple.hpp 2016-01-08 13:29:54.575224775 -0500 -@@ -27,7 +27,7 @@ - - }} - --#elif (defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)) || defined(__IBMCPP__) -+#elif (defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)) || defined(__IBMCPP__) && !defined(__ibmxl__) - - #include - #include -diff -uNr boost_1_62_0/boost/preprocessor/config/config.hpp boost_1_62_0/boost/preprocessor/config/config.hpp ---- boost_1_62_0/boost/preprocessor/config/config.hpp 2015-07-17 07:45:08.000000000 -0400 -+++ boost_1_62_0/boost/preprocessor/config/config.hpp 2016-01-10 01:51:46.139445697 -0500 -@@ -43,7 +43,7 @@ - # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_DMC()) - # elif defined(__BORLANDC__) && __BORLANDC__ >= 0x581 - # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) --# elif defined(__BORLANDC__) || defined(__IBMC__) || defined(__IBMCPP__) || defined(__SUNPRO_CC) -+# elif defined(__BORLANDC__) || defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__SUNPRO_CC) - # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_BCC()) - # elif defined(_MSC_VER) && !defined(__clang__) - # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC()) -@@ -73,7 +73,7 @@ - # define BOOST_PP_VARIADICS_MSVC 0 - # if !defined BOOST_PP_VARIADICS - # /* variadic support explicitly disabled for all untested compilers */ --# if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI -+# if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || (defined __IBMCPP__ && !defined __ibmxl__ ) || defined __PGI - # define BOOST_PP_VARIADICS 0 - # /* VC++ (C/C++) */ - # elif defined _MSC_VER && _MSC_VER >= 1400 && (!defined __EDG__ || defined(__INTELLISENSE__)) && !defined __clang__ -@@ -92,7 +92,7 @@ - # elif !BOOST_PP_VARIADICS + 1 < 2 - # undef BOOST_PP_VARIADICS - # define BOOST_PP_VARIADICS 1 --# if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI)) -+# if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || (defined __IBMCPP__ && !defined __ibmxl__ ) || defined __PGI)) - # undef BOOST_PP_VARIADICS_MSVC - # define BOOST_PP_VARIADICS_MSVC 1 - # endif -diff -uNr boost_1_62_0/boost/preprocessor/seq/elem.hpp boost_1_62_0/boost/preprocessor/seq/elem.hpp ---- boost_1_62_0/boost/preprocessor/seq/elem.hpp 2015-07-17 07:45:08.000000000 -0400 -+++ boost_1_62_0/boost/preprocessor/seq/elem.hpp 2016-01-10 01:53:11.941880189 -0500 -@@ -35,7 +35,7 @@ - # define BOOST_PP_SEQ_ELEM_III(im) BOOST_PP_SEQ_ELEM_IV(im) - # define BOOST_PP_SEQ_ELEM_IV(x, _) x - # else --# if defined(__IBMC__) || defined(__IBMCPP__) -+# if defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__) - # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) - # else - # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_SEQ_ELEM_ ## i seq) -diff -uNr boost_1_62_0/boost/preprocessor/seq/size.hpp boost_1_62_0/boost/preprocessor/seq/size.hpp ---- boost_1_62_0/boost/preprocessor/seq/size.hpp 2015-07-17 07:45:08.000000000 -0400 -+++ boost_1_62_0/boost/preprocessor/seq/size.hpp 2016-01-10 01:53:59.736320846 -0500 -@@ -22,7 +22,7 @@ - # elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() || BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() - # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_SEQ_SIZE_I(seq) - # define BOOST_PP_SEQ_SIZE_I(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq) --# elif defined(__IBMC__) || defined(__IBMCPP__) -+# elif defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__) - # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) - # else - # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq) -diff -uNr boost_1_62_0/boost/regex/icu.hpp boost_1_62_0/boost/regex/icu.hpp ---- boost_1_62_0/boost/regex/icu.hpp 2015-02-14 08:22:25.000000000 -0500 -+++ boost_1_62_0/boost/regex/icu.hpp 2016-01-08 13:29:54.840564509 -0500 -@@ -243,7 +243,7 @@ - // - namespace re_detail{ - --#if !defined(BOOST_NO_MEMBER_TEMPLATES) && !defined(__IBMCPP__) -+#if !defined(BOOST_NO_MEMBER_TEMPLATES) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) - template - inline u32regex do_make_u32regex(InputIterator i, - InputIterator j, -diff -uNr boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp ---- boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp 2015-02-14 08:22:25.000000000 -0500 -+++ boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp 2016-01-08 13:29:54.936872839 -0500 -@@ -275,7 +275,7 @@ - // we need to start by initialising our syntax map so we know which - // character is used for which purpose: - #ifndef BOOST_NO_STD_MESSAGES --#ifndef __IBMCPP__ -+#if !defined(__IBMCPP__) || defined(__ibmxl__) - typename std::messages::catalog cat = static_cast::catalog>(-1); - #else - typename std::messages::catalog cat = reinterpret_cast::catalog>(-1); -@@ -702,7 +702,7 @@ - void cpp_regex_traits_implementation::init() - { - #ifndef BOOST_NO_STD_MESSAGES --#ifndef __IBMCPP__ -+#if !defined(__IBMCPP__) || defined(__ibmxl__) - typename std::messages::catalog cat = static_cast::catalog>(-1); - #else - typename std::messages::catalog cat = reinterpret_cast::catalog>(-1); -diff -uNr boost_1_62_0/boost/serialization/force_include.hpp boost_1_62_0/boost/serialization/force_include.hpp ---- boost_1_62_0/boost/serialization/force_include.hpp 2015-05-23 14:51:06.000000000 -0400 -+++ boost_1_62_0/boost/serialization/force_include.hpp 2016-01-08 13:29:55.027329880 -0500 -@@ -37,7 +37,7 @@ - # define BOOST_DLLEXPORT __declspec(dllexport) - # elif defined(__GNUC__) && (__GNUC__ >= 3) - # define BOOST_USED __attribute__ ((__used__)) --# elif defined(__IBMCPP__) && (__IBMCPP__ >= 1110) -+# elif defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 1110) - # define BOOST_USED __attribute__ ((__used__)) - # elif defined(__INTEL_COMPILER) && (BOOST_INTEL_CXX_VERSION >= 800) - # define BOOST_USED __attribute__ ((__used__)) -diff -uNr boost_1_62_0/boost/signal.hpp boost_1_62_0/boost/signal.hpp ---- boost_1_62_0/boost/signal.hpp 2015-04-01 13:32:16.000000000 -0400 -+++ boost_1_62_0/boost/signal.hpp 2016-01-08 13:29:55.079443080 -0500 -@@ -13,7 +13,7 @@ - #ifndef BOOST_SIGNALS_NO_DEPRECATION_WARNING - # if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__) - # pragma message ("Warning: Boost.Signals is no longer being maintained and is now deprecated. Please switch to Boost.Signals2. To disable this warning message, define BOOST_SIGNALS_NO_DEPRECATION_WARNING.") --# elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) -+# elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__) - # warning "Boost.Signals is no longer being maintained and is now deprecated. Please switch to Boost.Signals2. To disable this warning message, define BOOST_SIGNALS_NO_DEPRECATION_WARNING." - # endif - #endif -diff -uNr boost_1_62_0/boost/spirit.hpp boost_1_62_0/boost/spirit.hpp ---- boost_1_62_0/boost/spirit.hpp 2015-07-14 18:38:56.000000000 -0400 -+++ boost_1_62_0/boost/spirit.hpp 2016-01-08 13:29:55.145408036 -0500 -@@ -14,7 +14,7 @@ - #if BOOST_VERSION >= 103800 - #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__) - # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic.hpp") --#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) -+#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__) - # warning "This header is deprecated. Please use: boost/spirit/include/classic.hpp" - #endif - #endif -diff -uNr boost_1_62_0/boost/thread/detail/platform.hpp boost_1_62_0/boost/thread/detail/platform.hpp ---- boost_1_62_0/boost/thread/detail/platform.hpp 2015-04-18 05:56:34.000000000 -0400 -+++ boost_1_62_0/boost/thread/detail/platform.hpp 2016-01-08 13:29:55.225161873 -0500 -@@ -37,7 +37,7 @@ - #elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__) - # define BOOST_THREAD_MACOS - //# define BOOST_THREAD_WAIT_BUG boost::posix_time::microseconds(1000) --#elif defined(__IBMCPP__) || defined(_AIX) -+#elif defined(__IBMCPP__) && !defined(__ibmxl__) || defined(_AIX) - # define BOOST_THREAD_AIX - #elif defined(__amigaos__) - # define BOOST_THREAD_AMIGAOS -diff -uNr boost_1_62_0/boost/tr1/detail/config.hpp boost_1_62_0/boost/tr1/detail/config.hpp ---- boost_1_62_0/boost/tr1/detail/config.hpp 2014-02-20 08:26:34.000000000 -0500 -+++ boost_1_62_0/boost/tr1/detail/config.hpp 2016-01-08 13:29:55.295115823 -0500 -@@ -10,7 +10,7 @@ - - #if (defined(__GNUC__) && !(defined(linux) || defined(__linux) || defined(__linux__))) \ - || (!defined(__FreeBSD__) && defined(__GNUC__)) \ -- || (!defined(_AIX) && defined(__IBMCPP__) && (__IBMCPP__ >= 800)) -+ || (!defined(_AIX) && defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 800)) - // Disable use of #include_next on Linux as typically we are installed in a - // directory that is searched *after* the std lib include path. - #if !defined(BOOST_HAS_INCLUDE_NEXT) -diff -uNr boost_1_62_0/boost/type_traits/extent.hpp boost_1_62_0/boost/type_traits/extent.hpp ---- boost_1_62_0/boost/type_traits/extent.hpp 2015-05-21 13:51:23.000000000 -0400 -+++ boost_1_62_0/boost/type_traits/extent.hpp 2016-01-08 13:29:55.455420729 -0500 -@@ -80,7 +80,7 @@ - BOOST_STATIC_CONSTANT(std::size_t, value = R); - }; - --#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) && !defined(__MWERKS__) -+#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) && !defined(__MWERKS__) - template - struct extent_imp - { -diff -uNr boost_1_62_0/boost/type_traits/is_array.hpp boost_1_62_0/boost/type_traits/is_array.hpp ---- boost_1_62_0/boost/type_traits/is_array.hpp 2016-07-11 13:30:44.296134002 -0400 -+++ boost_1_62_0/boost/type_traits/is_array.hpp 2016-07-11 13:30:28.084752131 -0400 -@@ -28,7 +28,7 @@ - template struct is_array : public true_type{}; - template struct is_array : public true_type{}; - template struct is_array : public true_type{}; --#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) -+#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) - template struct is_array : public true_type{}; - template struct is_array : public true_type{}; - template struct is_array : public true_type{}; -diff -uNr boost_1_62_0/boost/type_traits/is_convertible.hpp boost_1_62_0/boost/type_traits/is_convertible.hpp ---- boost_1_62_0/boost/type_traits/is_convertible.hpp 2015-05-21 13:51:23.000000000 -0400 -+++ boost_1_62_0/boost/type_traits/is_convertible.hpp 2016-01-08 13:29:55.605870032 -0500 -@@ -152,7 +152,7 @@ - }; - - #elif (defined(__EDG_VERSION__) && (__EDG_VERSION__ >= 245) && !defined(__ICL)) \ -- || defined(__IBMCPP__) || defined(__HP_aCC) -+ || defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__HP_aCC) - // - // This is *almost* an ideal world implementation as it doesn't rely - // on undefined behaviour by passing UDT's through (...). -diff -uNr boost_1_62_0/boost/type_traits/rank.hpp boost_1_62_0/boost/type_traits/rank.hpp ---- boost_1_62_0/boost/type_traits/rank.hpp 2015-05-21 13:51:23.000000000 -0400 -+++ boost_1_62_0/boost/type_traits/rank.hpp 2016-01-08 13:29:55.675140771 -0500 -@@ -49,7 +49,7 @@ - BOOST_STATIC_CONSTANT(std::size_t, value = (::boost::detail::rank_imp::value)); - }; - --#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) -+#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) - template - struct rank_imp - { -diff -uNr boost_1_62_0/boost/type_traits/remove_all_extents.hpp boost_1_62_0/boost/type_traits/remove_all_extents.hpp ---- boost_1_62_0/boost/type_traits/remove_all_extents.hpp 2015-05-21 13:51:23.000000000 -0400 -+++ boost_1_62_0/boost/type_traits/remove_all_extents.hpp 2016-01-08 13:29:55.746149995 -0500 -@@ -22,7 +22,7 @@ - template struct remove_all_extents : public remove_all_extents{}; - template struct remove_all_extents : public remove_all_extents{}; - template struct remove_all_extents : public remove_all_extents{}; --#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) -+#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) - template struct remove_all_extents : public remove_all_extents{}; - template struct remove_all_extents : public remove_all_extents{}; - template struct remove_all_extents : public remove_all_extents{}; -diff -uNr boost_1_62_0/boost/type_traits/remove_extent.hpp boost_1_62_0/boost/type_traits/remove_extent.hpp ---- boost_1_62_0/boost/type_traits/remove_extent.hpp 2015-05-21 13:51:23.000000000 -0400 -+++ boost_1_62_0/boost/type_traits/remove_extent.hpp 2016-01-10 02:18:53.967902075 -0500 -@@ -22,7 +22,7 @@ - template struct remove_extent { typedef T const type; }; - template struct remove_extent { typedef T volatile type; }; - template struct remove_extent { typedef T const volatile type; }; --#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) -+#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) - template struct remove_extent { typedef T type; }; - template struct remove_extent { typedef T const type; }; - template struct remove_extent { typedef T volatile type; }; -diff -uNr boost_1_62_0/bootstrap.sh boost_1_62_0/bootstrap.sh ---- boost_1_62_0/bootstrap.sh 2015-08-11 10:00:14.000000000 -0400 -+++ boost_1_62_0/bootstrap.sh 2016-01-08 12:17:34.671934715 -0500 -@@ -195,7 +195,7 @@ - if test "x$TOOLSET" = x; then - guessed_toolset=`$my_dir/tools/build/src/engine/build.sh --guess-toolset` - case $guessed_toolset in -- acc | darwin | gcc | como | mipspro | pathscale | pgi | qcc | vacpp ) -+ acc | darwin | gcc | como | mipspro | pathscale | pgi | qcc | vacpp | xlcpp ) - TOOLSET=$guessed_toolset - ;; - -diff -uNr boost_1_62_0/libs/atomic/test/Jamfile.v2 boost_1_62_0/libs/atomic/test/Jamfile.v2 ---- boost_1_62_0/libs/atomic/test/Jamfile.v2 2015-01-25 10:50:58.000000000 -0500 -+++ boost_1_62_0/libs/atomic/test/Jamfile.v2 2016-01-08 12:23:33.758048088 -0500 -@@ -17,6 +17,7 @@ - windows:BOOST_USE_WINDOWS_H - windows:_WIN32_WINNT=0x0500 - gcc,windows:"-lkernel32" -+ xlcpp:"-latomic" - ; - - test-suite atomic -diff -uNr boost_1_62_0/libs/context/build/Jamfile.v2 boost_1_62_0/libs/context/build/Jamfile.v2 ---- boost_1_62_0/libs/context/build/Jamfile.v2 2015-06-29 11:08:22.000000000 -0400 -+++ boost_1_62_0/libs/context/build/Jamfile.v2 2016-01-08 12:24:40.614024908 -0500 -@@ -99,6 +99,11 @@ - cpp -x assembler-with-cpp "$(>)" | as --64 -o "$(<)" - } - -+actions gaspower64 -+{ -+ cpp -x assembler-with-cpp "$(>)" | as -a64 -o "$(<)" -+} -+ - actions gasx32 - { - cpp -x assembler-with-cpp "$(>)" | as --x32 -o "$(<)" -@@ -442,9 +447,9 @@ - # POWERPC_64 - # POWERPC_64/SYSV/ELF - alias asm_context_sources -- : [ make asm/make_ppc64_sysv_elf_gas.o : asm/make_ppc64_sysv_elf_gas.S : @gas64 ] -- [ make asm/jump_ppc64_sysv_elf_gas.o : asm/jump_ppc64_sysv_elf_gas.S : @gas64 ] -- [ make asm/ontop_ppc64_sysv_elf_gas.o : asm/ontop_ppc64_sysv_elf_gas.S : @gas64 ] -+ : [ make asm/make_ppc64_sysv_elf_gas.o : asm/make_ppc64_sysv_elf_gas.S : @gaspower64 ] -+ [ make asm/jump_ppc64_sysv_elf_gas.o : asm/jump_ppc64_sysv_elf_gas.S : @gaspower64 ] -+ [ make asm/ontop_ppc64_sysv_elf_gas.o : asm/ontop_ppc64_sysv_elf_gas.S : @gaspower64 ] - : sysv - 64 - power -diff -uNr boost_1_62_0/libs/foreach/test/Jamfile.v2 boost_1_62_0/libs/foreach/test/Jamfile.v2 ---- boost_1_62_0/libs/foreach/test/Jamfile.v2 2015-03-04 15:36:38.000000000 -0500 -+++ boost_1_62_0/libs/foreach/test/Jamfile.v2 2016-01-08 12:25:51.293898849 -0500 -@@ -8,9 +8,9 @@ - project : requirements msvc:on ; - - test-suite "foreach" -- : [ run stl_byval.cpp ] -+ : [ run stl_byval.cpp : : : xlcpp:-qalias=noansi ] - [ run stl_byref.cpp ] -- [ run stl_byval_r.cpp ] -+ [ run stl_byval_r.cpp : : : xlcpp:-qalias=noansi ] - [ run stl_byref_r.cpp ] - [ run array_byval.cpp ] - [ run array_byref.cpp ] -@@ -25,12 +25,12 @@ - [ run pair_byval_r.cpp ] - [ run pair_byref_r.cpp ] - [ run user_defined.cpp ] -- [ run call_once.cpp ] -+ [ run call_once.cpp : : : xlcpp:-qalias=noansi ] - [ run rvalue_const.cpp ] - [ run rvalue_nonconst.cpp ] - [ run rvalue_const_r.cpp ] - [ run rvalue_nonconst_r.cpp ] -- [ run dependent_type.cpp ] -+ [ run dependent_type.cpp : : : xlcpp:-qalias=noansi ] - [ run misc.cpp ] - [ compile noncopyable.cpp ] - ; -diff -uNr boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 ---- boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 2015-08-03 08:51:49.000000000 -0400 -+++ boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 2016-01-08 12:29:08.081503553 -0500 -@@ -16,7 +16,7 @@ - - test-suite boost-geometry-algorithms-intersection - : -- [ run intersection.cpp : : : BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE -+ [ run intersection.cpp : : : BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE xlcpp:-qfloat=nomaf - : algorithms_intersection ] - [ run intersection_areal_areal_linear.cpp : : : : algorithms_intersection_areal_areal_linear ] - [ run intersection_linear_linear.cpp : : : : algorithms_intersection_linear_linear ] -diff -uNr boost_1_62_0/libs/lockfree/test/Jamfile.v2 boost_1_62_0/libs/lockfree/test/Jamfile.v2 ---- boost_1_62_0/libs/lockfree/test/Jamfile.v2 2015-06-11 12:00:57.000000000 -0400 -+++ boost_1_62_0/libs/lockfree/test/Jamfile.v2 2016-01-08 12:38:25.909320596 -0500 -@@ -29,6 +29,7 @@ - : # requirements - acc:-lrt - acc-pa_risc:-lrt -+ xlcpp:-latomic - windows,gcc:"-lole32 -loleaut32 -lpsapi -ladvapi32" - hpux,gcc:"-Wl,+as,mpas" - ../../thread/build//boost_thread/ -diff -uNr boost_1_62_0/libs/spirit/test/Jamfile boost_1_62_0/libs/spirit/test/Jamfile ---- boost_1_62_0/libs/spirit/test/Jamfile 2015-07-14 18:38:56.000000000 -0400 -+++ boost_1_62_0/libs/spirit/test/Jamfile 2016-01-08 12:52:18.540491314 -0500 -@@ -218,9 +218,9 @@ - [ run karma/sequence1.cpp : : : : karma_sequence1 ] - [ run karma/sequence2.cpp : : : : karma_sequence2 ] - [ run karma/stream.cpp : : : : karma_stream ] -- [ run karma/symbols1.cpp : : : : karma_symbols1 ] -- [ run karma/symbols2.cpp : : : : karma_symbols2 ] -- [ run karma/symbols3.cpp : : : : karma_symbols3 ] -+ [ run karma/symbols1.cpp : : : xlcpp:-qalias=noansi : karma_symbols1 ] -+ [ run karma/symbols2.cpp : : : xlcpp:-qalias=noansi : karma_symbols2 ] -+ [ run karma/symbols3.cpp : : : xlcpp:-qalias=noansi : karma_symbols3 ] - [ run karma/tricky_alignment.cpp : : : : karma_tricky_alignment ] - [ run karma/uint_radix.cpp : : : : karma_uint_radix ] - [ run karma/utree1.cpp : : : : karma_utree1 ] -diff -uNr boost_1_62_0/libs/test/test/Jamfile.v2 boost_1_62_0/libs/test/test/Jamfile.v2 ---- boost_1_62_0/libs/test/test/Jamfile.v2 2015-07-21 17:41:49.000000000 -0400 -+++ boost_1_62_0/libs/test/test/Jamfile.v2 2016-01-08 12:53:36.068217432 -0500 -@@ -47,6 +47,7 @@ - gcc:-Wno-variadic-macros - clang:-Wno-c99-extensions - clang:-Wno-variadic-macros -+ xlcpp:-std=c++11 - # gcc:--coverage - all - $(extra-options) -diff -uNr boost_1_62_0/libs/type_index/test/Jamfile.v2 boost_1_62_0/libs/type_index/test/Jamfile.v2 ---- boost_1_62_0/libs/type_index/test/Jamfile.v2 2015-07-30 16:00:41.000000000 -0400 -+++ boost_1_62_0/libs/type_index/test/Jamfile.v2 2016-01-08 12:54:28.968296112 -0500 -@@ -13,9 +13,9 @@ - - # Making own `nortti` that is link compatible. - # We explicitly define BOOST_NO_RTTI because it sometimes can not be detected by build system. --nortti = gcc:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" clang:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" intel:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" darwin:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" msvc:/GR- ; -+nortti = gcc:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" clang:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" intel:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" darwin:"-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" msvc:/GR- xlcpp:"-qnortti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" ; - --norttidefines = gcc:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" clang:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" intel:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" darwin:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" msvc:-DBOOST_NO_RTTI ; -+norttidefines = gcc:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" clang:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" intel:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" darwin:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" msvc:-DBOOST_NO_RTTI xlcpp:"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" ; - - - # Making libraries that CANNOT work between rtti-on/rtti-off modules -diff -uNr boost_1_62_0/libs/utility/test/Jamfile.v2 boost_1_62_0/libs/utility/test/Jamfile.v2 ---- boost_1_62_0/libs/utility/test/Jamfile.v2 2015-02-27 01:26:11.000000000 -0500 -+++ boost_1_62_0/libs/utility/test/Jamfile.v2 2016-01-08 12:54:59.380260948 -0500 -@@ -33,7 +33,7 @@ - [ run string_view_test1.cpp unit_test_framework ] - [ run string_view_test2.cpp unit_test_framework ] - [ run string_view_test_io.cpp unit_test_framework ] -- [ run ../value_init_test.cpp ] -+ [ run ../value_init_test.cpp : : : xlcpp:-qalias=noansi ] - [ run ../value_init_workaround_test.cpp ] - [ run ../initialized_test.cpp ] - [ compile-fail ../value_init_test_fail1.cpp ] -diff -uNr boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c ---- boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c 2015-08-11 09:53:51.000000000 -0400 -+++ boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c 2016-01-10 01:57:04.489001841 -0500 -@@ -503,7 +503,7 @@ - - # include - --# if !defined(__IBMC__) && !defined(__WATCOMC__) /* e.g. EMX */ -+# if !(defined(__IBMC__) && !defined(__ibmxl__)) && !defined(__WATCOMC__) /* e.g. EMX */ - - struct exe_hdr { - unsigned short magic_number; -diff -uNr boost_1_62_0/tools/build/src/tools/xlcpp.jam boost_1_62_0/tools/build/src/tools/xlcpp.jam ---- boost_1_62_0/tools/build/src/tools/xlcpp.jam 2015-08-11 09:53:51.000000000 -0400 -+++ boost_1_62_0/tools/build/src/tools/xlcpp.jam 2016-01-20 15:09:00.897879191 -0500 -@@ -41,7 +41,7 @@ - - # Declare flags - flags xlcpp CFLAGS off : -qNOOPTimize ; --flags xlcpp CFLAGS speed : ; -+flags xlcpp CFLAGS speed : ; - flags xlcpp CFLAGS space : -O2 -qcompact ; - - # Discretionary inlining (not recommended) -@@ -51,8 +51,8 @@ - flags xlcpp CFLAGS full : ; - - # Exception handling --flags xlcpp C++FLAGS off : -qnoeh ; --flags xlcpp C++FLAGS on : -qeh ; -+flags xlcpp C++FLAGS off : -fno-exceptions ; -+flags xlcpp C++FLAGS on : -fexceptions ; - - # Run-time Type Identification - flags xlcpp C++FLAGS off : -qnortti ; -@@ -108,6 +108,8 @@ - flags xlcpp HDRS ; - flags xlcpp STDHDRS ; - flags xlcpp.link OPTIONS ; -+flags xlcpp.link RPATH_LINK ; -+flags xlcpp.link RPATH ; - flags xlcpp ARFLAGS ; - - flags xlcpp LIBPATH ; -@@ -116,10 +118,10 @@ - flags xlcpp FINDLIBS ; - - # Select the compiler name according to the threading model. --flags xlcpp VA_C_COMPILER single : xlc ; --flags xlcpp VA_C_COMPILER multi : xlc ; --flags xlcpp VA_CXX_COMPILER single : xlC ; --flags xlcpp VA_CXX_COMPILER multi : xlC ; -+flags xlcpp VA_C_COMPILER single : xlc ; -+flags xlcpp VA_C_COMPILER multi : xlc_r ; -+flags xlcpp VA_CXX_COMPILER single : xlC ; -+flags xlcpp VA_CXX_COMPILER multi : xlC_r ; - - SPACE = " " ; - -@@ -127,12 +129,12 @@ - - actions xlcpp.link bind NEEDLIBS - { -- $(VA_CXX_COMPILER) $(EXE-LINKFLAGS) $(LINKFLAGS) -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS) -+ $(VA_CXX_COMPILER) $(EXE-LINKFLAGS) $(LINKFLAGS) -Wl,-R$(SPACE)-Wl,"$(RPATH)" -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS) - } - - actions xlcpp.link.dll bind NEEDLIBS - { -- xlC -G $(LINKFLAGS) -o "$(<[1])" $(HAVE_SONAME)-Wl,-soname$(SPACE)-Wl,$(<[-1]:D=) -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS) -+ $(VA_CXX_COMPILER) -G $(LINKFLAGS) -o "$(<[1])" $(HAVE_SONAME)-Wl,-soname$(SPACE)-Wl,$(<[-1]:D=) -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS) - } - - actions xlcpp.compile.c diff --git a/spack-repo/container-builder/packages/container-builder/package.py b/spack-repo/container-builder/packages/container-builder/package.py deleted file mode 100644 index 942a7ba..0000000 --- a/spack-repo/container-builder/packages/container-builder/package.py +++ /dev/null @@ -1,15 +0,0 @@ -from spack import * -import os - -class ContainerBuilder(CMakePackage): - """container-builder Client""" - - homepage = "https://code.ornl.gov/olcf/container-builder.git" - url = "https://code.ornl.gov/olcf/container-builder/archive/master.zip" - - version('master', git="https://code.ornl.gov/olcf/container-builder.git") - ci_tag = os.environ.get('CI_COMMIT_TAG') - if ci_tag: - version(ci_tag, git="https://code.ornl.gov/olcf/container-builder.git", tag=ci_tag) - - depends_on('boost@1.66.0') diff --git a/spack-repo/container-builder/repo.yaml b/spack-repo/container-builder/repo.yaml deleted file mode 100644 index 1a593d5..0000000 --- a/spack-repo/container-builder/repo.yaml +++ /dev/null @@ -1,2 +0,0 @@ -repo: - namespace: 'containerbuilder'