20
20
21
21
from .filetype import FileType
22
22
23
- from .logconfig import logConfig
23
+ from .logconfig import logConfig , informUser
24
+
24
25
25
26
26
27
_logger = logConfig (__name__ )
@@ -230,7 +231,7 @@ def archiveFiles(pArgs, fileNames):
230
231
break
231
232
232
233
if retCode == 0 :
233
- _logger . info ('Generated LLVM bitcode archive %s' , pArgs .outputFile )
234
+ informUser ('Generated LLVM bitcode archive {0} \n ' . format ( pArgs .outputFile ) )
234
235
else :
235
236
_logger .error ('Failed to generate LLVM bitcode archive' )
236
237
@@ -347,6 +348,8 @@ def handleArchiveDarwin(pArgs):
347
348
bitCodeFiles = [ ]
348
349
retCode = 0
349
350
try :
351
+
352
+
350
353
tempDir = tempfile .mkdtemp (suffix = 'wllvm' )
351
354
os .chdir (tempDir )
352
355
@@ -358,19 +361,21 @@ def handleArchiveDarwin(pArgs):
358
361
errorMsg = 'Your ar does not seem to be easy to find.\n '
359
362
else :
360
363
errorMsg = 'OS error({0}): {1}' .format (e .errno , e .strerror )
361
- logging .error (errorMsg )
364
+ _logger .error (errorMsg )
362
365
raise Exception (errorMsg )
363
366
364
367
arPE = arP .wait ()
365
368
366
369
if arPE != 0 :
367
370
errorMsg = 'Failed to execute archiver with command {0}' .format (pArgs .arCmd )
368
- logging .error (errorMsg )
371
+ _logger .error (errorMsg )
369
372
raise Exception (errorMsg )
370
373
374
+ _logger .debug (2 )
375
+
371
376
# Iterate over objects and examine their bitcode inserts
372
377
for (root , dirs , files ) in os .walk (tempDir ):
373
- logging .debug ('Exploring "{0}"' .format (root ))
378
+ _logger .debug ('Exploring "{0}"' .format (root ))
374
379
for f in files :
375
380
fPath = os .path .join (root , f )
376
381
if FileType .getFileType (fPath ) == pArgs .fileType :
@@ -381,18 +386,18 @@ def handleArchiveDarwin(pArgs):
381
386
for bcFile in contents :
382
387
if bcFile != '' :
383
388
if not os .path .exists (bcFile ):
384
- logging .warning ('{0} lists bitcode library "{1}" but it could not be found' .format (f , bcFile ))
389
+ _logger .warning ('{0} lists bitcode library "{1}" but it could not be found' .format (f , bcFile ))
385
390
else :
386
391
bitCodeFiles .append (bcFile )
387
392
else :
388
- logging .info ('Ignoring file "{0}" in archive' .format (f ))
393
+ _logger .info ('Ignoring file "{0}" in archive' .format (f ))
389
394
390
- logging .info ('Found the following bitcode file names to build bitcode archive:\n {0}' .format (
395
+ _logger .info ('Found the following bitcode file names to build bitcode archive:\n {0}' .format (
391
396
pprint .pformat (bitCodeFiles )))
392
397
393
398
finally :
394
399
# Delete the temporary folder
395
- logging .debug ('Deleting temporary folder "{0}"' .format (tempDir ))
400
+ _logger .debug ('Deleting temporary folder "{0}"' .format (tempDir ))
396
401
shutil .rmtree (tempDir )
397
402
398
403
#write the manifest file if asked for
@@ -496,8 +501,7 @@ def buildArchive(pArgs, bitCodeFiles):
496
501
pArgs .outputFile = pArgs .inputFile
497
502
pArgs .outputFile += '.' + moduleExtension
498
503
499
- _logger .warning ('Writing output to %s' , pArgs .outputFile )
500
-
504
+ informUser ('Writing output to {0}\n ' .format (pArgs .outputFile ))
501
505
return linkFiles (pArgs , bitCodeFiles )
502
506
503
507
else :
@@ -512,8 +516,7 @@ def buildArchive(pArgs, bitCodeFiles):
512
516
else :
513
517
pArgs .outputFile = pArgs .inputFile + bcaExtension
514
518
515
- _logger .warning ('Writing output to %s' , pArgs .outputFile )
516
-
519
+ informUser ('Writing output to {0}\n ' .format (pArgs .outputFile ))
517
520
return archiveFiles (pArgs , bitCodeFiles )
518
521
519
522
@@ -655,7 +658,10 @@ def process_file_darwin(pArgs):
655
658
_logger .info ('Generating LLVM Bitcode module' )
656
659
retval = handleExecutable (pArgs )
657
660
elif ft == FileType .ARCHIVE :
658
- retval = handleArchiveDarwin (pArgs , True )
661
+ _logger .info ('Handling archive' )
662
+ retval = handleArchiveDarwin (pArgs )
663
+
664
+
659
665
else :
660
666
_logger .error ('File "%s" of type %s cannot be used' , pArgs .inputFile , FileType .revMap [ft ])
661
667
return retval
0 commit comments