mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
* E101: indentation contains mixed spaces and tabs * E111: indentation is not a multiple of four * E128: continuation line under-indented for visual indent * E302: expected 2 blank lines, found 1 * W191: indentation contains tabs
52 lines
1.7 KiB
Python
Executable File
52 lines
1.7 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# check-filelist-abc.py - Fake build to test driver-produced -filelists.
|
|
#
|
|
# This source file is part of the Swift.org open source project
|
|
#
|
|
# Copyright (c) 2014 - 2016 Apple Inc. and the Swift project authors
|
|
# Licensed under Apache License v2.0 with Runtime Library Exception
|
|
#
|
|
# See http://swift.org/LICENSE.txt for license information
|
|
# See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
|
#
|
|
# ----------------------------------------------------------------------------
|
|
|
|
from __future__ import print_function
|
|
|
|
import os
|
|
import sys
|
|
|
|
assert sys.argv[1] == '-frontend'
|
|
|
|
if '-primary-file' in sys.argv:
|
|
primaryFile = sys.argv[sys.argv.index('-primary-file') + 1]
|
|
else:
|
|
primaryFile = None
|
|
|
|
if primaryFile and primaryFile.endswith(".bc"):
|
|
sys.exit()
|
|
|
|
filelistFile = sys.argv[sys.argv.index('-filelist') + 1]
|
|
|
|
with open(filelistFile, 'r') as f:
|
|
lines = f.readlines()
|
|
assert lines[0].endswith("/a.swift\n") or lines[0].endswith("/a.swiftmodule\n")
|
|
assert lines[1].endswith("/b.swift\n") or lines[1].endswith("/b.swiftmodule\n")
|
|
assert lines[2].endswith("/c.swift\n") or lines[2].endswith("/c.swiftmodule\n")
|
|
|
|
if primaryFile:
|
|
print("Handled", os.path.basename(primaryFile))
|
|
elif lines[0].endswith(".swiftmodule\n"):
|
|
print("Handled modules")
|
|
else:
|
|
print("Handled all")
|
|
|
|
if '-num-threads' in sys.argv:
|
|
outputListFile = sys.argv[sys.argv.index('-output-filelist') + 1]
|
|
with open(outputListFile, 'r') as f:
|
|
lines = f.readlines()
|
|
assert lines[0].endswith("/a.o\n") or lines[0].endswith("/a.bc\n")
|
|
assert lines[1].endswith("/b.o\n") or lines[1].endswith("/b.bc\n")
|
|
assert lines[2].endswith("/c.o\n") or lines[2].endswith("/c.bc\n")
|
|
print("...with output!")
|