8 Commits

Author SHA1 Message Date
Brian Smith
6b4b2ed375 Allow the ABI part of |TARGET| to be omitted for Darwin. 2015-08-26 21:18:36 -07:00
Brian Smith
46dea05fb3 Rename libring.lib to ring.lib on Windows.
Rust's native library integration works best when the library is named
<foo>.lib on Windows and lib<foo>.lib on other platforms.
2015-08-26 21:18:35 -07:00
Brian Smith
eb838e4e93 Get ARM builds working better. 2015-08-26 21:18:34 -07:00
Brian Smith
bec4c9cf5c Make RELWITHDEBINFO the default configuration, instead of DEBUG. 2015-08-26 21:18:33 -07:00
Brian Smith
0b191d69d0 Improve multi-targetting infrastructure.
Make the Makefile require a standard
|TARGET=<arch>-<vendor>-<sys>-<abi>| variable to be set instead of
requiring |TARGET_OS| and |TARGET_ARCH_BASE|.

Also, have the Makefile generate outputs to a subdirectory of build/
that names the target and compiler. This will make it easier and less
error-prone to test multiple configurations using a single source tree,
and will make some future cross-compilation targets easier.
2015-08-26 21:18:33 -07:00
Brian Smith
0c597a4343 Add the |TARGET_OS| build option to facilitate Mac OS X builds.
Carl Mehner reported that the build fails on Mac OS X using its
normal Apple Clang toolchain because that toolchain requires a slightly
different set of perlasm and linker options.

This commit introduces the |TARGET_OS| build option to allow us to make
operating-system-dependent choices during the build. It isn't ideal to
use |TARGET_OS| for this problem because it's really an issue with the
toolchain (a host issue), but this seems to be a reasonable first step
while we figure out a long-term solution.
2015-08-26 21:18:32 -07:00
Brian Smith
2586d07947 Rename the |ARCH| build option to |TARGET_ARCH_BASE|.
This change is being made in preparation for adding a |TARGET_OS| build
option. |TARGET_ARCH_BASE| is used to decide which assembly language
code to compile, and to set |TARGET_ARCH| (the target flags passed to
the compilers and linker) if it isn't already set.
2015-08-26 21:18:31 -07:00
Brian Smith
51618b4e4a Update documentation; fix RING_LDLIBS. 2015-08-26 21:18:24 -07:00