From 26da628c004e206f95ca9fcc01963881df6ed7a5 Mon Sep 17 00:00:00 2001 From: woojin Date: Thu, 4 Sep 2014 05:04:33 +0900 Subject: [PATCH] INTERNAL: add list command in debuginfo batch file 1. add list command : show list of files inside given rpm package 2. modify debuginfo.bat, rpm2cpio.bat for windows support Change-Id: If0f566593e6cdc4cdff7168c95ee0cd18742678d Signed-off-by: woojin --- .../dynamic-analyzer/tool/debuginfo.bat | 14 ++++++++-- .../dynamic-analyzer/tool/rpm2cpio.bat | 32 +++++++++++++++++----- 2 files changed, 36 insertions(+), 10 deletions(-) diff --git a/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/debuginfo.bat b/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/debuginfo.bat index 98005f1..c3b4b5f 100755 --- a/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/debuginfo.bat +++ b/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/debuginfo.bat @@ -22,6 +22,7 @@ exit /b 1 ) ) ) +) goto :eof @@ -34,7 +35,7 @@ exit /b echo %1 echo %2 cd %1 -%base_dir%\rpm2cpio %2 +%base_dir%\rpm2cpio -x %2 exit /b :extract_2pkgs @@ -42,6 +43,13 @@ echo %1 echo %2 echo %3 cd %1 -call %base_dir%\rpm2cpio %2 -call %base_dir%\rpm2cpio %3 +call %base_dir%\rpm2cpio -x %2 +call %base_dir%\rpm2cpio -x %3 exit /b + +:list_pkg +echo %1 +echo %2 +cd %1 +%base_dir%\rpm2cpio -l %2 +exit /b \ No newline at end of file diff --git a/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/rpm2cpio.bat b/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/rpm2cpio.bat index 2bfce0e..3cc09c5 100755 --- a/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/rpm2cpio.bat +++ b/org.tizen.dynamicanalyzer.workbench/dynamic-analyzer/tool/rpm2cpio.bat @@ -1,20 +1,31 @@ @echo off -set base_dir=%~dp0 +if "%1"=="-x" ( +goto pkg_check +) else ( +if "%1"=="-l" ( +goto pkg_check +) else ( +echo "unknown option!" +exit /b 1 +) +) +) -if not '%1'=='' ( -if exist %1 goto args_ok +:pkg_check +if not "%2"=="" ( +if exist %2 goto args_ok ) echo "no package supplied" exit /b 1 :args_ok -set pkg=%1 +set pkg=%2 setlocal enabledelayedexpansion set count=1 set leadsize=96 set /a o=%leadsize%+8 -for /f "tokens=2-9" %%a in ('%base_dir%\od -j %o% -N 8 -t u1 %pkg%') do ( +for /f "tokens=2-9" %%a in ('od -j %o% -N 8 -t u1 %pkg%') do ( if !count!==2 goto endod set var1=%%a set var2=%%b @@ -37,7 +48,7 @@ set /a sigsize=8 + 16 * %il% + %dl% set /a o=%o% + %sigsize% + ( 8 - ( %sigsize% %% 8 ) ) %% 8 + 8 setlocal enabledelayedexpansion set count=1 -for /f "tokens=2-9" %%a in ('%base_dir%\od -j %o% -N 8 -t u1 %pkg%') do ( +for /f "tokens=2-9" %%a in ('od -j %o% -N 8 -t u1 %pkg%') do ( if !count!==2 goto end2od set var1=%%a set var2=%%b @@ -59,4 +70,11 @@ endlocal & set il=%il% & set dl=%dl% set /a hdrsize=8 + 16 * %il% + %dl% set /a o=%o% + %hdrsize% -%base_dir%\dd if=%pkg% ibs=%o% skip=1 2>nul | %base_dir%\gzip -d | %base_dir%\cpio -i --make-directories --preserve-modification-time 2>nul +if "%1"=="-x" ( +dd if=%pkg% ibs=%o% skip=1 2>nul | gzip -d | cpio -i --make-directories --preserve-modification-time 2>nul +) else ( +if "%1"=="-l" ( +dd if=%pkg% ibs=%o% skip=1 2>nul | gzip -d | cpio -t +) +) + -- 2.7.4