diff -r 6660c0312c89 -r d8b3a897b1d5 common/tools/7z_list_to_manifest.pl --- a/common/tools/7z_list_to_manifest.pl Fri May 14 15:26:42 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -#!/usr/bin/perl - -# Copyright (c) 2009 Symbian Foundation Ltd -# This component and the accompanying materials are made available -# under the terms of the License "Eclipse Public License v1.0" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Symbian Foundation Ltd - initial contribution. -# -# Contributors: -# -# Description: -# Turn a 7z listing into a manifest file that can be re-used by 7z -# - Assumes that header/footer is fixed, and that file listing starts at column 53 -# Also allows use on a zipfile directly by passing -z as an option - -use strict; - -my $line; -my $between_header_footer = 0; -my $header_footer_pattern = "------------------- ----- ------------ ------------ ------------------------"; - -my $file = shift or die "Usage: $0 <7z list output file> [-z to run directly on a zipfile]\n"; # provided 7z list to process -my $mode = shift; - -# if -z has been specified, then generate intermediate 7z list file for processing -if ($mode eq lc("-z")) { - system("7z l $file > $file.tmp.lst"); - $file = $file.".tmp.lst"; -} - -open my $sevenZfile, "<", $file or die; - -while ($line =<$sevenZfile>) -{ - if ($line =~ /$header_footer_pattern/) - { - $between_header_footer= !$between_header_footer; - - } - if (($line =~ /^(.{53})(.*)/) && ($line !=/$header_footer_pattern/)) - { - print $2 ."\n" if $between_header_footer; - next; - } -} - -close $sevenZfile; - -# remove temp 7z file if one has been generated -if ($mode eq lc("-z")) { - system("del $file"); -} - -exit 0; \ No newline at end of file