@@ -106,7 +106,7 @@ def print_build_result(board, example, status, duration):
106106# -----------------------------
107107# CMake
108108# -----------------------------
109- def cmake_board (board , build_args , build_flags_on ):
109+ def cmake_board (board , build_args , build_flags_on , membrowse_upload ):
110110 ret = [0 , 0 , 0 ]
111111 start_time = time .monotonic ()
112112
@@ -142,6 +142,8 @@ def cmake_board(board, build_args, build_flags_on):
142142 if rcmd .returncode == 0 :
143143 ret [0 ] += 1
144144 run_cmd (["cmake" , "--build" , build_dir , '--target' , 'tinyusb_metrics' ])
145+ if membrowse_upload :
146+ run_cmd (["cmake" , "--build" , build_dir , '--target' , 'examples-membrowse-upload' ])
145147 # print(rcmd.stdout.decode("utf-8"))
146148 else :
147149 ret [1 ] += 1
@@ -198,13 +200,13 @@ def make_board(board, build_args):
198200# -----------------------------
199201# Build Family
200202# -----------------------------
201- def build_boards_list (boards , build_defines , build_system , build_flags_on ):
203+ def build_boards_list (boards , build_defines , build_system , build_flags_on , membrowse_upload ):
202204 ret = [0 , 0 , 0 ]
203205 for b in boards :
204206 r = [0 , 0 , 0 ]
205207 if build_system == 'cmake' :
206208 build_args = [f'-D{ d } ' for d in build_defines ]
207- r = cmake_board (b , build_args , build_flags_on )
209+ r = cmake_board (b , build_args , build_flags_on , membrowse_upload )
208210 elif build_system == 'make' :
209211 build_args = ' ' .join (f'{ d } ' for d in build_defines )
210212 r = make_board (b , build_args )
@@ -273,6 +275,8 @@ def main():
273275 parser .add_argument ('--one-first' , action = 'store_true' , default = False ,
274276 help = 'Build only the first board (alphabetical) of each specified family' )
275277 parser .add_argument ('-j' , '--jobs' , type = int , default = os .cpu_count (), help = 'Number of jobs to run in parallel' )
278+ parser .add_argument ('--membrowse-upload' , action = 'store_true' , default = False ,
279+ help = 'Run examples-membrowse-upload target after successful CMake build' )
276280 parser .add_argument ('-v' , '--verbose' , action = 'store_true' , help = 'Verbose output' )
277281 args = parser .parse_args ()
278282
@@ -284,6 +288,7 @@ def main():
284288 build_flags_on = args .build_flags_on
285289 one_random = args .one_random
286290 one_first = args .one_first
291+ membrowse_upload = args .membrowse_upload
287292 verbose = args .verbose
288293 clean_build = args .clean
289294 parallel_jobs = args .jobs
@@ -314,7 +319,7 @@ def main():
314319 all_boards .extend (get_family_boards (f , one_random , one_first ))
315320
316321 # build all boards
317- result = build_boards_list (all_boards , build_defines , build_system , build_flags_on )
322+ result = build_boards_list (all_boards , build_defines , build_system , build_flags_on , membrowse_upload )
318323
319324 total_time = time .monotonic () - total_time
320325 print (build_separator )
0 commit comments