Diff
Modified: trunk/ChangeLog (112016 => 112017)
--- trunk/ChangeLog 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/ChangeLog 2012-03-25 01:41:33 UTC (rev 112017)
@@ -1,3 +1,9 @@
+2012-03-24 Kevin Ollivier <[email protected]>
+
+ [wx] Unreviewed. Fix the build after WTF move.
+
+ * wscript:
+
2012-03-23 Dave Michael <[email protected]>
Relanding(r111754): HTMLPluginElement is not destroyed on reload or navigation if getNPObject is called
Modified: trunk/Source/_javascript_Core/ChangeLog (112016 => 112017)
--- trunk/Source/_javascript_Core/ChangeLog 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/Source/_javascript_Core/ChangeLog 2012-03-25 01:41:33 UTC (rev 112017)
@@ -1,3 +1,9 @@
+2012-03-24 Kevin Ollivier <[email protected]>
+
+ [wx] Unreviewed. Fix the build after WTF move.
+
+ * wscript:
+
2012-03-23 Filip Pizlo <[email protected]>
DFG double voting may be overzealous in the case of variables that end up
Modified: trunk/Source/_javascript_Core/wscript (112016 => 112017)
--- trunk/Source/_javascript_Core/wscript 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/Source/_javascript_Core/wscript 2012-03-25 01:41:33 UTC (rev 112017)
@@ -34,8 +34,8 @@
import Options
jscore_excludes = ['jsc.cpp', 'ExecutableAllocatorPosix.cpp', 'LLIntOffsetsExtractor.cpp']
- jscore_excludes.extend(get_excludes(jscore_dir, ['*CF.cpp', '*Symbian.cpp']))
- jscore_excludes.extend(get_excludes(jscore_dir, ['*None.cpp']))
+ jscore_exclude_patterns = get_port_excludes(Options.options.port)
+ jscore_exclude_patterns.append('*None.cpp')
sources = []
@@ -44,11 +44,18 @@
jscore_excludes += ['OSAllocatorPosix.cpp', 'ThreadingPthreads.cpp']
else:
jscore_excludes.append('JSStringRefBSTR.cpp')
- jscore_excludes.extend(get_excludes(jscore_dir, ['*Win.cpp']))
+ if sys.platform.startswith('darwin'):
+ jscore_excludes.append('GCActivityCallback.cpp') # this is an empty impl.
+
bld.env.LIBDIR = output_dir
full_dirs = get_dirs_for_features(jscore_dir, features=[Options.options.port.lower()], dirs=jscore_dirs)
+ abs_dirs = []
+ for adir in full_dirs:
+ abs_dirs.append(os.path.join(jscore_dir, adir))
+ jscore_excludes.extend(get_excludes_in_dirs(abs_dirs, jscore_exclude_patterns))
+
includes = common_includes + full_dirs
if sys.platform.startswith('darwin'):
includes.append(os.path.join(jscore_dir, 'icu'))
@@ -56,7 +63,7 @@
# 1. A simple program
jscore = bld.new_task_gen(
features = 'cc cxx cshlib',
- includes = '. .. assembler ../WTF ../WTF/wtf ' + ' '.join(includes),
+ includes = '. .. assembler ../WTF ' + ' '.join(includes),
source = sources,
defines = ['BUILDING_JavaScriptCore'],
target = 'jscore',
@@ -81,5 +88,3 @@
myenv.CXXFLAGS = myenv.CXXFLAGS[:]
myenv.CXXFLAGS.remove('/EHsc')
obj.env = myenv
-
- bld.install_files(os.path.join(output_dir, '_javascript_Core'), 'API/*.h')
Modified: trunk/Tools/ChangeLog (112016 => 112017)
--- trunk/Tools/ChangeLog 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/Tools/ChangeLog 2012-03-25 01:41:33 UTC (rev 112017)
@@ -1,3 +1,14 @@
+2012-03-24 Kevin Ollivier <[email protected]>
+
+ [wx] Unreviewed. Fix the build after WTF move.
+
+ * waf/build/build_utils.py:
+ (get_excludes):
+ (get_excludes_in_dirs):
+ * waf/build/settings.py:
+ (get_port_excludes):
+ (common_configure):
+
2012-03-24 Dirk Pranke <[email protected]>
clean up NRWT logging/metering, be less verbose
Modified: trunk/Tools/waf/build/build_utils.py (112016 => 112017)
--- trunk/Tools/waf/build/build_utils.py 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/Tools/waf/build/build_utils.py 2012-03-25 01:41:33 UTC (rev 112017)
@@ -48,21 +48,28 @@
def get_excludes(root, patterns):
"""
- Get a list of exclude patterns going down several dirs.
- TODO: Make this fully recursive.
+ Get a list of exclude patterns for root and all its subdirs.
"""
excludes = []
+ for afile in os.listdir(root):
+ fullpath = os.path.join(root, afile)
+ if os.path.isdir(fullpath):
+ excludes.extend(get_excludes(fullpath, patterns))
+
for pattern in patterns:
- subdir_pattern = os.sep + '*'
- for subdir in [subdir_pattern, subdir_pattern * 2, subdir_pattern * 3]:
- adir = root + subdir + os.sep + pattern
- files = glob.glob(adir)
- for afile in files:
- excludes.append(os.path.basename(afile))
+ adir = root + os.sep + pattern
+ files = glob.glob(adir)
+ for afile in files:
+ excludes.append(os.path.basename(afile))
return excludes
+def get_excludes_in_dirs(dirs, patterns):
+ excludes = []
+ for adir in dirs:
+ excludes.extend(get_excludes(adir, patterns))
+ return excludes
def get_dirs_for_features(root, features, dirs):
"""
Modified: trunk/Tools/waf/build/settings.py (112016 => 112017)
--- trunk/Tools/waf/build/settings.py 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/Tools/waf/build/settings.py 2012-03-25 01:41:33 UTC (rev 112017)
@@ -77,6 +77,8 @@
uses = [
'CF',
'CFNet',
+ 'CURL',
+ 'WXGC',
]
port_uses = {
@@ -98,11 +100,11 @@
'profiler',
'runtime',
'tools',
- 'wtf',
- 'wtf/dtoa',
- 'wtf/text',
- 'wtf/unicode',
- 'wtf/unicode/icu',
+ '../WTF/wtf',
+ '../WTF/wtf/dtoa',
+ '../WTF/wtf/text',
+ '../WTF/wtf/unicode',
+ '../WTF/wtf/unicode/icu',
'yarr',
]
@@ -191,6 +193,26 @@
build_port = default_port
+def get_port_excludes(thisport):
+ """
+ This function creates a list of file patterns to exclude
+ based on what port you are using and what USES it has defined.
+ """
+ exclude_patterns = []
+ global ports
+ for port in ports:
+ if not port == thisport:
+ exclude = "*%s.cpp" % port
+ if port == 'Chromium':
+ exclude = "*Chromium*.cpp"
+ exclude_patterns.append(exclude)
+
+ global uses
+ for use in uses:
+ if thisport not in port_uses or not use in port_uses[thisport]:
+ exclude_patterns.append("*%s.cpp" % use)
+
+ return exclude_patterns
def get_config():
waf_configname = config.upper().strip()
@@ -345,7 +367,9 @@
if sys.platform.startswith('darwin'):
conf.env['LIB_ICU'] = ['icucore']
-
+ global port_uses
+ port_uses[build_port].append('CF')
+
conf.env.append_value('CPPPATH', wklibs_dir)
conf.env.append_value('LIBPATH', wklibs_dir)
Modified: trunk/wscript (112016 => 112017)
--- trunk/wscript 2012-03-25 01:32:48 UTC (rev 112016)
+++ trunk/wscript 2012-03-25 01:41:33 UTC (rev 112017)
@@ -116,8 +116,9 @@
webcore_dirs.extend(['Source/WebKit/wx', 'Source/WebKit/wx/WebKitSupport'])
wk_includes = ['.',
+ os.path.join(wk_root, 'Source', 'WTF'),
+ os.path.join(wk_root, 'Source', 'WTF', 'wtf'),
os.path.join(wk_root, 'Source', '_javascript_Core'),
- os.path.join(wk_root, 'Source', '_javascript_Core', 'wtf', 'text'),
os.path.join(wk_root, 'Source', 'WebCore'),
os.path.join(wk_root, 'Source', 'WebCore', 'DerivedSources'),
os.path.join(wk_root, 'Source', 'WebCore', 'platform', 'image-decoders'),
@@ -219,25 +220,22 @@
exclude_patterns = ['*AllInOne.cpp', '*None.cpp',]
+ if sys.platform.startswith('darwin'):
+ features.append('cf')
+
# exclude the filename patterns for all other ports.
- for port in ports:
- if not port == thisport:
- exclude = "*%s.cpp" % port
- if port == 'Chromium':
- exclude = "*Chromium*.cpp"
- exclude_patterns.append(exclude)
+ exclude_patterns.extend(get_port_excludes(Options.options.port))
if Options.options.port == 'wx':
features.append('curl')
exclude_patterns.extend(['*CFNet.cpp', 'test*bindings.*', "WebDOMCanvas*.cpp", "WebDOMSVG*.cpp"])
- if sys.platform.startswith('darwin'):
- features.append('cf')
- else:
- exclude_patterns.append('*CF.cpp')
-
full_dirs = get_dirs_for_features(wk_root, features=features, dirs=webcore_dirs)
+ # make sure we don't use the CF networking engine
+ if Options.options.port == 'wx' and sys.platform.startswith('darwin'):
+ full_dirs.remove('Source/WebCore/platform/network/cf')
+
jscore_dir = os.path.join(wk_root, 'Source', '_javascript_Core')
for item in os.listdir(jscore_dir):
fullpath = os.path.join(jscore_dir, item)
@@ -246,8 +244,6 @@
wk_includes.append('Source')
wk_includes.append(os.path.join(jscore_dir, 'collector', 'handles'))
- wk_includes.append(os.path.join(jscore_dir, 'wtf', 'unicode'))
- wk_includes.append(os.path.join(jscore_dir, 'wtf', 'unicode', 'icu'))
wk_includes += common_includes + full_dirs
if sys.platform.startswith('darwin'):
wk_includes.append(os.path.join(webcore_dir, 'icu'))
@@ -266,7 +262,7 @@
webcore = bld.new_task_gen(
features = 'cc cxx cshlib',
- includes = 'Source/WTF ' + ' '.join(wk_includes),
+ includes = ' '.join(wk_includes),
source = ' '.join(flattenSources(webcore_sources.values())),
cxxflags = cxxflags,
defines = ['WXMAKINGDLL_WEBKIT', 'BUILDING_WebCore'],