Skip to content
  1. Feb 10, 2022
  2. Feb 04, 2022
  3. Feb 02, 2022
  4. Feb 01, 2022
  5. Jan 31, 2022
  6. Jan 27, 2022
  7. Jan 26, 2022
  8. Jan 24, 2022
  9. Dec 21, 2021
  10. Dec 09, 2021
    • Alberto Miranda's avatar
      Merge branch... · 3e886a85
      Alberto Miranda authored
      Merge branch 'amiranda/176-using-d-option-in-dl_dep-sh-ends-up-downloading-all-dependencies' into 'master'
      
      Resolve "Various issues with dependency scripts"
      
      This MR adds some tests for the scripts based on [bats-core](https://github.com/bats-core/bats-core), and enables its automatic execution by the CI.
      
      It also changes the separator for dependency flavors from `:` to `%` to prevent clashing with the version separator for profiles (e.g. `libfabric:experimental@mogon2:latest` was ambiguous to `bash`).
      
      Two new bash functions `determine_compiler()` and `profile_has_dependency()` are added to `compile_dep.sh` that are made available to `install` scripts:
      
      - The `determine_compiler()` function makes its best to determine the default compiler available in the system. Installation scripts can access this information via the `COMPILER_NAME`, `COMPILER_FULL_VERSION`, and `COMPILER_MAJOR_VERSION` variables. 
      - The `profile_has_dependency()` function allows installation scripts to check whether another dependency is provided by the currently loaded profile, and act accordingly. The function accepts a bash regex with the search argument.
      
      Additionally, this MR fixes the following problems in `dl_dep.sh` and `compile_dep.sh`:
      
      - [x] Using `-d` option in `dl_dep.sh` ends up downloading all dependencies (#176)
      - [x] Specifying a full profile in `dl_dep.sh` with `-d` does not work (#177)
      - [x] `dl_deps.sh` can download the same dependency in several versions but unpacks them into the same directory (#178)
      - [x] ~~rocksdb install of newer versions needs PREFIX for `make install` to specify install path (#180)~~ (Moving to CMake for 0.9.0
      - [x] When `clonedeps` is using a tag/branchname to clone, e.g., `HEAD@v1.12.1`, `clonedeps_args` for the dependency needs explicit space, e.g., `["mercury"]=" --recurse-submodules"` otherwise the script fails.
      - [x] Dependency patches are being skipped (#184).
      - [x] Script should use script directory as `pwd` instead of `bash_pwd`?
      
      
      Closes #176 #177 #178 #180 #184
      
      See merge request !111
      3e886a85