• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env python
2# Copyright 2016 the V8 project authors. All rights reserved.
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6import os
7import sys
8import tarfile
9import time
10
11# In GN we expect the path to a stamp file as an argument.
12if len(sys.argv) == 2:
13  STAMP_FILE = os.path.abspath(sys.argv[1])
14
15os.chdir(os.path.dirname(os.path.abspath(__file__)))
16
17# Workaround for slow grp and pwd calls.
18tarfile.grp = None
19tarfile.pwd = None
20
21def filter_git(tar_info):
22  if tar_info.name.startswith(os.path.join('data', '.git')):
23    return None
24  else:
25    tar_info.uname = tar_info.gname = "test262"
26    return tar_info
27
28with tarfile.open('data.tar', 'w') as tar:
29  tar.add('data', filter=filter_git)
30
31# Workaround for GN. We can't specify the tarfile as output because it's
32# not in the product directory. Therefore we track running of this script
33# with an extra stamp file in the product directory.
34if len(sys.argv) == 2:
35  with open(STAMP_FILE, 'w') as f:
36    f.write(str(time.time()))
37