xfs
[Top] [All Lists]

Re: xfsprogs for-next build error on Debian Wheezy / amd64

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>, Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: xfsprogs for-next build error on Debian Wheezy / amd64
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Thu, 11 Jun 2015 11:14:27 -0500
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20150611160335.GA28312@xxxxxxxxxxxxx>
References: <20150610070604.GA9855@xxxxxxxxxxxxx> <20150610081914.GV9143@dastard> <20150610082415.GA23860@xxxxxxxxxxxxx> <20150610083441.GW9143@dastard> <20150610084043.GA31392@xxxxxxxxxxxxx> <20150610091952.GE24666@dastard> <20150611160335.GA28312@xxxxxxxxxxxxx>
On 6/11/15 11:03 AM, Christoph Hellwig wrote:
> On Wed, Jun 10, 2015 at 07:19:52PM +1000, Dave Chinner wrote:
>> Actually, I think that platform_defs.h needs to be symlinked into
>> include/xfs. that was the intent, but I bet I missed it because
>> the build wasn't failing and so I didn't notice that I'd failed to
>> put it into the the include/Makefile rule for installed headers.
>>
>> Yeah, there we are - the install-dev rule has a specific install
>> rule for platform_defs.h as well, so it was being included in the
>> package builds correctly (i.e. installed in /usr/include/xfs)
>> without being mentioned in the HFILES definition that defines header
>> files to be packaged for /usr/include/xfs....
>>
>> Patch below (which uncovers another issue to do with include files
>> on the distclean side, but is not fatal and I'll fix tomorrow).
> 
> This works fine for me.
> 
> Btw, we really shouldn't be installing generated files, that's a major
> PITA for multiarch setups.  I'll see how much of the autoconf magic
> we even need here.

FWIW, we do a crazy thing in RPM land ...

# cat /usr/include/xfs/platform_defs.h 
/* This file is here to prevent a file conflict on multiarch systems. A
 * conflict will occur because platform_defs.h has arch-specific definitions.
 *
 * DO NOT INCLUDE THE NEW FILE DIRECTLY -- ALWAYS INCLUDE THIS ONE INSTEAD. */

#if defined(__i386__)
#include "platform_defs-i386.h"
#elif defined(__x86_64__)
#include "platform_defs-x86_64.h"
#elif defined(__powerpc64__)
#include "platform_defs-ppc64.h"
... etc ...

<Prev in Thread] Current Thread [Next in Thread>