diff options
| author | Fabio Mascarenhas <mascarenhas@lambda-2.local> | 2010-01-16 01:42:57 -0200 |
|---|---|---|
| committer | Fabio Mascarenhas <mascarenhas@lambda-2.local> | 2010-01-16 01:42:57 -0200 |
| commit | 208f150e363188b617123d4d0e1406ced5d93ba3 (patch) | |
| tree | d13f142547f3167cd37c700e9554cfc89df353bb /src | |
| parent | aadfebb888572534a566da6986a458db8c4c7250 (diff) | |
| download | luarocks-208f150e363188b617123d4d0e1406ced5d93ba3.tar.gz luarocks-208f150e363188b617123d4d0e1406ced5d93ba3.tar.bz2 luarocks-208f150e363188b617123d4d0e1406ced5d93ba3.zip | |
use 7z for all archive operations on windows
Diffstat (limited to 'src')
| -rw-r--r-- | src/luarocks/fs/win32/tools.lua | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/luarocks/fs/win32/tools.lua b/src/luarocks/fs/win32/tools.lua index 0555a3b1..5a0f41f3 100644 --- a/src/luarocks/fs/win32/tools.lua +++ b/src/luarocks/fs/win32/tools.lua | |||
| @@ -279,7 +279,7 @@ end | |||
| 279 | -- additional arguments. | 279 | -- additional arguments. |
| 280 | -- @return boolean: true on success, false on failure. | 280 | -- @return boolean: true on success, false on failure. |
| 281 | function zip(zipfile, ...) | 281 | function zip(zipfile, ...) |
| 282 | return fs.execute("zip -r", zipfile, ...) | 282 | return fs.execute("7z a", zipfile, ...) |
| 283 | end | 283 | end |
| 284 | 284 | ||
| 285 | --- Uncompress files from a .zip archive. | 285 | --- Uncompress files from a .zip archive. |
| @@ -287,17 +287,14 @@ end | |||
| 287 | -- @return boolean: true on success, false on failure. | 287 | -- @return boolean: true on success, false on failure. |
| 288 | function unzip(zipfile) | 288 | function unzip(zipfile) |
| 289 | assert(zipfile) | 289 | assert(zipfile) |
| 290 | return fs.execute("unzip", zipfile) | 290 | return fs.execute("7z x", zipfile) |
| 291 | end | 291 | end |
| 292 | 292 | ||
| 293 | --- Uncompress gzip file. | 293 | --- Uncompress gzip file. |
| 294 | -- @param archive string: Filename of archive. | 294 | -- @param archive string: Filename of archive. |
| 295 | -- @return boolean : success status | 295 | -- @return boolean : success status |
| 296 | local function gunzip(archive) | 296 | local function gunzip(archive) |
| 297 | local cmd = fs.execute("gunzip -h 1>NUL 2>NUL") and 'gunzip' or | 297 | return fs.execute("7z x", archive) |
| 298 | fs.execute("gzip -h 1>NUL 2>NUL") and 'gzip -d' | ||
| 299 | local ok = fs.execute(cmd, archive) | ||
| 300 | return ok | ||
| 301 | end | 298 | end |
| 302 | 299 | ||
| 303 | --- Unpack an archive. | 300 | --- Unpack an archive. |
| @@ -312,20 +309,20 @@ function unpack_archive(archive) | |||
| 312 | if archive:match("%.tar%.gz$") then | 309 | if archive:match("%.tar%.gz$") then |
| 313 | ok = gunzip(archive) | 310 | ok = gunzip(archive) |
| 314 | if ok then | 311 | if ok then |
| 315 | ok = fs.execute("tar -xf ", strip_extension(archive)) | 312 | ok = fs.execute("7z x", strip_extension(archive)) |
| 316 | end | 313 | end |
| 317 | elseif archive:match("%.tgz$") then | 314 | elseif archive:match("%.tgz$") then |
| 318 | ok = gunzip(archive) | 315 | ok = gunzip(archive) |
| 319 | if ok then | 316 | if ok then |
| 320 | ok = fs.execute("tar -xf ", strip_extension(archive)..".tar") | 317 | ok = fs.execute("7z x ", strip_extension(archive)..".tar") |
| 321 | end | 318 | end |
| 322 | elseif archive:match("%.tar%.bz2$") then | 319 | elseif archive:match("%.tar%.bz2$") then |
| 323 | ok = fs.execute("bunzip2 ", archive) | 320 | ok = fs.execute("7z x ", archive) |
| 324 | if ok then | 321 | if ok then |
| 325 | ok = fs.execute("tar -xf ", strip_extension(archive)) | 322 | ok = fs.execute("7z x ", strip_extension(archive)) |
| 326 | end | 323 | end |
| 327 | elseif archive:match("%.zip$") then | 324 | elseif archive:match("%.zip$") then |
| 328 | ok = fs.execute("unzip ", archive) | 325 | ok = fs.execute("7z x ", archive) |
| 329 | elseif archive:match("%.lua$") or archive:match("%.c$") then | 326 | elseif archive:match("%.lua$") or archive:match("%.c$") then |
| 330 | -- Ignore .lua and .c files; they don't need to be extracted. | 327 | -- Ignore .lua and .c files; they don't need to be extracted. |
| 331 | return true | 328 | return true |
