git: 8ecb76bb8a7b - main - devel/mimalloc: Update to 3.0.3

From: Emanuel Haupt <ehaupt_at_FreeBSD.org>
Date: Sat, 29 Mar 2025 13:27:50 UTC
The branch main has been updated by ehaupt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8ecb76bb8a7bcfe804ae528045db2cdefb0e2d63

commit 8ecb76bb8a7bcfe804ae528045db2cdefb0e2d63
Author:     Emanuel Haupt <ehaupt@FreeBSD.org>
AuthorDate: 2025-03-29 13:27:35 +0000
Commit:     Emanuel Haupt <ehaupt@FreeBSD.org>
CommitDate: 2025-03-29 13:27:35 +0000

    devel/mimalloc: Update to 3.0.3
    
    * Update to 3.0.3
    * Disable optimizations [1]
    
    PR:             285593 [1]
---
 devel/mimalloc/Makefile                         |  2 +-
 devel/mimalloc/distinfo                         |  6 +--
 devel/mimalloc/files/patch-CMakeLists.txt       | 62 +++++++++++++++++++++----
 devel/mimalloc/files/patch-src_prim_unix_prim.c | 12 -----
 devel/mimalloc/pkg-plist                        |  1 +
 5 files changed, 58 insertions(+), 25 deletions(-)

diff --git a/devel/mimalloc/Makefile b/devel/mimalloc/Makefile
index 1d3385f669fa..641e57958da8 100644
--- a/devel/mimalloc/Makefile
+++ b/devel/mimalloc/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	mimalloc
 DISTVERSIONPREFIX=	v
-DISTVERSION=	3.0.1
+DISTVERSION=	3.0.3
 CATEGORIES=	devel
 
 MAINTAINER=	ehaupt@FreeBSD.org
diff --git a/devel/mimalloc/distinfo b/devel/mimalloc/distinfo
index d1b7a49f47cd..731b7c43472b 100644
--- a/devel/mimalloc/distinfo
+++ b/devel/mimalloc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1736781220
-SHA256 (microsoft-mimalloc-v3.0.1_GH0.tar.gz) = 6a514ae31254b43e06e2a89fe1cbc9c447fdbf26edc6f794f3eb722f36e28261
-SIZE (microsoft-mimalloc-v3.0.1_GH0.tar.gz) = 1281782
+TIMESTAMP = 1743245257
+SHA256 (microsoft-mimalloc-v3.0.3_GH0.tar.gz) = baf343041420e2924e1760bbbc0c111101c44e1cecb998e7951f646a957ee05f
+SIZE (microsoft-mimalloc-v3.0.3_GH0.tar.gz) = 1302625
diff --git a/devel/mimalloc/files/patch-CMakeLists.txt b/devel/mimalloc/files/patch-CMakeLists.txt
index a6bc3850f094..f7b78c42fa1f 100644
--- a/devel/mimalloc/files/patch-CMakeLists.txt
+++ b/devel/mimalloc/files/patch-CMakeLists.txt
@@ -1,13 +1,57 @@
---- CMakeLists.txt.orig	2025-01-13 15:16:06 UTC
+--- CMakeLists.txt.orig	2025-03-29 12:01:12 UTC
 +++ CMakeLists.txt
-@@ -513,8 +513,8 @@ string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_
-   set(mi_basename "${mi_basename}-asan")
+@@ -120,29 +120,6 @@ endif()
+   set(MI_SECURE "ON")
  endif()
