summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO5
-rw-r--r--PKGBUILD13
-rw-r--r--tests_dynamic_exceptions.patch70
3 files changed, 81 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a199a089c607..c36a1b23d416 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = duma
pkgdesc = Detect Unintended Memory Access (D.U.M.A.) - A Red-Zone memory allocator
pkgver = 2.5.21
- pkgrel = 1
+ pkgrel = 2
url = https://github.com/johnsonjh/duma
arch = i686
arch = x86_64
@@ -9,7 +9,8 @@ pkgbase = duma
depends = bash
depends = gcc-libs
source = https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_2_5_21.tar.gz
+ source = tests_dynamic_exceptions.patch
sha256sums = 470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59
+ sha256sums = b83fdf43711da3ff065592da9c45fe6efd422e4f9585159e1e11dc327307697b
pkgname = duma
-
diff --git a/PKGBUILD b/PKGBUILD
index 8ced2893a42e..3926d63adba6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,29 +4,32 @@
pkgname=duma
pkgver=2.5.21
-pkgrel=1
+pkgrel=2
pkgdesc='Detect Unintended Memory Access (D.U.M.A.) - A Red-Zone memory allocator'
arch=('i686' 'x86_64')
url='https://github.com/johnsonjh/duma'
license=('GPL')
depends=('bash' 'gcc-libs')
_pkgver="${pkgver//./_}"
-source=("https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_${_pkgver}.tar.gz")
-sha256sums=('470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59')
+source=("https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_${_pkgver}.tar.gz"
+ "tests_dynamic_exceptions.patch")
+sha256sums=('470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59'
+ 'b83fdf43711da3ff065592da9c45fe6efd422e4f9585159e1e11dc327307697b')
prepare() {
cd "${pkgname}-VERSION_${_pkgver}"
# sed -i 's/CPPFLAGS=/\0-std=gnu++98 /g' GNUmakefile
+ patch -p1 -i ../tests_dynamic_exceptions.patch
}
build() {
cd "${pkgname}-VERSION_${_pkgver}"
- make
+ make --jobs=1
}
check() {
cd "${pkgname}-VERSION_${_pkgver}"
-# make check
+ make check
}
package() {
diff --git a/tests_dynamic_exceptions.patch b/tests_dynamic_exceptions.patch
new file mode 100644
index 000000000000..fa492c62ccc9
--- /dev/null
+++ b/tests_dynamic_exceptions.patch
@@ -0,0 +1,70 @@
+diff --color -ruN 1/tests/testoperators.cpp 2/tests/testoperators.cpp
+--- 1/tests/testoperators.cpp 2021-02-14 17:36:00.000000000 +0100
++++ 2/tests/testoperators.cpp 2021-09-13 11:26:30.797313059 +0200
+@@ -37,26 +37,26 @@
+ {
+ public:
+ /* 1x : SINGLE OBJECT FORM - NO DEBUG INFORMATION */
+- void * operator new( DUMA_SIZE_T ) throw(std::bad_alloc);
++ void * operator new( DUMA_SIZE_T ) throw();
+ void * operator new( DUMA_SIZE_T , const std::nothrow_t & ) throw();
+ void operator delete( void * ) throw();
+ void operator delete( void * , const std::nothrow_t & ) throw();
+
+ /* 2x : ARRAY OBJECT FORM - NO DEBUG INFORMATION */
+- void * operator new[]( DUMA_SIZE_T ) throw(std::bad_alloc);
++ void * operator new[]( DUMA_SIZE_T ) throw();
+ void * operator new[]( DUMA_SIZE_T , const std::nothrow_t & ) throw();
+ void operator delete[]( void * ) throw();
+ void operator delete[]( void *, const std::nothrow_t & ) throw();
+
+ #ifndef DUMA_NO_LEAKDETECTION
+ /* 3x : SINGLE OBJECT FORM - WITH DEBUG INFORMATION */
+- void * operator new( DUMA_SIZE_T, const char *, int ) throw( std::bad_alloc );
++ void * operator new( DUMA_SIZE_T, const char *, int ) throw();
+ void * operator new( DUMA_SIZE_T, const std::nothrow_t &, const char *, int ) throw();
+ void operator delete( void *, const char *, int ) throw();
+ void operator delete( void *, const std::nothrow_t &, const char *, int ) throw();
+
+ /* 4x : ARRAY OBJECT FORM - WITH DEBUG INFORMATION */
+- void * operator new[]( DUMA_SIZE_T, const char *, int ) throw( std::bad_alloc );
++ void * operator new[]( DUMA_SIZE_T, const char *, int ) throw();
+ void * operator new[]( DUMA_SIZE_T, const std::nothrow_t &, const char *, int ) throw();
+ void operator delete[]( void *, const char *, int ) throw();
+ void operator delete[]( void *, const std::nothrow_t &, const char *, int ) throw();
+@@ -70,7 +70,7 @@
+ /* 1x : SINGLE OBJECT FORM - NO DEBUG INFORMATION */
+
+ void * optest::operator new( DUMA_SIZE_T s )
+-throw(std::bad_alloc)
++throw()
+ {
+ (void)s;
+ return ::new optest;
+@@ -101,7 +101,7 @@
+
+ /* 2x : ARRAY OBJECT FORM - NO DEBUG INFORMATION */
+ void * optest::operator new[]( DUMA_SIZE_T s )
+-throw(std::bad_alloc)
++throw()
+ {
+ return ::new optest[ s / sizeof(optest) ]; // "s / sizeof()" not correct but works for this test
+ }
+@@ -129,7 +129,7 @@
+
+ /* 3x : SINGLE OBJECT FORM - WITH DEBUG INFORMATION */
+ void * optest::operator new( DUMA_SIZE_T s, const char * f, int l )
+-throw( std::bad_alloc )
++throw()
+ {
+ (void)s;
+ return ::new(f,l) optest;
+@@ -157,7 +157,7 @@
+
+ /* 4x : ARRAY OBJECT FORM - WITH DEBUG INFORMATION */
+ void * optest::operator new[]( DUMA_SIZE_T s, const char * f, int l )
+-throw( std::bad_alloc )
++throw()
+ {
+ return ::new(f,l) optest[s / sizeof(optest)]; // "s / sizeof()" not correct but works for this test
+ }