The v8/SConstruct change has been give to the v8 people.
http://codereview.chromium.org/113897
This commit is contained in:
Ryan 2009-05-27 16:29:55 +02:00
Родитель 1d8c4659d1
Коммит a3627c06f8
4 изменённых файлов: 25 добавлений и 20 удалений

7
deps/libeio/wscript поставляемый
Просмотреть файл

@ -10,11 +10,6 @@ def configure(conf):
conf.check_cc(lib="pthread", header_name="pthread.h", function_name="pthread_create", mandatory=True)
platform_string = "__" + Options.platform
if Options.platform == "linux2":
platform_string = "__linux"
conf.define(platform_string, 1)
conf.check_cc(msg="Checking for futimes(2)", define_name="HAVE_FUTIMES", fragment="""
#include <sys/types.h>
#include <sys/time.h>
@ -66,7 +61,7 @@ def configure(conf):
}
""")
conf.check_cc(msg="Checking for sendfile(2)" , defines=[platform_string + "=1"] , define_name="HAVE_SENDFILE" , fragment="""
conf.check_cc(msg="Checking for sendfile(2)" , define_name="HAVE_SENDFILE" , fragment="""
# include <sys/types.h>
#if __linux
# include <sys/sendfile.h>

5
deps/libev/wscript поставляемый
Просмотреть файл

@ -8,11 +8,6 @@ def configure(conf):
print "--- libev ---"
#conf.check_tool('compiler_cc')
platform_string = "__" + Options.platform
if Options.platform == "linux2":
platform_string = "__linux"
conf.define(platform_string, 1)
conf.check_cc(header_name="sys/inotify.h")
conf.check_cc(header_name="sys/epoll.h")
conf.check_cc(header_name="sys/event.h")

22
deps/v8/SConstruct поставляемый
Просмотреть файл

@ -43,6 +43,16 @@ ANDROID_TOP = os.environ.get('TOP')
if ANDROID_TOP is None:
ANDROID_TOP=""
# TODO: Sort these issues out properly but as a temporary solution for gcc 4.4
# on linux we need these compiler flags to avoid a mksnapshot segfault, avoid
# crashes in the v8 test suite and avoid dtoa.c strict aliasing issues
if os.environ.get('GCC_VERSION') == '44':
GCC_EXTRA_CCFLAGS = ['-fno-tree-vectorize', '-fno-tree-vrp']
GCC_DTOA_EXTRA_CCFLAGS = ['-fno-strict-aliasing']
else:
GCC_EXTRA_CCFLAGS = []
GCC_DTOA_EXTRA_CCFLAGS = []
ANDROID_FLAGS = ['-march=armv5te',
'-mtune=xscale',
'-msoft-float',
@ -109,7 +119,7 @@ LIBRARY_FLAGS = {
}
},
'os:linux': {
'CCFLAGS': ['-ansi'],
'CCFLAGS': ['-ansi'] + GCC_EXTRA_CCFLAGS,
'library:shared': {
'LIBS': ['pthread']
}
@ -118,6 +128,8 @@ LIBRARY_FLAGS = {
'CCFLAGS': ['-ansi'],
},
'os:freebsd': {
'CPPPATH' : ['/usr/local/include'],
'LIBPATH' : ['/usr/local/lib'],
'CCFLAGS': ['-ansi'],
},
'os:win32': {
@ -260,7 +272,7 @@ MKSNAPSHOT_EXTRA_FLAGS = {
'LIBS': ['pthread'],
},
'os:freebsd': {
'LIBS': ['pthread'],
'LIBS': ['execinfo', 'pthread']
},
'os:win32': {
'LIBS': ['winmm', 'ws2_32'],
@ -278,7 +290,8 @@ MKSNAPSHOT_EXTRA_FLAGS = {
DTOA_EXTRA_FLAGS = {
'gcc': {
'all': {
'WARNINGFLAGS': ['-Werror', '-Wno-uninitialized']
'WARNINGFLAGS': ['-Werror', '-Wno-uninitialized'],
'CCFLAGS': GCC_DTOA_EXTRA_CCFLAGS
}
},
'msvc': {
@ -371,6 +384,7 @@ SAMPLE_FLAGS = {
'LIBS': ['pthread'],
},
'os:freebsd': {
'LIBPATH' : ['/usr/local/lib'],
'LIBS': ['execinfo', 'pthread']
},
'os:win32': {
@ -671,8 +685,6 @@ def VerifyOptions(env):
Abort("Shared Object soname not applicable for Windows.")
if env['soname'] == 'on' and env['library'] == 'static':
Abort("Shared Object soname not applicable for static library.")
if env['arch'] == 'x64' and env['os'] != 'linux':
Abort("X64 compilation only allowed on Linux OS.")
for (name, option) in SIMPLE_OPTIONS.iteritems():
if (not option.get('default')) and (name not in ARGUMENTS):
message = ("A value for option %s must be specified (%s)." %

11
wscript
Просмотреть файл

@ -1,4 +1,4 @@
#! /usr/bin/env python
# /usr/bin/env python
import Options
import sys
import os
@ -31,6 +31,11 @@ def configure(conf):
conf.env["USE_DEBUG"] = Options.options.debug
if sys.platform.startswith("freebsd"):
if not conf.check(lib="execinfo", libpath=['/usr/lib', '/usr/local/lib'], uselib_store="EXECINFO"):
fatal("install the libexecinfo port. devel/libexecinfo")
conf.sub_config('deps/libeio')
conf.sub_config('deps/libev')
@ -43,8 +48,6 @@ def configure(conf):
conf.env.append_value("CCFLAGS", "-DEIO_STACKSIZE=%d" % (4096*8))
#conf.check(lib='rt', uselib_store='RT')
conf.check(lib='profiler', uselib_store='PROFILER')
# Split off debug variant before adding variant specific defines
@ -158,7 +161,7 @@ def build(bld):
deps/http_parser
"""
node.uselib_local = "oi ev eio http_parser"
node.uselib = "V8 RT PROFILER"
node.uselib = "V8 EXECINFO PROFILER"
node.install_path = '${PREFIX}/bin'
node.chmod = 0755