#807: dependenct problem with standard hdf5 tools within HDF5 thorn --------------------+------------------------------------------------------- Reporter: knarf | Owner: eschnett Type: defect | Status: new Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Keywords: | --------------------+------------------------------------------------------- Currently the utils-build target depends on the standard hdf5 tools being build using the HDF5 thorn. However, when using an external library those tools are not present and 'make' presents the user with an unresolved build dependency error. We should probably remove binaries which are not always built from the make.configuration.defn file:
ALL_UTILS += gif2h5 h52gif h5copy h5debug h5diff h5dump h5import h5jam h5ls h5mkgrp h5perf_serial h5redeploy h5repack h5repart h5stat h5unjam
This would however, prevent binaries built by Cactus from being copied to the exe/NAME/ directory. Any ideas how to solve this? Copy them inside the build script maybe?
#807: dependency problem with standard hdf5 tools within HDF5 thorn ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: new Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------
#807: dependency problem with standard hdf5 tools within HDF5 thorn ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: review Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------ Changes (by eschnett):
* status: new => review
Comment:
{{{
Index: src/make.configuration.defn =================================================================== --- src/make.configuration.defn (revision 50) +++ src/make.configuration.defn (working copy) @@ -2,8 +2,12 @@
# Define standard HDF5 utilities ALL_UTILS += gif2h5 h52gif h5copy h5debug h5diff h5dump h5import h5jam h5ls h5mkgrp h5perf_serial h5redeploy h5repack h5repart h5stat h5unjam -#ALL_UTILS += h5check
+# Install h5check only if it exists +ifneq ($(wildcard $(HDF5_DIR)/bin/h5check*),) +ALL_UTILS += h5check +endif + # Ignore some of the utilities that we don't use, e.g. the compiler # wrappers: # h5c++ h5cc h5fc }}}
#807: build h5checker when not available through system installation ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: reopened Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------ Changes (by knarf):
* status: review => reopened
Comment:
After applying this patch make sim-utils still complains about h5check missing. The reason for that is that h5check isn't built if I use an external HDF5 installation.
We should build h5check when a system hdf5 library is installed but h5check is not. We either split this into a separate thorn which would make the handling kind of uniform, or would need to add a separate check for h5check within the HDF5.sh script to detect whether we need to build it, independently from whether the HDF5 library needs to be build or not.
#807: build h5checker when not available through system installation ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: reopened Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------
Comment (by eschnett):
What is the error message that you see when this patch is applied, and you are using a system HDF5 installation that does not provide h5check?
This patch is supposed to check whether h5check is available, and do nothing about it if it is not available.
#807: build h5checker when not available through system installation ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: review Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------ Changes (by knarf):
* status: reopened => review
Comment:
I noticed an error I did while applying the patch (by hand, because it was not attached as file). The patch now works, please commit.
Another issue I noted is that in the current form, system binaries are copied into the exe/NAME/ utils directory. Should we do this? It bloats the directory without a reason (I can see).
#807: build h5checker when not available through system installation ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: review_ok Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: | Keywords: ---------------------+------------------------------------------------------ Changes (by knarf):
* status: review => review_ok
#807: build h5checker when not available through system installation ---------------------+------------------------------------------------------ Reporter: knarf | Owner: eschnett Type: defect | Status: closed Priority: major | Milestone: ET_2012_05 Component: Carpet | Version: Resolution: fixed | Keywords: ---------------------+------------------------------------------------------ Changes (by eschnett):
* status: review_ok => closed * resolution: => fixed
Comment:
The reason for copying utilities is to ensure that we have a set of known- to-work utilities in a well-known spot. That means one doesn't have to look for them, load modules, set the path, etc. This is convenient especially for post-processing.
trac@lists.einsteintoolkit.org