summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Zoulas <christos@zoulas.com>2008-07-15 17:45:13 +0000
committerChristos Zoulas <christos@zoulas.com>2008-07-15 17:45:13 +0000
commitcf88077239885d122957b916f227fcf600fd99d8 (patch)
tree958ba1ac3f393d8d57899439337fd7ed150815ee
parent4797bad3aa6222c34287f0db32f4b23d442ef4b8 (diff)
downloadfile-git-cf88077239885d122957b916f227fcf600fd99d8.tar.gz
deal with gcc'ismsFILE4_25
-rw-r--r--configure.ac27
-rw-r--r--src/Makefile.am5
-rw-r--r--src/file.h8
3 files changed, 35 insertions, 5 deletions
diff --git a/configure.ac b/configure.ac
index 9fd15bde..bcea5c7b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -45,8 +45,11 @@ fi], [
AC_MSG_RESULT(no)
fsect=4
])
+
AC_SUBST(fsect)
AM_CONDITIONAL(FSECT5, test x$fsect = x5)
+
+AC_SUBST(WARNINGS)
AC_GNU_SOURCE
dnl Checks for programs.
@@ -108,6 +111,30 @@ typedef long int64_t;
#endif
])
+AC_MSG_CHECKING(for gcc compiler warnings)
+AC_ARG_ENABLE(warnings,
+[ --disable-warnings disable compiler warnings],
+[if test "${enableval}" = no -o $GCC = no; then
+ AC_MSG_RESULT(no)
+ WARNINGS=
+else
+ AC_MSG_RESULT(yes)
+ WARNINGS="-Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \
+ -Wmissing-declarations -Wredundant-decls -Wnested-externs \
+ -Wsign-compare -Wreturn-type -Wswitch -Wshadow \
+ -Wcast-qual -Wwrite-strings -Wextra -Wunused-parameter"
+fi], [
+if test $GCC = no; then
+ WARNINGS=
+ AC_MSG_RESULT(no)
+else
+ AC_MSG_RESULT(yes)
+ WARNINGS="-Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \
+ -Wmissing-declarations -Wredundant-decls -Wnested-externs \
+ -Wsign-compare -Wreturn-type -Wswitch -Wshadow \
+ -Wcast-qual -Wwrite-strings -Wextra -Wunused-parameter"
+fi])
+
dnl Checks for functions
AC_CHECK_FUNCS(mmap strerror strndup strtoul mbrtowc mkstemp utimes utime wcwidth strtof)
diff --git a/src/Makefile.am b/src/Makefile.am
index 6e915f7f..308eb7f5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -5,10 +5,7 @@ include_HEADERS = magic.h
bin_PROGRAMS = file
AM_CPPFLAGS = -DMAGIC='"$(MAGIC)"'
-AM_CFLAGS = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \
- -Wmissing-declarations -Wredundant-decls -Wnested-externs \
- -Wsign-compare -Wreturn-type -Wswitch -Wshadow \
- -Wcast-qual -Wwrite-strings -Wextra -Wunused-parameter
+AM_CFLAGS = @WARNINGS@
libmagic_la_SOURCES = magic.c apprentice.c softmagic.c ascmagic.c \
compress.c is_tar.c readelf.c print.c fsmagic.c \
diff --git a/src/file.h b/src/file.h
index 5bd08e2a..bbad83a2 100644
--- a/src/file.h
+++ b/src/file.h
@@ -27,7 +27,7 @@
*/
/*
* file.h - definitions for file(1) program
- * @(#)$File: file.h,v 1.105 2008/05/28 21:02:29 christos Exp $
+ * @(#)$File: file.h,v 1.106 2008/07/02 15:22:47 christos Exp $
*/
#ifndef __file_h__
@@ -80,6 +80,12 @@
#endif
#endif
+#ifndef __GNUC__
+#ifndef __attribute__
+#define __attribute__(a)
+#endif
+#endif
+
#ifndef MIN
#define MIN(a,b) (((a) < (b)) ? (a) : (b))
#endif