pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc



Module Name:    pkgsrc
Committed By:   manu
Date:           Thu Feb 20 14:24:03 UTC 2025

Modified Files:
        pkgsrc/devel/gnustep-objc: Makefile PLIST buildlink3.mk distinfo
        pkgsrc/devel/gnustep-objc/patches: patch-objc_runtime.h
            patch-objcxx_eh.h
        pkgsrc/doc: CHANGES-2025
Removed Files:
        pkgsrc/devel/gnustep-objc/patches: patch-CMakeLists.txt
            patch-objcxx_eh.cc

Log Message:
Update gnustep-objc to 2.2.1

This is the second update to the second major release of the GNUstep Objective-C
runtime (a.k.a.  libobjc2).  This runtime was designed to support the features
of modern dialects of Objective-C for use with GNUstep and other Objective-C
programs.

Highlights of this release include:

- Initial support for RISC-V 64-bit (rv64) including an architecture-specific
  objc_msgSend, and block trampoline implementation. Please note that
  double-precision floating-point support (rv64d) is required for the
  objc_msgSend implementation.
- Initial support for Windows on ARM64 with fast-path objc_msgSend.
- Numerous improvements to the Objective-C++ exception interoperation code.
  The runtime now dynamically detects whether the libcxxrt, libsupc++, or
  libc++abi variant of the Itanium C++ Exception ABI is being used.  This is
  the first version to support exception interoperability with libc++abi.
- Because we no longer need to identify the specific C++ runtime, we can link
  to it indirectly via the C++ standard library, which enables more C++ to be
  used in the Objective-C runtime.
- The minimum CMake version has been bumped to 3.16, which supports
  Objective-C.  This support is now used, simplifying the build.
- Support for GC mode is gone.  Apple dropped support for this a long time ago.
- `objc_setUncaughtExceptionHandler` is added, which avoids consuming code
  needing to access a library-owned global.
- The selector-table code has been rewritten in C++, improving performance of
  adding selectors.  This is unlikely to have a measurable impact on
  performance outside of contrived test cases, but the new code is more
  maintainable.
- Several bug fixes in the ARC code, especially in corner cases surrounding
  weak references.
- Support for fast-path allocation / initialisation functions.  Root classes
  that opt into this should implement `+_TrivialAllocInit` (this can be an
  empty method, it is not called).  Clang 18 or later will emit calls to the
  fast-path functions for `+alloc`, `+allocWithZone:` and `+alloc` + `-init`
  calls.  This should improve code density as well as performance.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 pkgsrc/devel/gnustep-objc/Makefile
cvs rdiff -u -r1.9 -r1.10 pkgsrc/devel/gnustep-objc/PLIST
cvs rdiff -u -r1.15 -r1.16 pkgsrc/devel/gnustep-objc/buildlink3.mk
cvs rdiff -u -r1.19 -r1.20 pkgsrc/devel/gnustep-objc/distinfo
cvs rdiff -u -r1.1 -r0 pkgsrc/devel/gnustep-objc/patches/patch-CMakeLists.txt
cvs rdiff -u -r1.2 -r1.3 \
    pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h
cvs rdiff -u -r1.3 -r0 pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.cc
cvs rdiff -u -r1.3 -r1.4 pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h
cvs rdiff -u -r1.1511 -r1.1512 pkgsrc/doc/CHANGES-2025

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/gnustep-objc/Makefile
diff -u pkgsrc/devel/gnustep-objc/Makefile:1.40 pkgsrc/devel/gnustep-objc/Makefile:1.41
--- pkgsrc/devel/gnustep-objc/Makefile:1.40     Sun Aug 25 06:18:34 2024
+++ pkgsrc/devel/gnustep-objc/Makefile  Thu Feb 20 14:24:02 2025
@@ -1,12 +1,12 @@
-# $NetBSD: Makefile,v 1.40 2024/08/25 06:18:34 wiz Exp $
+# $NetBSD: Makefile,v 1.41 2025/02/20 14:24:02 manu Exp $
 
-DISTNAME=      libobjc2-2.1.0
+DISTNAME=      libobjc2-2.2.1
 PKGNAME=       ${DISTNAME:S/libobjc2/gnustep-objc/}
 PKGREVISION=   1
 CATEGORIES=    devel gnustep
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=gnustep/}
 GITHUB_PROJECT=        libobjc2
-GITHUB_TAG=    v2.1
+GITHUB_TAG=    v2.2.1
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
 HOMEPAGE=      https://github.com/gnustep/libobjc2
@@ -35,7 +35,7 @@ post-extract:
 
 do-configure:
        cd ${WRKSRC} && \
-               ${SETENV} ${CONFIGURE_ENV} ${CMAKE} -Wno-dev ${CMAKE_CONFIGURE_ARGS} .
+               ${SETENV} ${CONFIGURE_ENV} ${CMAKE} -Wno-dev ${CMAKE_ARGS} .
 
 .include "../../mk/compiler.mk"
 
