Spec: http://math.ifi.unizh.ch/fedora/spec/mosml.spec SRPM: http://math.ifi.unizh.ch/fedora/4/i386/SRPMS.gemi/mosml-2.01-3.src.rpm Description: Moscow ML provides a light-weight implementation of full Standard ML, including Modules and some extensions. Standard ML is a strict functional language widely used in teaching and research.
SRPM is 404 not found.
This should be: http://math.ifi.unizh.ch/fedora/4/i386/SRPMS.gemi/mosml-2.01-4.src.rpm
Missing BuildRequires: gd-devel A few quick things rpmlint noticed after it did build with gd-devel: * rpmlint of mosml: Missing changelog. Why aren't the headers and devel files in a devel subpackage, are they required for using the program? * rpmlint of mosml-examples: No need for any win32 Makefile stuff.
Items fixed. http://math.ifi.unizh.ch/fedora/4/i386/SRPMS.gemi/mosml-2.01-5.src.rpm
The CAML light part of the license says "The user undertakes not to carry out any paying distribution of the software." while allowing for cost of reproduction. Don't know if this non commercial clause is too restrictive. The .sos do not seem to have any versioning, mosml does this a different wa? rpmlint complains about several shlib-with-non-pic-code and linking problems like the following example: E: mosml-pg shlib-with-non-pic-code /usr/lib/mosml/lib/libmpq.so The listed shared libraries contain object code that was compiled without -fPIC. All object code in shared libraries should be recompiled separately from the static libraries with the -fPIC option. Another common mistake that causes this problem is linking with ``gcc -Wl,-shared'' instead of ``gcc -shared''. E: mosml-pg library-not-linked-against-libc /usr/lib/mosml/lib/libmpq.so
(In reply to comment #5) > The CAML light part of the license says "The user undertakes not to carry out > any paying distribution of the software." while allowing for cost of > reproduction. Don't know if this non commercial clause is too restrictive. It seems that CAML light has been relicensed to QPL and LGPL: http://caml.inria.fr/caml-light/license.en.html Would that solve the licensing problem?
That site does not seem to be up now for some reason. However, QPL and LGPL are both OSI approved, a good sign. http://www.opensource.org/licenses/ It would be best to check the actual text though.
The site is up again now.
Not building on devel x86_64: + cd dynlibs + make MOSMLHOME=/var/tmp/mosml-2.01-5-root-mockbuild/usr/lib64/mosml cd intinf; make make[1]: Entering directory `/builddir/build/BUILD/mosml/src/dynlibs/intinf' gcc -Dunix -O2 -fno-defer-pop -I/var/tmp/mosml-2.01-5-root-mockbuild/usr/lib64/mosml/include -c -o intinf.o intinf.c intinf.c: In function 'largeint_get_str': intinf.c:319: warning: incompatible implicit declaration of built-in function 'malloc' ld -shared -o libmgmp.so intinf.o /usr/lib/libgmp.a ld: intinf.o: relocation R_X86_64_32 against `first_atoms' can not be used when making a shared object; recompile with -fPIC intinf.o: could not read symbols: Bad value make[1]: *** [libmgmp.so] Error 1
Could you try this: http://math.ifi.unizh.ch/fedora/5/i386/SRPMS.gemi/mosml-2.01-7.fc5.src.rpm If it doesn't work, we need to get an expert on x86_64 compiling and linking.
Nope. ld -shared -o libmgmp.so intinf.o /usr/lib/libgmp.so ld: /usr/lib/libgmp.so: No such file: No such file or directory
Next try: http://math.ifi.unizh.ch/fedora/5/i386/SRPMS.gemi/mosml-2.01-8.fc5.src.rpm
Been a while, sorry about that. Builds on x86_64! But rpmlint doesn't link the lack of a soname version: E: mosml invalid-soname /usr/lib64/mosml/lib/libmregex.so libmregex.so E: mosml invalid-soname /usr/lib64/mosml/lib/libmunix.so libmunix.so E: mosml invalid-soname /usr/lib64/mosml/lib/libmgmp.so libmgmp.so And symlinks are broken, looks like lib64 problems. W: mosml dangling-relative-symlink /usr/bin/mosmlyac ../lib/mosml/bin/mosmlyac W: mosml dangling-relative-symlink /usr/bin/mosmllex ../lib/mosml/bin/mosmllex W: mosml dangling-relative-symlink /usr/bin/camlrunm ../lib/mosml/bin/camlrunm W: mosml dangling-relative-symlink /usr/bin/mosmlc ../lib/mosml/bin/mosmlc W: mosml dangling-relative-symlink /usr/bin/mosml ../lib/mosml/bin/mosml
For the links I use %{_lib} now. This should take care of that issue: http://math.ifi.unizh.ch/fedora/5/i386/SRPMS.gemi/mosml-2.01-9.src.rpm I don't think there is anything to done about the soname problem. The classification of this problem as an error is wrong IMHO. There are many packages that use plugin type .so files with either no soname or an unversioned one, like here (see for example gaim or many python packages).
Doesn't build on x86_64 devel, however, something about *** glibc detected *** ../camlrunm: munmap_chunk(): invalid pointer: 0x0000000000633000 ***
Created attachment 134570 [details] Build log
This is bad. The error appears probably due to new checks in glibc and I guess that on i386 this will also happen. Could you try in a i386 build environment? I mailed upstream about this.
Created attachment 134834 [details] mail from upstream Here is the answer from Peter Sestoft. Since I don't have access to x86_64, could you look at the points raised?
I managed to build in mock on fedora-development-i386-core flawlessly without the problem you had. So this seems very much related to x86_64.
Just recently rebuilt this on devel x86_64, and still fails at the same spot. The very same invalid pointer, even. However, the Array.sml that referenced is not empty. The preprocessor referenced is /lib/cpp, which I believe is correct.
Built on same machine for devel i386. Perhaps this could be ExcludeArch x86_64?
(In reply to comment #22) > Perhaps this could be ExcludeArch x86_64? It's ok for me. It is possible for Fedora x64_64 to use i386 repositories, isn't it?
May we proceed with the review and exclude x86_64?
FYI the mosml site seems to have a contributed rpm. Does not build on x86_64. Add to the x86_64 exclude tracker. 2.01-9 again, this time builds on F7 devel i386: rpmlint of mosml-devel-2.01-9.fc7.i386.rpm:W: mosml-devel invalid-license GPL/ATT/INRIA/Distributable W: mosml-devel no-documentation rpmlint of mosml-pg-2.01-9.fc7.i386.rpm:W: mosml-pg invalid-license GPL/ATT/INRIA/Distributable E: mosml-pg invalid-soname /usr/lib/mosml/lib/libmpq.so libmpq.so W: mosml-pg no-documentation rpmlint of mosml-gd-2.01-9.fc7.i386.rpm:W: mosml-gd invalid-license GPL/ATT/INRIA/Distributable E: mosml-gd invalid-soname /usr/lib/mosml/lib/libmgd.so libmgd.so W: mosml-gd no-documentation rpmlint of mosml-2.01-9.fc7.i386.rpm:W: mosml invalid-license GPL/ATT/INRIA/Distributable E: mosml invalid-soname /usr/lib/mosml/lib/libmregex.so libmregex.so E: mosml invalid-soname /usr/lib/mosml/lib/libmunix.so libmunix.so E: mosml invalid-soname /usr/lib/mosml/lib/libmgmp.so libmgmp.so rpmlint of mosml-gdbm-2.01-9.fc7.i386.rpm:W: mosml-gdbm invalid-license GPL/ATT/INRIA/Distributable E: mosml-gdbm invalid-soname /usr/lib/mosml/lib/libmgdbm.so libmgdbm.so W: mosml-gdbm no-documentation rpmlint of mosml-docs-2.01-9.fc7.i386.rpm:W: mosml-docs invalid-license GPL/ATT/INRIA/Distributable rpmlint of mosml-examples-2.01-9.fc7.i386.rpm:W: mosml-examples invalid-license GPL/ATT/INRIA/Distributable no-documentation ignore, docs subpackage Good: + Proper BuildRoot + Macros throughout + subpackages require base package + commented + defattr for all packages + ownership good + header files split out + Downloaded source matches APPROVED
Build on devel and FC6 for i386 and ppc. Added to FE-ExcludeArch-x64 tracker. I did not try to build it on x86_64.