Rearrange everything.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 24 Nov 2018 17:58:14 +0000 (17:58 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Sat, 24 Nov 2018 18:19:01 +0000 (18:19 +0000)
commit1a141be66cf963955d914b9403b8ebe9fb1c8d73
treea4acab5cc0d7c187542d488ccd3eb303713cce6a
parent02555facd141463ddb299fd63571157fcebefe97
Rearrange everything.

  * Have `setup.sh' define `CROSS_ARCH', which is the GNU triplet for
    the target architecture.  This is then exported and can be used by
    `config.site' to define further things.

  * Factor out the common machinery between Android and Linux
    `config.site' files.  This is, in fact, exactly the Linux
    `config.site', so have `mdw-cross' select this as a default if
    nothing more specific can be found.

  * Factor out the common machinery for Android `config.site' files,
    which was basically all of it.

  * Move the compiler flags into the new `android-cross-config.site'
    file.

  * Replace `$ANDROID_CC' by `$CROSS_ARCH-gcc'.  Factor out the
    mandatory compiler flags into `$CROSS_gcc_FLAGS', and generalize this
    so that we also set `$CROSS_gxx_FLAGS' for C++.

  * Introduce a new program `crosstool' intended to be invoked via a
    symlink, which just execs the appropriate cross-toolchain tool with
    any necessary extra flags.  Include a bunch of useful symlinks and
    have `mdw-cross' hook them onto the path.

  * Add a Makefile to build the `...-setup.sh' files for each target
    architecture from skeletons.  The Makefile is unnecessarily hairy
    but I like them that way.
42 files changed:
.gitignore
Makefile [new file with mode: 0644]
android-cross-setup.sh.in [new file with mode: 0644]
bin/crosstool [new file with mode: 0755]
bin/mdw-cross
etc/android-arm-config.site [deleted file]
etc/android-arm-setup.sh [deleted file]
etc/android-arm64-config.site [deleted file]
etc/android-arm64-setup.sh [deleted file]
etc/android-cross-config.site [new file with mode: 0644]
etc/android-x86-config.site [deleted file]
etc/android-x86-setup.sh [deleted file]
etc/android-x86_64-config.site [deleted file]
etc/android-x86_64-setup.sh [deleted file]
etc/android.sh
etc/arm64-setup.sh [deleted file]
etc/armel-config.site [deleted file]
etc/armel-setup.sh [deleted file]
etc/armhf-config.site [deleted file]
etc/armhf-setup.sh [deleted file]
etc/common-cross-config.site [moved from etc/arm64-config.site with 71% similarity]
linux-cross-setup.sh.in [new file with mode: 0644]
tools/cross-addr2line [new symlink]
tools/cross-ar [new symlink]
tools/cross-as [new symlink]
tools/cross-c++filt [new symlink]
tools/cross-cpp [new symlink]
tools/cross-dwp [new symlink]
tools/cross-elfedit [new symlink]
tools/cross-g++ [new symlink]
tools/cross-gcc [new symlink]
tools/cross-gcov [new symlink]
tools/cross-gprof [new symlink]
tools/cross-ld [new symlink]
tools/cross-nm [new symlink]
tools/cross-objcopy [new symlink]
tools/cross-objdump [new symlink]
tools/cross-ranlib [new symlink]
tools/cross-readelf [new symlink]
tools/cross-size [new symlink]
tools/cross-strings [new symlink]
tools/cross-strip [new symlink]