Differences From Artifact [ae0ce98598]:
- File
config/fish/functions/cross.fish
— part of check-in
[7666b7ca75]
at
2020-02-16 13:32:43
on branch trunk
— Add cross, to set up cross-compilation environment
This matches a collection of functions I had in zsh locally, but merges
them all into a single command. (user: js, size: 3115) [annotate] [blame] [check-ins using]
To Artifact [4fcc59df49]:
- File
config/fish/functions/cross.fish
— part of check-in
[01a7f7a67b]
at
2020-02-16 17:48:54
on branch trunk
— cross.fish: Add devkitPro
This also sets objfw_configure_flags, for convenience. (user: js, size: 4277) [annotate] [blame] [check-ins using]
- File fish/functions/cross.fish — part of check-in [24d2eb82f0] at 2020-02-20 22:07:34 on branch trunk — Remove useless config subdirectory (user: js, size: 4277) [annotate] [blame] [check-ins using]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function cross --description 'Set up cross-compilation environment' if test (count $argv) = 0 echo 'Usage: cross platform [architecture1] [architecture2]' return 1 end switch $argv[1] case amiga if test (count $argv) != 2 echo 'Usage: cross amiga m68k|ppc' return 1 end switch $argv[2] case m68k | > > > > > > > > > > > | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | function cross --description 'Set up cross-compilation environment' if test (count $argv) = 0 echo 'Usage: cross platform [architecture1] [architecture2]' return 1 end switch $argv[1] case 3ds nds if test -z "$DEVKITPRO" echo 'Please set DEVKITPRO!' end if test -z "$DEVKITARM" echo 'Please set DEVKITARM!' end set PATH $DEVKITARM/bin $PATH set -g cross_host arm-none-eabi set -g objfw_configure_flags --with-$argv[1] case amiga if test (count $argv) != 2 echo 'Usage: cross amiga m68k|ppc' return 1 end switch $argv[2] case m68k if test -z "$amiga_gcc_path" echo 'Please set amiga_gcc_path!' return 1 end set PATH $amiga_gcc_path/bin $PATH set -g cross_host m68k-amigaos case ppc if test -z "$adtools_path" echo 'Please set adtools_path!' return 1 end set PATH $adtools_path/bin $PATH set -g cross_host ppc-amigaos end if test (count $argv) != 2 -o -z "$cross_host" echo 'Usage: cross amiga m68k|ppc' return 1 end case ios iossim if ! type -q xcrun echo 'Can only cross-compile for iOS on a Mac with Xcode!' return 1 |
︙ | ︙ | |||
76 77 78 79 80 81 82 | set -gx OBJCPPXX $CXXPP set -gx IPHONEOS_DEPLOYMENT_TARGET 10.0 set -g cross_host $archs[1]-apple-darwin case morphos set -l prefix (pkg_info -qp ppc-morphos-gcc-9 | awk '/^@cwd/ { print $2; exit }') | | > > > > > > > > > > > > > > > > > > > > > > > > | 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | set -gx OBJCPPXX $CXXPP set -gx IPHONEOS_DEPLOYMENT_TARGET 10.0 set -g cross_host $archs[1]-apple-darwin case morphos set -l prefix (pkg_info -qp ppc-morphos-gcc-9 | awk '/^@cwd/ { print $2; exit }') if test -z "$prefix" echo 'Please install ppc-morphos-gcc-9 from pkgsrc!' return 1 end set PATH $prefix/gg/bin $PATH set -gx CC ppc-morphos-gcc-9 set -gx CXX ppc-morphos-g++-9 set -gx OBJC ppc-morphos-gcc-9 set -gx OBJCXX ppc-morphos-g++-9 set -g cross_host ppc-morphos case switch if test -z "$DEVKITPRO" echo 'Please set DEVKITPRO!' end if test -z "$DEVKITA64" echo 'Please set DEVKITA64!' end set PATH $DEVKITA64/bin $PATH set -g cross_host aarch64-none-elf set -g objfw_configure_flags --with-switch case wii wii-u if test -z "$DEVKITPRO" echo 'Please set DEVKITPRO!' end if test -z "$DEVKITPPC" echo 'Please set DEVKITPPC!' end set PATH $DEVKITPPC/bin $PATH set -g cross_host powerpc-eabi set -g objfw_configure_flags --with-$argv[1] case '*' echo "Unknown target: $argv[1]" return 1 end set -g objfw_configure_flags --host=$cross_host $objfw_configure_flags end |