EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Sequencer news: latest snapshot
From: Andrew Johnson <[email protected]>
To: Benjamin Franksen <[email protected]>, [email protected]
Date: Tue, 28 Jun 2011 12:01:31 -0500
Hi Ben,

On 2011-06-27 Benjamin Franksen wrote:
> 
> However, could we not create a separate pseudo target architecture for
> such fat binaries? Maybe with another separator character; I think '+'
> would be fine (and self- explaining), so that we would have e.g.
> 
>   T_A = darwin-x68+x69_64+pps

Apple made building fat binaries really easy, the only thing we had to do to 
support them was to add the -arch flag to the compiler and linker command 
lines (we also switch the tool we use to generate dependency files when 
there's more than one architecture, but I'm not sure whether that's essential 
or just cosmetic).  I don't like adding complexity to the build system 
unnecessarily, and I'm afraid the idea of appending ARCH_CLASS to T_A would 
add major complications to the build system.

Oh, and one more reason: The regular darwin i386 class is LP64 anyway, meaning 
longs and pointers are 64-bits wide even when ARCH_CLASS is i386.  The darwin 
ppc class is ILP32 (I checked), and I would guess that ppc64 (which may not 
actually exist outside of Apple) is LP64.

You could build and run this small executable to find out if long is 32 or 64 
bits wide on the host CPU:

#include <stdio.h>
#include <limits.h>

int main(int argc, char **argv) {
    int s = CHAR_BIT * sizeof(long);
    printf("%d\n", s);
    return 0; 
}

However that still doesn't help you work out how many errors the C compiler 
will report for tooLong.c and I'm not sure that it's worth trying to check 
that.

- Andrew
-- 
Optimization is the process of taking something that works and
replacing it with something that almost works, but costs less.
-- Roger Needham

Replies:
Re: Sequencer news: latest snapshot Andrew Johnson
Re: Sequencer news: latest snapshot J. Lewis Muir
References:
Sequencer news: latest snapshot Benjamin Franksen
Re: Sequencer news: latest snapshot J. Lewis Muir
Re: Sequencer news: latest snapshot Benjamin Franksen

Navigate by Date:
Prev: Re: Newport XPS and Motor record John Dobbins
Next: Re: Sequencer news: latest snapshot Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Sequencer news: latest snapshot Pelaia II, Tom
Next: Re: Sequencer news: latest snapshot Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·