@@ -91,7 +91,7 @@ def generate_project_files(resources, export_path, target, name, toolchain, ide,
91
91
return files , exporter
92
92
93
93
94
- def zip_export (file_name , prefix , resources , project_files ):
94
+ def zip_export (file_name , prefix , resources , project_files , inc_repos ):
95
95
"""Create a zip file from an exported project.
96
96
97
97
Positional Parameters:
@@ -105,21 +105,21 @@ def zip_export(file_name, prefix, resources, project_files):
105
105
for prj_file in project_files :
106
106
zip_file .write (prj_file , join (prefix , basename (prj_file )))
107
107
for loc , resource in resources .iteritems ():
108
- print resource .features
109
108
for res in [resource ] + resource .features .values ():
110
- extras = []
111
- for directory in res .repo_dirs :
112
- for root , _ , files in walk (directory ):
113
- for repo_file in files :
114
- source = join (root , repo_file )
115
- extras .append (source )
116
- res .file_basepath [source ] = res .base_path
117
- for source in \
109
+ to_zip = (
118
110
res .headers + res .s_sources + res .c_sources + \
119
111
res .cpp_sources + res .libraries + res .hex_files + \
120
112
[res .linker_script ] + res .bin_files + res .objects + \
121
- res .json_files + res .lib_refs + res .lib_builds + \
122
- res .repo_files + extras :
113
+ res .json_files + res .lib_refs + res .lib_builds )
114
+ if inc_repos :
115
+ for directory in res .repo_dirs :
116
+ for root , _ , files in walk (directory ):
117
+ for repo_file in files :
118
+ source = join (root , repo_file )
119
+ to_zip .append (source )
120
+ res .file_basepath [source ] = res .base_path
121
+ to_zip += res .repo_files
122
+ for source in to_zip :
123
123
if source :
124
124
zip_file .write (
125
125
source ,
@@ -132,7 +132,7 @@ def export_project(src_paths, export_path, target, ide,
132
132
libraries_paths = None , options = None , linker_script = None ,
133
133
clean = False , notify = None , verbose = False , name = None ,
134
134
inc_dirs = None , jobs = 1 , silent = False , extra_verbose = False ,
135
- config = None , macros = None , zip_proj = None ):
135
+ config = None , macros = None , zip_proj = None , inc_repos = False ):
136
136
"""Generates a project file and creates a zip archive if specified
137
137
138
138
Positional Arguments:
@@ -223,9 +223,9 @@ def export_project(src_paths, export_path, target, ide,
223
223
files .append (config_header )
224
224
if zip_proj :
225
225
if isinstance (zip_proj , basestring ):
226
- zip_export (join (export_path , zip_proj ), name , resource_dict , files )
226
+ zip_export (join (export_path , zip_proj ), name , resource_dict , files , inc_repos )
227
227
else :
228
- zip_export (zip_proj , name , resource_dict , files )
228
+ zip_export (zip_proj , name , resource_dict , files , inc_repos )
229
229
230
230
return exporter
231
231
0 commit comments