We never intend to support 32-bit Mac builds any more.
This change eliminates the autobuild warning about not finding darwin64 and
therefore falling back on plain darwin.
It's never been clear to me why Macs tend to refer to 32-bit Intel processors
as i386 when other platforms tend to refer to them as i686. New CMake logic to
derive ARCH from ADDRESS_SIZE produces i686. Give viewer_manifest.py a
Darwin_i686_Manifest class alias so it continues to work when arch is passed
as i686 as well as i386.
llcorehttp/tests had a clone of llmessage/tests/testrunner.py that was almost
identical save for recognizing an extra optional parameter. Migrate those few
lines into llmessage/tests/testrunner.py; eliminate the copy in llcorehttp;
help test_llcorehttp_peer.py find the testrunner.py in llmessage/tests.
With the new autobuild command infrastructure, the quotes that used to be
necessary for correct command-line parsing are now actually undesirable: they
are passed literally to the command in question, causing (e.g.) cmake to
complain that although it knows of a generator called Xcode, there's no
generator called 'Xcode'.
by adding -DADDRESS_SIZE= to the compile switches.
Remove hack to work around limitations of gcc 4.1 build hosts.
Streamline a bit of logic to specify correct -m32 or -m64 switch.
Use ADDRESS_SIZE instead of ARCH to control -march=pentiumpro.
Migrate the logic formerly used only for LINUX to detect whether ADDRESS_SIZE
is set to 32 or 64, and if not, detect a default for the platform. But instead
of using uname -m, use python's platform.machine().
On Windows, stop forcing ARCH to i686 and ADDRESS_SIZE to 32.
On Mac, reset default to x86_64 instead of i386; stop forcing ADDRESS_SIZE to
32.
autobuild 1.1 now supports expanding $variables within a config file --
support that was explicitly added to address this very problem. So now the
windows platform in autobuild.xml uses $AUTOBUILD_ADDRSIZE,
$AUTOBUILD_WIN_VSPLATFORM and $AUTOBUILD_WIN_CMAKE_GEN, which should handle
most of the deltas between the windows platform and windows64.
This permits removing the windows64 platform definition from autobuild.xml.
The one remaining delta between the windows64 and windows platform definitions
was -DLL_64BIT_BUILD=TRUE. But we can handle that instead by checking
ADDRESS_SIZE. Change all existing references to WORD_SIZE to ADDRESS_SIZE
instead, and set ADDRESS_SIZE to $AUTOBUILD_ADDRSIZE. Change the one existing
LL_64BIT_BUILD reference to test (ADDRESS_SIZE EQUAL 64) instead.
autobuild now passes a vector of arguments to the commands it executes,
instead of smashing everything together into a single string only to have
cmd.exe parse it back into individual arguments again. In general, this is a
good thing and more robust than before.
However, it surfaces the fact that sometimes people were lazy and encoded
things like "-configuration Release" or "-j 12" as single <string> elements in
the XML. When such things are handed to the command as a single argument string
containing a space, it can get confused.
Code (e.g.) <string>-configuration</string><string>Release</string> instead.