Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 784145
Summary: | Review Request: libomxil-bellagio - OpenMAX Integration Layer | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Nicolas Chauvet (kwizart) <kwizart> | ||||||
Component: | Package Review | Assignee: | Niels de Vos <ndevos> | ||||||
Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | rawhide | CC: | ndevos, notting, package-review, pbrobinson | ||||||
Target Milestone: | --- | Keywords: | Patch | ||||||
Target Release: | --- | Flags: | ndevos:
fedora-review+
gwync: fedora-cvs+ |
||||||
Hardware: | All | ||||||||
OS: | Linux | ||||||||
URL: | https://sourceforge.net/tracker/?func=detail&aid=3477869&group_id=160680&atid=816817 | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2012-09-08 18:36:48 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 245418 | ||||||||
Attachments: |
|
Description
Nicolas Chauvet (kwizart)
2012-01-23 23:24:17 UTC
Created attachment 579325 [details] Patch to fix comile errors with -Werror Here is the review, please correct any deficiencies and post an updated spec and src.rpm: +:ok, =:needs attention, -:needs fixing MUST Items: [-] MUST: rpmlint must be run on every package. $ rpmlint /var/lib/mock/fedora-16-x86_64/result/*.rpm libomxil-bellagio.spec libomxil-bellagio.src: W: spelling-error %description -l en_US codecs -> code cs, code-cs, codex libomxil-bellagio.src: W: spelling-error %description -l en_US functionalities -> functionalists, functionality, functionalist libomxil-bellagio.src: W: spelling-error %description -l en_US alsa -> Alas, alas, Alisa libomxil-bellagio.src: W: spelling-error %description -l en_US aac -> AC, Ac, ac libomxil-bellagio.src: W: spelling-error %description -l en_US ogg -> Gog, egg, org libomxil-bellagio.src: W: invalid-url Source0: http://ignum.dl.sourceforge.net/project/omxil/omxil/Bellagio%200.9.3/libomxil-bellagio-0.9.3.tar.gz <urlopen error [Errno 104] Connection reset by peer> libomxil-bellagio.x86_64: W: spelling-error %description -l en_US codecs -> code cs, code-cs, codex libomxil-bellagio.x86_64: W: spelling-error %description -l en_US functionalities -> functionalists, functionality, functionalist libomxil-bellagio.x86_64: W: spelling-error %description -l en_US alsa -> Alas, alas, Alisa libomxil-bellagio.x86_64: W: spelling-error %description -l en_US aac -> AC, Ac, ac libomxil-bellagio.x86_64: W: spelling-error %description -l en_US ogg -> Gog, egg, org libomxil-bellagio.x86_64: W: devel-file-in-non-devel-package /usr/lib64/bellagio/libomxclocksrc.so libomxil-bellagio.x86_64: W: devel-file-in-non-devel-package /usr/lib64/bellagio/libomxaudio_effects.so libomxil-bellagio.x86_64: W: devel-file-in-non-devel-package /usr/lib64/omxloaders/libomxdynamicloader.so libomxil-bellagio.x86_64: W: devel-file-in-non-devel-package /usr/lib64/bellagio/libomxvideosched.so libomxil-bellagio-devel.x86_64: W: no-documentation libomxil-bellagio.spec: W: invalid-url Source0: http://ignum.dl.sourceforge.net/project/omxil/omxil/Bellagio%200.9.3/libomxil-bellagio-0.9.3.tar.gz <urlopen error [Errno 104] Connection reset by peer> 4 packages and 1 specfiles checked; 0 errors, 17 warnings. The "spelling-error" can be ignored, looks fine to me (although I'm not a native English speaker). The "devel-file-in-non-devel-package" seem to be caused by the .so symlink. I do not know if that symlink is required for correct functioning. If not, please remove those symlinks, if they are required, you may ignore the warning (the .so are in their own directory). "invalid-url" needs to be fixed, see below. "no-documentation" in the -devel package seems fine as well, there is no developers documentation available in the sources either. The OpenMAX specification seems to be documented at http://www.khronos.org/openmax. [+] MUST: The package must be named according to the Package Naming Guidelines. [+] MUST: The spec file name must match the base package %{name} [+] MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines. [+] MUST: The License field in the package spec file must match the actual license. [+] MUST: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package must be included in %doc. [+] MUST: The spec file must be written in American English. [+] MUST: The spec file for the package MUST be legible. [-] MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. Please use a URL as described here: https://fedoraproject.org/wiki/Packaging:SourceURL#Sourceforge.net $ sha1sum libomxil-bellagio-0.9.3.tar.gz SOURCES/libomxil-bellagio-0.9.3.tar.gz 04afd1bde078afa5a03190b6c6865406e2bd01d8 libomxil-bellagio-0.9.3.tar.gz cff7692238a860f22a67ca6f0efcbdc63922f426 SOURCES/libomxil-bellagio-0.9.3.tar.gz To download, use this to keep the time of the archive: $ wget -m -nd \ http://downloads.sourceforge.net/project/omxil/omxil/Bellagio%200.9.3/libomxil-bellagio-0.9.3.tar.gz [+] MUST: The package must successfully compile and build into binary rpms on at least one supported architecture. Locally built with mock on x86_64 and on Fedora ARM (as this is blocking the ARMTracker Bug): http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=752390 Attaching a patch that makes it possible to build with -Werror, it would make it possible to remove the first sed-expression. Maybe you can provide this patch upstream (I tried but am not able to attach patches there). [+] MUST: If the package does not successfully compile, build or work on an architecture, then those architectures should be listed in the spec in ExcludeArch. [+] MUST: All build dependencies must be listed in BuildRequires [+] MUST: Every binary RPM package which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun. [+] MUST: A package must own all directories that it creates. If it does not create a directory that it uses, then it should require a package which does create that directory. [+] MUST: A package must not contain any duplicate files in the %files listing. [+] MUST: Permissions on files must be set properly. Executables should be set with executable permissions, for example. Every %files section must include a %defattr(...) line. [+] MUST: Each package must consistently use macros, as described in the macros section of Packaging Guidelines. [+] MUST: The package must contain code, or permissible content. This is described in detail in the code vs. content section of Packaging Guidelines. [+] MUST: If a package includes something as %doc, it must not affect the runtime of the application. [+] MUST: Header files must be in a -devel package. [+] MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' (for directory ownership and usability). the [+] MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package. [+] MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} [+] MUST: Packages must NOT contain any .la libtool archives, these should be removed in the spec. [+] MUST: Packages must not own files or directories already owned by other packages. [+] MUST: All filenames in rpm packages must be valid UTF-8. SHOULD Items: [+] SHOULD: The reviewer should test that the package builds in mock. [+] SHOULD: The package should compile and build into binary rpms on all supported architectures. [=] SHOULD: The reviewer should test that the package functions as described. It would be appreciated if you can build the provided test-programs and package them in a -tests sub-package. You can build the test-programs like this: make check "LDFLAGS=-L$PWD/src/.libs" \ "CFLAGS=-I$RPM_BUILD_ROOT/%{_includedir}" If you can think of a way (I could not) to include automated tests with %check, that would be a great alternative. [+] SHOULD: The placement of pkgconfig(.pc) files depends on their usecase, and this is usually for development purposes, so should be placed in a -devel pkg. A reasonable exception is that the main pkg itself is a devel tool not installed in a user runtime, e.g. gcc or gdb. Spec URL: http://kwizart.fedorapeople.org/review/libomxil-bellagio.spec SRPM URL: http://kwizart.fedorapeople.org/review/libomxil-bellagio-0.9.3-2.fc18.src.rpm Description: OpenMAX Integration Layer Changelog: - Fix build with -Werror - patch from Niels de Vos - Convert nodoc fix to a patch - Add BR doxygen - Enable make check and create a -test subpackage Sorry for the lack of answer Hi Nicolas, I'm not sure how you are testing the building of your packages, but you should either use mock or koji/fedpkg. On Fedora 17 I hit the following error when building your new src.rpm with mock: make[3]: Entering directory `/builddir/build/BUILD/libomxil-bellagio-0.9.3/src' gcc -DHAVE_CONFIG_H -I. -I.. -DOMXILCOMPONENTSPATH=\"/usr/lib64/bellagio/\" -I../include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wall -Werror -DCONFIG_DEBUG_LEVEL=0 -c -o omxregister_bellagio-omxregister.o `test -f 'omxregister.c' || echo './'`omxregister.c omxregister.c: In function 'buildComponentsList': omxregister.c:249:13: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] omxregister.c:250:13: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] omxregister.c:325:14: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] cc1: all warnings being treated as errors make[3]: *** [omxregister_bellagio-omxregister.o] Error 1 On Fedora Rawhide in mock: make[3]: Entering directory `/builddir/build/BUILD/libomxil-bellagio-0.9.3/test/components/audio_effects' make omxvolcontroltest omxaudiomixertest make[4]: Entering directory `/builddir/build/BUILD/libomxil-bellagio-0.9.3/test/components/audio_effects' gcc -DHAVE_CONFIG_H -I. -I../../.. -I../../../test/components/common -I/usr/include -I/builddir/build/BUILDROOT/libomxil-bellagio-0.9.3-2.fc18.x86_64//usr/include -c -o omxvolcontroltest-omxvolcontroltest.o `test -f 'omxvolcontroltest.c' || echo './'`omxvolcontroltest.c In file included from omxvolcontroltest.c:27:0: omxvolcontroltest.h:38:22: fatal error: OMX_Core.h: No such file or directory compilation terminated. I don't thinks 'make check' in %check does anything useful, it is probably sufficient to include the test-binaries in the -test subpackage and remove the %check completely. Got it, seems like using autoreconf -vif only worked in F-16. I've tested it in mock, but seems like only on F-16. This time a scratch build suceeded: http://koji.fedoraproject.org/koji/taskinfo?taskID=4325736 Spec URL: http://kwizart.fedorapeople.org/review/libomxil-bellagio.spec SRPM URL: http://kwizart.fedorapeople.org/review/libomxil-bellagio-0.9.3-3.fc18.src.rpm Description: OpenMAX Integration Layer Changelog: - Avoid running autoreconf - Avoid running make check - Fix manual building of test binaries Nice, thanks for all the corrections. I've tested this on arm-koji as well: $ arm-koji build --scratch f18 /tmp/libomxil-bellagio-0.9.3-3.fc18.src.rpm ... Task info: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=997354 ... 997354 build (f18, libomxil-bellagio-0.9.3-3.fc18.src.rpm) completed successfully Building on fedora-17 seems still to fail though. But if you are not interested in getting the package in F17, I don't see it as a problem. I'll set fedora_review+, signalling that this package is APPROVED. Now you can file an SCM request as directed here: - http://fedoraproject.org/wiki/Package_SCM_admin_requests (In reply to comment #5) ... > Building on fedora-17 seems still to fail though. But if you are not Works for me with mock fedora-17 on x86_64, it has failed on arm or x86 ? New Package SCM Request ======================= Package Name: libomxil-bellagio Short Description: OpenMAX Integration Layer Owners: kwizart Branches: f16 f17 el6 InitialCC: Git done (by process-git-requests). Niels, please take ownership of review BZs. Thanks! Jon, uhm, right, sure. I assumed it was assigned to me already :-/ Nicolas, I've built 0.9.3-3 in mock (f17, x86_64) and now also in koji where it failed: - http://koji.fedoraproject.org/koji/taskinfo?taskID=4328662 From the build.log: omxregister.c:249:13: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] omxregister.c:250:13: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] omxregister.c:325:14: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result] cc1: all warnings being treated as errors make[3]: *** [omxregister_bellagio-omxregister.o] Error 1 Created attachment 600451 [details]
Additional patch to fix the build with -Werror on Fedora 17
Only tested with local compiling, and needs to be pushed upstream. The 'continue' may not be correct, it may be better to return an error and completely abort.
Finally got the patch reworked (fix 32bit) and build. Thx for the review and patches. |