Summary: | [science overlay] app-arch/lbzip2 (new package) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Jeroen Roovers (RETIRED) <jer> |
Component: | New packages | Assignee: | Default Assignee for New Packages <maintainer-wanted> |
Status: | RESOLVED FIXED | ||
Severity: | enhancement | CC: | ephemient, jlec, mgorny, pacho |
Priority: | High | Keywords: | EBUILD, InVCS |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://lacos.hu/ | ||
Whiteboard: | InOverlay | ||
Package list: | Runtime testing required: | --- | |
Attachments: |
app-arch/lbzip2-0.14.ebuild
app-arch/lbzip2-0.15.ebuild app-arch/lbzip2-0.15.ebuild |
Description
Jeroen Roovers (RETIRED)
2009-03-27 21:12:23 UTC
Created attachment 187037 [details]
app-arch/lbzip2-0.14.ebuild
src_test passes on amd64.
now in science overlay, thanks to jlec. (In reply to comment #1) > Created an attachment (id=187037) [edit] > app-arch/lbzip2-0.14.ebuild > > src_test passes on amd64. > test_phase produces following error: test.sh: [2009-04-14 18:29:54 CEST] performance pbzip2_decompr_regf on scratch/pbzip2-compr test.sh: line 225: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance 7za_decompr_regf on scratch/pbzip2-compr test.sh: line 241: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance bzip2_decompr_pipe on scratch/pbzip2-compr test.sh: line 200: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance lbzip2_decompr_pipe on scratch/pbzip2-compr test.sh: line 213: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance pbzip2_decompr_pipe on scratch/pbzip2-compr test.sh: line 222: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance 7za_decompr_pipe on scratch/pbzip2-compr test.sh: line 237: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance decompression warmup scratch/7za-compr test.sh: [2009-04-14 18:29:54 CEST] performance bzip2_decompr_regf on scratch/7za-compr test.sh: line 202: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance lbzip2_decompr_regf on scratch/7za-compr test.sh: line 215: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance pbzip2_decompr_regf on scratch/7za-compr test.sh: line 225: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance 7za_decompr_regf on scratch/7za-compr test.sh: line 241: time: command not found test.sh: [2009-04-14 18:29:54 CEST] performance bzip2_decompr_pipe on scratch/7za-compr test.sh: line 200: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance lbzip2_decompr_pipe on scratch/7za-compr test.sh: line 213: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance pbzip2_decompr_pipe on scratch/7za-compr test.sh: line 222: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] performance 7za_decompr_pipe on scratch/7za-compr test.sh: line 237: time: command not found cat: write error: Broken pipe test.sh: [2009-04-14 18:29:54 CEST] counting bytes (In reply to comment #3) > test_phase produces following error: > test.sh: [2009-04-14 18:29:54 CEST] performance pbzip2_decompr_regf on > scratch/pbzip2-compr > test.sh: line 225: time: command not found From the README: ------------------------------------------------------------------------------- Installation ============ Please enable SUSv2 conformance in your environment. (An easy way to do this on a GNU/Linux system, at least for the purposes of this document: (1) install the Debian Almquist Shell, (2) whenever "make" is mentioned, pass it the "SHELL=/path/to/dash" macro definition after any options but before any targets, (3) whenever "sh" is mentioned, use "dash".) ------------------------------------------------------------------------------- src_test() doesn't pass SHELL=/path/to/dash. Furthermore, you will need GNU time. I figured all GNU/Linux distros install it per default; perhaps I should have mentioned it as (4) in the section quoted above. I also suggest upgrading to lbzip2-0.15. Thanks, lacos Created attachment 188344 [details]
app-arch/lbzip2-0.15.ebuild
I see nothing that would cause Bash's pretend-to-be-a-POSIX-sh and dash to act differently, and I don't really like adding app-shells/dash to the build dependencies, but as that's upstream's recommendation, in it goes.
Also added sys-process/time to USE=test build-dependencies, and bumped the version. Again, passed src_test on amd64.
(In reply to comment #5) > I see nothing that would cause Bash's pretend-to-be-a-POSIX-sh and dash to act > differently, and I don't really like adding app-shells/dash to the build > dependencies, but as that's upstream's recommendation, in it goes. Try (in general) "time -p -- sleep 1". Argument "--" is not used anymore in "test.sh" as a delimiter indicating the end of options, but IIRC I tried to for a while. According to SUSv2, the time utiliy [1] supports the XBD specification, Utility Syntax Guidelines, and thus "--". Bash (at least the version I run, 3.2.39(1)-release) violates this, even with --posix. Dash, on the other hand, is written explicitly for POSIX conformance. I develop lbzip2 based on SUSv2, and on GNU/Linux, dash is the most conformant shell I know of. (Needing to install GNU time additionally fits nicely with this -- that's just part of the GNU/Linux-specific way to create a SUSv2-conformant environment.) I use bash for an interactive shell but I have to write my scripts in a SUSv2-portable way, and dash helps me catch my ingrained bashisms that sometimes creep in against my best efforts. (For more raving of mine on this, see [2], present in the original bug description, too.) > Also added sys-process/time to USE=test build-dependencies, and bumped the > version. Again, passed src_test on amd64. I forgot to emphasize: -O3 was changed to -O2 in Makefile (-> src_unpack()). See also [3]. I'm sorry for not stressing this before. It really should have been placed in the upstream changelog but it felt awkward, the changelog being written in a "higher level" style. It probably didn't matter for your build since you use Makefile.dev in src_compile(), and Makefile.dev contains no -O* option. If you only use Makefile.dev for building lbzip2, you can skip changing Makefile in src_unpack() completely. (Makefile.dev is standalone -- SUSv2 make doesn't mandate inclusion support.) Thanks! lacos [1] http://www.opengroup.org/onlinepubs/007908775/xcu/time.html [2] http://lists.debian.org/debian-mentors/2009/02/msg00137.html [3] http://packages.debian.org/changelogs/pool/main/l/lbzip2/current/changelog#versionversion0.15-1 > Also added sys-process/time to USE=test build-dependencies, and bumped the
> version. Again, passed src_test on amd64.
>
Try emerge p7zip and test again
It should be optional, as I believe the test harness will still work even if it's not installed... I'll double-check that later... But I have had p7zip installed all along. Any particular issue with that? Created attachment 188520 [details]
app-arch/lbzip2-0.15.ebuild
The reason for patching the Makefiles is to follow the user's CFLAGS settings and not force any specific -O*/-g*... obviously I wasn't paying enough attention to the last build, and didn't notice that the -O2 wasn't patched out.
Hmm, didn't notice LDFLAGS=-s either. Portage strips binaries when installing, unless the system is configured with FEATURES=nostrip, and that preference should be followed rather than being hard-coded in the package, so I patched that out too.
The ebuild: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=blob;f=app-arch/lbzip2/lbzip2-0.15.ebuild;h=6b3cc7007c4f2789f6a18092c0f9b209d5a4a1f1;hb=HEAD the build dir http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=tree;f=app-arch/lbzip2;h=f7d5aebee1f0ed6578efb164e6c60659c3e53336;hb=HEAD Sorry again with newer revisions: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=blob;f=app-arch/lbzip2/lbzip2-0.15.ebuild;h=b05e82fc7a8b4578f65a161209ada3a54f232072;hb=HEAD http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=tree;f=app-arch/lbzip2;hb=HEAD Did the version bump to 0.16 |