pkgsrc-Changes archive

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

CVS commit: pkgsrc/math/libmatheval



Module Name:    pkgsrc
Committed By:   wiz
Date:           Tue Nov 10 15:43:51 UTC 2026

Modified Files:
        pkgsrc/math/libmatheval: Makefile distinfo
Added Files:
        pkgsrc/math/libmatheval/patches: patch-lib_g77__interface.c
            patch-lib_matheval.h
Removed Files:
        pkgsrc/math/libmatheval/patches: patch-aa patch-tests_matheval.c

Log Message:
libmatheval: update to 1.1.12.

Version 1.1.12

* Updated build system to work with current GNU autotools.  Guile is
  needed for test suite only, which now works with Guile 2.0 and later.
* Fixed buffer overflows in the Fortran interface and in handling of
  very long strings (reported by Hongduo Zhao).
* Fixed memory leaks on parsing error, and in Flex generated scanner.
* Characters not part of the notation are now reported as error,
  instead of being echoed to standard output.
* Fixed wrong simplification of 0^x.
* Fixed wrong derivatives of asinh() and acoth() functions.
* Inverse hyperbolic functions are calculated by C library, fixing
  inaccurate results for very small or very large arguments.
* Added min(), max() and select() functions.  Note that min, max and
  select therefore can not be used as variable names any more.
* Library exports its interface only, so that its internal symbols
  (including these of Lex and Yacc generated code) do not clash with
  symbols of program any more.
* Fixed compiler warnings and undefined behavior.
* Fixed errors in the manual, and added short example at its beginning.


To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.28 pkgsrc/math/libmatheval/Makefile
cvs rdiff -u -r1.10 -r1.11 pkgsrc/math/libmatheval/distinfo
cvs rdiff -u -r1.4 -r0 pkgsrc/math/libmatheval/patches/patch-aa
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/math/libmatheval/patches/patch-lib_g77__interface.c \
    pkgsrc/math/libmatheval/patches/patch-lib_matheval.h
cvs rdiff -u -r1.1 -r0 pkgsrc/math/libmatheval/patches/patch-tests_matheval.c

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

Modified files:

Index: pkgsrc/math/libmatheval/Makefile
diff -u pkgsrc/math/libmatheval/Makefile:1.27 pkgsrc/math/libmatheval/Makefile:1.28
--- pkgsrc/math/libmatheval/Makefile:1.27       Thu May 22 11:26:21 2025
+++ pkgsrc/math/libmatheval/Makefile    Tue Nov 10 15:43:51 2026
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.27 2025/05/22 11:26:21 wiz Exp $
+# $NetBSD: Makefile,v 1.28 2026/11/10 15:43:51 wiz Exp $
 
-DISTNAME=              libmatheval-1.1.11
-PKGREVISION=           1
+DISTNAME=              libmatheval-1.1.12
 CATEGORIES=            math
 MASTER_SITES=          ${MASTER_SITE_GNU:=libmatheval/}
 
@@ -10,22 +9,21 @@ HOMEPAGE=            https://www.gnu.org/software/
 COMMENT=               Library for evaluating mathematical expressions
 LICENSE=               gnu-gpl-v3
 
-USE_PKGLOCALEDIR=      yes
 GNU_CONFIGURE=         yes
 USE_LIBTOOL=           yes
-USE_TOOLS+=            flex
+USE_TOOLS+=            flex pkg-config
 PTHREAD_OPTS+=         require
 INFO_FILES=            yes
 PKGCONFIG_OVERRIDE=    libmatheval.pc.in
+# as of 1.1.12:
+# 1 failed unexpectedly.
 TEST_TARGET=           check
 
 CONFIGURE_ENV+=                ac_cv_lib_lex="none needed"
 
-# guile 2.0 fails with "matheval.c:33:2: error: #error Neither scm_num2dbl() nor SCM_NUM2DBL available"
-# guile 2.2 fails
-# Upstream has no bugtracker; reported via bug mailinglist 20220305.
-# https://lists.gnu.org/archive/html/bug-libmatheval/2022-03/msg00000.html
-# Debian seems to have a version patch for guile 3.
-.include "../../lang/guile18/buildlink3.mk"
+# to avoid xmalloc from the test suite polluting the name space
+CFLAGS+=               -fvisibility=hidden
+
+.include "../../lang/guile30/buildlink3.mk"
 .include "../../mk/pthread.buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/math/libmatheval/distinfo
diff -u pkgsrc/math/libmatheval/distinfo:1.10 pkgsrc/math/libmatheval/distinfo:1.11
--- pkgsrc/math/libmatheval/distinfo:1.10       Tue Oct 26 10:55:47 2021
+++ pkgsrc/math/libmatheval/distinfo    Tue Nov 10 15:43:51 2026
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.10 2021/10/26 10:55:47 nia Exp $
+$NetBSD: distinfo,v 1.11 2026/11/10 15:43:51 wiz Exp $
 
