Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libEMF for openSUSE:Factory checked
in at 2022-09-27 20:13:03
Comparing /work/SRC/openSUSE:Factory/libEMF (Old)
and /work/SRC/openSUSE:Factory/.libEMF.new.2275 (New)
Package is "libEMF"
Tue Sep 27 20:13:03 2022 rev:28 rq:1005984 version:1.0.13
Changes:
--- /work/SRC/openSUSE:Factory/libEMF/libEMF.changes2021-11-15
15:27:49.913847553 +0100
+++ /work/SRC/openSUSE:Factory/.libEMF.new.2275/libEMF.changes 2022-09-27
20:13:05.845716753 +0200
@@ -1,0 +2,6 @@
+Sat Sep 24 08:37:06 UTC 2022 - Dirk M??ller
+
+- add riscv64-support.patch
+- enable build for riscv64
+
+---
New:
riscv64-support.patch
Other differences:
--
++ libEMF.spec ++
--- /var/tmp/diff_new_pack.9GMjIz/_old 2022-09-27 20:13:06.369717909 +0200
+++ /var/tmp/diff_new_pack.9GMjIz/_new 2022-09-27 20:13:06.373717918 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libEMF
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -22,12 +22,13 @@
Summary:Library for Manipulation with Enhanced MetaFile (EMF, ECMA-234)
License:GPL-2.0-or-later AND LGPL-2.1-or-later
Group: System/Libraries
-URL:http://libemf.sourceforge.net/
-Source:
http://downloads.sourceforge.net/libemf/libemf-%{version}.tar.gz
+URL:https://libemf.sourceforge.net/
+Source:
https://downloads.sourceforge.net/libemf/libemf-%{version}.tar.gz
+Patch1: riscv64-support.patch
Patch2: ppc64le-support.patch
BuildRequires: gcc-c++
# taken from includes/wine/winnt.h
-ExclusiveArch: alpha %{arm} aarch64 %{ix86} mips ppc ppc64 ppc64le sparc s390
s390x x86_64
+ExclusiveArch: alpha %{arm} aarch64 %{ix86} mips ppc ppc64 ppc64le riscv64
sparc s390 s390x x86_64
%description
LibEMF is a C/C++ library that provides a drawing toolkit based on
@@ -89,8 +90,7 @@
SO/OO graphics object.
%prep
-%setup -q -n libemf-%{version}
-%patch2 -p1
+%autosetup -p1 -n libemf-%{version}
%build
%configure\
++ riscv64-support.patch ++
From: Bo YU
Date: Mon, 27 Jun 2022 20:11:46 +0800
Subject: add-support-riscv64
add support for riscv64 arch
Original reference e2k code for supporting riscv64 arch
---
include/libEMF/wine/winnt.h | 75 +
1 file changed, 75 insertions(+)
diff --git a/include/libEMF/wine/winnt.h b/include/libEMF/wine/winnt.h
index 39e2f90..1609f38 100644
--- a/include/libEMF/wine/winnt.h
+++ b/include/libEMF/wine/winnt.h
@@ -69,6 +69,10 @@
# define WORDS_BIGENDIAN
# define BITFIELDS_BIGENDIAN
# undef ALLOW_UNALIGNED_ACCESS
+#elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64
+# undef WORDS_BIGENDIAN
+# undef BITFIELDS_BIGENDIAN
+# undef ALLOW_UNALIGNED_ACCESS
#elif !defined(RC_INVOKED)
# error Unknown CPU architecture!
#endif
@@ -1582,6 +1586,77 @@ typedef struct _CONTEXT {
#endif /* __e2k__ */
+#ifdef __riscv && __riscv_xlen==64
+/*
+ * FIXME:
+ *
+ * There is not yet an official CONTEXT structure defined for the
+ * riscv64 architecture (64-bit LE), so I just made one up.
+ *
+ */
+
+#define CONTEXT_RISCV64 0x400
+#define CONTEXT_CONTROL (CONTEXT_RISCV64 | 0x0001)
+#define CONTEXT_INTEGER (CONTEXT_RISCV64 | 0x0002)
+#define CONTEXT_FLOATING_POINT (CONTEXT_RISCV64 | 0x0004)
+#define CONTEXT_DEBUG_REGISTERS (CONTEXT_RISCV64 | 0x0008)
+
+#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER)
+
+#define EXCEPTION_READ_FAULT0
+#define EXCEPTION_WRITE_FAULT 1
+#define EXCEPTION_EXECUTE_FAULT 8
+
+typedef struct _CONTEXT {
+ULONG ContextFlags;
+
+/* This section is specified/returned if the ContextFlags word contains
+ the flag CONTEXT_INTEGER. */
+ULONGLONG X0;
+ULONGLONG X1;
+ULONGLONG X2;
+ULONGLONG X3;
+ULONGLONG X4;
+ULONGLONG X5;
+ULONGLONG X6;
+ULONGLONG X7;
+ULONGLONG X8;
+ULONGLONG X9;
+ULONGLONG X10;
+ULONGLONG X11;
+ULONGLONG X12;
+ULONGLONG X13;
+ULONGLONG X14;
+ULONGLONG X15;
+ULONGLONG X16;
+ULONGLONG X17;
+ULONGLONG X18;
+ULONGLONG X19;
+ULONGLONG X20;
+ULONGLONG X21;
+ULONGLONG X22;
+ULONGLONG X23;
+ULONGLONG X24;
+ULONGLONG X25;
+ULONGLONG X26;
+ULONGLONG X27;
+ULONGLONG X28;
+ULONGLONG X29;
+ULONGLONG X30;
+ULONGLONG X31;
+
+/* These are selected by CONTEXT_CONTROL */
+ULONGLONG Sp;
+ULONGLONG Pc;
+ULON