cmocka: fix compilation on musl and aarch64*.
This commit is contained in:
parent
2e9d53d3da
commit
258ed3b9c0
|
@ -0,0 +1,34 @@
|
|||
commit f81e5b71ce78f33250347914dacc75c8463bf102
|
||||
Author: Breno Leitao <breno.leitao@gmail.com>
|
||||
Date: Wed Mar 29 15:22:38 2017 -0300
|
||||
|
||||
include: Check for previous declaration of uintptr_t
|
||||
|
||||
Adding a extra check before declaring uintptr_t. Currently musl uses
|
||||
macro __DEFINED_uintptr_t once it defines uintptr_t type. Checking
|
||||
this macro before defining it, and, defining it when uintptr_t is
|
||||
defined.
|
||||
|
||||
Signed-off-by: Breno Leitao <breno.leitao@gmail.com>
|
||||
|
||||
--- include/cmocka.h
|
||||
+++ include/cmocka.h
|
||||
@@ -110,7 +110,7 @@
|
||||
((LargestIntegralType)(value))
|
||||
|
||||
/* Smallest integral type capable of holding a pointer. */
|
||||
-#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED)
|
||||
+#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED) && !defined(__DEFINED_uintptr_t)
|
||||
# if defined(_WIN32)
|
||||
/* WIN32 is an ILP32 platform */
|
||||
typedef unsigned int uintptr_t;
|
||||
@@ -136,6 +136,8 @@
|
||||
|
||||
# define _UINTPTR_T
|
||||
# define _UINTPTR_T_DEFINED
|
||||
+# define __DEFINED_uintptr_t
|
||||
+
|
||||
#endif /* !defined(_UINTPTR_T) || !defined(_UINTPTR_T_DEFINED) */
|
||||
|
||||
/* Perform an unsigned cast to uintptr_t. */
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
--- include/cmocka.h
|
||||
+++ include/cmocka.h
|
||||
@@ -56,12 +56,16 @@ int __stdcall IsDebuggerPresent();
|
||||
|
||||
/* If __WORDSIZE is not set, try to figure it out and default to 32 bit. */
|
||||
#ifndef __WORDSIZE
|
||||
+#ifndef __GLIBC__
|
||||
+#include <bits/reg.h>
|
||||
+#else
|
||||
# if defined(__x86_64__) && !defined(__ILP32__)
|
||||
# define __WORDSIZE 64
|
||||
# else
|
||||
# define __WORDSIZE 32
|
||||
# endif
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#ifdef DOXYGEN
|
||||
/**
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'cmocka'
|
||||
pkgname=cmocka
|
||||
version=1.1.1
|
||||
revision=1
|
||||
revision=2
|
||||
build_style=cmake
|
||||
configure_args="-DUNIT_TESTING=ON"
|
||||
hostmakedepends="doxygen"
|
||||
|
@ -12,10 +12,6 @@ homepage="https://cmocka.org/"
|
|||
distfiles="https://cmocka.org/files/${version%.*}/cmocka-${version}.tar.xz"
|
||||
checksum=f02ef48a7039aa77191d525c5b1aee3f13286b77a13615d11bc1148753fc0389
|
||||
|
||||
case "$XBPS_TARGET_MACHINE" in
|
||||
aarch64*) broken="conflicting definitions of uinptr_t"
|
||||
esac
|
||||
|
||||
cmocka-devel_package() {
|
||||
depends="cmocka-${version}_${revision}"
|
||||
short_desc+=" - development files"
|
||||
|
|
Loading…
Reference in New Issue