@@ -43,7 +43,7 @@ do-configure:
 
 # Building tests with GCC is not supported.
 .if empty(CC_VERSION:Mclang-*)
-CMAKE_CONFIGURE_ARGS+= -DTESTS:BOOL=FALSE
+CMAKE_ARGS+=   -DTESTS:BOOL=FALSE
 .endif
 
 PLIST_VARS+=   objcxx

Index: pkgsrc/devel/gnustep-objc/PLIST
diff -u pkgsrc/devel/gnustep-objc/PLIST:1.9 pkgsrc/devel/gnustep-objc/PLIST:1.10
--- pkgsrc/devel/gnustep-objc/PLIST:1.9 Sat Jan 14 01:30:53 2023
+++ pkgsrc/devel/gnustep-objc/PLIST     Thu Feb 20 14:24:02 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2023/01/14 01:30:53 manu Exp $
+@comment $NetBSD: PLIST,v 1.10 2025/02/20 14:24:02 manu Exp $
 include/Block.h
 include/Block_private.h
 include/objc/Availability.h
@@ -15,6 +15,7 @@ include/objc/objc-api.h
 include/objc/objc-arc.h
 include/objc/objc-auto.h
 include/objc/objc-class.h
+include/objc/objc-exception.h
 include/objc/objc-runtime.h
 include/objc/objc-visibility.h
 include/objc/objc.h

Index: pkgsrc/devel/gnustep-objc/buildlink3.mk
diff -u pkgsrc/devel/gnustep-objc/buildlink3.mk:1.15 pkgsrc/devel/gnustep-objc/buildlink3.mk:1.16
--- pkgsrc/devel/gnustep-objc/buildlink3.mk:1.15        Sat Jan 14 01:30:53 2023
+++ pkgsrc/devel/gnustep-objc/buildlink3.mk     Thu Feb 20 14:24:02 2025
@@ -1,12 +1,12 @@
-# $NetBSD: buildlink3.mk,v 1.15 2023/01/14 01:30:53 manu Exp $
+# $NetBSD: buildlink3.mk,v 1.16 2025/02/20 14:24:02 manu Exp $
 
 BUILDLINK_TREE+=       gnustep-objc
 
 .if !defined(GNUSTEP_OBJC_BUILDLINK3_MK)
 GNUSTEP_OBJC_BUILDLINK3_MK:=
 
-BUILDLINK_API_DEPENDS.gnustep-objc+=   gnustep-objc>=1.3.0
-BUILDLINK_ABI_DEPENDS.gnustep-objc+=   gnustep-objc>=1.3.0nb1
+BUILDLINK_API_DEPENDS.gnustep-objc+=   gnustep-objc>=2.2.1
+BUILDLINK_ABI_DEPENDS.gnustep-objc+=   gnustep-objc>=2.2.1
 BUILDLINK_PKGSRCDIR.gnustep-objc?=     ../../devel/gnustep-objc
 
 BUILDLINK_CFLAGS.gnustep-objc+=                -I${BUILDLINK_PREFIX.gnustep-objc}/include/objc

Index: pkgsrc/devel/gnustep-objc/distinfo
diff -u pkgsrc/devel/gnustep-objc/distinfo:1.19 pkgsrc/devel/gnustep-objc/distinfo:1.20
--- pkgsrc/devel/gnustep-objc/distinfo:1.19     Sat Jan 14 01:30:53 2023
+++ pkgsrc/devel/gnustep-objc/distinfo  Thu Feb 20 14:24:02 2025
@@ -1,9 +1,7 @@
-$NetBSD: distinfo,v 1.19 2023/01/14 01:30:53 manu Exp $
+$NetBSD: distinfo,v 1.20 2025/02/20 14:24:02 manu Exp $
 
-BLAKE2s (libobjc2-2.1.0.tar.gz) = 4812d384515b96a0b837356cd95f68fea492e109ad4166e6159f64b608299f79
-SHA512 (libobjc2-2.1.0.tar.gz) = a93c385f9ad53fce0f736088c3a18e72119c0128690725e435a35fe4250830d13e18899f98c7d80e6ea41cbfe1404f055d9d6c3d891ad7c770d47dcd0244fc7f
-Size (libobjc2-2.1.0.tar.gz) = 200290 bytes
-SHA1 (patch-CMakeLists.txt) = 7b4a6a3c28a332ed96ab08837397455ea699bada
-SHA1 (patch-objc_runtime.h) = af2e2944e825e8982252a878939465a259324030
-SHA1 (patch-objcxx_eh.cc) = 42760e1e3c91d686e13c6705c9b1f86d85a7d2ad
-SHA1 (patch-objcxx_eh.h) = 0ae17a3631d40e5db66ef0f0f09818d7fdc03d80
+BLAKE2s (libobjc2-2.2.1.tar.gz) = 8307b74942ab670835b7f0f3ebbc4114d892a9929d4a2292dc611e813d2b0e2a
+SHA512 (libobjc2-2.2.1.tar.gz) = 294db277da1ad929813cbb6c7ae1b5b9dfd9dcb6ceec157b9ec59bca85202c6f344ad8ba8ab3731b83abc5f72c2ab1cb88a79947e56eb92e87dcf62584169af9
+Size (libobjc2-2.2.1.tar.gz) = 205087 bytes
+SHA1 (patch-objc_runtime.h) = 4f429e8e7a85e830f1262351719082f40ffcfbcf
+SHA1 (patch-objcxx_eh.h) = c90b7acccfadb4e3f920810493040a181c428938

