Skip to content

Commit

Permalink
Merge branch 'master' into umar_neurite_test
Browse files Browse the repository at this point in the history
  • Loading branch information
UmarAbubacar committed Jan 9, 2024
2 parents f673903 + 3e66282 commit 8e2ba04
Show file tree
Hide file tree
Showing 9 changed files with 31 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/macos-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
build:
strategy:
matrix:
os: [macos-11, macos-12, macos-13]
os: [macos-12, macos-13]

runs-on: ${{ matrix.os }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/macos-system-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
build:
strategy:
matrix:
os: [macos-11, macos-12, macos-13]
os: [macos-12, macos-13]

runs-on: ${{ matrix.os }}

Expand Down
File renamed without changes.
8 changes: 1 addition & 7 deletions .github/workflows/sonar-source.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,15 @@ jobs:
name: Sonar Source Analysis
runs-on: ubuntu-20.04
env:
SONAR_SCANNER_VERSION: 4.6.1.2450 # Find the latest version in the "Linux" link on this page:
# https://sonarcloud.io/documentation/analysis/scan/sonarscanner/
SONAR_SERVER_URL: "https://sonarcloud.io"
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
steps:
- name: Download BioDynaMo
uses: actions/checkout@v3
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Install sonar-scanner and build-wrapper
uses: SonarSource/sonarcloud-github-c-cpp@v1
uses: SonarSource/sonarcloud-github-c-cpp@v2
- name: Install dependencies
run: |
sudo apt-get update
Expand Down
6 changes: 5 additions & 1 deletion cmake/external/ROOT.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@ if(APPLE)
"${DETECTED_OS_VERS}" MATCHES "^osx-11.7")
execute_process(COMMAND bash "-c" "xcodebuild -version | sed -En 's/Xcode[[:space:]]+([0-9\.]*)/\\1/p'" OUTPUT_VARIABLE XCODE_VERS)
message(STATUS "##### XCODE version: ${XCODE_VERS}")
if("${XCODE_VERS}" GREATER_EQUAL "14.3")
if("${XCODE_VERS}" GREATER_EQUAL "15.0")
message(STATUS "##### Using ROOT builds for XCODE 15.0.1")
set(ROOT_TAR_FILE root_v6.28.10_cxx14_python3.9_osx-xcode-15.0.1-${DETECTED_ARCH}.tar.gz)
set(ROOT_SHA_KEY osx-xcode-15.0.1-${DETECTED_ARCH}-ROOT)
elseif("${XCODE_VERS}" GREATER_EQUAL "14.3")
message(STATUS "##### Using ROOT builds for XCODE 14.3")
set(ROOT_TAR_FILE root_v6.29.01_cxx14_python3.9_osx-xcode-14.3-${DETECTED_ARCH}.tar.gz)
set(ROOT_SHA_KEY osx-xcode-14.3-${DETECTED_ARCH}-ROOT)
Expand Down
2 changes: 2 additions & 0 deletions cmake/external/SHA256Digests.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ SET(osx-xcode-14.1-i386-ROOT 001311608512b24535bb9710b8baf006bd00e9b0595fd6bdf90
SET(osx-xcode-14.1-arm64-ROOT 12ad32f7d49e2c5dfd4124923bd87f49a31a670d99e390b0a9b71a8ff2f2f035)
SET(osx-xcode-14.3-i386-ROOT c4f4c7a9848121ae19f3fe3c40c5812813ed42d9dfa7f1948f67907ed47fa083)
SET(osx-xcode-14.3-arm64-ROOT 6ffcfaadd4de627cffde2e42fded9175b730769071396d7abdabeefc2714839a)
SET(osx-xcode-15.0.1-i386-ROOT a88b770a1848f41be23a6cfe166d9e4da6c73f985865fb96d473dba966fee3b4)
SET(osx-xcode-15.0.1-arm64-ROOT de60b679f09e7ccde3f5d117e728ffb28d705196935ada5b29f5cc27f2c03091)

SET(ubuntu-18.04-Libroadrunner bf9293c1c95d0b65227bd7e08c0048116ba851bcec5028ef72ea13762ef79276)
SET(ubuntu-18.04-ParaView e3fd74b13e9a4086988c5104c6b8d95c56365d25b491706a8e72018d0e5c76f1)
Expand Down
19 changes: 19 additions & 0 deletions doc/user_guide/Singularity.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,3 +90,22 @@ If you wish to read further about Singularity, you can find a substantial amount
singularity home website: https://sylabs.io/guides/3.5/user-guide/introduction.html. Including many tutorials and more
complex use cases.


## Exporting visualisations on HPC's
By default, BioDynaMo uses ParaView for visualization, which needs an X-display server to function. Since the Singularity image does not provide a graphical desktop environment and hence no X-server, there are two workarounds.

### Option 1: Using xvfb
```xvfb``` stands for X virtual frame buffer and emulates the required display server. Start a virtual frame buffer with:
```
/biodynamo/util/xvfb-initd.sh start
```
The buffer can be managed with the arguments ```start```|```stop```|```restart```

Note: Some systems may require display forwarding **before** starting the frame buffer. This can be achived through ```export DISPLAY=0```.

### Option 2: Setting Paraview to work in a headless mode using the CMAKE flag
Paraview with the osmesa or EGL backend does not require an X-server. To change the backend, you have to edit the cmake options in [1], build paraview, and replace the ParaView version that BioDynaMo installs. See also [2].

[1] https://github.com/BioDynaMo/biodynamo/blob/HPC-documentation/util/build-third-party/paraview/build.sh

[2] https://discourse.paraview.org/t/pvpython-offscreen-rendering-segfault/246/3
2 changes: 1 addition & 1 deletion doc/user_guide/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ curl https://biodynamo.github.io/install | bash

* Ubuntu 20.04, 22.04
* CentOS 7
* MacOS 11.7 and 12.6 (Intel and ARM)
* MacOS > 12.0 (Intel and ARM)

Currently, we do **not** support Windows or Windows subsystem for Linux.

Expand Down
2 changes: 1 addition & 1 deletion doc/user_guide/prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ sudo yum install -y llvm-toolset-7 llvm-toolset-7-clang-tools-extra \
Requirements to build on macOS are:

* A 64-bit Intel CPU or Apple Silicon CPU
* macOS Catalina (10.15) or higher
* macOS 12.0 or higher
* [Xcode](https://itunes.apple.com/us/app/xcode/id497799835) and the Command Line Tools (CLT) for Xcode: `xcode-select --install`
(or from [developer.apple.com/downloads](https://developer.apple.com/downloads))
* An up to date [Homebrew](https://brew.sh) installation (MacPorts and Fink are not supported)
Expand Down

0 comments on commit 8e2ba04

Please sign in to comment.