mirror of https://gitee.com/bigwinds/arangodb
220 lines
7.9 KiB
Makefile
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:
|