-BLAKE2s (libmatheval-1.1.11.tar.gz) = 078a70769595cb066476b8e3b7178299e5d587121865c493cc6c07847ed7ca27
-SHA512 (libmatheval-1.1.11.tar.gz) = 854c35dce7c9a956ea1d7406ed6799375f039dc7305fea20af92d5b1c97b242d23716d0e83d2ff2daa89e3ca06669934a86684faf714a8458a569c5cde09953c
-Size (libmatheval-1.1.11.tar.gz) = 551770 bytes
-SHA1 (patch-aa) = f6e97ab357245e89e5f4173e5a08dc7716c32d35
-SHA1 (patch-tests_matheval.c) = 65bcb8117e65ad44b63ad59ca3349f06b894d697
+BLAKE2s (libmatheval-1.1.12.tar.gz) = 6be73b2596525f90a449b426d6c5b008c3caf171084aa80974831a10a56cf97a
+SHA512 (libmatheval-1.1.12.tar.gz) = b3fd1fe30ba55d704da15bf95a642ec737f90445e6bcfab5580a5dbb17b76ea11ad0f654465c51e6c7b5fe54f4934a4d8631fa650c7250d3275ebea5aed7e40a
+Size (libmatheval-1.1.12.tar.gz) = 628415 bytes
+SHA1 (patch-lib_g77__interface.c) = 1496ef3f862fc7b47d9122316598354128761e87
+SHA1 (patch-lib_matheval.h) = 35ccd772d5c8ed14f71a6ea74b9c50f37422d01c

Added files:

Index: pkgsrc/math/libmatheval/patches/patch-lib_g77__interface.c
diff -u /dev/null pkgsrc/math/libmatheval/patches/patch-lib_g77__interface.c:1.1
--- /dev/null   Tue Nov 10 15:43:51 2026
+++ pkgsrc/math/libmatheval/patches/patch-lib_g77__interface.c  Tue Nov 10 15:43:51 2026
@@ -0,0 +1,27 @@
+$NetBSD: patch-lib_g77__interface.c,v 1.1 2026/11/10 15:43:51 wiz Exp $
+
+From upstream:
+To avoid xmalloc from the test suite polluting the name space.
+
+--- lib/g77_interface.c.orig   2026-11-10 09:52:12.000000000 +0000
++++ lib/g77_interface.c
+@@ -30,6 +30,11 @@
+ #include "common.h"
+ #include "matheval.h"
+ 
++/* Fortran 77 interface is visible, like library interface.  */
++#if defined __GNUC__ && __GNUC__ >= 4
++#pragma GCC visibility push(default)
++#endif
++
+ /* Wrapper for evaluator_create() function.  Evaluator objects will be
+    passed between Fortran and C as 64-bit integers instead of void
+    pointers, thus size of void* is assumed to be less or equal of 64 bits
+@@ -259,3 +264,7 @@ evaluator_derivative_z__(int64_t *evaluator)
+ {
+       return (int64_t) evaluator_derivative_z((void *) *evaluator);
+ }
++
++#if defined __GNUC__ && __GNUC__ >= 4
++#pragma GCC visibility pop
++#endif
Index: pkgsrc/math/libmatheval/patches/patch-lib_matheval.h
diff -u /dev/null pkgsrc/math/libmatheval/patches/patch-lib_matheval.h:1.1
--- /dev/null   Tue Nov 10 15:43:51 2026
+++ pkgsrc/math/libmatheval/patches/patch-lib_matheval.h        Tue Nov 10 15:43:51 2026
@@ -0,0 +1,30 @@
+$NetBSD: patch-lib_matheval.h,v 1.1 2026/11/10 15:43:51 wiz Exp $
+
+From upstream:
+To avoid xmalloc from the test suite polluting the name space.
+
+--- lib/matheval.h.orig        2026-11-10 09:52:12.000000000 +0000
++++ lib/matheval.h
+@@ -24,6 +24,11 @@ extern "C" {
+ extern "C" {
+ #endif
+ 
++/* Library interface is visible, other symbols of library are hidden.  */
++#if defined __GNUC__ && __GNUC__ >= 4
++#pragma GCC visibility push(default)
++#endif
++
+ /* Create evaluator from string representing function.  Function
+    returns pointer that should be passed as first argument to all
+    other library functions.  If an error occurs, function will
+@@ -82,6 +87,10 @@ extern "C" {
+       extern void *evaluator_derivative_x(void *evaluator);
+       extern void *evaluator_derivative_y(void *evaluator);
+       extern void *evaluator_derivative_z(void *evaluator);
++
++#if defined __GNUC__ && __GNUC__ >= 4
++#pragma GCC visibility pop
++#endif
+ 
+ #ifdef __cplusplus
+ }



Home | Main Index | Thread Index | Old Index