Bug 241201 - net/samba410 build failure and missing depends in poudriere
Summary: net/samba410 build failure and missing depends in poudriere
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Timur I. Bakeyev
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-11 15:52 UTC by Matthias Andree
Modified: 2020-04-13 08:54 UTC (History)
3 users (show)

See Also:
bugzilla: maintainer-feedback? (timur)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Andree freebsd_committer 2019-10-11 15:52:45 UTC
Hi Timur,

building samba410 in a tightened-up poudriere bulk -t yields this error:

[00:03:42] Waf: Leaving directory `/wrkdirs/usr/ports/net/samba410/work/samba-4.10.8/bin/default'
[00:03:42] 'build' finished successfully (1m34.557s)
[00:03:43] ===========================================================================
[00:03:43] =>> Checking for filesystem violations... done
[00:03:43] =>> Error: Filesystem touched during build:
[00:03:43] extra: usr/local/lib/python3.6/site-packages/__pycache__/tevent.cpython-36.pyc

Also, stage-qa has complaints:

[00:05:12] ====> Running Q/A tests (stage-qa)
[00:05:26] Error: /usr/local/bin/cifsdd is linked to /usr/local/lib/libiconv.so.2 from converters/libiconv but it is not declared as a dependency
[00:05:26] Warning: you need USES+=iconv, USES+=iconv:wchar_t, or USES+=iconv:translit depending on needs
[00:05:27] Error: /usr/local/bin/smbtorture is linked to /usr/local/lib/libintl.so.8 from devel/gettext-runtime but it is not declared as a dependency
[00:05:27] Warning: you need USES+=gettext-runtime
[00:05:33] Notice: You have some Perl modules as dependencies but you do not have devel/p5-Module-CoreList installed, the perlcore QA check gets better resul>
[00:05:33] ====> Checking for pkg-plist issues (check-plist)
[00:05:33] ===> Parsing plist
[00:05:34] ===> Checking for items in STAGEDIR missing from pkg-plist
[00:05:34] ===> Checking for items in pkg-plist which are not in STAGEDIR
[00:05:34] ===> No pkg-plist issues found (check-plist)
[00:05:34] =>> Checking for staging violations... done
[00:05:34] =======================<phase: package        >============================
Comment 1 VVD 2019-12-02 16:23:39 UTC
(In reply to Matthias Andree from comment #0)
Try 4.10.10, plz.
Comment 2 Timur I. Bakeyev freebsd_committer 2020-04-08 03:01:58 UTC
Hi, Mat!

I'm pretty sure that I'm doing something wrong, but I cant reproduce this FS violation error:

# poudriere bulk -t -j FreeBSD-12_1-amd64 -p devel -z samba net/samba410


Waf: Leaving directory `/wrkdirs/usr/ports/net/samba410/work/samba-4.10.14/bin/default'
'build' finished successfully (3m9.794s)
===========================================================================
=>> Checking for filesystem violations... done
=======================<phase: run-depends    >============================

The iconv message also puzzles me a lot, as port has:

USES+=                          compiler:c++11-lang iconv localbase:ldflags \
                                                    ^^^^^
                                perl5 pkgconfig shebangfix ssl waf gettext-runtime

It could be that on FreeBSD > 5.x iconv is effectively NOOP, unless some additional flags are given. And, indeed, ciffsadd manages to pick up libiconv as a dependency on whatever weird reason...
Comment 3 Matthias Andree freebsd_committer 2020-04-08 08:14:19 UTC
With 4.10.13, under bulk -t, the error mode has changed:

[00:05:29] 'build' finished successfully (3m15.652s)
[00:05:30] ===========================================================================
[00:05:30] =>> Checking for filesystem violations... done
[00:05:30] =>> Error: Filesystem touched during build:
[00:05:30] extra: usr/local/lib/python3.7/site-packages/__pycache__/tevent.cpython-37.pyc
[00:05:30] =>> Cleaning up wrkdir
[00:05:31] ===>  Cleaning for samba410-4.10.13
[00:05:32] build of net/samba410 | samba410-4.10.13 ended at Wed Apr  8 10:11:57 CEST 2020
[00:05:32] build time: 00:05:32
[00:05:32] !!! build failure encountered !!!

This is with r527673.
Comment 4 Timur I. Bakeyev freebsd_committer 2020-04-13 08:19:20 UTC
(In reply to Matthias Andree from comment #3)
Maybe you can try your build with 4.10.14. I couldn't see any warnings with it at all..
Comment 5 Matthias Andree freebsd_committer 2020-04-13 08:54:42 UTC
Hi Timur,

it's poudriere bulk -t (the -t is crucial) that triggers the failure:

[00:02:57] 'build' finished successfully (1m18.668s)
[00:02:57] ===========================================================================
[00:02:57] =>> Checking for filesystem violations... done
[00:02:58] =>> Error: Filesystem touched during build:
[00:02:58] extra: usr/local/lib/python3.7/site-packages/__pycache__/tevent.cpython-37.pyc
[00:02:58] =>> Cleaning up wrkdir
[00:02:58] ===>  Cleaning for samba410-4.10.14
[00:02:59] build of net/samba410 | samba410-4.10.14 ended at Mon Apr 13 10:33:53 CEST 2020
[00:02:59] build time: 00:02:59
[00:02:59] !!! build failure encountered !!!

I've peeked at the build stuff, but I know nothing about waf, wscript, Python interactions with the Samba build and thereabouts.

A poudriere bulk *without -t* works just fine, it's that Python somehow pollutes the system with its __pycache__ - it should not install its bundled tevent into the system directly, but needs to stage it instead.