On Wed, Oct 19, 2016 at 5:37 AM, Ben Coman <btc@openinworld.com> wrote:

On Wed, Oct 19, 2016 at 7:43 PM, Ben Coman <btc@openinworld.com> wrote:
> On Wed, Oct 19, 2016 at 7:53 AM, Eliot Miranda <eliot.miranda@gmail.com> wrote:
>>
>> On Mon, Oct 17, 2016 at 5:22 PM, Ben Coman <btc@openinworld.com> wrote:
>>>
>>> Perhaps the following should be used as a template?
>>>   https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/build.win32x86/common/Makefile
>>
>> Either those or  https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/build.macos32x86/common/Makefile et al.  The Mac ones are newer and a little cleaner.
>
> Okay.
> So to get a bit of background understanding on the 32/64-bit build
> differences I did a bit of analysis.
> I've attached it for the curious.

For the record this was produced by...
$ cd  build.macos32x86
$ find . -type f -print \
     -exec diff --side-by-side {} ../build.macos64x64/{} \; \
     | grep -e \| -e \< -e \> -e ^\.\/   >  diff-build.macosXxx
followed by some manual massaging of the resulting file.

Apart from Makefile, plugins.int & plugin.ext most else seems the same
in almost 3000 lines of config.
I "wonder" if with a common32 and a common64 the 32-bit and 64-bit
builds might be merged,
All the sub-build-folders might be like pharo.stack.spur32.
But maybe later required differences turn up that would be harder to handle ??

I did it that way to avoid a dependency between the two.  If one knows they're essentially the same then they're easy to edit and keep in sync.  I think the build.OsWordsizeProcessor scheme is simple and works.  So it does mean that 32-bit and 64-bit platforms have a little bit of duplication.  Are you not willing to live with it?

_,,,^..^,,,_
best, Eliot