- string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LC)
--if(NOT(CMAKE_BUILD_TYPE_LC MATCHES "^(release|relwithdebinfo|minsizerel|none)$"))
--  set(mi_basename "${mi_basename}-${CMAKE_BUILD_TYPE_LC}") #append build type (e.g. -debug) if not a release version
-+if(NOT(CMAKE_BUILD_TYPE_LC MATCHES "^(debug|release|relwithdebinfo|minsizerel|none)$"))
-+  set(mi_basename "${mi_basename}-${CMAKE_BUILD_TYPE_LC}") #append build type if not a release version or debug
+ 
+-
+-# Determine architecture
+-set(MI_OPT_ARCH_FLAGS "")
+-set(MI_ARCH "unknown")
+-if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86|i[3456]86)$" OR CMAKE_GENERATOR_PLATFORM MATCHES "^(x86|Win32)$")
+-  set(MI_ARCH "x86")
+-elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86_64|x64|amd64|AMD64)$" OR CMAKE_GENERATOR_PLATFORM STREQUAL "x64" OR "x86_64" IN_LIST CMAKE_OSX_ARCHITECTURES) # must be before arm64
+-  set(MI_ARCH "x64")
+-elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm64|armv[89].?|ARM64)$" OR CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64" OR "arm64" IN_LIST CMAKE_OSX_ARCHITECTURES)
+-  set(MI_ARCH "arm64")
+-elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv[34567]|ARM)$")
+-  set(MI_ARCH "arm32")
+-elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(riscv|riscv32|riscv64)$")
+-  if(CMAKE_SIZEOF_VOID_P==4)
+-    set(MI_ARCH "riscv32")
+-  else()
+-    set(MI_ARCH "riscv64")
+-  endif()
+-else()
+-  set(MI_ARCH ${CMAKE_SYSTEM_PROCESSOR})
+-endif()
+-message(STATUS "Architecture: ${MI_ARCH}") # (${CMAKE_SYSTEM_PROCESSOR}, ${CMAKE_GENERATOR_PLATFORM}, ${CMAKE_GENERATOR})")
+-
+ # negative overrides (mainly to support vcpkg features)
+ if(MI_NO_USE_CXX)
+   set(MI_USE_CXX "OFF")
+@@ -436,24 +413,6 @@ if(CMAKE_C_COMPILER_ID MATCHES "AppleClang|Clang|GNU|I
+ if(CMAKE_C_COMPILER_ID MATCHES "AppleClang|Clang|GNU|Intel")
+   if(MI_OVERRIDE)
+     list(APPEND mi_cflags -fno-builtin-malloc)
+-  endif()
+-endif()
+-
+-# Compiler and architecture specific flags
+-if(CMAKE_C_COMPILER_ID MATCHES "AppleClang|Clang|GNU|Intel" AND NOT CMAKE_SYSTEM_NAME MATCHES "Haiku")
+-  if(MI_OPT_ARCH)
+-    if(APPLE AND CMAKE_C_COMPILER_ID MATCHES "AppleClang|Clang" AND CMAKE_OSX_ARCHITECTURES)   # to support multi-arch binaries (#999)
+-      if("arm64" IN_LIST CMAKE_OSX_ARCHITECTURES)
+-        list(APPEND MI_OPT_ARCH_FLAGS "-Xarch_arm64;-march=armv8.1-a")
+-      endif()
+-      if("x86_64" IN_LIST CMAKE_OSX_ARCHITECTURES)
+-        list(APPEND MI_OPT_ARCH_FLAGS "-Xarch_x86_64;-march=haswell;-Xarch_x86_64;-mavx2")
+-      endif()
+-    elseif(MI_ARCH STREQUAL "x64")
+-      set(MI_OPT_ARCH_FLAGS "-march=haswell;-mavx2")    # fast bit scan (since 2013)
+-    elseif(MI_ARCH STREQUAL "arm64")
+-      set(MI_OPT_ARCH_FLAGS "-march=armv8.1-a")         # fast atomics (since 2016)
+-    endif()
+   endif()
  endif()
  
- if(MI_BUILD_SHARED)
diff --git a/devel/mimalloc/files/patch-src_prim_unix_prim.c b/devel/mimalloc/files/patch-src_prim_unix_prim.c
deleted file mode 100644
index 53ee443d4dee..000000000000
--- a/devel/mimalloc/files/patch-src_prim_unix_prim.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/prim/unix/prim.c.orig	2025-01-04 04:21:48 UTC
-+++ src/prim/unix/prim.c
-@@ -201,7 +201,8 @@ static void* unix_mmap_prim(void* addr, size_t size, s
-   void* p = NULL;
-   #if defined(MAP_ALIGNED)  // BSD
-   if (addr == NULL && try_alignment > 1 && (try_alignment % _mi_os_page_size()) == 0) {
--    size_t n = mi_bsr(try_alignment);
-+    size_t idx;
-+    size_t n = mi_bsr(try_alignment, &idx);
-     if (((size_t)1 << n) == try_alignment && n >= 12 && n <= 30) {  // alignment is a power of 2 and 4096 <= alignment <= 1GiB
-       p = mmap(addr, size, protect_flags, flags | MAP_ALIGNED(n), fd, 0);
-       if (p==MAP_FAILED || !_mi_is_aligned(p,try_alignment)) {
diff --git a/devel/mimalloc/pkg-plist b/devel/mimalloc/pkg-plist
index 780f28538d8f..8332ef35c530 100644
--- a/devel/mimalloc/pkg-plist
+++ b/devel/mimalloc/pkg-plist
@@ -1,5 +1,6 @@
 include/mimalloc-new-delete.h
 include/mimalloc-override.h
+include/mimalloc-stats.h
 include/mimalloc.h
 lib/cmake/mimalloc/mimalloc-%%CMAKE_BUILD_TYPE%%.cmake
 lib/cmake/mimalloc/mimalloc-config-version.cmake