Collect header files from vendor/node.
This commit is contained in:
		
					parent
					
						
							
								3d9af77b37
							
						
					
				
			
			
				commit
				
					
						3da4736a2b
					
				
			
		
					 1 changed files with 39 additions and 2 deletions
				
			
		|  | @ -12,9 +12,27 @@ from lib.util import * | |||
| 
 | ||||
| SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__))) | ||||
| DIST_DIR = os.path.join(SOURCE_ROOT, 'dist') | ||||
| NODE_DIR = os.path.join(SOURCE_ROOT, 'vendor', 'node') | ||||
| DIST_HEADERS_DIR = os.path.join(DIST_DIR, 'node-{0}'.format(get_atom_shell_version())) | ||||
| 
 | ||||
| BUNDLE_NAME = 'Atom.app' | ||||
| BUNDLE_DIR = os.path.join(SOURCE_ROOT, 'out', 'Release', BUNDLE_NAME) | ||||
| 
 | ||||
| HEADERS_SUFFIX = [ | ||||
|   '.h', | ||||
|   '.gypi', | ||||
| ] | ||||
| HEADERS_DIRS = [ | ||||
|   'src', | ||||
|   'deps/http_parser', | ||||
|   'deps/v8', | ||||
|   'deps/zlib', | ||||
|   'deps/uv', | ||||
|   'tools', | ||||
| ] | ||||
| HEADERS_FILES = [ | ||||
| ] | ||||
| 
 | ||||
| 
 | ||||
| def main(): | ||||
|   rm_rf(DIST_DIR) | ||||
|  | @ -22,6 +40,7 @@ def main(): | |||
| 
 | ||||
|   force_build() | ||||
|   copy_binaries() | ||||
|   copy_headers() | ||||
|   copy_license() | ||||
|   create_version() | ||||
|   create_zip() | ||||
|  | @ -37,16 +56,27 @@ def copy_binaries(): | |||
|                   symlinks=True) | ||||
| 
 | ||||
| 
 | ||||
| def copy_headers(): | ||||
|   os.mkdir(DIST_HEADERS_DIR) | ||||
|   for include_path in HEADERS_DIRS: | ||||
|     abs_path = os.path.join(NODE_DIR, include_path) | ||||
|     for dirpath, dirnames, filenames in os.walk(abs_path): | ||||
|       for filename in filenames: | ||||
|         extension = os.path.splitext(filename)[1] | ||||
|         if extension not in HEADERS_SUFFIX: | ||||
|           continue | ||||
|         copy_source_file(os.path.join(dirpath, filename)) | ||||
| 
 | ||||
| 
 | ||||
| def copy_license(): | ||||
|   license = os.path.join(SOURCE_ROOT, 'LICENSE') | ||||
|   shutil.copy2(license, DIST_DIR) | ||||
| 
 | ||||
| 
 | ||||
| def create_version(): | ||||
|   commit = subprocess.check_output(['git', 'rev-parse', 'HEAD']).strip() | ||||
|   version_path = os.path.join(SOURCE_ROOT, 'dist', 'version') | ||||
|   with open(version_path, 'w') as version_file: | ||||
|     version_file.write(commit) | ||||
|     version_file.write(get_atom_shell_version()) | ||||
| 
 | ||||
| 
 | ||||
| def create_zip(): | ||||
|  | @ -59,5 +89,12 @@ def create_zip(): | |||
|     subprocess.check_call(['zip', '-r', '-y', zip_file] + files) | ||||
| 
 | ||||
| 
 | ||||
| def copy_source_file(source): | ||||
|   relative = os.path.relpath(source, start=NODE_DIR) | ||||
|   destination = os.path.join(DIST_HEADERS_DIR, relative) | ||||
|   safe_mkdir(os.path.dirname(destination)) | ||||
|   shutil.copy2(source, destination) | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|   sys.exit(main()) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Cheng Zhao
				Cheng Zhao