libpq-dev: pg_config_manual.h redefines CACHE_LINE_SIZE - Mailing list pgsql-hackers

From Christoph Berg
Subject libpq-dev: pg_config_manual.h redefines CACHE_LINE_SIZE
Date
Msg-id 20140930195756.GC27407@msg.df7cb.de
Whole thread Raw
Responses Re: libpq-dev: pg_config_manual.h redefines CACHE_LINE_SIZE  (Peter Geoghegan <pg@heroku.com>)
Re: libpq-dev: pg_config_manual.h redefines CACHE_LINE_SIZE  (Andres Freund <andres@2ndquadrant.com>)
List pgsql-hackers
Hi,

there's a #define clash between pg_config_manual.h and FreeBSD's
/usr/include/machine-amd64/param.h which also defines CACHE_LINE_SIZE.

It's probably not really a PostgreSQL bug, but it seems easy enough to
rename that definition now as it's only present in 9.4+. It's only
used in one file, xlog.c: 375d8526f2900d0c377f44532f6d09ee06531f67

Christoph
--
cb@df7cb.de | http://www.df7cb.de/
Package: libpq-dev
Version: CACHE_LINE_SIZE
Severity: normal

Hi,

pg_config_manual.h redfines CACHE_LINE_SIZE in sys/param.h on kfreebsd:

  /usr/include/postgresql/pg_config_manual.h:219:0: error: "CACHE_LINE_SIZE" redefined [-Werror]
   #define CACHE_LINE_SIZE  128
   ^
  In file included from /usr/include/machine/param.h:8:0,
                   from /usr/include/sys/kglue/sys/param.h:143,
                   from /usr/include/sys/kern/param.h:1,
                   from /usr/include/osreldate.h:1,
                   from /usr/include/x86_64-kfreebsd-gnu/bits/param.h:36,
                   from /usr/include/x86_64-kfreebsd-gnu/sys/param.h:31,
                   from collectd.h:214,
                   from postgresql.c:39:
  /usr/include/machine-amd64/param.h:97:0: note: this is the location of the previous definition
   #define CACHE_LINE_SIZE  (1 << CACHE_LINE_SHIFT)
   ^

This causes build-errors when using -Werror. I assume that this is a
rather unusual use-case, thus didn't mark this RC.

Currently, it causes FTBFSs for collectd on kfreebsd-*, see e.g.
<https://buildd.debian.org/status/fetch.php?pkg=collectd&arch=kfreebsd-amd64&ver=5.4.1-3.1&stamp=1408492216>
I hope, I'll be able to work around it using -Wp,-w there.

Cheers,
Sebastian

--
Sebastian "tokkee" Harl +++ GnuPG-ID: 0x8501C7FC +++ http://tokkee.org/

Those who would give up Essential Liberty to purchase a little Temporary
Safety, deserve neither Liberty nor Safety.         -- Benjamin Franklin


Attachment

pgsql-hackers by date:

Previous
From: Dean Rasheed
Date:
Subject: Re: WITH CHECK and Column-Level Privileges
Next
From: Gavin Flower
Date:
Subject: Re: Time measurement format - more human readable