Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3292)

Unified Diff: dart/tools/make_links.py

Issue 33003005: Make sure we do not have stale entries inside build-dir/packages (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: dart/tools/make_links.py
diff --git a/dart/tools/make_links.py b/dart/tools/make_links.py
index 66f94e6b134d2a6b24f0c7ef1eeb51a878ccb025..6c08144d2f1b4ea1b45b2970d9547877a55a72ff 100644
--- a/dart/tools/make_links.py
+++ b/dart/tools/make_links.py
@@ -10,12 +10,16 @@ For each SOURCE in SOURCES create a link from SOURCE to TARGET. If a
SOURCE ends with .../lib, the lib suffix is ignored when determining
the name of the target link.
+Before creating any links, the old entries of the TARGET directory will be
+removed.
+
Usage:
python tools/make_links.py OPTIONS TARGET SOURCES...
'''
import optparse
import os
+import shutil
import subprocess
import sys
import utils
@@ -53,13 +57,18 @@ def create_timestamp_file(options):
if not os.path.exists(dir_name):
os.mkdir(dir_name)
open(options.timestamp_file, 'w').close()
-
+
def main(argv):
(options, args) = get_options()
target = os.path.relpath(args[0])
- if not os.path.exists(target):
- os.makedirs(target)
+ if os.path.exists(target):
+ # Remove the packages directory if it already exists.
+ # This is necessary, otherwise we can end up having links in there
+ # pointing to directories which no longer exist (on incremental builds).
+ print 'Removing %s' % target
+ shutil.rmtree(target)
+ os.makedirs(target)
for source in args[1:]:
# Assume the source directory is named ".../NAME/lib".
(name, lib) = os.path.split(source)
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698