From cf768a4937f54a32fb3180b2053daf2211f044ee Mon Sep 17 00:00:00 2001 From: Peter Wang Date: Sun, 26 Jun 2022 11:35:52 +1000 Subject: [PATCH 1/2] New package: mimalloc-2.0.6 Closes: #35283 --- common/shlibs | 1 + srcpkgs/mimalloc-devel | 1 + .../mimalloc/patches/secure-basename.patch | 18 ++++++++++ srcpkgs/mimalloc/template | 33 +++++++++++++++++++ 4 files changed, 53 insertions(+) create mode 120000 srcpkgs/mimalloc-devel create mode 100644 srcpkgs/mimalloc/patches/secure-basename.patch create mode 100644 srcpkgs/mimalloc/template diff --git a/common/shlibs b/common/shlibs index 9712cbc1262f..d5039eb15e86 100644 --- a/common/shlibs +++ b/common/shlibs @@ -4190,3 +4190,4 @@ libabsl_strings.so.2206.0.0 abseil-cpp-20220623.1_1 libabsl_throw_delegate.so.2206.0.0 abseil-cpp-20220623.1_1 libabsl_time_zone.so.2206.0.0 abseil-cpp-20220623.1_1 libabsl_spinlock_wait.so.2206.0.0 abseil-cpp-20220623.1_1 +libmimalloc.so.2 mimalloc-2.0.6_1 diff --git a/srcpkgs/mimalloc-devel b/srcpkgs/mimalloc-devel new file mode 120000 index 000000000000..9af584a917a5 --- /dev/null +++ b/srcpkgs/mimalloc-devel @@ -0,0 +1 @@ +mimalloc \ No newline at end of file diff --git a/srcpkgs/mimalloc/patches/secure-basename.patch b/srcpkgs/mimalloc/patches/secure-basename.patch new file mode 100644 index 000000000000..1aeb71d85887 --- /dev/null +++ b/srcpkgs/mimalloc/patches/secure-basename.patch @@ -0,0 +1,18 @@ +# Set basename to always be 'mimalloc' for compatibility +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8127e0965c..377aee9e8f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -251,11 +251,7 @@ else() + set(mi_install_cmakedir "${CMAKE_INSTALL_LIBDIR}/cmake/mimalloc-${mi_version}") # for cmake package info + endif() + +-if(MI_SECURE) +- set(mi_basename "mimalloc-secure") +-else() +- set(mi_basename "mimalloc") +-endif() ++set(mi_basename "mimalloc") + + string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LC) + if(NOT(CMAKE_BUILD_TYPE_LC MATCHES "^(release|relwithdebinfo|minsizerel|none)$")) diff --git a/srcpkgs/mimalloc/template b/srcpkgs/mimalloc/template new file mode 100644 index 000000000000..4e6c2f16a0e8 --- /dev/null +++ b/srcpkgs/mimalloc/template @@ -0,0 +1,33 @@ +# Template file for 'mimalloc' +pkgname=mimalloc +version=2.0.6 +revision=1 +build_style=cmake +configure_args="$(vopt_bool secure MI_SECURE)" +short_desc="General purpose allocator with excellent performance characteristics" +maintainer="Peter Wang " +license="MIT" +homepage="https://github.com/microsoft/mimalloc" +distfiles="${homepage}/archive/v${version}.tar.gz" +checksum=9f05c94cc2b017ed13698834ac2a3567b6339a8bde27640df5a1581d49d05ce5 + +build_options="secure" +desc_option_secure="Build mimalloc in secure mode" + +if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then + makedepends+=" libatomic-devel" +fi + +post_install() { + vlicense LICENSE +} + +mimalloc-devel_package() { + depends="${sourcepkg}>=${version}_${revision}" + short_desc+=" - development files" + pkg_install() { + vmove usr/include + vmove usr/lib/cmake + vmove usr/lib/mimalloc-2.0 + } +} From ea90e117ddd979a976dac301d342e6ba8855c43f Mon Sep 17 00:00:00 2001 From: Peter Wang Date: Sat, 22 Oct 2022 12:48:07 +1100 Subject: [PATCH 2/2] New package: mold-1.6.0 Closes: #34820 --- srcpkgs/mold/template | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 srcpkgs/mold/template diff --git a/srcpkgs/mold/template b/srcpkgs/mold/template new file mode 100644 index 000000000000..42405e90baf8 --- /dev/null +++ b/srcpkgs/mold/template @@ -0,0 +1,30 @@ +# Template file for 'mold' +pkgname=mold +version=1.6.0 +revision=1 +build_style=cmake +configure_args="-DMOLD_USE_SYSTEM_MIMALLOC=ON + -Dmimalloc_DIR=${XBPS_CROSS_BASE}/cmake/mimalloc-2.0" +makedepends="mimalloc-devel openssl-devel zlib-devel libzstd-devel" +# One more test requires llvm-readelf from llvm12, just ignore it. +checkdepends="tar libdwarf" +short_desc="Faster drop-in replacement for existing Unix linkers" +maintainer="Peter Wang " +license="AGPL-3.0-only" +homepage="https://github.com/rui314/mold" +distfiles="${homepage}/archive/refs/tags/v${version}.tar.gz" +checksum=59cd3ea1a2a5fb50d0d97faddd8bff4c7e71054a576c00a87b17f56ecbd88729 + +if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then + makedepends+=" libatomic-devel" + configure_args+=" -DCMAKE_CXX_STANDARD_LIBRARIES=-latomic" +fi + +pre_check() { + export MACHINE=${XBPS_TARGET_MACHINE%-musl} +} + +post_install() { + vlicense LICENSE + rm -v ${DESTDIR}/usr/share/doc/mold/LICENSE +}