Index: pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h
diff -u pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h:1.2 pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h:1.3
--- pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h:1.2  Sat Jan 14 01:30:53 2023
+++ pkgsrc/devel/gnustep-objc/patches/patch-objc_runtime.h      Thu Feb 20 14:24:03 2025
@@ -1,12 +1,12 @@
-$NetBSD: patch-objc_runtime.h,v 1.2 2023/01/14 01:30:53 manu Exp $
+$NetBSD: patch-objc_runtime.h,v 1.3 2025/02/20 14:24:03 manu Exp $
 
 In gcc>=10 SEL is implemented as an build-in typedef. Because it's
 required to use the typedef by gnustep-objc it's defined to overwrite
 it.
 
---- ./objc/runtime.h.orig      2020-08-23 15:10:20.000000000 +0000
-+++ ./objc/runtime.h   2023-01-11 10:07:01.905661420 +0000
-@@ -68,8 +68,11 @@
+--- ./objc/runtime.h.orig      2024-03-21 17:06:36.000000000 +0100
++++ ./objc/runtime.h   2025-02-18 10:57:01.067218002 +0100
+@@ -74,8 +74,11 @@
   */
  #if !defined(__clang__) && !defined(__OBJC_RUNTIME_INTERNAL__)
  typedef const struct objc_selector *SEL;

Index: pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h
diff -u pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h:1.3 pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h:1.4
--- pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h:1.3     Sat Jan 14 01:30:53 2023
+++ pkgsrc/devel/gnustep-objc/patches/patch-objcxx_eh.h Thu Feb 20 14:24:03 2025
@@ -1,9 +1,9 @@
-$NetBSD: patch-objcxx_eh.h,v 1.3 2023/01/14 01:30:53 manu Exp $
+$NetBSD: patch-objcxx_eh.h,v 1.4 2025/02/20 14:24:03 manu Exp $
 
 Workaround build failure due to redefinition
 
---- ./objcxx_eh.h.orig 2020-08-23 15:10:20.000000000 +0000
-+++ ./objcxx_eh.h      2023-01-11 10:07:02.311233320 +0000
+--- objcxx_eh.h.orig   2024-03-21 17:06:36.000000000 +0100
++++ objcxx_eh.h        2025-02-18 11:03:56.455965494 +0100
 @@ -1,7 +1,12 @@
  #ifdef __cplusplus
  extern "C" {
@@ -17,11 +17,11 @@ Workaround build failure due to redefini
   * Allocates a C++ exception.  This function is part of the Itanium C++ ABI and
   * is provided externally.
   */
-@@ -34,9 +39,9 @@
+@@ -31,9 +36,9 @@
+ /**
   * Frees an exception object allocated by __cxa_allocate_exception().  Part of
   * the Itanium C++ ABI.
   */
- __attribute__((weak))
 -void __cxa_free_exception(void *thrown_exception);
 +void __cxa_free_exception(void *thrown_exception) _GLIBCXX_NOTHROW;
  /**

Index: pkgsrc/doc/CHANGES-2025
diff -u pkgsrc/doc/CHANGES-2025:1.1511 pkgsrc/doc/CHANGES-2025:1.1512
--- pkgsrc/doc/CHANGES-2025:1.1511      Thu Feb 20 12:39:10 2025
+++ pkgsrc/doc/CHANGES-2025     Thu Feb 20 14:24:02 2025
@@ -1,4 +1,4 @@
-$NetBSD: CHANGES-2025,v 1.1511 2025/02/20 12:39:10 adam Exp $
+$NetBSD: CHANGES-2025,v 1.1512 2025/02/20 14:24:02 manu Exp $
 
 Changes to the packages collection and infrastructure in 2025:
 
@@ -2008,3 +2008,4 @@ Changes to the packages collection and i
        Updated archivers/py-zstandard to 0.23.0nb1 [wiz 2025-02-20]
        Updated databases/py-elastic-transport to 8.17.0 [adam 2025-02-20]
        Updated databases/py-elasticsearch to 8.17.1 [adam 2025-02-20]
+       Updated www/gnustep-objc to 2.2.1 [manu 2025-02-20]



Home | Main Index | Thread Index | Old Index