e2fsprogs: fix build on OS X systems

On OS X systems, the compilation of e2fsprogs fails at subst.c due to a
missing sys/stat.h include:

    subst.c:333:14: error: variable has incomplete type 'struct stat'
            struct stat stbuf;
                        ^
    subst.c:333:9: note: forward declaration of 'struct stat'
            struct stat stbuf;
                   ^
    subst.c:392:8: warning: implicit declaration of function 'fstat' is invalid in C99
          [-Wimplicit-function-declaration]
                            if (fstat(fd, &stbuf) == 0) {
                                ^
    subst.c:438:12: warning: implicit declaration of function 'fchmod' is invalid in C99
          [-Wimplicit-function-declaration]
                                    (void) fchmod(ofd, 0444);
                                           ^
    2 warnings and 1 error generated.
    make[3]: *** [subst.o] Error 1

Declare the nescessary HAVE_SYS_STAT_H macro to include the required header in
order to avoid the undeclared stat structure.

Tested-By: David Thornley <david.thornley@touchstargroup.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
lede-17.01
Jo-Philipp Wich 2016-07-01 16:41:46 +02:00
parent eaf0d22421
commit 70b4e46804
2 changed files with 11 additions and 1 deletions

View File

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=e2fsprogs
PKG_VERSION:=1.43.1
PKG_MD5SUM:=1775f3f0eed9dee1c5f39e08d1964a97
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/e2fsprogs

View File

@ -0,0 +1,10 @@
--- a/util/subst.c
+++ b/util/subst.c
@@ -9,6 +9,7 @@
#include "config.h"
#else
#define HAVE_SYS_TIME_H
+#define HAVE_SYS_STAT_H
#endif
#include <stdio.h>
#include <errno.h>