From 31eb6622f3c29f3f8fe8f388f075438de53ab235 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Wed, 12 Mar 2014 10:39:36 -0400 Subject: [PATCH 01/24] Add in support for remus. --- pkgs/remus.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 pkgs/remus.yaml diff --git a/pkgs/remus.yaml b/pkgs/remus.yaml new file mode 100644 index 000000000..a2a05ac1c --- /dev/null +++ b/pkgs/remus.yaml @@ -0,0 +1,20 @@ +extends: [cmake_package] +dependencies: + build: [boost, zmq] + +sources: +- url: https://github.com/robertmaynard/Remus.git + key: git:42ab4e84e7769b3c3531ee378c6d95f342110d46 + +build_stages: +- name: configure + mode: override + extra: ['-DBUILD_SHARED_LIBS:BOOL=ON', + '-DRemus_ENABLE_EXAMPLES:BOOL=OFF', + '-DRemus_ENABLE_TESTING:BOOL=OFF', + '-DRemus_NO_SYSTEM_BOOST:BOOL=ON', + '-DZeroMQ_ROOT_DIR:PATH=${ZMQ_DIR}', + '-DZeroMQ_INCLUDE_DIR:PATH=${ZMQ_DIR}/include', + '-DZeroMQ_LIBRARY_DIR:PATH=${ZMQ_DIR}/lib', + '-DBOOST_ROOT:PATH=${BOOST_DIR}', + '-DBOOST_LIBRARYDIR:PATH=${BOOST_DIR}/lib'] From d7b65d125dc41ee2cdcb4b45808dfe1a58887f34 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Fri, 14 Mar 2014 12:37:41 -0400 Subject: [PATCH 02/24] Add in support for shiboken. --- pkgs/shiboken.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 pkgs/shiboken.yaml diff --git a/pkgs/shiboken.yaml b/pkgs/shiboken.yaml new file mode 100644 index 000000000..3c12460a9 --- /dev/null +++ b/pkgs/shiboken.yaml @@ -0,0 +1,20 @@ +extends: [cmake_package] +dependencies: + build: [qt, python] + +sources: +- url: https://github.com/OpenGeoscience/shiboken.git + key: git:7f3bf07ee6c368a42edd8dcc1b3b0730b4809eaf + + +build_stages: +- name: configure + mode: override + extra: [ + '-DSET_RPATH:BOOL=ON', + '-DBUILD_SHARED_LIBS:BOOL=ON', + '-DDISABLE_DOCSTRINGS:BOOL=ON', + '-DCMAKE_BUILD_TYPE:STRING=Release'] + + + From 9a4afdfad8ea4c53107e3f58d3d965f4ac4e187d Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Fri, 14 Mar 2014 12:37:57 -0400 Subject: [PATCH 03/24] Add in support for smtk. --- pkgs/smtk.yaml | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 pkgs/smtk.yaml diff --git a/pkgs/smtk.yaml b/pkgs/smtk.yaml new file mode 100644 index 000000000..238389a05 --- /dev/null +++ b/pkgs/smtk.yaml @@ -0,0 +1,36 @@ +extends: [cmake_package] +dependencies: + build: [shiboken, boost, qt] + +sources: +- url: git@www.kitware.com:SMTK.git + key: git:9322a480c1e93de9f78d965183970ab843526d9d + + +build_stages: +- name: configure + mode: override + extra: ['-DBUILD_SHARED_LIBS:BOOL=ON', + '-DCMAKE_BUILD_TYPE:STRING=Release', + '-DSMTK_BUILD_QT:BOOL=ON', + '-DSMTK_BUILD_PYTHON_WRAPPINGS:BOOL=ON', + '-DShiboken_DIR=${SHIBOKEN_DIR}/lib/cmake/Shiboken-1.2.1/', + '-DBOOST_ROOT=${BOOST_DIR}'] + +#Fixing missing include files and install files. Todo This needs alot of +#work to convert over to hashdist, mainly since I need to convert +#install_smtk_python_plugin.cmake +# - name: install_fix +# handler: bash +# after: install +# bash: | +# ${CMAKE} \ +# CMAKE_BUILD_TYPE:STRING=Release \ +# -Dpv_version:STRING=4.1 \ +# -Dpv_python_executable:PATH=${PYTHON_DIR/bin/python} \ +# -DBUILD_SHARED_LIBS:BOOL=ON \ +# -DSMTK_BIN_DIR:PATH=${ARTIFACT} \ +# -DTMP_DIR:PATH= \ +# -P ${CMAKE_CURRENT_LIST_DIR}/install_smtk_python_plugin.cmake + + From 5ca89bcafeae1db933741c93d138631194704316 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Fri, 14 Mar 2014 12:38:08 -0400 Subject: [PATCH 04/24] Add in support for molequeue. --- pkgs/molequeue/header-fix.patch | 9 +++++++++ pkgs/molequeue/molequeue.yaml | 23 +++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/molequeue/header-fix.patch create mode 100644 pkgs/molequeue/molequeue.yaml diff --git a/pkgs/molequeue/header-fix.patch b/pkgs/molequeue/header-fix.patch new file mode 100644 index 000000000..a6bf86673 --- /dev/null +++ b/pkgs/molequeue/header-fix.patch @@ -0,0 +1,9 @@ +--- a/molequeue/transport/messageidmanager_p.cpp ++++ b/molequeue/transport/messageidmanager_p.cpp +@@ -17,6 +17,7 @@ + #include "messageidmanager_p.h" + + #include "message.h" ++#include + + namespace MoleQueue { diff --git a/pkgs/molequeue/molequeue.yaml b/pkgs/molequeue/molequeue.yaml new file mode 100644 index 000000000..d22ca63bc --- /dev/null +++ b/pkgs/molequeue/molequeue.yaml @@ -0,0 +1,23 @@ +extends: [cmake_package] +dependencies: + build: [qt] + +sources: +- url: git://source.openchemistry.org/molequeue.git + key: git:e545ee25b4b79d5bae9e1cd0515fccb39f44d19d + + +build_stages: +- name: patch + before: configure + files: [header-fix.patch] + handler: bash + bash: | + patch -up1 < _hashdist/header-fix.patch + +- name: configure + mode: override + extra: ['-DBUILD_SHARED_LIBS:BOOL=ON', + '-DCMAKE_BUILD_TYPE:STRING=Release', + '-DENABLE_TESTING:BOOL=OFF' + ] From fde3cb6da916e5bcda558ac9dd73cc0f86ed16d2 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Thu, 27 Mar 2014 15:20:34 -0400 Subject: [PATCH 05/24] Add in a example for building paraview on linux. --- examples/paraview.linux.yaml | 60 ++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 examples/paraview.linux.yaml diff --git a/examples/paraview.linux.yaml b/examples/paraview.linux.yaml new file mode 100644 index 000000000..1ce100a9c --- /dev/null +++ b/examples/paraview.linux.yaml @@ -0,0 +1,60 @@ +# This profile file controls your <#> (HashDist) build environment. + +# In the future, we'll provide better incorporation of +# automatic environment detection. For now, have a look +# at the YAML files in the top-level directory and choose +# the most *specific* file that matches your environment. + +extends: + - file: linux.yaml + +parameters: + HOST_MPICC: /usr/bin/mpicc + HOST_MPICXX: /usr/bin/mpic++ + HOST_MPIF77: /usr/bin/mpif77 + HOST_MPIF90: /usr/bin/mpif90 + HOST_MPIEXEC: /usr/bin/mpiexec + HOST_CMAKE: /usr/local/bin/cmake + PATH: | + /usr/local/bin:/bin:/usr/sbin:/sbin:/usr/bin: + PROLOGUE: | + export CXX=/usr/bin/g++-4.8; export CC=/usr/bin/gcc-4.8; export C_INCLUDE_PATH=/usr/include/mpi/; export CPLUS_INCLUDE_PATH=/usr/include/mpi/; + +# The packages list specifies all the packages that you +# require installed. <#> will ensure that all packages +# and their dependencies are installed when you build this +# profile. + +packages: + blas: + use: host-blas + cmake: + use: host-cmake + mpi: + use: host-mpi + curl: + szip: + bzip2: + zlib: + libxml2: + png: + boost: + toolset: gcc + address_model: 64 + + #file format packages + hdf5: + netcdf4: + netcdf4cpp: + + #now the rest + freetype: + matplotlib: + numpy: + python: + host: true + link: shared + qt: + arch: x86_64 + launcher: + paraview: From a991d8155f5797d38fdf86c1ca165291a490d4ad Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Thu, 27 Mar 2014 15:21:04 -0400 Subject: [PATCH 06/24] Add in a example for building paraview on darwin. --- examples/paraview.darwin.yaml | 60 +++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 examples/paraview.darwin.yaml diff --git a/examples/paraview.darwin.yaml b/examples/paraview.darwin.yaml new file mode 100644 index 000000000..9cfb44402 --- /dev/null +++ b/examples/paraview.darwin.yaml @@ -0,0 +1,60 @@ +# This profile file controls your <#> (HashDist) build environment. + +# In the future, we'll provide better incorporation of +# automatic environment detection. For now, have a look +# at the YAML files in the top-level directory and choose +# the most *specific* file that matches your environment. + +extends: + - file: osx.yaml + +parameters: + HOST_MPICC: /usr/local/bin/mpicc + HOST_MPICXX: /usr/local/bin/mpic++ + HOST_CMAKE: /usr/local/bin/cmake + PROLOGUE: | + export MACOSX_DEPLOYMENT_TARGET=$(sw_vers -productVersion | sed "s/\(10.[0-9]\).*/\1/"); export CXX=/usr/bin/clang++; export CC=/usr/bin/clang; + +# The packages list specifies all the packages that you +# require installed. <#> will ensure that all packages +# and their dependencies are installed when you build this +# profile. + +packages: + #blas and lapack are required by numpy + blas: + use: host-osx-framework-accelerate + lapack: + use: host-osx-framework-accelerate + cmake: + use: host-cmake + mpi: + use: host-mpi + + curl: + szip: + bzip2: + zlib: + libxml2: + png: + boost: + toolset: clang + address_model: 64 + + #file format packages + hdf5: + netcdf4: + netcdf4cpp: + + #now the rest + freetype: + matplotlib: + numpy: + python: + host: true + link: shared + qt: + toolset: unsupported/macx-clang + arch: x86_64 + launcher: + paraview: From e97749a049e0e829521083f3923016eb2e3cde11 Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Wed, 23 Apr 2014 08:46:40 -0400 Subject: [PATCH 07/24] add in cmb package. --- pkgs/cmb.yaml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 pkgs/cmb.yaml diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml new file mode 100644 index 000000000..6c6e3ae1b --- /dev/null +++ b/pkgs/cmb.yaml @@ -0,0 +1,24 @@ +extends: [cmake_package] +dependencies: + build: [boost, png, qt, zlib, gdal, hdf5, + mpi, netcdf4, netcdf4cpp, freetype, + python, numpy, matplotlib, libxml2, + paraview, remus, vxl, kml, molequeue, smtk, zmq] + +sources: +- url: git://public.kitware.com/CMB.git + key: git:ee35a7afc8e0ce0a6aa7c09d239e88cbee822f8a + +build_stages: +- name: configure + mode: override + extra: [ + '-DCMAKE_C_COMPILER:FILEPATH={{HOST_MPICC}}', + '-DCMAKE_CXX_COMPILER:FILEPATH={{HOST_MPICXX}}', + '-DBUILD_SHARED_LIBS:BOOL=ON', + '-DBUILD_TESTING:BOOL=OFF', + '-DKML_DIR:PATH=${KML_DIR}', + '-DGDAL_DIR:PATH=${GDAL_DIR}', + '-DParaView_DIR:PATH=${PARAVIEW_DIR}', + '-DMoleQueue_DIR:PATH=${MOLEQUEUE_DIR}' + ] From 59da5bd869420892bcdb7241e769a1beb338afdd Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Mon, 31 Mar 2014 10:49:06 -0400 Subject: [PATCH 08/24] Add in a example for building cmb on darwin. --- examples/cmb.darwin.yaml | 68 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 examples/cmb.darwin.yaml diff --git a/examples/cmb.darwin.yaml b/examples/cmb.darwin.yaml new file mode 100644 index 000000000..4e638639a --- /dev/null +++ b/examples/cmb.darwin.yaml @@ -0,0 +1,68 @@ +# This profile file controls your <#> (HashDist) build environment. + +# In the future, we'll provide better incorporation of +# automatic environment detection. For now, have a look +# at the YAML files in the top-level directory and choose +# the most *specific* file that matches your environment. + +extends: + - file: osx.yaml + +parameters: + HOST_MPICC: /usr/local/bin/mpicc + HOST_MPICXX: /usr/local/bin/mpic++ + HOST_CMAKE: /usr/local/bin/cmake + PROLOGUE: | + export MACOSX_DEPLOYMENT_TARGET=$(sw_vers -productVersion | sed "s/\(10.[0-9]\).*/\1/"); export CXX=/usr/bin/clang++; export CC=/usr/bin/clang; + +# The packages list specifies all the packages that you +# require installed. <#> will ensure that all packages +# and their dependencies are installed when you build this +# profile. + +packages: + #blas and lapack are required by numpy + blas: + use: host-osx-framework-accelerate + lapack: + use: host-osx-framework-accelerate + cmake: + use: host-cmake + mpi: + use: host-mpi + + libxml2: + png: + szip: + zlib: + boost: + toolset: clang + address_model: 64 + + #file format packages + hdf5: + netcdf4: + netcdf4cpp: + + #now the rest + freetype: + gdal: + kml: + matplotlib: + molequeue: + numpy: + python: + qt: + toolset: unsupported/macx-clang + arch: x86_64 + remus: + shiboken: + smtk: + vxl: + zmq: + launcher: + paraview: + cmb: + + #not worth the time to enable + #ffmpeg: \ No newline at end of file From ec2eb4a39d4090db0eff8b4820c1bed546632f0a Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Mon, 31 Mar 2014 10:50:12 -0400 Subject: [PATCH 09/24] Add in a example for building cmb on linux. --- examples/cmb.linux.yaml | 67 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 examples/cmb.linux.yaml diff --git a/examples/cmb.linux.yaml b/examples/cmb.linux.yaml new file mode 100644 index 000000000..3652c63f7 --- /dev/null +++ b/examples/cmb.linux.yaml @@ -0,0 +1,67 @@ +# This profile file controls your <#> (HashDist) build environment. + +# In the future, we'll provide better incorporation of +# automatic environment detection. For now, have a look +# at the YAML files in the top-level directory and choose +# the most *specific* file that matches your environment. + +extends: + - file: linux.yaml + +parameters: + HOST_MPICC: /usr/bin/mpicc + HOST_MPICXX: /usr/bin/mpic++ + HOST_MPIF77: /usr/bin/mpif77 + HOST_MPIF90: /usr/bin/mpif90 + HOST_MPIEXEC: /usr/bin/mpiexec + HOST_CMAKE: /usr/local/bin/cmake + PATH: | + /usr/local/bin:/bin:/usr/sbin:/sbin:/usr/bin: + PROLOGUE: | + export CXX=/usr/bin/g++-4.8; export CC=/usr/bin/gcc-4.8; export C_INCLUDE_PATH=/usr/include/mpi/; export CPLUS_INCLUDE_PATH=/usr/include/mpi/; + +# The packages list specifies all the packages that you +# require installed. <#> will ensure that all packages +# and their dependencies are installed when you build this +# profile. + +packages: + blas: + use: host-blas + cmake: + use: host-cmake + mpi: + use: host-mpi + curl: + szip: + bzip2: + zlib: + libxml2: + png: + boost: + toolset: gcc + address_model: 64 + + #file format packages + hdf5: + netcdf4: + netcdf4cpp: + + #now the rest + freetype: + matplotlib: + numpy: + python: + host: true + link: shared + qt: + arch: x86_64 + remus: + shiboken: + smtk: + vxl: + zmq: + + launcher: + paraview: + cmb: From bb46eab8f7716bdbfbd9706aecc45e600b1a5ce1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:04:20 -0700 Subject: [PATCH 10/24] Make shiboken not relocatable --- pkgs/shiboken.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/shiboken.yaml b/pkgs/shiboken.yaml index 3c12460a9..7a3f72108 100644 --- a/pkgs/shiboken.yaml +++ b/pkgs/shiboken.yaml @@ -6,6 +6,9 @@ sources: - url: https://github.com/OpenGeoscience/shiboken.git key: git:7f3bf07ee6c368a42edd8dcc1b3b0730b4809eaf +defaults: + # lib/cmake/Shiboken-1.2.1/ShibokenConfig.cmake contains hard-coded path + relocatable: false build_stages: - name: configure From 95479cf5762840338e60aaf6d66dbaea8ab971a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:27:05 -0700 Subject: [PATCH 11/24] Make VXL depend on zlib --- pkgs/vxl.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/vxl.yaml b/pkgs/vxl.yaml index f932ca8d9..4743080cf 100644 --- a/pkgs/vxl.yaml +++ b/pkgs/vxl.yaml @@ -1,6 +1,6 @@ extends: [cmake_package] dependencies: - build: [png] + build: [png, zlib] sources: - url: http://git.code.sf.net/p/vxl/git From a7be81b4fa0cf5cd89b5aaabe54616362decadd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:28:15 -0700 Subject: [PATCH 12/24] Make molequeue not relocatable --- pkgs/molequeue/molequeue.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/molequeue/molequeue.yaml b/pkgs/molequeue/molequeue.yaml index d22ca63bc..6e7de6c99 100644 --- a/pkgs/molequeue/molequeue.yaml +++ b/pkgs/molequeue/molequeue.yaml @@ -6,6 +6,9 @@ sources: - url: git://source.openchemistry.org/molequeue.git key: git:e545ee25b4b79d5bae9e1cd0515fccb39f44d19d +defaults: + # lib/cmake/molequeue/MoleQueueConfig.cmake contains hard-coded path + relocatable: false build_stages: - name: patch From e472c1a07ec3017422fa832a6767315ea3d1b9f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:34:16 -0700 Subject: [PATCH 13/24] Use correct url for SMTK --- pkgs/smtk.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/smtk.yaml b/pkgs/smtk.yaml index 238389a05..8efcd9172 100644 --- a/pkgs/smtk.yaml +++ b/pkgs/smtk.yaml @@ -3,8 +3,8 @@ dependencies: build: [shiboken, boost, qt] sources: -- url: git@www.kitware.com:SMTK.git - key: git:9322a480c1e93de9f78d965183970ab843526d9d +- key: git:9322a480c1e93de9f78d965183970ab843526d9d + url: https://github.com/Kitware/SMTK build_stages: From a2fb2fa6f04f623888929944f31d5aea0b4bc126 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:35:35 -0700 Subject: [PATCH 14/24] SMTK depends on Python --- pkgs/smtk.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/smtk.yaml b/pkgs/smtk.yaml index 8efcd9172..6fd37b071 100644 --- a/pkgs/smtk.yaml +++ b/pkgs/smtk.yaml @@ -1,6 +1,6 @@ extends: [cmake_package] dependencies: - build: [shiboken, boost, qt] + build: [shiboken, boost, qt, python] sources: - key: git:9322a480c1e93de9f78d965183970ab843526d9d From 1016a527a4a95b23fefa9e36f28305b4b9df91af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:36:46 -0700 Subject: [PATCH 15/24] Make SMTK not relocatable --- pkgs/smtk.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/smtk.yaml b/pkgs/smtk.yaml index 6fd37b071..56f5b2420 100644 --- a/pkgs/smtk.yaml +++ b/pkgs/smtk.yaml @@ -6,6 +6,9 @@ sources: - key: git:9322a480c1e93de9f78d965183970ab843526d9d url: https://github.com/Kitware/SMTK +defaults: + # python/smtk.py contains hard-coded path + relocatable: false build_stages: - name: configure From 0af41faa387b77b2881db51ce7a859387296e1b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:58:29 -0700 Subject: [PATCH 16/24] Update CMB to the latest version --- pkgs/cmb.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml index 6c6e3ae1b..80d608cf3 100644 --- a/pkgs/cmb.yaml +++ b/pkgs/cmb.yaml @@ -7,7 +7,7 @@ dependencies: sources: - url: git://public.kitware.com/CMB.git - key: git:ee35a7afc8e0ce0a6aa7c09d239e88cbee822f8a + key: git:b24225a52187a124f5f83bdb7212d363f9254519 build_stages: - name: configure From e2511e6d87ae7e9361b4d0a4a180df2defb8b6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 11:59:30 -0700 Subject: [PATCH 17/24] Put the key first, url second --- pkgs/cmb.yaml | 4 ++-- pkgs/molequeue/molequeue.yaml | 4 ++-- pkgs/remus.yaml | 4 ++-- pkgs/shiboken.yaml | 4 ++-- pkgs/vxl.yaml | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml index 80d608cf3..97fd653a0 100644 --- a/pkgs/cmb.yaml +++ b/pkgs/cmb.yaml @@ -6,8 +6,8 @@ dependencies: paraview, remus, vxl, kml, molequeue, smtk, zmq] sources: -- url: git://public.kitware.com/CMB.git - key: git:b24225a52187a124f5f83bdb7212d363f9254519 +- key: git:b24225a52187a124f5f83bdb7212d363f9254519 + url: git://public.kitware.com/CMB.git build_stages: - name: configure diff --git a/pkgs/molequeue/molequeue.yaml b/pkgs/molequeue/molequeue.yaml index 6e7de6c99..5d95b013b 100644 --- a/pkgs/molequeue/molequeue.yaml +++ b/pkgs/molequeue/molequeue.yaml @@ -3,8 +3,8 @@ dependencies: build: [qt] sources: -- url: git://source.openchemistry.org/molequeue.git - key: git:e545ee25b4b79d5bae9e1cd0515fccb39f44d19d +- key: git:e545ee25b4b79d5bae9e1cd0515fccb39f44d19d + url: git://source.openchemistry.org/molequeue.git defaults: # lib/cmake/molequeue/MoleQueueConfig.cmake contains hard-coded path diff --git a/pkgs/remus.yaml b/pkgs/remus.yaml index a2a05ac1c..21d247a6e 100644 --- a/pkgs/remus.yaml +++ b/pkgs/remus.yaml @@ -3,8 +3,8 @@ dependencies: build: [boost, zmq] sources: -- url: https://github.com/robertmaynard/Remus.git - key: git:42ab4e84e7769b3c3531ee378c6d95f342110d46 +- key: git:42ab4e84e7769b3c3531ee378c6d95f342110d46 + url: https://github.com/robertmaynard/Remus.git build_stages: - name: configure diff --git a/pkgs/shiboken.yaml b/pkgs/shiboken.yaml index 7a3f72108..68aa41f10 100644 --- a/pkgs/shiboken.yaml +++ b/pkgs/shiboken.yaml @@ -3,8 +3,8 @@ dependencies: build: [qt, python] sources: -- url: https://github.com/OpenGeoscience/shiboken.git - key: git:7f3bf07ee6c368a42edd8dcc1b3b0730b4809eaf +- key: git:7f3bf07ee6c368a42edd8dcc1b3b0730b4809eaf + url: https://github.com/OpenGeoscience/shiboken.git defaults: # lib/cmake/Shiboken-1.2.1/ShibokenConfig.cmake contains hard-coded path diff --git a/pkgs/vxl.yaml b/pkgs/vxl.yaml index 4743080cf..164a2c231 100644 --- a/pkgs/vxl.yaml +++ b/pkgs/vxl.yaml @@ -3,8 +3,8 @@ dependencies: build: [png, zlib] sources: -- url: http://git.code.sf.net/p/vxl/git - key: git:e456b35d322eea055567819408c6dff5c887d149 +- key: git:e456b35d322eea055567819408c6dff5c887d149 + url: http://git.code.sf.net/p/vxl/git defaults: # /share/vxl/cmake/VXLConfig.cmake contains absolute path From 8bf616b73b71a09f2cac91f5c3f3b5bc5886a828 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 12:00:21 -0700 Subject: [PATCH 18/24] Downgrade ParaView (needed by CMB) Unfortunately this means we need to add back all the patches that were since merged with ParaView master. That will be done in the next three commits. --- pkgs/paraview/paraview.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/paraview/paraview.yaml b/pkgs/paraview/paraview.yaml index cc4a183f4..f30d426eb 100644 --- a/pkgs/paraview/paraview.yaml +++ b/pkgs/paraview/paraview.yaml @@ -5,7 +5,7 @@ dependencies: python, numpy, matplotlib, libxml2, {{build_with}}] sources: -- key: git:08cb9fc8d27b24f1d581a98bccd01b8c8b834a19 +- key: git:e90304c0053a68ab316790748e097d810cb17ed1 url: https://github.com/Kitware/ParaView.git defaults: From 599b3268f0e6ba37dfd9482060ff1892f8f579a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 12:52:33 -0700 Subject: [PATCH 19/24] Revert "Paraview: remove the installCMakeFiles patch" This reverts commit 20ffbd7dd006308e1cd88604bb1195975ab3e8aa. --- pkgs/paraview/installCMakeFiles.patch | 31 +++++++++++++++++++++++++++ pkgs/paraview/paraview.yaml | 7 ++++++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/paraview/installCMakeFiles.patch diff --git a/pkgs/paraview/installCMakeFiles.patch b/pkgs/paraview/installCMakeFiles.patch new file mode 100644 index 000000000..c8a1b6521 --- /dev/null +++ b/pkgs/paraview/installCMakeFiles.patch @@ -0,0 +1,31 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b102aa5..d3d72f4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -208,7 +208,7 @@ if (UNIX) + option(PARAVIEW_ENABLE_FFMPEG "Enable FFMPEG Support." OFF) + endif() + +-if (UNIX AND NOT APPLE) ++if (UNIX) + # Since development installs are currently being tested only on linuxes. We + # can support these for other platforms if time permits. + option(PARAVIEW_INSTALL_DEVELOPMENT_FILES +@@ -725,6 +725,17 @@ if (NOT VTK_INSTALL_NO_DEVELOPMENT) + DESTINATION ${VTK_INSTALL_PACKAGE_DIR} + COMPONENT Development + ) ++ ++ #we depend on a couple VTK CMake files that aren't installed but we need ++ #installed ++ install( ++ FILES ${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake/TopologicalSort.cmake ++ ${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake/vtkMakeInstantiator.h.in ++ ${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake/vtkMakeInstantiator.cxx.in ++ DESTINATION ${VTK_INSTALL_PACKAGE_DIR} ++ COMPONENT Development ++ ) ++ + endif() + + #----------------------------------------------------------------------------- diff --git a/pkgs/paraview/paraview.yaml b/pkgs/paraview/paraview.yaml index f30d426eb..49232ec32 100644 --- a/pkgs/paraview/paraview.yaml +++ b/pkgs/paraview/paraview.yaml @@ -13,6 +13,13 @@ defaults: relocatable: false build_stages: +- name: patch3 + before: configure + files: [installCMakeFiles.patch] + handler: bash + bash: | + patch -up1 < _hashdist/installCMakeFiles.patch + - name: patch4 before: configure files: [installGenerateFiles.patch] From 98ed2c23f633564429e42e1e1ddb3412a6c414d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 12:52:48 -0700 Subject: [PATCH 20/24] Revert "Paraview: remove the visitbridge patch" This reverts commit c73ed64d1b60746d713d5ddbfe3f7a9823f5b4cb. --- pkgs/paraview/paraview.yaml | 7 +++++++ pkgs/paraview/visitbridge.patch | 23 +++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/paraview/visitbridge.patch diff --git a/pkgs/paraview/paraview.yaml b/pkgs/paraview/paraview.yaml index 49232ec32..63ef1c72b 100644 --- a/pkgs/paraview/paraview.yaml +++ b/pkgs/paraview/paraview.yaml @@ -13,6 +13,13 @@ defaults: relocatable: false build_stages: +- name: patch2 + before: configure + files: [visitbridge.patch] + handler: bash + bash: | + patch -up1 < _hashdist/visitbridge.patch + - name: patch3 before: configure files: [installCMakeFiles.patch] diff --git a/pkgs/paraview/visitbridge.patch b/pkgs/paraview/visitbridge.patch new file mode 100644 index 000000000..c5ccc5c2f --- /dev/null +++ b/pkgs/paraview/visitbridge.patch @@ -0,0 +1,23 @@ +--- a/Utilities/VisItBridge/databases/CMakeLists.txt ++++ b/Utilities/VisItBridge/databases/CMakeLists.txt +@@ -192,11 +192,16 @@ else(VISIT_PARALLEL) + visit_vtk vtkIOImage vtkRenderingOpenGL) + endif(VISIT_PARALLEL) + +-target_link_libraries(vtkIOVisItBridge LINK_PRIVATE vtkNetCDF) ++#To properly use thirdparty vtk libraries you shouldn't explicitly link to ++#the target itself. That won't work when the target is external, because in ++#that use case the target has no import libraries. Instead the best way to ++#use third party libraries is to use the global variable _LIBRARIES. ++vtk_module_load(vtkhdf5) ++vtk_module_load(vtknetcdf) + +-if(PARAVIEW_HDF5_LIBRARIES) +- target_link_libraries(vtkIOVisItBridge LINK_PRIVATE ${PARAVIEW_HDF5_LIBRARIES}) +-endif(PARAVIEW_HDF5_LIBRARIES) ++target_link_libraries(vtkIOVisItBridge LINK_PRIVATE ${vtknetcdf_LIBRARIES} vtksys) ++ ++target_link_libraries(vtkIOVisItBridge LINK_PRIVATE ${vtkhdf5_LIBRARIES}) + + if(HAVE_LIBSILO AND VISIT_BUILD_READER_Silo) + target_link_libraries(vtkIOVisItBridge LINK_PRIVATE ${SILO_LIBRARIES}) From 2932114601aa2cd1119be8e8974b4f6db61432a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 12:52:59 -0700 Subject: [PATCH 21/24] Revert "Paraview: remove the findnetcdf patch" This reverts commit 9f097c6297f91bb87c74b8b640f1f17127ab09c1. --- pkgs/paraview/findnetcdf.patch | 66 ++++++++++++++++++++++++++++++++++ pkgs/paraview/paraview.yaml | 7 ++++ 2 files changed, 73 insertions(+) create mode 100644 pkgs/paraview/findnetcdf.patch diff --git a/pkgs/paraview/findnetcdf.patch b/pkgs/paraview/findnetcdf.patch new file mode 100644 index 000000000..98c41c376 --- /dev/null +++ b/pkgs/paraview/findnetcdf.patch @@ -0,0 +1,66 @@ +--- a/VTK/CMake/FindNetCDF.cmake ++++ b/VTK/CMake/FindNetCDF.cmake +@@ -38,17 +38,26 @@ if (NETCDF_INCLUDE_DIR AND NETCDF_LIBRARY) + set (NETCDF_FIND_QUIETLY TRUE) + endif () + ++set(USE_DEFAULT_PATHS "NO_DEFAULT_PATH") ++if(NETCDF_USE_DEFAULT_PATHS) ++ set(USE_DEFAULT_PATHS "") ++endif() ++ + find_path (NETCDF_INCLUDE_DIR netcdf.h +- HINTS NETCDF_DIR ENV NETCDF_DIR) ++ HINTS "${NETCDF_DIR}/include") + mark_as_advanced (NETCDF_INCLUDE_DIR) + set (NETCDF_C_INCLUDE_DIRS ${NETCDF_INCLUDE_DIR}) + +-find_library (NETCDF_LIBRARY NAMES netcdf) ++find_library (NETCDF_LIBRARY NAMES netcdf ++ HINTS "${NETCDF_DIR}/lib") + mark_as_advanced (NETCDF_LIBRARY) ++ + set (NETCDF_C_LIBRARIES ${NETCDF_LIBRARY}) + + #start finding requested language components + set (NetCDF_libs "") ++set (netCDF_includes "${NETCDF_INCLUDE_DIR}") ++ + get_filename_component (NetCDF_lib_dirs "${NETCDF_LIBRARY}" PATH) + set (NETCDF_HAS_INTERFACES "YES") # will be set to NO if we're missing any interfaces + +@@ -56,9 +65,15 @@ macro (NetCDF_check_interface lang header libs) + if (NETCDF_${lang}) + #search starting from user modifiable cache var + find_path (NETCDF_${lang}_INCLUDE_DIR NAMES ${header} +- HINTS "${NETCDF_INCLUDE_DIR}" NO_DEFAULT_PATH) ++ HINTS "${NETCDF_INCLUDE_DIR}" ++ HINTS "${NETCDF_${lang}_ROOT}/include" ++ ${USE_DEFAULT_PATHS}) ++ + find_library (NETCDF_${lang}_LIBRARY NAMES ${libs} +- HINTS "${NetCDF_lib_dirs}" NO_DEFAULT_PATH) ++ HINTS "${NetCDF_lib_dirs}" ++ HINTS "${NETCDF_${lang}_ROOT}/lib" ++ ${USE_DEFAULT_PATHS}) ++ + mark_as_advanced (NETCDF_${lang}_INCLUDE_DIR NETCDF_${lang}_LIBRARY) + + #export to internal varS that rest of project can use directly +@@ -67,6 +82,7 @@ macro (NetCDF_check_interface lang header libs) + + if (NETCDF_${lang}_INCLUDE_DIR AND NETCDF_${lang}_LIBRARY) + list (APPEND NetCDF_libs ${NETCDF_${lang}_LIBRARY}) ++ list (APPEND netCDF_includes ${NETCDF_${lang}_INCLUDE_DIR}) + else () + set (NETCDF_HAS_INTERFACES "NO") + message (STATUS "Failed to find NetCDF interface for ${lang}") +@@ -93,7 +109,7 @@ NetCDF_check_interface (F90 netcdf.mod netcdff) + #export accumulated results to internal varS that rest of project can depend on + list (APPEND NetCDF_libs "${NETCDF_C_LIBRARIES}") + set (NETCDF_LIBRARIES ${NetCDF_libs}) +-set (NETCDF_INCLUDE_DIRS ${NETCDF_INCLUDE_DIR}) ++set (NETCDF_INCLUDE_DIRS ${netCDF_includes}) + + # handle the QUIETLY and REQUIRED arguments and set NETCDF_FOUND to TRUE if + # all listed variables are TRUE diff --git a/pkgs/paraview/paraview.yaml b/pkgs/paraview/paraview.yaml index 63ef1c72b..d20e7f262 100644 --- a/pkgs/paraview/paraview.yaml +++ b/pkgs/paraview/paraview.yaml @@ -13,6 +13,13 @@ defaults: relocatable: false build_stages: +- name: patch + before: configure + files: [findnetcdf.patch] + handler: bash + bash: | + patch -up1 < _hashdist/findnetcdf.patch + - name: patch2 before: configure files: [visitbridge.patch] From f3c581722e0a58756e32b74ae0c539e26857a39e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 14:22:43 -0700 Subject: [PATCH 22/24] CMB add bzip2 as dependency --- pkgs/cmb.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml index 97fd653a0..44a218c05 100644 --- a/pkgs/cmb.yaml +++ b/pkgs/cmb.yaml @@ -1,6 +1,6 @@ extends: [cmake_package] dependencies: - build: [boost, png, qt, zlib, gdal, hdf5, + build: [boost, png, qt, zlib, bzip2, gdal, hdf5, mpi, netcdf4, netcdf4cpp, freetype, python, numpy, matplotlib, libxml2, paraview, remus, vxl, kml, molequeue, smtk, zmq] From db4a231595dd7cd5580e84ad06f0493a5626908b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 14:23:52 -0700 Subject: [PATCH 23/24] Add CPPFLAGS to CMake explicitly Even though CMake is supplied with (via `base/cmake_package.py`) -DCMAKE_PREFIX_PATH="${BOOST_DIR};${BZIP2_DIR};..." For some reason, some of the `-I` statements do not get propagated to g++. If we add the line -DCMAKE_CXX_FLAGS:STRING="${CPPFLAGS}" Then all the necessary `-I` statements are propagated. Note the quotation marks around "${CPPFLAGS}$, those are necessary, since there are spaces in the variable. --- pkgs/cmb.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml index 44a218c05..f5a2fd2db 100644 --- a/pkgs/cmb.yaml +++ b/pkgs/cmb.yaml @@ -20,5 +20,6 @@ build_stages: '-DKML_DIR:PATH=${KML_DIR}', '-DGDAL_DIR:PATH=${GDAL_DIR}', '-DParaView_DIR:PATH=${PARAVIEW_DIR}', - '-DMoleQueue_DIR:PATH=${MOLEQUEUE_DIR}' + '-DMoleQueue_DIR:PATH=${MOLEQUEUE_DIR}', + '-DCMAKE_CXX_FLAGS:STRING="${CPPFLAGS}"', ] From cdfe64429a806e29668167cc484a728d1b03e5ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 25 Feb 2015 14:28:13 -0700 Subject: [PATCH 24/24] CMB: allow to add dependencies from the profile --- pkgs/cmb.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/cmb.yaml b/pkgs/cmb.yaml index f5a2fd2db..db7beabb7 100644 --- a/pkgs/cmb.yaml +++ b/pkgs/cmb.yaml @@ -3,7 +3,7 @@ dependencies: build: [boost, png, qt, zlib, bzip2, gdal, hdf5, mpi, netcdf4, netcdf4cpp, freetype, python, numpy, matplotlib, libxml2, - paraview, remus, vxl, kml, molequeue, smtk, zmq] + paraview, remus, vxl, kml, molequeue, smtk, zmq, {{build_with}}] sources: - key: git:b24225a52187a124f5f83bdb7212d363f9254519