Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Unified Diff: native_client_sdk/src/build_tools/generate_make.py

Issue 10823016: [NaCl SDK] Don't copy .h files to src in SDK. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: feedback Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « native_client_sdk/src/build_tools/build_sdk.py ('k') | native_client_sdk/src/build_tools/make_rules.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: native_client_sdk/src/build_tools/generate_make.py
diff --git a/native_client_sdk/src/build_tools/generate_make.py b/native_client_sdk/src/build_tools/generate_make.py
index f613c878d49d290aa7d8e92ee9ad0d4291101c71..ac7d01ccebf607b434812a35082116646316d172 100755
--- a/native_client_sdk/src/build_tools/generate_make.py
+++ b/native_client_sdk/src/build_tools/generate_make.py
@@ -63,7 +63,7 @@ def SetVar(varname, values):
return out
-def GenerateCopyList(desc):
+def GenerateSourceCopyList(desc):
sources = []
# Add sources for each target
for target in desc['TARGETS']:
@@ -271,6 +271,10 @@ DSC_FORMAT = {
'LDFLAGS': (list, '', False),
'LIBS' : (list, '', False)
}, True),
+ 'HEADERS': (list, {
+ 'FILES': (list, '', True),
+ 'DEST': (str, '', True),
+ }, False),
'SEARCH': (list, '', False),
'POST': (str, '', False),
'PRE': (str, '', False),
@@ -451,6 +455,17 @@ def LoadProject(filename, toolchains):
return desc
+def FindAndCopyFiles(src_files, root, search_dirs, dst_dir):
+ buildbot_common.MakeDir(dst_dir)
+ for src_name in src_files:
+ src_file = FindFile(src_name, root, search_dirs)
+ if not src_file:
+ ErrorMsgFunc('Failed to find: ' + src_name)
+ return None
+ dst_file = os.path.join(dst_dir, src_name)
+ buildbot_common.CopyFile(src_file, dst_file)
+
+
def ProcessProject(srcroot, dstroot, desc, toolchains):
name = desc['NAME']
out_dir = os.path.join(dstroot, desc['DEST'], name)
@@ -458,14 +473,14 @@ def ProcessProject(srcroot, dstroot, desc, toolchains):
srcdirs = desc.get('SEARCH', ['.', '..'])
# Copy sources to example directory
- sources = GenerateCopyList(desc)
- for src_name in sources:
- src_file = FindFile(src_name, srcroot, srcdirs)
- if not src_file:
- ErrorMsgFunc('Failed to find: ' + src_name)
- return None
- dst_file = os.path.join(out_dir, src_name)
- buildbot_common.CopyFile(src_file, dst_file)
+ sources = GenerateSourceCopyList(desc)
+ FindAndCopyFiles(sources, srcroot, srcdirs, out_dir)
+
+ # Copy public headers to the include directory.
+ for headers_set in desc.get('HEADERS', []):
+ headers = headers_set['FILES']
+ header_out_dir = os.path.join(dstroot, headers_set['DEST'])
+ FindAndCopyFiles(headers, srcroot, srcdirs, header_out_dir)
if IsNexe(desc):
template=os.path.join(SCRIPT_DIR, 'template.mk')
« no previous file with comments | « native_client_sdk/src/build_tools/build_sdk.py ('k') | native_client_sdk/src/build_tools/make_rules.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698