Compare commits
10 Commits
2cb3c57582
...
dbe672dc77
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dbe672dc77 | ||
|
|
dc154a461e | ||
|
|
783c3d419c | ||
|
|
1acf680f3d | ||
|
|
a95d95120a | ||
|
|
5bde76ba0b | ||
|
|
fdfe69bd3d | ||
|
|
42fa267779 | ||
|
|
259b4bc5a0 | ||
|
|
017dfe72e7 |
56
001-Fix-Invalid-Suffix_pbzip2.patch
Normal file
56
001-Fix-Invalid-Suffix_pbzip2.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
--- pbzip2-1.1.13/pbzip2.cpp 2023-02-06 19:35:50.155958930 +0800
|
||||||
|
+++ pbzip2-1.1.13.new/pbzip2.cpp 2023-02-06 19:38:16.491958930 +0800
|
||||||
|
@@ -1220,7 +1220,7 @@
|
||||||
|
// give warning to user if block is larger than 250 million bytes
|
||||||
|
if (fileData->bufSize > 250000000)
|
||||||
|
{
|
||||||
|
- fprintf(stderr, "pbzip2: *WARNING: Compressed block size is large [%"PRIuMAX" bytes].\n",
|
||||||
|
+ fprintf(stderr, "pbzip2: *WARNING: Compressed block size is large [%" PRIuMAX " bytes].\n",
|
||||||
|
(uintmax_t) fileData->bufSize);
|
||||||
|
fprintf(stderr, " If program aborts, use regular BZIP2 to decompress.\n");
|
||||||
|
}
|
||||||
|
@@ -1829,7 +1829,7 @@
|
||||||
|
|
||||||
|
if (QuietMode != 1)
|
||||||
|
{
|
||||||
|
- fprintf(stderr, " Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize);
|
||||||
|
+ fprintf(stderr, " Output Size: %" PRIuMAX " bytes\n", (uintmax_t)CompressedSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef PBZIP_DEBUG
|
||||||
|
@@ -2072,7 +2072,7 @@
|
||||||
|
close(hOutfile);
|
||||||
|
if (QuietMode != 1)
|
||||||
|
{
|
||||||
|
- fprintf(stderr, " Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize);
|
||||||
|
+ fprintf(stderr, " Output Size: %" PRIuMAX " bytes\n", (uintmax_t)CompressedSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
syncSetProducerDone(1); // Not really needed for direct version
|
||||||
|
@@ -2794,7 +2794,7 @@
|
||||||
|
// unlikely to get here since more likely exception will be thrown
|
||||||
|
if (OutputBuffer.size() != size)
|
||||||
|
{
|
||||||
|
- fprintf(stderr, "pbzip2: *ERROR: Could not initialize (OutputBuffer); size=%"PRIuMAX"! Aborting...\n", (uintmax_t)size);
|
||||||
|
+ fprintf(stderr, "pbzip2: *ERROR: Could not initialize (OutputBuffer); size=%" PRIuMAX "! Aborting...\n", (uintmax_t)size);
|
||||||
|
safe_mutex_unlock(OutMutex);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
@@ -4102,7 +4102,7 @@
|
||||||
|
if (decompress == 1)
|
||||||
|
fprintf(stderr, " BWT Block Size: %c00k\n", BWTblockSizeChar);
|
||||||
|
if (hasInFile)
|
||||||
|
- fprintf(stderr, " Input Size: %"PRIuMAX" bytes\n", (uintmax_t)InFileSize);
|
||||||
|
+ fprintf(stderr, " Input Size: %" PRIuMAX " bytes\n", (uintmax_t)InFileSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (decompress == 1)
|
||||||
|
@@ -4224,7 +4224,7 @@
|
||||||
|
{
|
||||||
|
NumBufferedBlocksMax = numCPU;
|
||||||
|
if (QuietMode != 1)
|
||||||
|
- fprintf(stderr, "*Warning* Max memory limit increased to %"PRIuMAX" MB to support %d CPUs\n", (uintmax_t)((NumBufferedBlocksMax + (numCPU * 2)) * blockSize)/1000000, numCPU);
|
||||||
|
+ fprintf(stderr, "*Warning* Max memory limit increased to %" PRIuMAX " MB to support %d CPUs\n", (uintmax_t)((NumBufferedBlocksMax + (numCPU * 2)) * blockSize)/1000000, numCPU);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
36
README.en.md
36
README.en.md
@ -1,36 +0,0 @@
|
|||||||
# pbzip2
|
|
||||||
|
|
||||||
#### Description
|
|
||||||
Parallel implementation of bzip2
|
|
||||||
|
|
||||||
#### Software Architecture
|
|
||||||
Software architecture description
|
|
||||||
|
|
||||||
#### Installation
|
|
||||||
|
|
||||||
1. xxxx
|
|
||||||
2. xxxx
|
|
||||||
3. xxxx
|
|
||||||
|
|
||||||
#### Instructions
|
|
||||||
|
|
||||||
1. xxxx
|
|
||||||
2. xxxx
|
|
||||||
3. xxxx
|
|
||||||
|
|
||||||
#### Contribution
|
|
||||||
|
|
||||||
1. Fork the repository
|
|
||||||
2. Create Feat_xxx branch
|
|
||||||
3. Commit your code
|
|
||||||
4. Create Pull Request
|
|
||||||
|
|
||||||
|
|
||||||
#### Gitee Feature
|
|
||||||
|
|
||||||
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
|
|
||||||
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
|
|
||||||
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
|
|
||||||
4. The most valuable open source project [GVP](https://gitee.com/gvp)
|
|
||||||
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
|
|
||||||
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
|
|
||||||
45
README.md
45
README.md
@ -1,7 +1,11 @@
|
|||||||
# pbzip2
|
# pbzip2
|
||||||
|
|
||||||
#### 介绍
|
#### 介绍
|
||||||
Parallel implementation of bzip2
|
|
||||||
|
pbzip2是基于bzip2发行的多线程版本,压缩比与bzip2大致相同,但压缩时间上比bzip2减少了线程倍数,
|
||||||
|
这是因为bzip2是单线程工作,而bpzip2是多线程的
|
||||||
|
|
||||||
|
pbzip2的输出压缩文件兼容bzip2 v1.0.2以及更新的版本(pbzip2压缩的压缩包可用bzip2进行解压缩)
|
||||||
|
|
||||||
#### 软件架构
|
#### 软件架构
|
||||||
软件架构说明
|
软件架构说明
|
||||||
@ -9,15 +13,42 @@ Parallel implementation of bzip2
|
|||||||
|
|
||||||
#### 安装教程
|
#### 安装教程
|
||||||
|
|
||||||
1. xxxx
|
1.在欧拉操作系统下,可通过运行如下命令进行安装:
|
||||||
2. xxxx
|
> dnf install pbzip2
|
||||||
3. xxxx
|
|
||||||
|
|
||||||
#### 使用说明
|
#### 使用说明
|
||||||
|
|
||||||
1. xxxx
|
````
|
||||||
2. xxxx
|
Usage: pbzip2 [-1 .. -9] [-b#cdfhklm#p#qrS#tVz] <filename> <filename2> <filenameN>
|
||||||
3. xxxx
|
-1 .. -9 set BWT block size to 100k .. 900k (default 900k)
|
||||||
|
-b# Block size in 100k steps (default 9 = 900k)
|
||||||
|
-c,--stdout Output to standard out (stdout)
|
||||||
|
-d,--decompress Decompress file
|
||||||
|
-f,--force Overwrite existing output file
|
||||||
|
-h,--help Print this help message
|
||||||
|
-k,--keep Keep input file, don't delete
|
||||||
|
-l,--loadavg Load average determines max number processors to use
|
||||||
|
-m# Maximum memory usage in 1MB steps (default 100 = 100MB)
|
||||||
|
-p# Number of processors to use (default: autodetect [1])
|
||||||
|
-q,--quiet Quiet mode (default)
|
||||||
|
-r,--read Read entire input file into RAM and split between processors
|
||||||
|
-S# Child thread stack size in 1KB steps (default stack size if unspecified)
|
||||||
|
-t,--test Test compressed file integrity
|
||||||
|
-v,--verbose Verbose mode
|
||||||
|
-V,--version Display version info for pbzip2 then exit
|
||||||
|
-z,--compress Compress file (default)
|
||||||
|
--ignore-trailing-garbage=# Ignore trailing garbage flag (1 - ignored; 0 - forbidden)
|
||||||
|
|
||||||
|
If no file names are given, pbzip2 compresses or decompresses from standard input to standard output.
|
||||||
|
|
||||||
|
Example: pbzip2 -b15vk myfile.tar
|
||||||
|
Example: pbzip2 -p4 -r -5 myfile.tar second*.txt
|
||||||
|
Example: tar cf myfile.tar.bz2 --use-compress-prog=pbzip2 dir_to_compress/
|
||||||
|
Example: pbzip2 -d -m500 myfile.tar.bz2
|
||||||
|
Example: pbzip2 -dc myfile.tar.bz2 | tar x
|
||||||
|
Example: pbzip2 -c < myfile.txt > myfile.txt.bz2
|
||||||
|
````
|
||||||
|
|
||||||
#### 参与贡献
|
#### 参与贡献
|
||||||
|
|
||||||
|
|||||||
BIN
pbzip2-1.1.13.tar.gz
Normal file
BIN
pbzip2-1.1.13.tar.gz
Normal file
Binary file not shown.
60
pbzip2.spec
Normal file
60
pbzip2.spec
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
%global debug_package %{nil}
|
||||||
|
Name: pbzip2
|
||||||
|
Version: 1.1.13
|
||||||
|
Release: 3
|
||||||
|
Summary: Parallel implementation of the bzip2 block-sorting file compressor
|
||||||
|
License: BSD
|
||||||
|
URL: http://www.compression.ca/pbzip2/
|
||||||
|
|
||||||
|
Source0: https://launchpad.net/pbzip2/1.1/1.1.13/+download/pbzip2-1.1.13.tar.gz
|
||||||
|
Patch0: 001-Fix-Invalid-Suffix_pbzip2.patch
|
||||||
|
|
||||||
|
BuildRequires: gcc-c++ bzip2-devel
|
||||||
|
|
||||||
|
%description
|
||||||
|
PBZIP2 is a parallel implementation of the bzip2 block-sorting file compressor.
|
||||||
|
The output of this version should be fully compatible with bzip2 v1.0.2 or newer
|
||||||
|
(ie: anything compressed with pbzip2 can be decompressed with bzip2).
|
||||||
|
|
||||||
|
%package_help
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n pbzip2-%{version} -p1
|
||||||
|
f=AUTHORS; iconv -f iso-8859-1 -t utf-8 $f > $f.utf8 && mv $f.utf8 $f && alias rpmbuild='rpmbuild --nodebuginfo'
|
||||||
|
|
||||||
|
%build
|
||||||
|
%set_build_flags
|
||||||
|
%make_build CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="%{__global_ldflags} -s -fpie -pie"
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
pushd %{buildroot}
|
||||||
|
install -D -m755 %{_builddir}/pbzip2-%{version}/pbzip2 .%{_bindir}/pbzip2
|
||||||
|
install -D -m644 %{_builddir}/pbzip2-%{version}/pbzip2.1 .%{_mandir}/man1/pbzip2.1
|
||||||
|
ln -sf %{_builddir}/pbzip2-%{version}/pbzip2 .%{_bindir}/pbunzip2
|
||||||
|
ln -sf %{_builddir}/pbzip2-%{version}/pbzip2 .%{_bindir}/pbzcat
|
||||||
|
popd
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc AUTHORS README
|
||||||
|
%license COPYING
|
||||||
|
%{_bindir}/*
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc ChangeLog
|
||||||
|
%{_mandir}/man1/*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Aug 28 2023 chenchen <chen_aka_jan@163.com> - 1.1.13-3
|
||||||
|
- fix strip
|
||||||
|
|
||||||
|
* Thu Jul 13 2023 xu_ping <707078654@qq.com> - 1.1.13-2
|
||||||
|
- add pie options to fix link error
|
||||||
|
|
||||||
|
* Fri Feb 03 2023 wenchaofan <349464272@qq.com> - 1.1.13-1
|
||||||
|
- Update to 1.1.13
|
||||||
|
|
||||||
|
* Fri Jan 10 2020 openEuler Buildteam <buildteam@openeuler.org> - 1.1.12-10
|
||||||
|
- Package init
|
||||||
Loading…
x
Reference in New Issue
Block a user