Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update libmaus2 to v2.0.183 #52154

Merged
merged 11 commits into from
Nov 18, 2024
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions recipes/libmaus2/build.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
#!/bin/bash
set -eu
export LIBS="-lstdc++fs -lcurl"
export LIBS="-lstdc++ -lcurl -lz -ldeflate"

./configure --prefix $PREFIX --with-snappy --with-io_lib
autoreconf -if
autoupdate
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Add error handling for autotools commands

The autoreconf and autoupdate commands might fail silently. Consider adding error checking:

-autoreconf -if
-autoupdate
+if ! autoreconf -if; then
+  echo "Failed to run autoreconf"
+  exit 1
+fi
+if ! autoupdate; then
+  echo "Failed to run autoupdate"
+  exit 1
+fi
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
autoreconf -if
autoupdate
if ! autoreconf -if; then
echo "Failed to run autoreconf"
exit 1
fi
if ! autoupdate; then
echo "Failed to run autoupdate"
exit 1
fi

./configure --prefix="${PREFIX}" CXX="${CXX}" CC="${CC}" \
CXXFLAGS="${CXXFLAGS} -O3 -D_LIBCPP_DISABLE_AVAILABILITY"
LDFLAGS="${LDFLAGS} -L${PREFIX}/lib" \
CPPFLAGS="${CPPFLAGS} -I${PREFIX}/include" \
--with-snappy --with-io_lib --with-libdeflate \
--with-libsecrecy --with-nettle \
--with-lzma --with-gmp

cat config.log

make -j${CPU_COUNT}
make -j"${CPU_COUNT}"
make install
Comment on lines +13 to 14
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Add error handling for make commands

Consider adding error handling and logging for make commands:

-make -j"${CPU_COUNT}"
-make install
+if ! make -j"${CPU_COUNT}"; then
+  echo "Build failed. Last 50 lines of config.log:"
+  tail -n 50 config.log
+  exit 1
+fi
+if ! make install; then
+  echo "Installation failed"
+  exit 1
+fi
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
make -j"${CPU_COUNT}"
make install
if ! make -j"${CPU_COUNT}"; then
echo "Build failed. Last 50 lines of config.log:"
tail -n 50 config.log
exit 1
fi
if ! make install; then
echo "Installation failed"
exit 1
fi

42 changes: 25 additions & 17 deletions recipes/libmaus2/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{% set name = "libmaus2" %}
{% set version = "2.0.810" %}
{% set datestamp = "20220216151520" %}
{% set sha256hash = "6639289aba6bbece3057ab7d1782a1b94b80a9ae22fc3d136a78ba8f7b9edaee" %}
{% set version = "2.0.813" %}
{% set datestamp = "20221210220409" %}
{% set sha256 = "4125f8daefd6900185675026498369457088e25e81029597659249be49cd5261" %}

package:
name: {{ name }}
Expand All @@ -10,47 +10,55 @@ package:
build:
# There's some issue with clang
skip: True # [osx]
number: 6
number: 0
run_exports:
- {{ pin_subpackage('libmaus2', max_pin='x.x') }}
- {{ pin_subpackage('libmaus2', max_pin='x') }}

source:
url: https://gitlab.com/german.tischler/libmaus2/-/archive/{{ version }}-release-{{ datestamp }}/libmaus2-{{ version }}-release-{{ datestamp }}.tar.gz
sha256: {{ sha256hash }}
patches:
sha256: {{ sha256 }}
#patches:
# Until gcc >=8 is being used
- patch
#- patch

requirements:
build:
- make
- {{ compiler('c') }}
- {{ compiler('cxx') }}
- autoconf
- automake
- libtool
- pkg-config
host:
- boost-cpp
- libcurl
# snappy 1.1.9 introduced a binary incompatible build change (https://github.com/mhx/dwarfs/issues/56#issuecomment-896857211)
# enabling -fno-rtti. libmaus needs typeid, which is only available with activated rtti.
# Hence, we stick with snappy 1.1.8
- snappy =1.1.8
- snappy =1.1.8
- staden_io_lib >=1.14.14
- libdeflate
- gmp
- nettle
- zlib
run:
- boost-cpp
- libcurl
- snappy =1.1.8
- staden_io_lib >=1.14.14
ignore_run_exports:
- snappy

about:
home: https://gitlab.com/german.tischler/libmaus2
license: GPL3
summary: collection of data structures and algorithms for NGS data

test:
commands:
- echo

about:
home: https://gitlab.com/german.tischler/libmaus2
license: GPL-3.0-or-later
license_family: GPL3
license_file: GPLv3
summary: "Collection of data structures and algorithms for NGS data."
dev_url: https://gitlab.com/german.tischler/libmaus2

extra:
additional-platforms:
- linux-aarch64
Loading