File libica-buildfix.patch of Package libica-1_3_9

--- configure.in
+++ configure.in
@@ -51,15 +51,19 @@
 
 CFLAGS="$cmdline_CFLAGS"
 
+IS_S390=no
 case $target in
      *s390x*)
           CFLAGS="$CFLAGS -D_LINUX_S390X_ -D_LINUX_S390_" 
+	  IS_S390=yes
           ;;
      *s390*)
           CFLAGS="$CFLAGS -D_LINUX_S390_" 
+	  IS_S390=yes
           ;;
 esac
 
+AM_CONDITIONAL([WANT_ICAINFO], [test "$IS_S390" = yes])
 
 AC_ARG_ENABLE(debug, 
               [--enable-debug          turn on debugging flags],
--- src/Makefile.am
+++ src/Makefile.am
@@ -8,6 +8,8 @@
                     mp_util.c mpsubadd.c prand.c rsa.c rsakygen.c sha1.c sieve.c\
                     x931prim.c sha256.c sha512.c
 
+if WANT_ICAINFO
 bin_PROGRAMS = icainfo
 
 icainfo_SOURCES = icainfo.c
+endif
--- src/icalinux.c
+++ src/icalinux.c
@@ -386,10 +386,8 @@
 #endif
 #endif
 
-#ifdef _LINUX_S390_
 #define __USE_GNU
 #include <string.h>
-#endif
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/ioctl.h>
@@ -416,8 +414,8 @@
 #include "ica_err.h"
 #include "mech_types.h"
 
-#ifdef _LINUX_S390_
 #include <unistd.h>
+#ifdef _LINUX_S390_
 #include <signal.h>
 #include <setjmp.h>
 #include <openssl/des.h>
--- src/sha256.c
+++ src/sha256.c
@@ -459,7 +459,7 @@
 
 	for (l = 0; l < 8; l++)
 		ctx->h[l] = BETOH32(h_ctx.h[l]);
-	memset(h_ctx, 0x00, sizeof h_ctx);
+	memset(&h_ctx, 0x00, sizeof h_ctx);
 #else
 	for (l = 0; l < src_len; l += SHA256_BLOCK_LENGTH,
 		     src += SHA256_BLOCK_LENGTH)
--- src/sha512.c
+++ src/sha512.c
@@ -469,7 +469,7 @@
 
 	for (l = 0; l < 8; l++)
 		ctx->h[l] = BETOH64(h_ctx.h[l]);
-	memset(h_ctx, 0x00, sizeof h_ctx);
+	memset(&h_ctx, 0x00, sizeof h_ctx);
 #else
 	for (l = 0; l < src_len; l += SHA512_BLOCK_LENGTH,
 		     src += SHA512_BLOCK_LENGTH)