aboutsummaryrefslogtreecommitdiff
path: root/builder_install.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2013-02-08 21:29:02 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2013-02-08 21:29:02 +0200
commitcdf99fa3be509bf895c96da7c7ccb46d8dd0b2b0 (patch)
treef1411bb61a3de37708f442a9e4a0885b0e68c6a9 /builder_install.py
parent9ad292165924bdf8927551d3fdc960066dc3ec41 (diff)
downloadmeson-cdf99fa3be509bf895c96da7c7ccb46d8dd0b2b0.zip
meson-cdf99fa3be509bf895c96da7c7ccb46d8dd0b2b0.tar.gz
meson-cdf99fa3be509bf895c96da7c7ccb46d8dd0b2b0.tar.bz2
Fix dependency info.
Diffstat (limited to 'builder_install.py')
-rwxr-xr-xbuilder_install.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/builder_install.py b/builder_install.py
index 4f2a295..354ef49 100755
--- a/builder_install.py
+++ b/builder_install.py
@@ -14,11 +14,13 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import sys, pickle, os, shutil
+import sys, pickle, os, shutil, subprocess
class InstallData():
- def __init__(self):
+ def __init__(self, depfixer, dep_prefix):
self.targets = []
+ self.depfixer = depfixer
+ self.dep_prefix = dep_prefix
def do_install(datafilename):
ifile = open(datafilename, 'rb')
@@ -28,9 +30,18 @@ def do_install(datafilename):
outdir = t[1]
fname = os.path.split(fullfilename)[1]
outname = os.path.join(outdir, fname)
- print('Copying %s to %s' % (fname, outdir))
+ print('Installing %s to %s' % (fname, outdir))
os.makedirs(outdir, exist_ok=True)
shutil.copyfile(fullfilename, outname)
+ shutil.copystat(fullfilename, outname)
+ p = subprocess.Popen([d.depfixer, outname, d.dep_prefix], stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ (stdo, stde) = p.communicate()
+ if p.returncode != 0:
+ print('Could not fix dependency info.\n')
+ print('Stdout:\n%s\n' % stdo.decode())
+ print('Stderr:\n%s\n' % stde.decode())
+ sys.exit(1)
if __name__ == '__main__':
if len(sys.argv) != 2: