tags 778159 + patch
thanks

Here's a patch to force -std=gnu99 and change inlines and prototypes to
C99 semantics. This is an alternative to the previous patch.

-- 
Andrew James
Linux for HP Helion OpenStack, Hewlett-Packard

Description: Fixes for new inline semantics related to GCC 5
GCC 5 defaults to C99. C99's extern inline is equivalent to C89's inline. 
.
See "Different semantics for inline functions",
https://gcc.gnu.org/gcc-5/porting_to.html

Author: Andrew James <andrew.ja...@hp.com>
Bug-Debian: https://bugs.debian.org/778159
Forwarded: no

--- a/Makefile.am
+++ b/Makefile.am
@@ -70,7 +70,8 @@
 	-D_LARGEFILE64_SOURCE \
 	$(LZO_CFLAGS) \
 	$(LIBBLKID_LIBS_CFLAGS) \
-	$(LIBGCRYPT_CFLAGS)
+	$(LIBGCRYPT_CFLAGS) \
+	-std=gnu99
 
 common_s2disk_libs=\
 	$(LZO_LIBS) \
--- a/bootsplash.c
+++ b/bootsplash.c
@@ -93,7 +93,7 @@
 	}
 }
 
-inline int bootsplash_progress(int p)
+extern inline int bootsplash_progress(int p)
 {
 	char buf[MAX_LINE_SIZE];
 
--- a/loglevel.c
+++ b/loglevel.c
@@ -16,7 +16,7 @@
 static FILE *printk_file;
 static int proc_mounted = 0;
 
-inline void open_printk(void)
+extern inline void open_printk(void)
 {
 	struct stat stat_buf;
 	char *procname = "/proc/sys/kernel/printk";
@@ -32,7 +32,7 @@
         printk_file = fopen(procname, "r+");
 }
 
-inline int get_kernel_console_loglevel(void)
+extern inline int get_kernel_console_loglevel(void)
 {
         int level = -1;
 
@@ -43,7 +43,7 @@
         return level;
 }
 
-inline void set_kernel_console_loglevel(int level)
+extern inline void set_kernel_console_loglevel(int level)
 {
         if (printk_file) {
                 rewind(printk_file);
@@ -53,7 +53,7 @@
 
 }
 
-inline void close_printk(void)
+extern inline void close_printk(void)
 {
         if (printk_file)
                 fclose(printk_file);
--- a/loglevel.h
+++ b/loglevel.h
@@ -4,7 +4,7 @@
  * (c) 2007 Tim Dijkstra
  */
 
-inline void open_printk(void);
-inline int get_kernel_console_loglevel(void);
-inline void set_kernel_console_loglevel(int level);
-inline void close_printk(void);
+extern void open_printk(void);
+extern int get_kernel_console_loglevel(void);
+extern void set_kernel_console_loglevel(int level);
+extern void close_printk(void);

Reply via email to