diff --git a/fsck.ocfs2-fix-compile-error-when-glibc-upgrade.patch b/fsck.ocfs2-fix-compile-error-when-glibc-upgrade.patch new file mode 100644 index 0000000..8e2b116 --- /dev/null +++ b/fsck.ocfs2-fix-compile-error-when-glibc-upgrade.patch @@ -0,0 +1,183 @@ +From 0ffd58b223e24779420130522ea8ee359505f493 Mon Sep 17 00:00:00 2001 +From: Gang He +Date: Mon, 4 Sep 2017 14:08:59 +0800 +Subject: [PATCH] fsck.ocfs2: fix compile error when glibc upgrade +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +When glibc upgrade to glibc-2.26.90-14, there was a compile error in fsck.ocfs2, +the compile error messages like, + +In file included from /usr/include/string.h:431:0, + from ../include/ocfs2/ocfs2.h:41, + from pass4.c:32: +include/strings.h:37:1: error: unknown type name ‘errcode_t’; did you mean ‘mode_t’? + errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string, + ^~~~~~~~~ + mode_t +--- + fsck.ocfs2/Makefile | 2 +- + fsck.ocfs2/include/o2fsck_strings.h | 43 +++++++++++++++++++++++++++++++++++++ + fsck.ocfs2/include/strings.h | 44 ------------------------------------- + fsck.ocfs2/pass2.c | 2 +- + fsck.ocfs2/pass5.c | 2 +- + fsck.ocfs2/strings.c | 2 +- + 6 files changed, 48 insertions(+), 48 deletions(-) + create mode 100644 fsck.ocfs2/include/o2fsck_strings.h + delete mode 100644 fsck.ocfs2/include/strings.h + +diff --git a/fsck.ocfs2/Makefile b/fsck.ocfs2/Makefile +index 051ed74..baf1994 100644 +--- a/fsck.ocfs2/Makefile ++++ b/fsck.ocfs2/Makefile +@@ -64,7 +64,7 @@ HFILES = include/fsck.h \ + include/problem.h \ + include/refcount.h \ + include/slot_recovery.h \ +- include/strings.h \ ++ include/o2fsck_strings.h \ + include/util.h + + +diff --git a/fsck.ocfs2/include/o2fsck_strings.h b/fsck.ocfs2/include/o2fsck_strings.h +new file mode 100644 +index 0000000..69a1be9 +--- /dev/null ++++ b/fsck.ocfs2/include/o2fsck_strings.h +@@ -0,0 +1,43 @@ ++/* ++ * strings.h ++ * ++ * Copyright (C) 2002 Oracle Corporation. All rights reserved. ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public ++ * License as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public ++ * License along with this program; if not, write to the ++ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++ * Boston, MA 021110-1307, USA. ++ * ++ * Author: Zach Brown ++ */ ++ ++#ifndef __O2FSCK_STRINGS_H__ ++#define __O2FSCK_STRINGS_H__ ++ ++#include "ocfs2/ocfs2.h" ++#include "ocfs2/kernel-rbtree.h" ++ ++typedef struct _o2fsck_strings { ++ struct rb_root s_root; ++ size_t s_allocated; ++} o2fsck_strings; ++ ++int o2fsck_strings_exists(o2fsck_strings *strings, char *string, ++ size_t strlen); ++errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string, ++ size_t strlen, int *is_dup); ++void o2fsck_strings_init(o2fsck_strings *strings); ++void o2fsck_strings_free(o2fsck_strings *strings); ++size_t o2fsck_strings_bytes_allocated(o2fsck_strings *strings); ++ ++#endif /* __O2FSCK_STRINGS_H__ */ ++ +diff --git a/fsck.ocfs2/include/strings.h b/fsck.ocfs2/include/strings.h +deleted file mode 100644 +index 69a1be9..0000000 +--- a/fsck.ocfs2/include/strings.h ++++ /dev/null +@@ -1,44 +0,0 @@ +-/* +- * strings.h +- * +- * Copyright (C) 2002 Oracle Corporation. All rights reserved. +- * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public +- * License as published by the Free Software Foundation; either +- * version 2 of the License, or (at your option) any later version. +- * +- * This program is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * General Public License for more details. +- * +- * You should have received a copy of the GNU General Public +- * License along with this program; if not, write to the +- * Free Software Foundation, Inc., 59 Temple Place - Suite 330, +- * Boston, MA 021110-1307, USA. +- * +- * Author: Zach Brown +- */ +- +-#ifndef __O2FSCK_STRINGS_H__ +-#define __O2FSCK_STRINGS_H__ +- +-#include "ocfs2/ocfs2.h" +-#include "ocfs2/kernel-rbtree.h" +- +-typedef struct _o2fsck_strings { +- struct rb_root s_root; +- size_t s_allocated; +-} o2fsck_strings; +- +-int o2fsck_strings_exists(o2fsck_strings *strings, char *string, +- size_t strlen); +-errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string, +- size_t strlen, int *is_dup); +-void o2fsck_strings_init(o2fsck_strings *strings); +-void o2fsck_strings_free(o2fsck_strings *strings); +-size_t o2fsck_strings_bytes_allocated(o2fsck_strings *strings); +- +-#endif /* __O2FSCK_STRINGS_H__ */ +- +diff --git a/fsck.ocfs2/pass2.c b/fsck.ocfs2/pass2.c +index 181febb..a48a50b 100644 +--- a/fsck.ocfs2/pass2.c ++++ b/fsck.ocfs2/pass2.c +@@ -43,7 +43,7 @@ + #include "fsck.h" + #include "pass2.h" + #include "problem.h" +-#include "strings.h" ++#include "o2fsck_strings.h" + #include "util.h" + + static const char *whoami = "pass2"; +diff --git a/fsck.ocfs2/pass5.c b/fsck.ocfs2/pass5.c +index 5c2d899..bfad1b7 100644 +--- a/fsck.ocfs2/pass5.c ++++ b/fsck.ocfs2/pass5.c +@@ -40,7 +40,7 @@ + #include "fsck.h" + #include "pass5.h" + #include "problem.h" +-#include "strings.h" ++#include "o2fsck_strings.h" + #include "util.h" + + static const char *whoami = "pass5"; +diff --git a/fsck.ocfs2/strings.c b/fsck.ocfs2/strings.c +index 4ad3782..8a7a8d9 100644 +--- a/fsck.ocfs2/strings.c ++++ b/fsck.ocfs2/strings.c +@@ -31,7 +31,7 @@ + #include "ocfs2/ocfs2.h" + + #include "fsck.h" +-#include "strings.h" ++#include "o2fsck_strings.h" + #include "util.h" + + struct string_entry { +-- +1.8.5.6 + diff --git a/ocfs2-tools.changes b/ocfs2-tools.changes index 5562061..f2c10e9 100644 --- a/ocfs2-tools.changes +++ b/ocfs2-tools.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Sep 04 15:45:15 UTC 2017 - ghe@suse.com + +- Add fsck.ocfs2-fix-compile-error-when-glibc-upgrade.patch (bsc#1057008) + ------------------------------------------------------------------- Thu Mar 9 12:36:30 UTC 2017 - ghe@suse.com diff --git a/ocfs2-tools.spec b/ocfs2-tools.spec index e759c92..8cf3d78 100644 --- a/ocfs2-tools.spec +++ b/ocfs2-tools.spec @@ -20,7 +20,7 @@ Name: ocfs2-tools Version: 1.8.5 Release: 0 Summary: Oracle Cluster File System 2 Core Tools -License: GPL-2.0+ +License: GPL-2.0 Group: System/Filesystems Url: https://ocfs2.wiki.kernel.org/ Source: ocfs2-tools-%{version}.tar.gz @@ -41,6 +41,7 @@ Patch228: 0007-Improve-error-message-if-DLM-service-is-unavailable.patch Patch405: 0007-vendor-Add-vendor-files-for-sles12.patch Patch406: 0008-ocfs2-tools-add-systemd-support-fix.patch Patch501: bnc#96864-ocfs2console-fix-starting-failure.patch +Patch502: fsck.ocfs2-fix-compile-error-when-glibc-upgrade.patch BuildRequires: autoconf BuildRequires: e2fsprogs-devel @@ -150,6 +151,7 @@ OCFS2 filesystem. %patch405 -p1 %patch406 -p1 %patch501 -p1 +%patch502 -p1 %build export PROJECT="ocfs2-tools"