Created attachment 210295 [details] Updated libgit2 and fixed all checksum mismatches I still need to run tests on a 11.x poudriere build, but on 12.x monodevelop compiles, installs and starts without errors.
Note that I've also tried upgrading to the latest version, but that required upgrading mono (which was succesful), msbuild (still in progress) and fsharp (which I failed at).
This patch might still have issues. I just noticed that I needed to install the msbuild port as well in order to be able to open and build a .csproj.
Ping? Note that this port expired yesterday, but is not removed yet.
I get a build_fs_violation when building this port in poudriere, meaning something before the stage phase writes outside WRKDIR : rene@e17:~ % tail /usr/local/poudriere/data/logs/bulk/head-amd64-default/latest-per-pkg/monodevelop-7.6.11.7_2.log gmake[1]: Leaving directory '/wrkdirs/usr/ports/devel/monodevelop/work/monodevelop-monodevelop-7.6.11.7/main' =========================================================================== =>> Checking for filesystem violations... done =>> Error: Filesystem touched during build: extra: usr/local/etc/mono/registry [head-amd64-default] [2020-01-12_18h16m12s] [build_fs_violation:devel/monodevelop:monodevelop-7.6.11.7_2:251843:252477] Queued: 1 Built: 0 Failed: 0 Skipped: 0 Ignored: 0 Tobuild: 1 Time: 00:19:41 [00:19:45] Logs: /usr/local/poudriere/data/logs/bulk/head-amd64-default/2020-01-12_18h16m12s build of devel/monodevelop | monodevelop-7.6.11.7_2 ended at Sun Jan 12 18:35:57 CET 2020 build time: 00:18:54 !!! build failure encountered !!! rene@e17:~
grep'ing for "registry" through the tarballed work directory finds nothing suspicious as far as I can tell, the only thing is this directory: rene@e17:~/monodevelop/work % ls -lR .mono/ total 1 drwxr-xr-x 3 rene rene 4 12 jan. 18:19 registry .mono/registry: total 1 drwxr-xr-x 2 rene rene 2 12 jan. 18:19 CurrentUser -rw-r--r-- 1 rene rene 3 12 jan. 18:27 last-btime .mono/registry/CurrentUser: total 0
I'm not sure, but I think this check has been added to poudriere testport recently, or something alike. I reran the build and now I have the same issue, even though I'm almost certain it used to go through. I will see if I can fix this, no idea yet where it's coming from yet. I am however pretty sure that the same issue must have existed in the broken version since the only change is an update to libgit2.
I'm not familiar with Mono so it might be a dependency at fault, or mondevelop itself somehow. That filesystem check has been in poudriere for a long time though.
Ah, poudriere bulk does not check for filesystem changes outside of the build directory.
A commit references this bug: Author: rene Date: Mon Jan 20 12:20:58 UTC 2020 New revision: 523616 URL: https://svnweb.freebsd.org/changeset/ports/523616 Log: devel/monodevelop: unexpire by updating libgit2 and recalculating the checksums. PR: 242948 Submitted by: mavalon Approved by: maintainer timeout (mono, 3 weeks) MFH: 2020Q1 Changes: head/devel/monodevelop/Makefile head/devel/monodevelop/distinfo head/devel/monodevelop/files/patch-Makefile.am head/devel/monodevelop/files/patch-src_core_MonoDevelop.Core_MonoDevelop.Core.csproj head/devel/monodevelop/pkg-plist
Created attachment 210893 [details] Updated libgit2 and fixed all checksum mismatches + fixing registry issue Apparently that registry is the same registry as it is on Windows, but written to a file in either /usr/local/etc/mono or to the user's homedir. As far as I understand it's actually possible that ports require to modify this file, but that doesn't hold true for monodevelop. I fixed this one by simply referencing the work directory as registry dir. As far as I see this is safe to do. If in doubt, it's best that someone with actual mono/.Net experience takes a look at this. As I'm typing this I'm running a build in a 11.x jail to see if everything still works correctly.
Apparently we were looking at this at the same time. The extra little patch to the Makefile will fix poudriere testport as well.
A commit references this bug: Author: rene Date: Wed Jan 22 20:32:12 UTC 2020 New revision: 523843 URL: https://svnweb.freebsd.org/changeset/ports/523843 Log: devel/monodevelop: fix a build_fs_violation error happening with poudriere. PR: 242948 (followup) Submitted by: malavon MFH: 2020Q1 Changes: head/devel/monodevelop/Makefile
A commit references this bug: Author: rene Date: Wed Jan 22 20:46:05 UTC 2020 New revision: 523844 URL: https://svnweb.freebsd.org/changeset/ports/523844 Log: MFH: r523616 r523843 devel/monodevelop: unexpire by updating libgit2 and recalculating the checksums. PR: 242948 Submitted by: mavalon Approved by: maintainer timeout (mono, 3 weeks) devel/monodevelop: fix a build_fs_violation error happening with poudriere. PR: 242948 (followup) Submitted by: malavon Approved by: ports-secteam (joneum) Changes: _U branches/2020Q1/ branches/2020Q1/devel/monodevelop/Makefile branches/2020Q1/devel/monodevelop/distinfo branches/2020Q1/devel/monodevelop/files/patch-Makefile.am branches/2020Q1/devel/monodevelop/files/patch-src_core_MonoDevelop.Core_MonoDevelop.Core.csproj branches/2020Q1/devel/monodevelop/pkg-plist
Also committed both the main fix and the followup to 2020Q1. Thanks for the patches :)