Re: An example poudriere-devel pkgclean failure, multiple issues involved

From: Mark Millard via freebsd-ports <freebsd-ports_at_freebsd.org>
Date: Sat, 25 Sep 2021 18:30:30 UTC
On 2021-Sep-25, at 10:04, Bryan Drewery <bdrewery@FreeBSD.org> wrote:

> On 9/25/2021 12:31 AM, Mark Millard wrote:
>> 
>> 
>> On 2021-Sep-24, at 12:06, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
>> 
>>> On 9/22/2021 12:26 PM, Mark Millard wrote:
>>>> When I just tried to pkgclean -a I got:
>>>> 
>>>> # poudriere pkgclean -jmain-CA7 -a -y
>>>> [00:00:00] Gathering all expected packages
>>>> [00:00:00] Creating the reference jail... done
>>>> [00:00:03] Mounting system devices for main-CA7-default
>>>> [00:00:03] Mounting ports from: /usr/ports
>>>> [00:00:03] Mounting packages from: 
>>>> [00:00:03] Mounting distfiles from: /usr/ports/distfiles
>>>> [00:00:03] Copying /var/db/ports from: /usr/local/etc/poudriere.d/options
>>>> [00:00:03] Appending to make.conf: /usr/local/etc/poudriere.d/make.conf
>>>> [00:00:03] Appending to make.conf: /usr/local/etc/poudriere.d/main-CA7-make.conf
>>>> /etc/resolv.conf -> /usr/local/poudriere/data/.m/main-CA7-default/ref/etc/resolv.conf
>>>> [00:00:03] Starting jail main-CA7-default
>>>> [00:00:04] Loading MOVED for /usr/local/poudriere/data/.m/main-CA7-default/ref/usr/ports
>>>> [00:00:05] Ports supports: FLAVORS SELECTED_OPTIONS
>>>> [00:00:05] Gathering ports metadata
>>>> [00:02:11] Calculating ports order and dependencies
>>>> [00:02:46] Sanity checking the repository
>>>> [00:02:46] Unqueueing existing packages
>>>> [00:02:50] Sanity checking build queue
>>>> [00:02:52] Error: Packages stuck in queue (depended on but not in queue): HPCombi-0.0.6_1
>>> 
>>> I had not seen this one before. I was able to repro it locally. git
>>> bisect run is amazing and identified the bad commit. I'll probably have
>>> a fix in a few days.
>>> 
>>>> IPA-1.08_2
>>>> R-cran-s2-1.0.6
>>>> . . .
>>>> zig-0.8.1
>>>> zxid-1.42_1
>>>> [: -gt: unexpected operator
>>>> [: -gt: unexpected operator
>>>> [: -gt: unexpected operator
>>>> /usr/local/share/poudriere/pkgclean.sh: POUDRIERE_BUILD_TYPE: parameter not set
>>> 
>>> This is fixed in Poudriere git at least.
>>> 
>>> Thanks for ccing me.
>>> 
>> 
>> You are welcome.
>> 
>> I tried another use of pkgclean after building lang/rust explicitly
>> (just to measure some resource use via a patched top). But the
>> context is not as up to date:
>> 
>> # poudriere version
>> poudriere-git-3.3.99.20210907_1
>> 
>> I tried to see what the following would do:
>> 
>> # poudriere pkgclean -j13_0R-CA72 -a -f ~/origins/CA72-origins.txt 
>> [00:00:00] Gathering all expected packages
>> [00:00:00] Creating the reference jail... done
>> [00:00:05] Mounting system devices for 13_0R-CA72-default
>> [00:00:05] Mounting ports from: /usr/ports
>> [00:00:05] Mounting packages from: 
>> [00:00:05] Mounting distfiles from: /usr/ports/distfiles
>> [00:00:05] Copying /var/db/ports from: /usr/local/etc/poudriere.d/options
>> [00:00:05] Appending to make.conf: /usr/local/etc/poudriere.d/make.conf
>> [00:00:05] Appending to make.conf: /usr/local/etc/poudriere.d/13_0R-CA72-make.conf
>> /etc/resolv.conf -> /usr/local/poudriere/data/.m/13_0R-CA72-default/ref/etc/resolv.conf
>> [00:00:05] Starting jail 13_0R-CA72-default
>> [00:00:07] Loading MOVED for /usr/local/poudriere/data/.m/13_0R-CA72-default/ref/usr/ports
>> [00:00:08] Ports supports: FLAVORS SELECTED_OPTIONS
>> [00:00:08] Gathering ports metadata
>> [00:03:01] Warning: (graphics/qgis): make: "/etc/make.conf" line 69: Need an operator
>> [00:03:01] Warning: (graphics/qgis): make: Fatal errors encountered -- cannot continueError: Error looking up dependencies for graphics/qgis
>> [00:03:01] Warning: (graphics/qgis-ltr): make: "/etc/make.conf" line 69: Need an operator
>> [00:03:01] Warning: (graphics/qgis-ltr): make: Fatal errors encountered -- cannot continueError: Error looking up dependencies for graphics/qgis-ltr
>> [00:05:46] Warning: (www/chromium): make: "/usr/ports/www/chromium/Makefile" line 210: warning: "/usr/bin/grep mempcpy /usr/include/string.h" returned non-zero status
>> [00:06:39] Error: Fatal errors encountered gathering initial ports metadata
>> [: -gt: unexpected operator
>> [: -gt: unexpected operator
>> [: -gt: unexpected operator
>> /usr/local/share/poudriere/pkgclean.sh: POUDRIERE_BUILD_TYPE: parameter not set
>> [00:06:39] Cleaning up
>> [00:06:39] Unmounting file systems
>> 
>> The (www/chromium) one is for:
>> 
>> BASE_MEMPCPY!=  ${GREP} mempcpy ${CROSS_SYSROOT}/usr/include/string.h
> 
> I fixed that in the chromium port yesterday.
> 
>> 
>> which is oroginal material, not something of mine.
>> 
>> It is less obvious what line 69 "Need an operator" messags are for
>> in /etc/make.conf is since the file is probably generated from other
>> files. Is it line 69 of /usr/local/etc/poudriere.d/make.conf ? That
> 
> Not quite as it uses that to generate a temporary one. You could add a
> cat ${dst_makeconf} or cp or something at the end of setup_makeconf() in
> /usr/local/share/poudriere/common.sh to get to the make.conf being used.

Thanks. It was definitely my problem, not yours for the line 69 messages.

>> would be:
>> 
>> #.if ${.MAKE.LEVEL} == 0
>> 
>> But that is a comment line.
>> 
>> It is not obvious how to get rid of ust the temporary www/rust package
>> in a supported way.
> 
> Just rm -f the file from the packages dir. pkgclean doesn't do much
> special. There is a hidden cache that is related but it will be cleaned
> up when accessed or on the next successful pkgclean.

Okay. Done. Thanks.

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)