diff --git a/mimalloc3.yaml b/mimalloc3.yaml new file mode 100644 index 00000000000..e4256b6e1f8 --- /dev/null +++ b/mimalloc3.yaml @@ -0,0 +1,74 @@ +package: + name: mimalloc3 + version: "3.5.1" + epoch: 0 + description: "A compact general purpose allocator with excellent performance" + copyright: + - license: MIT + +environment: + contents: + packages: + - build-base + - busybox + - ca-certificates-bundle + - cmake + - glibc-2.44-dev + - samurai + - wolfi-baselayout + +pipeline: + - uses: git-checkout + with: + repository: https://github.com/microsoft/mimalloc + tag: v${{package.version}} + expected-commit: 34fbd7e7cd4627424490afe19b20f8066bfc537d + + - name: 'Configure mimalloc' + runs: | + CFLAGS="$CFLAGS -D__USE_ISOC11" cmake -B build -G Ninja \ + -DCMAKE_C_COMPILER=gcc \ + -DCMAKE_CXX_COMPILER=g++ \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DMI_INSTALL_TOPLEVEL=ON \ + -DMI_SECURE=ON + + - runs: | + cmake --build build + + - runs: | + DESTDIR="${{targets.destdir}}" cmake --install build + + - uses: strip + +subpackages: + - name: "mimalloc3-dev" + description: "headers for mimalloc3" + pipeline: + - uses: split/dev + dependencies: + runtime: + - mimalloc3 + test: + pipeline: + - uses: test/tw/devpackage + +test: + environment: + contents: + packages: + - stress-ng + pipeline: + - uses: test/tw/ldd-check + - runs: | + LD_PRELOAD=/usr/lib/libmimalloc-secure.so stress-ng --vdso 1 -t 5 --metrics + +update: + enabled: true + github: + identifier: microsoft/mimalloc + strip-prefix: v + use-tag: true + tag-filter: v3.