Created attachment 172649 [details] Build failure log Hi! I am planning to update to the latest mono release available, unfortunately, devel/newtonsoft-json does not build with the updated lang/mono :-( I tried to fix or find a workaround for this but without any kind of success and was hopping that you could give an eye to this and maybe help for fixing it? The updated lang/mono port is available here: https://github.com/smortex/bsd-sharp/tree/master/lang/mono Thank you for your feedback! romain@ for mono@
Register dependency on 211004
(In reply to Romain Tartière from comment #0) Hi, I have looked into it. It seems like the problem is with the build system I have currently. I am not into Mono much more. But so far I figured out is the problem is with this line (cd ${WRKSRC}/Src/Newtonsoft.Json/bin/Release/Net45 && \ ${SETENV} ${MAKE_ENV} ilasm /dll /key:../../../Dynamic.snk Newtonsoft.Json.il) Any heads up would be appreciable.
(In reply to Muhammad Moinur Rahman from comment #2) I tried to execute the mono disassembler. It should produce some intermediate language code (like a machine specific disassembler would do): monodis Newtonsoft.Json.dll --output=Newtonsoft.Json.il Segmentation fault (core dumped) The monodis source code is c and browsing through the mono revisions reveal no changes in monodis source code since current ports version (4.2.3.4).
A commit references this bug: Author: bofh Date: Mon Jul 25 20:52:29 UTC 2016 New revision: 419062 URL: https://svnweb.freebsd.org/changeset/ports/419062 Log: devel/newtonsoft-json: Update version 8.0.3=>9.0.1 PR: 211198 Changes: head/devel/newtonsoft-json/Makefile head/devel/newtonsoft-json/distinfo
newtonsoft-json has been updated to the latest 9.0.1 which compiles with the current mono version. Can you test the same please once again.
(In reply to Muhammad Moinur Rahman from comment #5) Hello, Muhammad! Using one of the recent versions of Mono: $ mono --version Mono JIT compiler version 4.4.2 (Nightly 4.4.2.4/4dff7a3 Fri Jul 22 11:28:56 UTC 2016) The part of the output: Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.7067850 (cd /usr/tmp/usr/ports/devel/newtonsoft-json/work/Newtonsoft.Json-9.0.1/Src/Newtonsoft.Json/bin/Release/Net45 && /usr/bin/env MONO_SHARED_DIR="/usr/tmp/usr/ports/devel/newtonsoft-json/work" TZ=UTC XDG_DATA_HOME=/usr/tmp/usr/ports/devel/newtonsoft-json/work XDG_CONFIG_HOME=/usr/tmp/usr/ports/devel/newtonsoft-json/work HOME=/usr/tmp/usr/ports/devel/newtonsoft-json/work NO_PIE=yes WITHOUT_DEBUG_FILES=yes WITHOUT_KERNEL_SYMBOLS=yes SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local LIBDIR="/usr/lib" CC="clang37" CFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing" CPP="clang-cpp37" CPPFLAGS="" LDFLAGS=" -fstack-protector" LIBS="" CXX="clang++37" CXXFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing " MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 444" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" monodis Newtonsoft.Json.dll --output=Newtonsoft.Json.il) *** Signal 11 Stop. make: stopped in /usr/ports/devel/newtonsoft-json Best regards, Sergey Brunov.
Any Heads Up ?
(In reply to Muhammad Moinur Rahman from comment #5) Hello, Muhammad! The same result using Mono Stable 4.4.2.11/f72fe45 Sun Jul 31 18:33:16 UTC 2016. Best regards, Sergey Brunov.
Muhammad, can you explain the monodis(1) / ilasm(1) commands reason? With mono 2.6.0, monodis succeeded only to let ilasm(1) reperting the generated .il file was invalid… However, just removing these two command seems to be okay: https://github.com/smortex/bsd-sharp/commit/6a7e2ba1b173856b90e196c3be97b23dbb05bb35 I must not be undestanding correctly the build process, as what I see is: 1. xbuild(1) builds Newtonsoft.Json.dll; 2. monodis(1) "disassembles" Newtonsoft.Json.dll into Newtonsoft.Json.il; 3. ilasm(1) "assembles" Newtonsoft.Json.il into Newtonsoft.Json.dll That's why I tried to skip steps 2 and 3… What are they required for?
(In reply to Romain Tartière from comment #9) So far I understand xbuild doesn't create a portable version of the library or executable hence we need those two steps more. However we can try it out without those two lines and check what happens(I mean break .. :P)
Only devel/google-gdata seems to depend on this port, and I could build it successfuly. I have no idea about how to check that the build ports is Okay or not. Since you are also the maintainer of devel/google-gdata, maybe you will have an idea about what to check? Thanks!
Google-gdata seems to be no more under active development due to their new API. However I can see that multimedia/banshee seems to depend on it. Let me check that out.
multimedia/banshee is also a dying project… :-) I am currently rebuilding all ports depending on mono in a Jail, so banshee is included. If everything goes well and you agree, I will remove the monodis/ilasm lines when updating lang/mono. Thanks
(In reply to Romain Tartière from comment #13) Hi Roman .. I believe you better skip those lines and commit Mono 4.4. Rest we will take care on demand.
(In reply to Muhammad Moinur Rahman from comment #10) Judging from the official .NET documentation portable executables (PE) is not a feature used in FreeBSD related projects. I'd be surprised if removing them would make any difference. Ref: https://msdn.microsoft.com/en-us/library/496e4ekx(v=vs.110).aspx
(In reply to Carsten Larsen from comment #15) so far google-gdata and banshee works fine without those 2 lines. Hence I am removing those two lines.
Great, I am almost ready to commit mono 4.4.2.11. Will commit the update to devel/newtonsoft-json unless you did so before :) Thanks! Romain
A commit references this bug: Author: romain Date: Mon Aug 8 17:52:52 UTC 2016 New revision: 419878 URL: https://svnweb.freebsd.org/changeset/ports/419878 Log: Fix build with mono 4.4. Some assemblies have been relocated, so adjust files path to point to the correct location. PR: 211198 Submitted by: me Approved by: bofh (maintainer) Changes: head/devel/newtonsoft-json/Makefile
Committed, thanks!