From 60fdfdfbc1b3139e18fc71a6567f38d2ce997ed0 Mon Sep 17 00:00:00 2001 From: q66 Date: Thu, 20 Dec 2018 18:25:54 +0100 Subject: [PATCH] Ice: fix build on ppc64 targets --- srcpkgs/Ice/patches/archs.patch | 62 +++++++++++++++++++++++++++++++++ srcpkgs/Ice/template | 2 +- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/Ice/patches/archs.patch diff --git a/srcpkgs/Ice/patches/archs.patch b/srcpkgs/Ice/patches/archs.patch new file mode 100644 index 00000000000..2c1f9c5d7e7 --- /dev/null +++ b/srcpkgs/Ice/patches/archs.patch @@ -0,0 +1,62 @@ +--- cpp/include/IceUtil/Config.h ++++ cpp/include/IceUtil/Config.h +@@ -20,31 +20,28 @@ + # include + #endif + +-#if defined(__i386) || defined(_M_IX86) || defined(__x86_64) || \ +- defined(_M_X64) || defined(_M_IA64) || defined(__alpha__) || \ +- defined(__ARMEL__) || defined(_M_ARM_FP) || \ +- defined(__MIPSEL__) || (defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN)) +-# define ICE_LITTLE_ENDIAN +-#elif defined(__sparc) || defined(__sparc__) || defined(__hppa) || \ +- defined(__ppc__) || defined(__powerpc) || defined(_ARCH_COM) || \ +- defined(__MIPSEB__) || (defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN)) +-# define ICE_BIG_ENDIAN +-#else +-# error "Unknown architecture" ++#if defined(HAVE_ENDIAN_H) ++# include ++# if __BYTE_ORDER==__LITTLE_ENDIAN ++# define ICE_LITTLE_ENDIAN ++# elif __BYTE_ORDER==__BIG_ENDIAN ++# define ICE_BIG_ENDIAN ++# else ++# error "Unknown endian type" ++# endif + #endif + + // + // 32 or 64 bit mode? + // +-#if defined(__sun) && (defined(__sparcv9) || defined(__x86_64)) || \ +- defined(__linux) && defined(__x86_64) || \ +- defined(__hppa) && defined(__LP64__) || \ +- defined(_ARCH_COM) && defined(__64BIT__) || \ +- defined(__alpha__) || \ +- defined(_WIN64) +-# define ICE_64 +-#else +-# define ICE_32 ++#if defined(HAVE_LIMITS_H) ++# include ++# include ++# if __WORDSIZE == 64 ++# define ICE_64 ++# else ++# define ICE_32 ++# endif + #endif + + // +--- cpp/src/IceUtil/Makefile ++++ cpp/src/IceUtil/Makefile +@@ -41,7 +41,7 @@ + include $(top_srcdir)/config/Make.rules + + CPPFLAGS := $(CPPFLAGS) $(ICEUTIL_FLAGS) -DICE_UTIL_API_EXPORTS -I.. +-LINKWITH := $(ICEUTIL_OS_LIBS) ++LINKWITH := $(ICEUTIL_OS_LIBS) -lrt + + ifeq ($(STATICLIBS),yes) + $(libdir)/$(LIBNAME): $(OBJS) diff --git a/srcpkgs/Ice/template b/srcpkgs/Ice/template index 34f542f943a..dec0d18b7a7 100644 --- a/srcpkgs/Ice/template +++ b/srcpkgs/Ice/template @@ -3,12 +3,12 @@ pkgname=Ice version=3.5.1 revision=20 build_wrksrc=cpp -homepage="http://www.zeroc.com" # XXX: other language bindings makedepends="zlib-devel bzip2-devel mcpp-devel db-devel expat-devel libressl-devel" short_desc="The Internet Communications Engine (Ice)" maintainer="Juan RP " license="GPL-2, ICE" +homepage="http://www.zeroc.com" distfiles="${homepage}/download/Ice/${version%.*}/${pkgname}-${version}.tar.gz" checksum=989e51194c6adadbd156da3288e37bad847b93b3b876502e83033b70493af392