summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/dl_cleanup.py19
1 files changed, 15 insertions, 4 deletions
diff --git a/scripts/dl_cleanup.py b/scripts/dl_cleanup.py
index 53cf4db05..ff38a158f 100755
--- a/scripts/dl_cleanup.py
+++ b/scripts/dl_cleanup.py
@@ -80,7 +80,7 @@ versionRegex = (
(re.compile(r"(.+)[-_]r?(\d+)"), parseVer_r), # xxx-r1111
)
-blacklist = (
+blacklist = [
("linux", re.compile(r"linux-.*")),
("gcc", re.compile(r"gcc-.*")),
("boost", re.compile(r"boost.*")),
@@ -89,7 +89,7 @@ blacklist = (
(".arm", re.compile(r".*\.arm")),
(".bin", re.compile(r".*\.bin")),
("rt-firmware", re.compile(r"RT\d+_Firmware.*")),
-)
+]
class EntryParseError(Exception): pass
@@ -135,14 +135,15 @@ def usage():
print ""
print " -d|--dry-run Do a dry-run. Don't delete any files"
print " -B|--show-blacklist Show the blacklist and exit"
+ print " -w|--whitelist ITEM Remove ITEM from blacklist"
def main(argv):
global opt_dryrun
try:
(opts, args) = getopt.getopt(argv[1:],
- "hdB",
- [ "help", "dry-run", "show-blacklist", ])
+ "hdBw:",
+ [ "help", "dry-run", "show-blacklist", "whitelist=", ])
if len(args) != 1:
raise getopt.GetoptError()
except getopt.GetoptError:
@@ -155,6 +156,16 @@ def main(argv):
return 0
if o in ("-d", "--dry-run"):
opt_dryrun = True
+ if o in ("-w", "--whitelist"):
+ for i in range(0, len(blacklist)):
+ (name, regex) = blacklist[i]
+ if name == v:
+ del blacklist[i]
+ break
+ else:
+ print "Whitelist error: Item", v,\
+ "is not in blacklist"
+ return 1
if o in ("-B", "--show-blacklist"):
for (name, regex) in blacklist:
print name