OLD | NEW |
1 # Copyright 2012 the V8 project authors. All rights reserved. | 1 # Copyright 2012 the V8 project authors. All rights reserved. |
2 # Redistribution and use in source and binary forms, with or without | 2 # Redistribution and use in source and binary forms, with or without |
3 # modification, are permitted provided that the following conditions are | 3 # modification, are permitted provided that the following conditions are |
4 # met: | 4 # met: |
5 # | 5 # |
6 # * Redistributions of source code must retain the above copyright | 6 # * Redistributions of source code must retain the above copyright |
7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
8 # * Redistributions in binary form must reproduce the above | 8 # * Redistributions in binary form must reproduce the above |
9 # copyright notice, this list of conditions and the following | 9 # copyright notice, this list of conditions and the following |
10 # disclaimer in the documentation and/or other materials provided | 10 # disclaimer in the documentation and/or other materials provided |
(...skipping 17 matching lines...) Expand all Loading... |
28 # Those definitions should be consistent with the main Makefile | 28 # Those definitions should be consistent with the main Makefile |
29 ANDROID_ARCHES = android_ia32 android_x64 android_arm android_arm64 \ | 29 ANDROID_ARCHES = android_ia32 android_x64 android_arm android_arm64 \ |
30 android_mipsel android_x87 | 30 android_mipsel android_x87 |
31 MODES = release debug | 31 MODES = release debug |
32 | 32 |
33 # Generates all combinations of ANDROID ARCHES and MODES, | 33 # Generates all combinations of ANDROID ARCHES and MODES, |
34 # e.g. "android_ia32.release" or "android_arm.release" | 34 # e.g. "android_ia32.release" or "android_arm.release" |
35 ANDROID_BUILDS = $(foreach mode,$(MODES), \ | 35 ANDROID_BUILDS = $(foreach mode,$(MODES), \ |
36 $(addsuffix .$(mode),$(ANDROID_ARCHES))) | 36 $(addsuffix .$(mode),$(ANDROID_ARCHES))) |
37 | 37 |
| 38 HOST_OS = $(shell uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/') |
| 39 |
38 ifeq ($(ARCH), android_arm) | 40 ifeq ($(ARCH), android_arm) |
39 DEFINES = target_arch=arm v8_target_arch=arm | 41 DEFINES = target_arch=arm v8_target_arch=arm android_target_arch=arm android_
target_platform=16 |
| 42 DEFINES += arm_neon=0 arm_version=7 |
40 else ifeq ($(ARCH), android_arm64) | 43 else ifeq ($(ARCH), android_arm64) |
41 DEFINES = target_arch=arm64 v8_target_arch=arm64 | 44 DEFINES = target_arch=arm64 v8_target_arch=arm64 android_target_arch=arm64 an
droid_target_platform=21 |
42 else ifeq ($(ARCH), android_mipsel) | 45 else ifeq ($(ARCH), android_mipsel) |
43 DEFINES = target_arch=mipsel v8_target_arch=mipsel | 46 DEFINES = target_arch=mipsel v8_target_arch=mipsel android_target_platform=16 |
| 47 DEFINES += android_target_arch=mips mips_arch_variant=mips32r2 |
44 else ifeq ($(ARCH), android_ia32) | 48 else ifeq ($(ARCH), android_ia32) |
45 DEFINES = target_arch=ia32 v8_target_arch=ia32 | 49 DEFINES = target_arch=ia32 v8_target_arch=ia32 android_target_arch=x86 android
_target_platform=16 |
46 else ifeq ($(ARCH), android_x64) | 50 else ifeq ($(ARCH), android_x64) |
47 DEFINES = target_arch=x64 v8_target_arch=x64 | 51 DEFINES = target_arch=x64 v8_target_arch=x64 android_target_arch=x86_64 androi
d_target_platform=21 |
48 else ifeq ($(ARCH), android_x87) | 52 else ifeq ($(ARCH), android_x87) |
49 DEFINES = target_arch=ia32 v8_target_arch=x87 | 53 DEFINES = target_arch=x87 v8_target_arch=x87 android_target_arch=x86 android_t
arget_platform=16 |
50 else | 54 else |
51 $(error Target architecture "${ARCH}" is not supported) | 55 $(error Target architecture "${ARCH}" is not supported) |
52 endif | 56 endif |
53 | 57 |
54 # Common flags. | 58 # Common flags. |
55 DEFINES += OS=android | 59 DEFINES += host_os=${HOST_OS} OS=android |
56 | 60 |
57 .SECONDEXPANSION: | 61 .SECONDEXPANSION: |
58 $(ANDROID_BUILDS): $(OUTDIR)/Makefile.$$@ | 62 $(ANDROID_BUILDS): $(OUTDIR)/Makefile.$$@ |
59 @$(MAKE) -C "$(OUTDIR)" -f Makefile.$@ \ | 63 @$(MAKE) -C "$(OUTDIR)" -f Makefile.$@ \ |
60 BUILDTYPE=$(shell echo $(subst .,,$(suffix $@)) | \ | 64 BUILDTYPE=$(shell echo $(subst .,,$(suffix $@)) | \ |
61 python -c "print raw_input().capitalize()") \ | 65 python -c "print raw_input().capitalize()") \ |
62 builddir="$(shell pwd)/$(OUTDIR)/$@" | 66 builddir="$(shell pwd)/$(OUTDIR)/$@" |
63 | 67 |
64 # Android GYP file generation targets. | 68 # Android GYP file generation targets. |
65 ANDROID_MAKEFILES = $(addprefix $(OUTDIR)/Makefile.,$(ANDROID_BUILDS)) | 69 ANDROID_MAKEFILES = $(addprefix $(OUTDIR)/Makefile.,$(ANDROID_BUILDS)) |
66 $(ANDROID_MAKEFILES): | 70 $(ANDROID_MAKEFILES): |
67 GYP_GENERATORS=make-android \ | 71 GYP_GENERATORS=make-android \ |
68 GYP_DEFINES="${DEFINES}" \ | 72 GYP_DEFINES="${DEFINES}" \ |
69 PYTHONPATH="$(shell pwd)/tools/generate_shim_headers:$(shell pwd)/build:
$(PYTHONPATH)" \ | 73 PYTHONPATH="$(shell pwd)/tools/generate_shim_headers:$(shell pwd)/build:
$(PYTHONPATH)" \ |
70 build/gyp/gyp --generator-output="${OUTDIR}" build/all.gyp \ | 74 build/gyp/gyp --generator-output="${OUTDIR}" build/all.gyp \ |
71 -Ibuild/standalone.gypi --depth=. \ | 75 -Ibuild/standalone.gypi --depth=. \ |
72 -S$(suffix $(basename $@))$(suffix $@) ${GYPFLAGS} | 76 -S$(suffix $(basename $@))$(suffix $@) ${GYPFLAGS} |
OLD | NEW |