Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: Makefile

Issue 29451722: Issue 4907 - Update v8 to 5.7.278 in libadblockplus (Closed) Base URL: https://github.com/adblockplus/libadblockplus.git
Patch Set: add Xcode into readme Created June 2, 2017, 2:24 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | README.md » ('j') | build-v8.cmd » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Makefile
diff --git a/Makefile b/Makefile
index 63013746bcaae2dfb0205bd945b2e9141d65d665..67eb0dc4c848b727abe631c0901dd9276df77655 100644
--- a/Makefile
+++ b/Makefile
@@ -1,28 +1,52 @@
-ARCH := x64
+V8_DIR :=$(shell pwd -L)/third_party/v8/
+HOST_ARCH :=$(shell python ${V8_DIR}gypfiles/detect_v8_host_arch.py)
+
+GYP_PARAMETERS=host_arch=${HOST_ARCH}
+
+ifndef HOST_OS
+ raw_OS = $(shell uname -s)
+ ifeq (${raw_OS},Linux)
+ HOST_OS=linux
+ else ifeq (${raw_OS},Darwin)
+ HOST_OS=mac
+ endif
+endif
-ANDROID_PARAMETERS = OS=android
ifneq ($(ANDROID_ARCH),)
+GYP_PARAMETERS+= OS=android target_arch=${ANDROID_ARCH}
ifeq ($(ANDROID_ARCH),arm)
-ANDROID_PARAMETERS += target_arch=arm android_target_arch=arm
-ANDROID_PARAMETERS += arm_neon=0 armv7=0 arm_fpu=off vfp3=off
-ANDROID_PARAMETERS += arm_float_abi=default
ANDROID_ABI = armeabi-v7a
else ifeq ($(ANDROID_ARCH),ia32)
-ANDROID_PARAMETERS += target_arch=x86 android_target_arch=x86
ANDROID_ABI = x86
else
$(error "Unsupported Android architecture: $(ANDROID_ARCH))
endif
ANDROID_DEST_DIR = android_$(ANDROID_ARCH).release
+else
+TARGET_ARCH=${HOST_ARCH}
+ifdef ARCH
+TARGET_ARCH=${ARCH}
endif
+GYP_PARAMETERS+= OS=${HOST_OS} target_arch=${TARGET_ARCH}
+endif
+
TEST_EXECUTABLE = build/out/Debug/tests
-.PHONY: all test clean docs v8_android_multi android_multi android_x86 \
- android_arm
+.PHONY: all test clean docs v8 v8_android_multi android_multi android_x86 \
+ android_arm ensure_dependencies
+
+.DEFAULT_GOAL:=all
-all:
- third_party/gyp/gyp --depth=. -f make -I common.gypi --generator-output=build -Dtarget_arch=$(ARCH) libadblockplus.gyp
+ensure_dependencies:
+ python ensure_dependencies.py
+
+v8: ensure_dependencies
+ GYP_DEFINES="${GYP_PARAMETERS}" third_party/gyp/gyp --depth=. -f make -I v8.gypi --generator-output=build/v8 ${V8_DIR}src/v8.gyp
+ make -C build/v8 v8_snapshot v8_libplatform v8_libsampler
+
+all: v8
+ GYP_DEFINES="${GYP_PARAMETERS}" third_party/gyp/gyp --depth=. -f make -I libadblockplus.gypi --generator-output=build libadblockplus.gyp
$(MAKE) -C build
test: all
@@ -45,23 +69,40 @@ android_arm:
ANDROID_ARCH="arm" $(MAKE) android_multi
ifneq ($(ANDROID_ARCH),)
-v8_android_multi:
- mkdir -p third_party/v8/build/gyp
- cp -f third_party/v8_gyp_launcher third_party/v8/build/gyp/gyp
- DEFINES="${ANDROID_PARAMETERS}" \
- OUTDIR=../../build \
- $(MAKE) -C third_party/v8 $(ANDROID_DEST_DIR)
-
-android_multi: v8_android_multi
- GYP_DEFINES="${ANDROID_PARAMETERS} ANDROID_ARCH=$(ANDROID_ARCH)" \
- third_party/gyp/gyp --depth=. -f make-android -I common.gypi --generator-output=build -Gandroid_ndk_version=r9 libadblockplus.gyp
+v8_android_multi: ensure_dependencies
+ cd third_party/v8 && GYP_GENERATORS=make-android \
+ GYP_DEFINES="${GYP_PARAMETERS} v8_target_arch=${ANDROID_ARCH}" \
+ PYTHONPATH="${V8_DIR}tools/generate_shim_headers:${V8_DIR}gypfiles:${PYTHONPATH}" \
+ tools/gyp/gyp \
+ --generator-output=../../build src/v8.gyp \
+ -Igypfiles/standalone.gypi \
+ --depth=. \
+ -S.android_${ANDROID_ARCH}.release \
+ -I../../android-v8-options.gypi
+ cd third_party/v8 && make \
+ -C ../../build \
+ -f Makefile.android_${ANDROID_ARCH}.release \
+ v8_snapshot v8_libplatform v8_libsampler \
+ BUILDTYPE=Release \
+ builddir=${V8_DIR}../../build/android_${ANDROID_ARCH}.release
+
+v8_android_multi_linux_${ANDROID_ARCH}: v8_android_multi
+
+v8_android_multi_mac_ia32: v8_android_multi
+ find build/android_ia32.release/ -depth 1 -iname \*.a -exec ${ANDROID_NDK_ROOT}/toolchains/x86-4.9/prebuilt/darwin-x86_64/bin/i686-linux-android-ranlib {} \;
+
+v8_android_multi_mac_arm: v8_android_multi
+ find build/android_arm.release/ -depth 1 -iname \*.a -exec ${ANDROID_NDK_ROOT}/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-ranlib {} \;
+
+android_multi: v8_android_multi_${HOST_OS}_${ANDROID_ARCH}
+ GYP_DEFINES="${GYP_PARAMETERS}" \
+ ./make_gyp_wrapper.py --depth=. -f make-android -Ilibadblockplus.gypi --generator-output=build -Gandroid_ndk_version=r9 libadblockplus.gyp
$(ANDROID_NDK_ROOT)/ndk-build -C build installed_modules \
BUILDTYPE=Release \
APP_ABI=$(ANDROID_ABI) \
APP_PLATFORM=android-9 \
APP_STL=c++_static \
APP_BUILD_SCRIPT=Makefile \
- NDK_TOOLCHAIN_VERSION=clang3.4 \
NDK_PROJECT_PATH=. \
NDK_OUT=. \
NDK_APP_DST_DIR=$(ANDROID_DEST_DIR)
« no previous file with comments | « no previous file | README.md » ('j') | build-v8.cmd » ('J')

Powered by Google App Engine
This is Rietveld