Changes in tools/autotool.py [232cd4f:7f25c4e] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tools/autotool.py
r232cd4f r7f25c4e 181 181 print_error(["Failed to determine the value %s." % key, 182 182 "Please contact the developers of HelenOS."]) 183 184 def get_target(config, needs_clang = False): 185 target = None 186 gnu_target = None 187 clang_target = None 188 cc_args = [] 189 190 if (config['PLATFORM'] == "abs32le"): 191 check_config(config, "CROSS_TARGET") 192 target = config['CROSS_TARGET'] 193 194 if (config['CROSS_TARGET'] == "arm32"): 195 gnu_target = "arm-linux-gnueabi" 196 197 if (config['CROSS_TARGET'] == "ia32"): 198 gnu_target = "i686-pc-linux-gnu" 199 200 if (config['CROSS_TARGET'] == "mips32"): 201 gnu_target = "mipsel-linux-gnu" 202 common['CC_ARGS'].append("-mabi=32") 203 204 if (config['PLATFORM'] == "amd64"): 205 target = config['PLATFORM'] 206 gnu_target = "amd64-linux-gnu" 207 clang_target = "x86_64-uknown-linux" 208 209 if (config['PLATFORM'] == "arm32"): 210 target = config['PLATFORM'] 211 gnu_target = "arm-linux-gnueabi" 212 213 if (config['PLATFORM'] == "ia32"): 214 target = config['PLATFORM'] 215 gnu_target = "i686-pc-linux-gnu" 216 clang_target = "i386-uknown-linux" 217 218 if (config['PLATFORM'] == "ia64"): 219 target = config['PLATFORM'] 220 gnu_target = "ia64-pc-linux-gnu" 221 222 if (config['PLATFORM'] == "mips32"): 223 check_config(config, "MACHINE") 224 cc_args.append("-mabi=32") 225 226 if ((config['MACHINE'] == "lgxemul") or (config['MACHINE'] == "msim")): 227 target = config['PLATFORM'] 228 gnu_target = "mipsel-linux-gnu" 229 230 if (config['MACHINE'] == "bgxemul"): 231 target = "mips32eb" 232 gnu_target = "mips-linux-gnu" 233 234 if (config['PLATFORM'] == "mips64"): 235 check_config(config, "MACHINE") 236 cc_args.append("-mabi=64") 237 238 if (config['MACHINE'] == "msim"): 239 target = config['PLATFORM'] 240 gnu_target = "mips64el-linux-gnu" 241 242 if (config['PLATFORM'] == "ppc32"): 243 target = config['PLATFORM'] 244 gnu_target = "ppc-linux-gnu" 245 246 if (config['PLATFORM'] == "sparc64"): 247 target = config['PLATFORM'] 248 gnu_target = "sparc64-linux-gnu" 249 250 if (target is None) or (gnu_target is None) or (clang_target is None and needs_clang): 251 print_error(["Failed to determine target for compiler.", 252 "Please contact the developers of HelenOS."]) 253 254 return (target, cc_args, gnu_target, clang_target) 183 255 184 256 def check_app(args, name, details): … … 642 714 common['CC_ARGS'] = [] 643 715 if (config['COMPILER'] == "gcc_cross"): 644 if (config['PLATFORM'] == "abs32le"): 645 check_config(config, "CROSS_TARGET") 646 target = config['CROSS_TARGET'] 716 target, cc_args, gnu_target, clang_target_unused = get_target(config) 647 717 648 if (config['CROSS_TARGET'] == "arm32"):649 gnu_target = "arm-linux-gnueabi"650 651 if (config['CROSS_TARGET'] == "ia32"):652 gnu_target = "i686-pc-linux-gnu"653 654 if (config['CROSS_TARGET'] == "mips32"):655 gnu_target = "mipsel-linux-gnu"656 common['CC_ARGS'].append("-mabi=32")657 658 if (config['PLATFORM'] == "amd64"):659 target = config['PLATFORM']660 gnu_target = "amd64-linux-gnu"661 662 if (config['PLATFORM'] == "arm32"):663 target = config['PLATFORM']664 gnu_target = "arm-linux-gnueabi"665 666 if (config['PLATFORM'] == "ia32"):667 target = config['PLATFORM']668 gnu_target = "i686-pc-linux-gnu"669 670 if (config['PLATFORM'] == "ia64"):671 target = config['PLATFORM']672 gnu_target = "ia64-pc-linux-gnu"673 674 if (config['PLATFORM'] == "mips32"):675 check_config(config, "MACHINE")676 common['CC_ARGS'].append("-mabi=32")677 678 if ((config['MACHINE'] == "msim") or (config['MACHINE'] == "lmalta")):679 target = config['PLATFORM']680 gnu_target = "mipsel-linux-gnu"681 682 if ((config['MACHINE'] == "bmalta")):683 target = "mips32eb"684 gnu_target = "mips-linux-gnu"685 686 if (config['PLATFORM'] == "mips64"):687 check_config(config, "MACHINE")688 common['CC_ARGS'].append("-mabi=64")689 690 if (config['MACHINE'] == "msim"):691 target = config['PLATFORM']692 gnu_target = "mips64el-linux-gnu"693 694 if (config['PLATFORM'] == "ppc32"):695 target = config['PLATFORM']696 gnu_target = "ppc-linux-gnu"697 698 if (config['PLATFORM'] == "sparc64"):699 target = config['PLATFORM']700 gnu_target = "sparc64-linux-gnu"701 702 718 path = "%s/%s/bin" % (cross_prefix, target) 703 719 prefix = "%s-" % gnu_target … … 708 724 check_common(common, "GCC") 709 725 common['CC'] = common['GCC'] 726 common['CC_ARGS'].extend(cc_args) 710 727 711 728 if (config['COMPILER'] == "gcc_native"): … … 723 740 724 741 if (config['COMPILER'] == "clang"): 742 target, cc_args, gnu_target, clang_target = get_target(config, True) 743 path = "%s/%s/bin" % (cross_prefix, target) 744 prefix = "%s-" % gnu_target 745 725 746 common['CC'] = "clang" 747 common['CC_ARGS'].extend(cc_args) 748 common['CC_ARGS'].append("-target") 749 common['CC_ARGS'].append(clang_target) 726 750 check_app([common['CC'], "--version"], "Clang compiler", "preferably version 1.0 or newer") 727 check_gcc( None, "", common, PACKAGE_GCC)728 check_binutils( None, binutils_prefix, common, PACKAGE_BINUTILS)751 check_gcc(path, prefix, common, PACKAGE_GCC) 752 check_binutils(path, prefix, common, PACKAGE_BINUTILS) 729 753 730 754 # Platform-specific utilities
Note:
See TracChangeset
for help on using the changeset viewer.