Bug 1131492
| Summary: | moarvm: package contains bundled libraries | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jakub Čajka <jcajka> |
| Component: | moarvm | Assignee: | Gerd Pokorra <gp> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Christopher Meng <i> |
| Severity: | high | Docs Contact: | |
| Priority: | urgent | ||
| Version: | rawhide | CC: | dan, gp, i |
| Target Milestone: | --- | Keywords: | Tracking |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-09-10 02:38:26 UTC | Type: | Bug |
| 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: | 504493 | ||
|
Description
Jakub Čajka
2014-08-19 12:16:29 UTC
rpmls moarvm-debuginfo-0.2014.04-3.fc20.x86_64.rpm returns: ... drwxr-xr-x /usr/src/debug/MoarVM-2014.04 drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncall -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncall/dyncall.h -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncall/dyncall_types.h -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncall/dyncall_value.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncallback -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncallback/dyncall_args.h -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dyncallback/dyncall_callback.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dynload -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/dyncall/dynload/dynload.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/generalize-small.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/gcc -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/gcc/x86.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/loadstore -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/loadstore/atomic_load.h -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/loadstore/atomic_store.h -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/ordered_except_wr.h -rwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libatomic_ops/src/atomic_ops/sysdeps/read_ordered.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libtommath -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/libtommath/bn_mp_get_long.c -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/libtommath/bn_mp_set_long.c -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/libtommath/tommath.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libuv drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/libuv/include -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/libuv/include/uv-unix.h -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/libuv/include/uv.h drwxr-xr-x /usr/src/debug/MoarVM-2014.04/3rdparty/tinymt -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/tinymt/tinymt64.c -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/tinymt/tinymt64.h -rw-r--r-- /usr/src/debug/MoarVM-2014.04/3rdparty/uthash.h ... so even for libs, that are set as BuildRequires, some bundled files are used It finally sucks. Gerd, now you should understand me why I didn't want to approve it at the time. For uthash, I don't consider it as a bundled library, because the bundled library policy is unclear to me, you can check the mail thread on devel. uthash is a header only library and the one shipped in moarvm is not the same as the current version in Fedora, and moarvm has done some modifications on it. I will track this bug and get these craps out ASAP. The moarvm package do not bundle:
3rdparty/sha1 3rdparty/linenoise 3rdparty/msinttypes
During the review special options was added with upstream and they are used at the configuration:
%{__perl} Configure.pl --prefix=%{_usr} --has-libtommath --use-readline \
--has-sha --has-libuv --has-libatomic_ops
The directories 3rdparty/sha1 3rdparty/linenoise 3rdparty/msinttype are only not deleted before the build.
Only uthash.h is really used wich is not the same as in Fedora.
(In reply to Gerd Pokorra from comment #3) > The moarvm package do not bundle: > > 3rdparty/sha1 3rdparty/linenoise 3rdparty/msinttypes > > During the review special options was added with upstream and they are used > at the configuration: > > %{__perl} Configure.pl --prefix=%{_usr} --has-libtommath --use-readline \ > --has-sha --has-libuv --has-libatomic_ops but the buildsystem is not 100% correct so some of the bundled files still are used, as you can see in my comment #1, that's why is recommended to remove the unbundled files before build > The directories 3rdparty/sha1 3rdparty/linenoise 3rdparty/msinttype are only > not deleted before the build. > > Only uthash.h is really used wich is not the same as in Fedora. (In reply to Dan Horák from comment #4) > but the buildsystem is not 100% correct so some of the bundled files still > are used, as you can see in my comment #1, that's why is recommended to > remove the unbundled files before build Okay! I will try a build with first removing the files excluded uthash.h. The build works if I add the line: rm -r 3rdparty/sha1 3rdparty/linenoise 3rdparty/libtommath To my surprise it do not build if I remove more. For example: 3rdparty/libatomic_ops I will look daeper for the reason, may be I need some days to find a solution, because I am working also on other things. To libatomic_ops: I forgot to add the RuildRequires libatomic_ops-devel. It is corrected. MoarVM rebuilds are done for f21 and f22 (rawhide): f21: https://koji.fedoraproject.org/koji/buildinfo?buildID=569986 f22: https://koji.fedoraproject.org/koji/buildinfo?buildID=569984 I also add in the specfile the line: rm -r 3rdparty/sha1 3rdparty/linenoise 3rdparty/libatomic_ops 3rdparty/msinttypes In Fedora 20 the libatomic_ops version is: 7.2d In MoarVM the bundled libatomic_ops version is: 7.3alpha3 So there is a problem to do this in Fedora 20. I ask for updating libatomic_ops in Fedora 20 but the package maintainers have reasons not to do this. Next I will have a deeper look to libtommath and MoarVM. I hope I will find some time for it soon. moarvm-0.2014.04-5.fc21 has been submitted as an update for Fedora 21. https://admin.fedoraproject.org/updates/moarvm-0.2014.04-5.fc21 moarvm-0.2014.04-4.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/moarvm-0.2014.04-4.fc20 Remove of libtommath source files is added. The rebuilds are at: F20: http://koji.fedoraproject.org/koji/taskinfo?taskID=7473745 F21: http://koji.fedoraproject.org/koji/taskinfo?taskID=7473645 F22: http://koji.fedoraproject.org/koji/taskinfo?taskID=7473588 Now there are 3rdparth source files are removed as much as possible. This is added to the specfils: # make sure to not bundle this rm -r 3rdparty/sha1 3rdparty/linenoise 3rdparty/msinttypes %if 0%{?fedora} > 20 rm -r 3rdparty/libatomic_ops %endif # # The upstream libtommath doesn't have the conversion from and to # float/double that MoarVM needs. bn_mp_(get|set)_long.c are extentions of the # origin libtommath source. The header files are needed to build. rm `find 3rdparty/libtommath -type f ! -name '*long.c' -a ! -name '*.h'` I did not found the software dnycall and tinymt in Fedora 20. So this software needed to be included. Let me know if I am wrong. moarvm-0.2014.04-4.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report. moarvm-0.2014.04-5.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report. |