Your message dated Wed, 21 Mar 2018 20:10:28 +0100
with message-id <[email protected]>
and subject line Re: [pkg-gnupg-maint] Bug#891663: [PATCH] libgpg-error: Add 
support for        the riscv64 architecture
has caused the Debian Bug report #891663,
regarding [PATCH] libgpg-error: Add support for the riscv64 architecture
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
891663: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=891663
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: libgpg-error
Version: 1.27-6
X-Debbugs-CC: [email protected]
Tags: patch
Severity: wishlist
User: [email protected]
Usertags: riscv64

Hello,

we are in the process of bootstrapping a Debian port for the
riscv64 architecture (https://wiki.debian.org/RISC-V).  The
libgpg-error package is part of the build-dependency chain for
the essential package set, so we need to build it for riscv64 to
be able to complete the bootstrap process.

AIUI, libgpg-error requires a per-architecture header file
"src/syscfg/lock-obj-pub.<arch-triple>.h", which upstream doesn't
provide for riscv64.  Based on the information in the header
files for the other architectures, I have created such a file for
riscv64 by cross-building and executing (in qemu) the
gen-posix-lock-obj helper program:

$ riscv64-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../src -I..   -Wdate-time 
-D_FORTIFY_SOURCE=2  -g -O2 
-fdebug-prefix-map=/usr/src/repositories/libgpg-error=. 
-specs=/usr/share/dpkg/pie-compile.specs -fstack-protector-strong -Wformat 
-Werror=format-security -Wall -Wpointer-arith -Wno-psabi -fvisibility=hidden -c 
-o gen-posix-lock-obj.o ../../src/gen-posix-lock-obj.c
$ /bin/bash ../libtool  --tag=CC   --mode=link riscv64-linux-gnu-gcc  -g -O2 
-fdebug-prefix-map=/usr/src/repositories/libgpg-error=. 
-specs=/usr/share/dpkg/pie-compile.specs -fstack-protector-strong -Wformat 
-Werror=format-security -Wall -Wpointer-arith -Wno-psabi -fvisibility=hidden  
-specs=/usr/share/dpkg/pie-link.specs -Wl,-z,relro -Wl,-z,now -o 
gen-posix-lock-obj gen-posix-lock-obj.o
libtool: link: riscv64-linux-gnu-gcc -g -O2 
-fdebug-prefix-map=/usr/src/repositories/libgpg-error=. 
-specs=/usr/share/dpkg/pie-compile.specs -fstack-protector-strong -Wformat 
-Werror=format-security -Wall -Wpointer-arith -Wno-psabi -fvisibility=hidden 
-specs=/usr/share/dpkg/pie-link.specs -Wl,-z -Wl,relro -Wl,-z -Wl,now -o 
gen-posix-lock-obj gen-posix-lock-obj.o
$ ./gen-posix-lock-obj   # (executed in qemu via binfmt-misc)
## lock-obj-pub.riscv64-unknown-linux-gnu.h
## File created by gen-posix-lock-obj - DO NOT EDIT
## To be included by mkheader into gpg-error.h

typedef struct
{
  long _vers;
  union {
    volatile char _priv[40];
    long _x_align;
    long *_xp_align;
  } u;
} gpgrt_lock_t;

#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0}}}
##
## Local Variables:
## mode: c
## buffer-read-only: t
## End:
##

Attached is the raw header file as well as a patch for the
packaging to carry this header file as a Debian patch.  I would
apprechiate very much if you could upload a new package version
that includes this patch to unstable in the near future as we
depend on it for continuing our bootstrap efforts.

Regards,
Karsten
-- 
Gem. Par. 28 Abs. 4 Bundesdatenschutzgesetz widerspreche ich der Nutzung
sowie der Weitergabe meiner personenbezogenen Daten für Zwecke der
Werbung sowie der Markt- oder Meinungsforschung.
## lock-obj-pub.riscv64-unknown-linux-gnu.h
## File created by gen-posix-lock-obj - DO NOT EDIT
## To be included by mkheader into gpg-error.h

typedef struct
{
  long _vers;
  union {
    volatile char _priv[40];
    long _x_align;
    long *_xp_align;
  } u;
} gpgrt_lock_t;

#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0}}}
##
## Local Variables:
## mode: c
## buffer-read-only: t
## End:
##
>From cec778b68abe56de49f838af5754348494778abe Mon Sep 17 00:00:00 2001
From: Karsten Merker <[email protected]>
Date: Tue, 27 Feb 2018 19:43:09 +0000
Subject: [PATCH] add riscv64-unknown-linux-gnu lock-obj definitions

---
 ...bj-pub-file-for-riscv64-unknown-linux-gnu.patch | 30 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 2 files changed, 31 insertions(+)
 create mode 100644 debian/patches/0017-syscfg-Add-lock-obj-pub-file-for-riscv64-unknown-linux-gnu.patch

diff --git a/debian/patches/0017-syscfg-Add-lock-obj-pub-file-for-riscv64-unknown-linux-gnu.patch b/debian/patches/0017-syscfg-Add-lock-obj-pub-file-for-riscv64-unknown-linux-gnu.patch
new file mode 100644
index 0000000..19ec11a
--- /dev/null
+++ b/debian/patches/0017-syscfg-Add-lock-obj-pub-file-for-riscv64-unknown-linux-gnu.patch
@@ -0,0 +1,30 @@
+Index: libgpg-error/src/syscfg/lock-obj-pub.riscv64-unknown-linux-gnu.h
+===================================================================
+--- /dev/null
++++ libgpg-error/src/syscfg/lock-obj-pub.riscv64-unknown-linux-gnu.h
+@@ -0,0 +1,25 @@
++## lock-obj-pub.riscv64-unknown-linux-gnu.h
++## File created by gen-posix-lock-obj - DO NOT EDIT
++## To be included by mkheader into gpg-error.h
++
++typedef struct
++{
++  long _vers;
++  union {
++    volatile char _priv[40];
++    long _x_align;
++    long *_xp_align;
++  } u;
++} gpgrt_lock_t;
++
++#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
++                                    0,0,0,0,0,0,0,0, \
++                                    0,0,0,0,0,0,0,0, \
++                                    0,0,0,0,0,0,0,0, \
++                                    0,0,0,0,0,0,0,0}}}
++##
++## Local Variables:
++## mode: c
++## buffer-read-only: t
++## End:
++##
diff --git a/debian/patches/series b/debian/patches/series
index 9d0097a..af6b832 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -14,3 +14,4 @@
 0014-yat2m-Change-bug-report-address.patch
 0015-build-Install-yat2m.patch
 0016-use-compiler-flags-for-yat2m.patch
+0017-syscfg-Add-lock-obj-pub-file-for-riscv64-unknown-linux-gnu.patch
-- 
2.16.2


--- End Message ---
--- Begin Message ---
Version: 1.28-1


2018-02-28 02:54 NIIBE Yutaka:
Hello,

Thanks for your report.

Karsten Merker <[email protected]> wrote:
AIUI, libgpg-error requires a per-architecture header file
"src/syscfg/lock-obj-pub.<arch-triple>.h", which upstream doesn't
provide for riscv64.

As upstream, the change is pushed by the commit: 596c0d7

The support is there with the new upstream release (thanks for
forwarding, and for preparing the new upstream release!):

 
https://sources.debian.org/src/libgpg-error/1.28-1/src/syscfg/lock-obj-pub.riscv64-unknown-linux-gnu.h/

So I guess that the bug can be closed, doing it now.


Cheers.
--
Manuel A. Fernandez Montecelo <[email protected]>

--- End Message ---

Reply via email to