1
0
Fork 0
arangodb/3rdParty/Makefile.v8

220 lines
7.9 KiB
Makefile

# -*- mode: Makefile; -*-
## -----------------------------------------------------------------------------
## --SECTION-- LIBRARY
## -----------------------------------------------------------------------------
################################################################################
### @brief V8
################################################################################
BUILT_SOURCES += @V8_LIBS@
DEBUG_V8_FLAGS = -DV8_TARGET_ARCH_X64 -DENABLE_GDB_JIT_INTERFACE -DV8_DEPRECATION_WARNINGS -DV8_I18N_SUPPORT -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DENABLE_DISASSEMBLER -DV8_ENABLE_CHECKS -DOBJECT_PRINT -DVERIFY_HEAP -DDEBUG -DENABLE_EXTRA_CHECKS -DENABLE_HANDLE_ZAPPING -DOPTIMIZED_DEBUG
if ENABLE_GOLD
GOLD_V8_FLAGS = -fuse-ld=gold
GOLD_V8_GYP =
else
GOLD_V8_FLAGS =
GOLD_V8_GYP = -Dlinux_use_bundled_gold=0 -Dlinux_use_gold_flags=0
endif
if CXX_HAS_STDLIB
STDLIB_FLAGS = -stdlib=libc++
else
STDLIB_FLAGS =
endif
V8DIR=@V8_DIR@
export PYTHON_EXECUTABLE=@PYTHON_EXECUTABLE@
@V8_LIBS@: @srcdir@/.v8-build-@TRI_BITS@
@srcdir@/.v8-build-@TRI_BITS@:
@echo
@echo "--------------------------------------------------------------------------------"
@echo "BUILDING V8"
@echo "--------------------------------------------------------------------------------"
@echo
################################################################################
## ARM V6
################################################################################
if ENABLE_ARMV6
if ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Darm_fpu=vfp -Darm_version=6 -Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O0 -ggdb -fsigned-char -march=armv6 $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O0 -ggdb -fsigned-char -march=armv6 $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
LDFLAGS="-march=armv6" \
debug=on v8_optimized_debug=0 v8_enable_backtrace=on \
library=static strictaliasing=off snapshot=off werror=no hardfp=on @V8_TARGET@
else
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Darm_fpu=vfp -Darm_version=6 -Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O2 -g -fsigned-char -march=armv6 $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O2 -g -fsigned-char -march=armv6 $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
LDFLAGS="-march=armv6" \
library=static strictaliasing=off snapshot=off werror=no hardfp=on @V8_TARGET@
endif
else # ! ENABLE_ARM6
################################################################################
## ARM V7
################################################################################
if ENABLE_ARMV7
if ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Darm_fpu=vfp -Darm_version=6 -Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O0 -ggdb -fsigned-char -march=armv7 $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O0 -ggdb -fsigned-char -march=armv7 $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
LDFLAGS="-march=armv7" \
debug=on v8_optimized_debug=0 v8_enable_backtrace=on \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
else
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS=" -Darm_version=7 -Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O2 -g -fsigned-char -march=armv7 $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O2 -g -fsigned-char -march=armv7 $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
LDFLAGS="-march=armv7" \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
endif
################################################################################
## DARWIN DEBUG
################################################################################
else # ! ENABLE_ARM7
if ENABLE_DARWIN
if ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
LDFLAGS="-lc++" \
CFLAGS="-O0 -ggdb $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O0 -ggdb $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
debug=on v8_optimized_debug=0 v8_enable_backtrace=on \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
################################################################################
## DARWIN RELEASE
################################################################################
else # ! ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
LDFLAGS="-lc++" \
CFLAGS="-O3 -fomit-frame-pointer -g $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O3 -fomit-frame-pointer -g $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
endif # ENABLE_V8_DEBUG
################################################################################
## LINUX RELEASE
################################################################################
else # ! ENABLE_DARWIN
if ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O0 -ggdb $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O0 -ggdb $(DEBUG_V8_FLAGS) $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
debug=on v8_optimized_debug=0 v8_enable_backtrace=on \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
else # ! ENABLE_V8_DEBUG
cd @top_srcdir@/3rdParty/$(V8DIR) \
&& export GYPFLAGS="-Dstandalone_static_library=1 $(GOLD_V8_GYP)" \
&& $(MAKE) -f Makefile-v8 \
CC="$(CC)" \
CC.host="$(CC)" \
CXX="$(CXX)" \
CXX.host="$(CXX)" \
LINK="$(CXX)" \
CFLAGS="-O3 -fomit-frame-pointer -g $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
CXXFLAGS="-O3 -fomit-frame-pointer -g $(GOLD_V8_FLAGS) $(STDLIB_FLAGS)" \
library=static strictaliasing=off snapshot=off werror=no @V8_TARGET@
endif # ENABLE_V8_DEBUG
endif # ENABLE_DARWIN
endif # ENABLE_ARM7
endif # ENABLE_ARM6
touch @srcdir@/.v8-build-@TRI_BITS@
@echo
@echo "--------------------------------------------------------------------------------"
@echo "BUILD V8 FINISHED"
@echo "--------------------------------------------------------------------------------"
@echo
################################################################################
### @brief additional files to remove
################################################################################
CLEANUP_3RD += clean-v8
non-thin-v8:
for lib in `find @top_srcdir@/3rdParty/$(V8DIR)/out -name '*.a'`; \
do ar -t $${lib} | xargs ar rvs $${lib}.new && mv -v $${lib}.new $${lib}; \
done
clean-v8:
rm -f @srcdir@/.v8-build-@TRI_BITS@
cd @top_srcdir@/3rdParty/$(V8DIR) && ( $(MAKE) clean || true )
find @top_srcdir@/3rdParty/$(V8DIR) -name "*.pyc" -exec rm "{}" ";"
rm -rf @top_srcdir@/3rdParty/$(V8DIR)/out
## -----------------------------------------------------------------------------
## --SECTION-- END-OF-FILE
## -----------------------------------------------------------------------------
## Local Variables:
## mode: outline-minor
## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)"
## End: