From 394bf0f1ed07419d40f6024363cc1ffc7ef61bc6 Mon Sep 17 00:00:00 2001
|
From: Khem Raj <raj.khem@gmail.com>
|
Date: Thu, 31 Aug 2017 21:56:25 -0700
|
Subject: [PATCH] Replace need for error.h when it does not exist
|
|
helps fixing build on musl
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
---
|
Upstream-Status: Pending
|
|
brokerUpc.c | 5 ++++-
|
configure.ac | 2 +-
|
httpAdapter.c | 4 +++-
|
support.c | 14 +++++++++++++-
|
trace.c | 4 +++-
|
5 files changed, 24 insertions(+), 5 deletions(-)
|
|
diff --git a/brokerUpc.c b/brokerUpc.c
|
index 17cbd9b..fe2b347 100644
|
--- a/brokerUpc.c
|
+++ b/brokerUpc.c
|
@@ -20,8 +20,11 @@
|
|
#include <stdio.h>
|
#include <stdlib.h>
|
+#ifdef HAVE_ERROR_H
|
#include <error.h>
|
-
|
+#else
|
+#include <err.h>
|
+#endif
|
#include "support.h"
|
#include "native.h"
|
#include <sfcCommon/utilft.h>
|
diff --git a/configure.ac b/configure.ac
|
index ab2964e..d4915a1 100644
|
--- a/configure.ac
|
+++ b/configure.ac
|
@@ -517,7 +517,7 @@ fi
|
# Checks for header files.
|
AC_HEADER_STDC
|
AC_HEADER_SYS_WAIT
|
-AC_CHECK_HEADERS([fcntl.h limits.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h zlib.h])
|
+AC_CHECK_HEADERS([error.h fcntl.h limits.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h zlib.h])
|
AC_CHECK_HEADERS([cmpi/cmpimacs.h cmpi/cmpift.h cmpi/cmpidt.h],[],[AC_MSG_ERROR([Could not find required CPMI header.])])
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
diff --git a/httpAdapter.c b/httpAdapter.c
|
index 2719e6c..e768972 100644
|
--- a/httpAdapter.c
|
+++ b/httpAdapter.c
|
@@ -71,7 +71,9 @@
|
#ifdef HAVE_UDS
|
#include <grp.h>
|
#endif
|
-
|
+#ifndef __SOCKADDR_ARG
|
+# define __SOCKADDR_ARG struct sockaddr *__restrict
|
+#endif
|
/* should probably go into cimRequest.h */
|
#define CIM_PROTOCOL_ANY 0
|
#define CIM_PROTOCOL_CIM_XML 1
|
diff --git a/support.c b/support.c
|
index c7bba8b..5b3eef1 100644
|
--- a/support.c
|
+++ b/support.c
|
@@ -32,7 +32,11 @@
|
#include "support.h"
|
#include <stdio.h>
|
#include <stdlib.h>
|
+#ifdef HAVE_ERROR_H
|
#include <error.h>
|
+#else
|
+#include <err.h>
|
+#endif
|
#include <errno.h>
|
#include "native.h"
|
#include "trace.h"
|
@@ -331,17 +335,25 @@ loadQualifierDeclMI(const char *provider,
|
_SFCB_RETURN(NULL);
|
};
|
|
+
|
/****************************************************************************/
|
|
/** Exits the program with a memory allocation error message in case the given
|
* condition holds.
|
*/
|
+#if HAVE_ERROR_H
|
#define __ALLOC_ERROR(cond) \
|
if ( cond ) { \
|
error_at_line ( -1, errno, __FILE__, __LINE__, \
|
"unable to allocate requested memory." ); \
|
}
|
-
|
+#else
|
+#define __ALLOC_ERROR(cond) \
|
+ if ( cond ) { \
|
+ err(1, "%s:%d: %s", __FILE__, __LINE__, \
|
+ "unable to allocate requested memory." ); \
|
+ }
|
+#endif
|
/**
|
* flag to ensure MM is initialized only once
|
*/
|
diff --git a/trace.c b/trace.c
|
index d7f30db..438af46 100644
|
--- a/trace.c
|
+++ b/trace.c
|
@@ -279,7 +279,9 @@ _sfcb_trap(int tn)
|
}
|
#endif
|
}
|
-
|
+#ifndef SA_INTERRUPT
|
+# define SA_INTERRUPT 0x20000000 /* from GLIBC's <bits/sigaction.h> */
|
+#endif
|
sigHandler *
|
setSignal(int sn, sigHandler * sh, int flags)
|
{
|
--
|
2.14.1
|