From cdc5a20fc66d5a855899d33a5e8cdaef6fec02e2 Mon Sep 17 00:00:00 2001 From: Simon McVittie <smcv@collabora.com> Date: Tue, 2 Jul 2019 15:28:16 +0100 Subject: [PATCH] build: Add a metadata/ directory to binary-only releases This is a subset of sources/ listing what went into a build. Signed-off-by: Simon McVittie <smcv@collabora.com> --- build-relocatable-install.py | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/build-relocatable-install.py b/build-relocatable-install.py index a06f0b050..04070ab9b 100755 --- a/build-relocatable-install.py +++ b/build-relocatable-install.py @@ -160,7 +160,7 @@ def main(): ) os.makedirs(os.path.join(destdir_prefix, 'bin'), exist_ok=True) - os.makedirs(os.path.join(destdir_prefix, 'sources'), exist_ok=True) + os.makedirs(os.path.join(destdir_prefix, 'metadata'), exist_ok=True) for arch in ARCHS: os.makedirs( @@ -182,7 +182,7 @@ def main(): install( os.path.join(args.srcdir, 'THIRD-PARTY.md'), - os.path.join(destdir_prefix, 'sources', 'README.txt'), + os.path.join(destdir_prefix, 'metadata', 'README.txt'), 0o644, ) @@ -199,7 +199,7 @@ def main(): install( '/usr/share/doc/libcapsule-tools-relocatable/copyright', - os.path.join(destdir_prefix, 'sources', 'libcapsule.txt'), + os.path.join(destdir_prefix, 'metadata', 'libcapsule.txt'), ) else: for arch in ARCHS: @@ -239,17 +239,9 @@ def main(): 'debian', 'copyright', ), - os.path.join(destdir_prefix, 'sources', 'libcapsule.txt'), + os.path.join(destdir_prefix, 'metadata', 'libcapsule.txt'), ) - for dsc in glob.glob( - os.path.join(args.srcdir, 'libcapsule*.dsc') - ): - v_check_call([ - 'dcmd', 'install', '-m644', dsc, - os.path.join(destdir_prefix, 'sources'), - ]) - primary_architecture = subprocess.check_output([ 'dpkg', '--print-architecture', ]).decode('utf-8').strip() @@ -356,7 +348,7 @@ def main(): '/usr/share/doc/{}/copyright'.format(package), os.path.join( destdir_prefix, - 'sources', + 'metadata', '{}.txt'.format(source), ), ) @@ -375,12 +367,26 @@ def main(): 'build-relocatable/usr/share/doc/{}/copyright'.format(package), os.path.join( destdir_prefix, - 'sources', + 'metadata', '{}.txt'.format(source), ), ) source_to_download.add(source) + shutil.copytree( + os.path.join(destdir_prefix, 'metadata'), + os.path.join(destdir_prefix, 'sources'), + ) + + if not args.relocatabledir: + for dsc in glob.glob( + os.path.join(args.srcdir, 'libcapsule*.dsc') + ): + v_check_call([ + 'dcmd', 'install', '-m644', dsc, + os.path.join(destdir_prefix, 'sources'), + ]) + v_check_call( [ 'apt-get', @@ -474,6 +480,7 @@ def main(): r'--transform=s,^\(\.\(/\|$\)\)\?,pressure-vessel-{}/,'.format( args.version, ), + '--exclude=metadata', # this is all duplicated in sources/ '-zcvf', src_tar + '.tmp', '-C', destdir_prefix, '.', -- GitLab