* Re: [PR PATCH] [Updated] mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
@ 2023-09-10 16:58 ` yoshiyoshyosh
2023-09-10 17:03 ` yoshiyoshyosh
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 16:58 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 885 bytes --]
There is an updated pull request by yoshiyoshyosh against master on the void-packages repository
https://github.com/yoshiyoshyosh/void-packages mhash
https://github.com/void-linux/void-packages/pull/46005
mhash: make boolean usage musl C++ portable.
#### Testing the changes
- I tested the changes in this PR: **YES**
#### Local build testing
- I built this PR locally for my native architecture, (`x86_64-glibc`)
- I built this PR locally for these architectures:
- `x86_64-musl` (crossbuild)
- `i686` (crossbuild)
mhash uses `_Bool` directly for `#define mhash_boolean _Bool`. [musl C++ doesn't define `_Bool`](https://www.openwall.com/lists/musl/2017/07/28/1), so any C++ projects that include it will fail to build on musl. This fixes that without impacting any C projects
A patch file from https://github.com/void-linux/void-packages/pull/46005.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mhash-46005.patch --]
[-- Type: text/x-diff, Size: 1581 bytes --]
From 7aed7be9924c55825647f31f796b214d703b6485 Mon Sep 17 00:00:00 2001
From: yosh <yosh-git@riseup.net>
Date: Sun, 10 Sep 2023 12:28:33 -0400
Subject: [PATCH] mhash: make boolean usage musl C++ portable.
---
srcpkgs/mhash/patches/fix-cpp-bools.patch | 21 +++++++++++++++++++++
srcpkgs/mhash/template | 3 ++-
2 files changed, 23 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/mhash/patches/fix-cpp-bools.patch
diff --git a/srcpkgs/mhash/patches/fix-cpp-bools.patch b/srcpkgs/mhash/patches/fix-cpp-bools.patch
new file mode 100644
index 0000000000000..418d25c7207e1
--- /dev/null
+++ b/srcpkgs/mhash/patches/fix-cpp-bools.patch
@@ -0,0 +1,21 @@
+--- a/include/mutils/mutils.h
++++ b/include/mutils/mutils.h
+@@ -21,6 +21,9 @@
+ #if !defined(__MUTILS_H)
+ #define __MUTILS_H
+
++#ifndef __cplusplus
++#include <stdbool.h>
++#endif
+ #include <mutils/mincludes.h>
+
+ #if defined(const)
+@@ -97,7 +100,7 @@ typedef unsigned char mutils_word8;
+ */
+
+ #if defined(HAVE__BOOL)
+-#define mutils_boolean _Bool
++#define mutils_boolean bool
+ #else
+ typedef char mutils_boolean;
+ #endif
diff --git a/srcpkgs/mhash/template b/srcpkgs/mhash/template
index 6f753713a513d..95964b73abada 100644
--- a/srcpkgs/mhash/template
+++ b/srcpkgs/mhash/template
@@ -1,8 +1,9 @@
# Template file for 'mhash'
pkgname=mhash
version=0.9.9.9
-revision=1
+revision=2
build_style=gnu-configure
+checkdepends="perl"
short_desc="Uniform interface to a large number of hash algorithms"
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="LGPL-2.1-or-later"
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
2023-09-10 16:58 ` [PR PATCH] [Updated] " yoshiyoshyosh
@ 2023-09-10 17:03 ` yoshiyoshyosh
2023-09-10 17:53 ` yoshiyoshyosh
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 17:03 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 224 bytes --]
New comment by yoshiyoshyosh on void-packages repository
https://github.com/void-linux/void-packages/pull/46005#issuecomment-1712876250
Comment:
not sure why checks are failing on `i686` and `x86_64-musl` in the slightest
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
2023-09-10 16:58 ` [PR PATCH] [Updated] " yoshiyoshyosh
2023-09-10 17:03 ` yoshiyoshyosh
@ 2023-09-10 17:53 ` yoshiyoshyosh
2023-09-10 18:10 ` [PR PATCH] [Updated] " yoshiyoshyosh
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 17:53 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 265 bytes --]
New comment by yoshiyoshyosh on void-packages repository
https://github.com/void-linux/void-packages/pull/46005#issuecomment-1712876250
Comment:
not sure why checks are failing on `i686` and `x86_64-musl` in the slightest. didn't change anything about that code.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PR PATCH] [Updated] mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
` (2 preceding siblings ...)
2023-09-10 17:53 ` yoshiyoshyosh
@ 2023-09-10 18:10 ` yoshiyoshyosh
2023-09-10 18:13 ` yoshiyoshyosh
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 18:10 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 885 bytes --]
There is an updated pull request by yoshiyoshyosh against master on the void-packages repository
https://github.com/yoshiyoshyosh/void-packages mhash
https://github.com/void-linux/void-packages/pull/46005
mhash: make boolean usage musl C++ portable.
#### Testing the changes
- I tested the changes in this PR: **YES**
#### Local build testing
- I built this PR locally for my native architecture, (`x86_64-glibc`)
- I built this PR locally for these architectures:
- `x86_64-musl` (crossbuild)
- `i686` (crossbuild)
mhash uses `_Bool` directly for `#define mhash_boolean _Bool`. [musl C++ doesn't define `_Bool`](https://www.openwall.com/lists/musl/2017/07/28/1), so any C++ projects that include it will fail to build on musl. This fixes that without impacting any C projects
A patch file from https://github.com/void-linux/void-packages/pull/46005.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mhash-46005.patch --]
[-- Type: text/x-diff, Size: 2033 bytes --]
From 1030401e3d54ed832f4c52bd26cf8c96f32a9b59 Mon Sep 17 00:00:00 2001
From: yosh <yosh-git@riseup.net>
Date: Sun, 10 Sep 2023 12:28:33 -0400
Subject: [PATCH] mhash: make boolean usage musl C++ portable.
---
srcpkgs/mhash/patches/fix-cpp-bools.patch | 21 +++++++++++++++++++++
srcpkgs/mhash/template | 7 ++++++-
2 files changed, 27 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/mhash/patches/fix-cpp-bools.patch
diff --git a/srcpkgs/mhash/patches/fix-cpp-bools.patch b/srcpkgs/mhash/patches/fix-cpp-bools.patch
new file mode 100644
index 0000000000000..418d25c7207e1
--- /dev/null
+++ b/srcpkgs/mhash/patches/fix-cpp-bools.patch
@@ -0,0 +1,21 @@
+--- a/include/mutils/mutils.h
++++ b/include/mutils/mutils.h
+@@ -21,6 +21,9 @@
+ #if !defined(__MUTILS_H)
+ #define __MUTILS_H
+
++#ifndef __cplusplus
++#include <stdbool.h>
++#endif
+ #include <mutils/mincludes.h>
+
+ #if defined(const)
+@@ -97,7 +100,7 @@ typedef unsigned char mutils_word8;
+ */
+
+ #if defined(HAVE__BOOL)
+-#define mutils_boolean _Bool
++#define mutils_boolean bool
+ #else
+ typedef char mutils_boolean;
+ #endif
diff --git a/srcpkgs/mhash/template b/srcpkgs/mhash/template
index 6f753713a513d..5a4c497927b24 100644
--- a/srcpkgs/mhash/template
+++ b/srcpkgs/mhash/template
@@ -1,8 +1,9 @@
# Template file for 'mhash'
pkgname=mhash
version=0.9.9.9
-revision=1
+revision=2
build_style=gnu-configure
+checkdepends="perl"
short_desc="Uniform interface to a large number of hash algorithms"
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="LGPL-2.1-or-later"
@@ -10,6 +11,10 @@ homepage="http://mhash.sourceforge.net/"
distfiles="$SOURCEFORGE_SITE/project/mhash/mhash/${version}/mhash-${version}.tar.bz2"
checksum=56521c52a9033779154432d0ae47ad7198914785265e1f570cee21ab248dfef0
+case "$XBPS_TARGET_ARCH" in
+ i686*|x86_64-musl) make_check=no ;; # tests fail without a hint as to why
+esac
+
mhash-devel_package() {
short_desc+=" - development files"
depends="${sourcepkg}>=${version}_${revision}"
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PR PATCH] [Updated] mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
` (3 preceding siblings ...)
2023-09-10 18:10 ` [PR PATCH] [Updated] " yoshiyoshyosh
@ 2023-09-10 18:13 ` yoshiyoshyosh
2023-09-10 19:53 ` yoshiyoshyosh
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 18:13 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 885 bytes --]
There is an updated pull request by yoshiyoshyosh against master on the void-packages repository
https://github.com/yoshiyoshyosh/void-packages mhash
https://github.com/void-linux/void-packages/pull/46005
mhash: make boolean usage musl C++ portable.
#### Testing the changes
- I tested the changes in this PR: **YES**
#### Local build testing
- I built this PR locally for my native architecture, (`x86_64-glibc`)
- I built this PR locally for these architectures:
- `x86_64-musl` (crossbuild)
- `i686` (crossbuild)
mhash uses `_Bool` directly for `#define mhash_boolean _Bool`. [musl C++ doesn't define `_Bool`](https://www.openwall.com/lists/musl/2017/07/28/1), so any C++ projects that include it will fail to build on musl. This fixes that without impacting any C projects
A patch file from https://github.com/void-linux/void-packages/pull/46005.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mhash-46005.patch --]
[-- Type: text/x-diff, Size: 2036 bytes --]
From 6a9ca5c018a64793a0ad430bd2237302c4caafd7 Mon Sep 17 00:00:00 2001
From: yosh <yosh-git@riseup.net>
Date: Sun, 10 Sep 2023 12:28:33 -0400
Subject: [PATCH] mhash: make boolean usage musl C++ portable.
---
srcpkgs/mhash/patches/fix-cpp-bools.patch | 21 +++++++++++++++++++++
srcpkgs/mhash/template | 7 ++++++-
2 files changed, 27 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/mhash/patches/fix-cpp-bools.patch
diff --git a/srcpkgs/mhash/patches/fix-cpp-bools.patch b/srcpkgs/mhash/patches/fix-cpp-bools.patch
new file mode 100644
index 0000000000000..418d25c7207e1
--- /dev/null
+++ b/srcpkgs/mhash/patches/fix-cpp-bools.patch
@@ -0,0 +1,21 @@
+--- a/include/mutils/mutils.h
++++ b/include/mutils/mutils.h
+@@ -21,6 +21,9 @@
+ #if !defined(__MUTILS_H)
+ #define __MUTILS_H
+
++#ifndef __cplusplus
++#include <stdbool.h>
++#endif
+ #include <mutils/mincludes.h>
+
+ #if defined(const)
+@@ -97,7 +100,7 @@ typedef unsigned char mutils_word8;
+ */
+
+ #if defined(HAVE__BOOL)
+-#define mutils_boolean _Bool
++#define mutils_boolean bool
+ #else
+ typedef char mutils_boolean;
+ #endif
diff --git a/srcpkgs/mhash/template b/srcpkgs/mhash/template
index 6f753713a513d..f193dfca61084 100644
--- a/srcpkgs/mhash/template
+++ b/srcpkgs/mhash/template
@@ -1,8 +1,9 @@
# Template file for 'mhash'
pkgname=mhash
version=0.9.9.9
-revision=1
+revision=2
build_style=gnu-configure
+checkdepends="perl"
short_desc="Uniform interface to a large number of hash algorithms"
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="LGPL-2.1-or-later"
@@ -10,6 +11,10 @@ homepage="http://mhash.sourceforge.net/"
distfiles="$SOURCEFORGE_SITE/project/mhash/mhash/${version}/mhash-${version}.tar.bz2"
checksum=56521c52a9033779154432d0ae47ad7198914785265e1f570cee21ab248dfef0
+case "$XBPS_TARGET_MACHINE" in
+ i686*|x86_64-musl) make_check=no ;; # tests fail without a hint as to why
+esac
+
mhash-devel_package() {
short_desc+=" - development files"
depends="${sourcepkg}>=${version}_${revision}"
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PR PATCH] [Updated] mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
` (4 preceding siblings ...)
2023-09-10 18:13 ` yoshiyoshyosh
@ 2023-09-10 19:53 ` yoshiyoshyosh
2023-09-10 19:55 ` yoshiyoshyosh
2023-09-10 20:24 ` [PR PATCH] [Merged]: " classabbyamp
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 19:53 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 885 bytes --]
There is an updated pull request by yoshiyoshyosh against master on the void-packages repository
https://github.com/yoshiyoshyosh/void-packages mhash
https://github.com/void-linux/void-packages/pull/46005
mhash: make boolean usage musl C++ portable.
#### Testing the changes
- I tested the changes in this PR: **YES**
#### Local build testing
- I built this PR locally for my native architecture, (`x86_64-glibc`)
- I built this PR locally for these architectures:
- `x86_64-musl` (crossbuild)
- `i686` (crossbuild)
mhash uses `_Bool` directly for `#define mhash_boolean _Bool`. [musl C++ doesn't define `_Bool`](https://www.openwall.com/lists/musl/2017/07/28/1), so any C++ projects that include it will fail to build on musl. This fixes that without impacting any C projects
A patch file from https://github.com/void-linux/void-packages/pull/46005.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mhash-46005.patch --]
[-- Type: text/x-diff, Size: 2580 bytes --]
From 3e1a18f33a4395cd54ebf0641fd9504831f6653b Mon Sep 17 00:00:00 2001
From: yosh <yosh-git@riseup.net>
Date: Sun, 10 Sep 2023 12:28:33 -0400
Subject: [PATCH] mhash: make boolean usage musl C++ portable.
---
srcpkgs/mhash/patches/fix-cpp-bools.patch | 21 ++++++++++++++++++
.../patches/fix-tests-use-after-free.patch | 22 +++++++++++++++++++
srcpkgs/mhash/template | 3 ++-
3 files changed, 45 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/mhash/patches/fix-cpp-bools.patch
create mode 100644 srcpkgs/mhash/patches/fix-tests-use-after-free.patch
diff --git a/srcpkgs/mhash/patches/fix-cpp-bools.patch b/srcpkgs/mhash/patches/fix-cpp-bools.patch
new file mode 100644
index 0000000000000..418d25c7207e1
--- /dev/null
+++ b/srcpkgs/mhash/patches/fix-cpp-bools.patch
@@ -0,0 +1,21 @@
+--- a/include/mutils/mutils.h
++++ b/include/mutils/mutils.h
+@@ -21,6 +21,9 @@
+ #if !defined(__MUTILS_H)
+ #define __MUTILS_H
+
++#ifndef __cplusplus
++#include <stdbool.h>
++#endif
+ #include <mutils/mincludes.h>
+
+ #if defined(const)
+@@ -97,7 +100,7 @@ typedef unsigned char mutils_word8;
+ */
+
+ #if defined(HAVE__BOOL)
+-#define mutils_boolean _Bool
++#define mutils_boolean bool
+ #else
+ typedef char mutils_boolean;
+ #endif
diff --git a/srcpkgs/mhash/patches/fix-tests-use-after-free.patch b/srcpkgs/mhash/patches/fix-tests-use-after-free.patch
new file mode 100644
index 0000000000000..8208a8e028214
--- /dev/null
+++ b/srcpkgs/mhash/patches/fix-tests-use-after-free.patch
@@ -0,0 +1,22 @@
+--- a/src/hmac_test.c
++++ b/src/hmac_test.c
+@@ -76,8 +76,6 @@ int main()
+
+ /* Test No 2 */
+
+- mutils_memset(tmp, 0, sizeof(tmp));
+-
+ passlen=sizeof(KEY2) - 1;
+ password = (mutils_word8 *) mutils_malloc(passlen+1);
+ mutils_memcpy(password, KEY2, passlen);
+--- a/src/keygen_test.c
++++ b/src/keygen_test.c
+@@ -121,8 +121,6 @@ int main()
+
+ mhash_keygen_ext(KEYGEN_S2K_SALTED, data, key, keysize, password, passlen);
+
+- mutils_memset(tmp, 0, keysize * 2);
+-
+ tmp = mutils_asciify(key, keysize);
+
+ result = mutils_strcmp((mutils_word8 *) KEY2, tmp);
diff --git a/srcpkgs/mhash/template b/srcpkgs/mhash/template
index 6f753713a513d..95964b73abada 100644
--- a/srcpkgs/mhash/template
+++ b/srcpkgs/mhash/template
@@ -1,8 +1,9 @@
# Template file for 'mhash'
pkgname=mhash
version=0.9.9.9
-revision=1
+revision=2
build_style=gnu-configure
+checkdepends="perl"
short_desc="Uniform interface to a large number of hash algorithms"
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="LGPL-2.1-or-later"
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
` (5 preceding siblings ...)
2023-09-10 19:53 ` yoshiyoshyosh
@ 2023-09-10 19:55 ` yoshiyoshyosh
2023-09-10 20:24 ` [PR PATCH] [Merged]: " classabbyamp
7 siblings, 0 replies; 9+ messages in thread
From: yoshiyoshyosh @ 2023-09-10 19:55 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 275 bytes --]
New comment by yoshiyoshyosh on void-packages repository
https://github.com/void-linux/void-packages/pull/46005#issuecomment-1712876250
Comment:
~~not sure why checks are failing on `i686` and `x86_64-musl` in the slightest. didn't change anything about that code.~~ Fixed
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PR PATCH] [Merged]: mhash: make boolean usage musl C++ portable.
2023-09-10 16:53 [PR PATCH] mhash: make boolean usage musl C++ portable yoshiyoshyosh
` (6 preceding siblings ...)
2023-09-10 19:55 ` yoshiyoshyosh
@ 2023-09-10 20:24 ` classabbyamp
7 siblings, 0 replies; 9+ messages in thread
From: classabbyamp @ 2023-09-10 20:24 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 719 bytes --]
There's a merged pull request on the void-packages repository
mhash: make boolean usage musl C++ portable.
https://github.com/void-linux/void-packages/pull/46005
Description:
#### Testing the changes
- I tested the changes in this PR: **YES**
#### Local build testing
- I built this PR locally for my native architecture, (`x86_64-glibc`)
- I built this PR locally for these architectures:
- `x86_64-musl` (crossbuild)
- `i686` (crossbuild)
mhash uses `_Bool` directly for `#define mhash_boolean _Bool`. [musl C++ doesn't define `_Bool`](https://www.openwall.com/lists/musl/2017/07/28/1), so any C++ projects that include it will fail to build on musl. This fixes that without impacting any C projects
^ permalink raw reply [flat|nested] 9+ messages in thread