Subject: Re: bug#8845: build failure on HP-UX 11.31

From: Jim Meyering <[email-masked]>
Date: Mon, 13 Jun 2011 11:39:09 +0200

Bruno Haible wrote:

> Hi Jim,
>
>> I've adjusted the log slightly.  Since it still has your
>> name on it, I'll wait for an explicit "ok" before pushing.
>> ...
>> CC=cc on HP-UX 11.31.
>
> I didn't use CC=cc - that doesn't work on HP-UX - but rather
> CC="cc -Ae -D_XOPEN_SOURCE=500", like mentioned in the INSTALL file.

Thanks.  I've corrected that.

>> Or you may.
>
> I cannot push into coreutils.

The affected file is in gnulib.
I've gone ahead and pushed it.

>From 258036d8674583fce2002a04afc996f18c8b8486 Mon Sep 17 00:00:00 2001
From: Bruno Haible <[email-masked]>
Date: Mon, 13 Jun 2011 11:19:42 +0200
Subject: [PATCH] file-set.h: guard __attibute__ use, now that it's not always
 defined

* lib/file-set.h (record_file): Use __attribute__ only with compiler
versions that support it.  This fixes a coreutils build failure with
/bin/cc on HP-UX 11.31.
---
 ChangeLog      |    7 +++++++
 lib/file-set.h |    5 ++++-
 2 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 7af3f05..e4a4a70 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-06-13  Bruno Haible  <[email-masked]>
+
+	file-set.h: guard __attibute__ use, now that it's not always defined
+	* lib/file-set.h (record_file): Use __attribute__ only with compiler
+	versions that support it.  This fixes a coreutils build failure with
+	/bin/cc on HP-UX 11.31.
+
 2011-06-12  Bruno Haible  <[email-masked]>

 	acl: Add support for HP-UX >= 11.11 JFS ACLs.
diff --git a/lib/file-set.h b/lib/file-set.h
index 28d42fe..4e47d95 100644
--- a/lib/file-set.h
+++ b/lib/file-set.h
@@ -6,7 +6,10 @@

 extern void record_file (Hash_table *ht, char const *file,
                          struct stat const *stats)
-  __attribute__ ((nonnull (2, 3)));
+#if defined __GNUC__ && ((__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3)
+  __attribute__ ((nonnull (2, 3)))
+#endif
+;

 extern bool seen_file (Hash_table const *ht, char const *file,
                        struct stat const *stats);
--
1.7.6.rc0.293.g40857