diff --git a/.azure-pipelines/pyinstaller.yaml b/.azure-pipelines/pyinstaller.yaml index 4bb2251bc..39d8ee8a6 100644 --- a/.azure-pipelines/pyinstaller.yaml +++ b/.azure-pipelines/pyinstaller.yaml @@ -15,6 +15,16 @@ steps: displayName: install libs - bash: python -m pip install .[pyinstaller] -c requirements/constraints_py3.12.txt displayName: install partseg + - bash: | + bash build_utils/build_libomp.sh + condition: startsWith(variables['Agent.OS'], 'Darwin') + displayName: install libomp + env: + MACOSX_DEPLOYMENT_TARGET: 10.15 + - bash: | + python -m pip install git+https://github.com/4DNucleome/PartSegCore-compiled-backend.git@mso_fix + displayName: install PartSegCore-compiled-backend from `mso_fix` branch + # https://github.com/4DNucleome/PartSegCore-compiled-backend/tree/mso_fix - bash: | python build_utils/create_and_pack_executable.py --no-simple-zip displayName: build diff --git a/build_utils/build_libomp.sh b/build_utils/build_libomp.sh new file mode 100644 index 000000000..fd2579778 --- /dev/null +++ b/build_utils/build_libomp.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash +set -euo pipefail +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +build_dir=${DIR}/libs_build +LLVM_VERSION=${LLVM_VERSION:-19.1.1} +INSTALL_CMD=${INSTALL_CMD:-"sudo make install"} + +echo MACOSX_DEPLOYMENT_TARGET $MACOSX_DEPLOYMENT_TARGET + +git clone --depth 1 --branch llvmorg-${LLVM_VERSION} https://github.com/llvm/llvm-project +pushd llvm-project/openmp +mkdir build +cd build +cmake -DCMAKE_C_COMPILER=${CC:-clang} -DCMAKE_CXX_COMPILER=${CXX:-clang++} ${CMAKE_FLAGS:-} .. +make ${MAKE_FLAGS:-} +${INSTALL_CMD} + +popd +rm -rf llvm-project diff --git a/package/PartSegCore/segmentation/watershed.py b/package/PartSegCore/segmentation/watershed.py index 4ad3bc245..c6bb3cc7c 100644 --- a/package/PartSegCore/segmentation/watershed.py +++ b/package/PartSegCore/segmentation/watershed.py @@ -183,7 +183,7 @@ def sprawl( class MSOWatershedParams(BaseModel): - step_limits: int = Field(100, ge=1, le=1000, title="Steep limits", description="Limits of Steps") + step_limits: int = Field(100, ge=1, le=10000, title="Steep limits", description="Limits of Steps") reflective: bool = False