Build fails with zfs-2.2.0 and later

Same as bemerge#18 (closed): libzfs has changed nvlist_lookup_string's 3rd argument from char ** to const char **.

The change is unique to openzfs - illumos' nvpair.h still has it as non-const: https://github.com/illumos/illumos-gate/blob/34d7a81e2498f0439437a6ff6266e179093e5350/usr/src/uts/common/sys/nvpair.h#L217.

>>> Emerging (1 of 1) sys-apps/beadm-9999::linux-be
>>> Failed to emerge sys-apps/beadm-9999, Log file:
>>>  '/var/tmp/portage/sys-apps/beadm-9999/temp/build.log'
>>> Jobs: 0 of 1 complete, 1 failed                                     Load avg: 0.83, 0.81, 0.74
 * Package:    sys-apps/beadm-9999:0
 * Repository: linux-be
 * Maintainer: vitaut.bayaryn@gmail.com
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux
 * FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
 * Repository id: linux-be_zfs.git
 * To override fetched repository properties, use:
 *   EGIT_OVERRIDE_REPO_LINUX_BE_ZFS
 *   EGIT_OVERRIDE_BRANCH_LINUX_BE_ZFS
 *   EGIT_OVERRIDE_COMMIT_LINUX_BE_ZFS
 *   EGIT_OVERRIDE_COMMIT_DATE_LINUX_BE_ZFS
 * 
 * Fetching https://gitlab.com/linux-be/zfs.git ...
git fetch https://gitlab.com/linux-be/zfs.git +HEAD:refs/git-r3/HEAD
git symbolic-ref refs/git-r3/sys-apps/beadm/0/__main__ refs/git-r3/HEAD
 * Checking out https://gitlab.com/linux-be/zfs.git to /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999 ...
git checkout --quiet refs/git-r3/HEAD
GIT update -->
   repository:               https://gitlab.com/linux-be/zfs.git
   at the commit:            401850a8832fff199b9a24bf1bce2ec7801358db
>>> Source unpacked in /var/tmp/portage/sys-apps/beadm-9999/work
>>> Preparing source in /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999 ...
meson setup -Db_lto=false --libdir lib64 --localstatedir /var/lib --prefix /usr --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path /usr/share/guile-data/3.0/pkgconfig:/usr/share/pkgconfig --pkg-config-path /usr/share/guile-data/3.0/pkgconfig:/usr/share/pkgconfig --native-file /var/tmp/portage/sys-apps/beadm-9999/temp/meson.x86_64-pc-linux-gnu.amd64.ini -Db_pch=false -Dwerror=false -Dbuildtype=plain -Dinstall_tests=false /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999 /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999-build
The Meson build system
Version: 1.7.2
Source dir: /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999
Build dir: /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999-build
Build type: native build
Project name: beadm
Project version: 0.1.0
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 14.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 14.3.1_p20250801 p4) 14.3.1 20250801")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: YES (/usr/bin/x86_64-pc-linux-gnu-pkg-config) 2.5.1
Run-time dependency libzfs found: YES 2.3.3
Run-time dependency threads found: YES
Run-time dependency uuid found: YES 2.41.2
Build targets in project: 4

beadm 0.1.0

  User defined options
    Native files         : /var/tmp/portage/sys-apps/beadm-9999/temp/meson.x86_64-pc-linux-gnu.amd64.ini
    build.pkg_config_path: /usr/share/guile-data/3.0/pkgconfig:/usr/share/pkgconfig
    b_lto                : false
    b_pch                : false
    buildtype            : plain
    install_tests        : false
    libdir               : lib64
    localstatedir        : /var/lib
    pkg_config_path      : /usr/share/guile-data/3.0/pkgconfig:/usr/share/pkgconfig
    prefix               : /usr
    sysconfdir           : /etc
    werror               : false
    wrap_mode            : nodownload

Found ninja-1.13.1 at /usr/bin/ninja
>>> Source configured.
>>> Compiling source in /var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999 ...
ninja -v -j32 -l32
[1/23] x86_64-pc-linux-gnu-gcc -Ilib/libc/libc.a.p -Ilib/libc -I../beadm-9999/lib/libc -Iinclude -I../beadm-9999/include -I../beadm-9999/lib/libc/inc -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -pthread -MD -MQ lib/libc/libc.a.p/port_gen_tsdalloc.c.o -MF lib/libc/libc.a.p/port_gen_tsdalloc.c.o.d -o lib/libc/libc.a.p/port_gen_tsdalloc.c.o -c ../beadm-9999/lib/libc/port/gen/tsdalloc.c
[2/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_zones.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_zones.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_zones.c.o -c ../beadm-9999/lib/libbe/be_zones.c
[3/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_mount.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_mount.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_mount.c.o -c ../beadm-9999/lib/libbe/be_mount.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_mount.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_mount.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_mount.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_mount.c.o -c ../beadm-9999/lib/libbe/be_mount.c
../beadm-9999/lib/libbe/be_mount.c: In function ‘be_mount’:
../beadm-9999/lib/libbe/be_mount.c:134:66: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  134 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_ORIG_BE_NAME, &be_name)
      |                                                                  ^~~~~~~~
      |                                                                  |
      |                                                                  char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_mount.c:36:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_mount.c:149:64: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  149 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_MOUNTPOINT, &mountpoint)
      |                                                                ^~~~~~~~~~~
      |                                                                |
      |                                                                char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_mount.c: In function ‘be_unmount’:
../beadm-9999/lib/libbe/be_mount.c:200:66: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  200 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_ORIG_BE_NAME, &be_name)
      |                                                                  ^~~~~~~~
      |                                                                  |
      |                                                                  char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[4/23] x86_64-pc-linux-gnu-gcc -Ilib/libc/libc.a.p -Ilib/libc -I../beadm-9999/lib/libc -Iinclude -I../beadm-9999/include -I../beadm-9999/lib/libc/inc -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -pthread -MD -MQ lib/libc/libc.a.p/port_threads_tsd.c.o -MF lib/libc/libc.a.p/port_threads_tsd.c.o.d -o lib/libc/libc.a.p/port_threads_tsd.c.o -c ../beadm-9999/lib/libc/port/threads/tsd.c
[5/23] x86_64-pc-linux-gnu-gcc -Ilib/libcmdutils/libcmdutils.a.p -Ilib/libcmdutils -I../beadm-9999/lib/libcmdutils -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libcmdutils/libcmdutils.a.p/uid.c.o -MF lib/libcmdutils/libcmdutils.a.p/uid.c.o.d -o lib/libcmdutils/libcmdutils.a.p/uid.c.o -c ../beadm-9999/lib/libcmdutils/uid.c
[6/23] x86_64-pc-linux-gnu-gcc -Ilib/libcmdutils/libcmdutils.a.p -Ilib/libcmdutils -I../beadm-9999/lib/libcmdutils -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libcmdutils/libcmdutils.a.p/gid.c.o -MF lib/libcmdutils/libcmdutils.a.p/gid.c.o.d -o lib/libcmdutils/libcmdutils.a.p/gid.c.o -c ../beadm-9999/lib/libcmdutils/gid.c
[7/23] x86_64-pc-linux-gnu-gcc -Icmd/beadm/beadm.p -Icmd/beadm -I../beadm-9999/cmd/beadm -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -MD -MQ cmd/beadm/beadm.p/beadm.c.o -MF cmd/beadm/beadm.p/beadm.c.o.d -o cmd/beadm/beadm.p/beadm.c.o -c ../beadm-9999/cmd/beadm/beadm.c
FAILED: [code=1] cmd/beadm/beadm.p/beadm.c.o 
x86_64-pc-linux-gnu-gcc -Icmd/beadm/beadm.p -Icmd/beadm -I../beadm-9999/cmd/beadm -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -MD -MQ cmd/beadm/beadm.p/beadm.c.o -MF cmd/beadm/beadm.p/beadm.c.o.d -o cmd/beadm/beadm.p/beadm.c.o -c ../beadm-9999/cmd/beadm/beadm.c
../beadm-9999/cmd/beadm/beadm.c: In function ‘print_hdr’:
../beadm-9999/cmd/beadm/beadm.c:199:42: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  199 |                         (void) printf("%-*s", width, name);
      |                                        ~~^~   ~~~~~
      |                                          |    |
      |                                          int  size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:202:43: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  202 |                         (void) printf(" %-*s", width, name);
      |                                         ~~^~   ~~~~~
      |                                           |    |
      |                                           int  size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c: In function ‘print_be_nodes’:
../beadm-9999/cmd/beadm/beadm.c:385:55: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  385 |                         (void) printf("%s;%s;%s;%s;%llu;%s;%ld\n",
      |                                                    ~~~^
      |                                                       |
      |                                                       long long unsigned int
      |                                                    %lu
......
  390 |                             used,
      |                             ~~~~                       
      |                             |
      |                             uint64_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:42: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                        ~~^~
      |                                          |
      |                                          int
  395 |                             hdr->cols[0].width, name,
      |                             ~~~~~~~~~~~~~~~~~~
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:47: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                             ~~^~
      |                                               |
      |                                               int
  395 |                             hdr->cols[0].width, name,
  396 |                             hdr->cols[1].width, active,
      |                             ~~~~~~~~~~~~~~~~~~ 
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:52: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 6 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                                  ~~^~
      |                                                    |
      |                                                    int
......
  397 |                             hdr->cols[2].width, (cur_be->be_mounted ? mntpt:
      |                             ~~~~~~~~~~~~~~~~~~      
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:57: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 8 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                                       ~~^~
      |                                                         |
      |                                                         int
......
  399 |                             hdr->cols[3].width, buf,
      |                             ~~~~~~~~~~~~~~~~~~           
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:62: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 10 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                                            ~~^~
      |                                                              |
      |                                                              int
......
  400 |                             hdr->cols[4].width, cur_be->be_policy_type,
      |                             ~~~~~~~~~~~~~~~~~~                
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:394:67: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 12 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  394 |                         (void) printf("%-*s %-*s %-*s %-*s %-*s %-*s\n",
      |                                                                 ~~^~
      |                                                                   |
      |                                                                   int
......
  401 |                             hdr->cols[5].width, datetime);
      |                             ~~~~~~~~~~~~~~~~~~                     
      |                                         |
      |                                         size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c: In function ‘print_be_snapshots’:
../beadm-9999/cmd/beadm/beadm.c:433:63: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  433 |                                 (void) printf("%s;%s;%s;%s;%llu;%s;%ld\n",
      |                                                            ~~~^
      |                                                               |
      |                                                               long long unsigned int
      |                                                            %lu
......
  438 |                                     used,
      |                                     ~~~~                       
      |                                     |
      |                                     uint64_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:442:57: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  442 |                                 (void) printf("%s;%s;%llu;%s;%ld\n",
      |                                                      ~~~^
      |                                                         |
      |                                                         long long unsigned int
      |                                                      %lu
......
  445 |                                     used,
      |                                     ~~~~                 
      |                                     |
      |                                     uint64_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:53: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                   ~~^~
      |                                                     |
      |                                                     int
  451 |                                     "%-*s\n",
  452 |                                     hdr->cols[0].width-3, name,
      |                                     ~~~~~~~~~~~~~~~~~~~~
      |                                                       |
      |                                                       size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:58: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                        ~~^~
      |                                                          |
      |                                                          int
......
  453 |                                     hdr->cols[1].width, "-",
      |                                     ~~~~~~~~~~~~~~~~~~    
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:63: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 6 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                             ~~^~
      |                                                               |
      |                                                               int
......
  454 |                                     hdr->cols[2].width, "-",
      |                                     ~~~~~~~~~~~~~~~~~~         
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:68: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 8 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                                  ~~^~
      |                                                                    |
      |                                                                    int
......
  455 |                                     hdr->cols[3].width, buf,
      |                                     ~~~~~~~~~~~~~~~~~~              
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:73: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 10 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                                       ~~^~
      |                                                                         |
      |                                                                         int
......
  456 |                                     hdr->cols[4].width, be->be_policy_type,
      |                                     ~~~~~~~~~~~~~~~~~~                   
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:450:47: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 12 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  450 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
......
  457 |                                     hdr->cols[5].width, datetime);
      |                                     ~~~~~~~~~~~~~~~~~~
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:451:40: note: format string is defined here
  451 |                                     "%-*s\n",
      |                                      ~~^~
      |                                        |
      |                                        int
../beadm-9999/cmd/beadm/beadm.c:459:53: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  459 |                                 (void) printf("   %-*s %-*s %-*s %-*s\n",
      |                                                   ~~^~
      |                                                     |
      |                                                     int
  460 |                                     hdr->cols[0].width-3, snap_name,
      |                                     ~~~~~~~~~~~~~~~~~~~~
      |                                                       |
      |                                                       size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:459:58: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  459 |                                 (void) printf("   %-*s %-*s %-*s %-*s\n",
      |                                                        ~~^~
      |                                                          |
      |                                                          int
  460 |                                     hdr->cols[0].width-3, snap_name,
  461 |                                     hdr->cols[3].width, buf,
      |                                     ~~~~~~~~~~~~~~~~~~    
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:459:63: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 6 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  459 |                                 (void) printf("   %-*s %-*s %-*s %-*s\n",
      |                                                             ~~^~
      |                                                               |
      |                                                               int
......
  462 |                                     hdr->cols[4].width, be->be_policy_type,
      |                                     ~~~~~~~~~~~~~~~~~~         
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:459:68: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 8 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  459 |                                 (void) printf("   %-*s %-*s %-*s %-*s\n",
      |                                                                  ~~^~
      |                                                                    |
      |                                                                    int
......
  463 |                                     hdr->cols[5].width, datetime);
      |                                     ~~~~~~~~~~~~~~~~~~              
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c: In function ‘print_fmt_nodes’:
../beadm-9999/cmd/beadm/beadm.c:504:63: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  504 |                                 (void) printf("%s;%s;%s;%s;%llu;%s;%ld\n",
      |                                                            ~~~^
      |                                                               |
      |                                                               long long unsigned int
      |                                                            %lu
......
  509 |                                     used,
      |                                     ~~~~                       
      |                                     |
      |                                     uint64_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:53: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                   ~~^~
      |                                                     |
      |                                                     int
  514 |                                     "%-*s\n",
  515 |                                     hdr->cols[0].width-3, cur_be->be_root_ds,
      |                                     ~~~~~~~~~~~~~~~~~~~~
      |                                                       |
      |                                                       size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:58: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                        ~~^~
      |                                                          |
      |                                                          int
......
  516 |                                     hdr->cols[1].width, active,
      |                                     ~~~~~~~~~~~~~~~~~~    
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:63: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 6 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                             ~~^~
      |                                                               |
      |                                                               int
......
  517 |                                     hdr->cols[2].width, (cur_be->be_mounted ?
      |                                     ~~~~~~~~~~~~~~~~~~         
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:68: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 8 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                                  ~~^~
      |                                                                    |
      |                                                                    int
......
  519 |                                     hdr->cols[3].width, buf,
      |                                     ~~~~~~~~~~~~~~~~~~              
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:73: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 10 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                                                       ~~^~
      |                                                                         |
      |                                                                         int
......
  520 |                                     hdr->cols[4].width, cur_be->be_policy_type,
      |                                     ~~~~~~~~~~~~~~~~~~                   
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:513:47: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 12 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
  513 |                                 (void) printf("   %-*s %-*s %-*s %-*s %-*s "
      |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
......
  521 |                                     hdr->cols[5].width, datetime);
      |                                     ~~~~~~~~~~~~~~~~~~
      |                                                 |
      |                                                 size_t {aka long unsigned int}
../beadm-9999/cmd/beadm/beadm.c:514:40: note: format string is defined here
  514 |                                     "%-*s\n",
      |                                      ~~^~
      |                                        |
      |                                        int
../beadm-9999/cmd/beadm/beadm.c:502:20: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
  502 |                 if (be_fmt & BE_FMT_DATASET)
      |                    ^
../beadm-9999/cmd/beadm/beadm.c: In function ‘be_do_create’:
../beadm-9999/cmd/beadm/beadm.c:756:29: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  756 |                             &strval) == 0) {
      |                             ^~~~~~~
      |                             |
      |                             char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from /usr/include/libzfs/libzfs.h:40,
                 from ../beadm-9999/cmd/beadm/beadm.c:40:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/cmd/beadm/beadm.c:866:29: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  866 |                             &nbe_name) != 0) {
      |                             ^~~~~~~~~
      |                             |
      |                             char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/cmd/beadm/beadm.c:875:29: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  875 |                             &snap_name) != 0) {
      |                             ^~~~~~~~~~
      |                             |
      |                             char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[8/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_activate.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_activate.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_activate.c.o -c ../beadm-9999/lib/libbe/be_activate.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_activate.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_activate.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_activate.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_activate.c.o -c ../beadm-9999/lib/libbe/be_activate.c
../beadm-9999/lib/libbe/be_activate.c: In function ‘be_activate’:
../beadm-9999/lib/libbe/be_activate.c:109:66: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  109 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_ORIG_BE_NAME, &be_name)
      |                                                                  ^~~~~~~~
      |                                                                  |
      |                                                                  char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_activate.c:35:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[9/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_rename.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_rename.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_rename.c.o -c ../beadm-9999/lib/libbe/be_rename.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_rename.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_rename.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_rename.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_rename.c.o -c ../beadm-9999/lib/libbe/be_rename.c
../beadm-9999/lib/libbe/be_rename.c: In function ‘be_rename’:
../beadm-9999/lib/libbe/be_rename.c:86:66: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
   86 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_ORIG_BE_NAME, &bt.obe_name)
      |                                                                  ^~~~~~~~~~~~
      |                                                                  |
      |                                                                  char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_rename.c:30:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_rename.c:95:65: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
   95 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_NEW_BE_NAME, &bt.nbe_name)
      |                                                                 ^~~~~~~~~~~~
      |                                                                 |
      |                                                                 char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_rename.c:77:25: warning: unused variable ‘be_root_container’ [-Wunused-variable]
   77 |         char            be_root_container[MAXPATHLEN];
      |                         ^~~~~~~~~~~~~~~~~
[10/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_grub2.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_grub2.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_grub2.c.o -c ../beadm-9999/lib/libbe/be_grub2.c
../beadm-9999/lib/libbe/be_grub2.c: In function ‘be_make_menu_entry_id’:
../beadm-9999/lib/libbe/be_grub2.c:208:44: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  208 |         if (asprintf(menu_entry_id, "%s-%llx-%s", BE_GRUB2_MENU_ENTRY_ID_PREFIX,
      |                                         ~~~^
      |                                            |
      |                                            long long unsigned int
      |                                         %lx
  209 |             pool_guid, escaped_be_name) < 0) {
      |             ~~~~~~~~~                       
      |             |
      |             uint64_t {aka long unsigned int}
[11/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_list.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_list.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_list.c.o -c ../beadm-9999/lib/libbe/be_list.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_list.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_list.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_list.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_list.c.o -c ../beadm-9999/lib/libbe/be_list.c
In file included from ../beadm-9999/lib/libbe/be_list.c:34:
../beadm-9999/lib/libbe/be_list.c: In function ‘be_get_node_data’:
../beadm-9999/lib/libbe/be_list.c:1114:50: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1114 |                                     ZPROP_VALUE, &zone_prop_str) == 0);
      |                                                  ^~~~~~~~~~~~~~
      |                                                  |
      |                                                  char **
/usr/include/libspl/assert.h:84:20: note: in definition of macro ‘verify’
   84 |         (void) ((!(cond)) &&                                            \
      |                    ^~~~
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_list.c:36:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_list.c:1129:29: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1129 |                             &prop_str) == 0);
      |                             ^~~~~~~~~
      |                             |
      |                             char **
/usr/include/libspl/assert.h:84:20: note: in definition of macro ‘verify’
   84 |         (void) ((!(cond)) &&                                            \
      |                    ^~~~
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_list.c:1141:29: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1141 |                             &prop_str) == 0) {
      |                             ^~~~~~~~~
      |                             |
      |                             char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_list.c:1147:42: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1147 |                             ZPROP_VALUE, &prop_str) == 0) {
      |                                          ^~~~~~~~~
      |                                          |
      |                                          char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_list.c: In function ‘be_get_ds_data’:
../beadm-9999/lib/libbe/be_list.c:1243:42: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1243 |                             ZPROP_VALUE, &prop_str) == 0);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          char **
/usr/include/libspl/assert.h:84:20: note: in definition of macro ‘verify’
   84 |         (void) ((!(cond)) &&                                            \
      |                    ^~~~
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_list.c: In function ‘be_get_ss_data’:
../beadm-9999/lib/libbe/be_list.c:1313:26: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1313 |             ZPROP_VALUE, &prop_str) == 0) {
      |                          ^~~~~~~~~
      |                          |
      |                          char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[12/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o -c ../beadm-9999/lib/libbe/be_snapshot.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_snapshot.c.o -c ../beadm-9999/lib/libbe/be_snapshot.c
../beadm-9999/lib/libbe/be_snapshot.c: In function ‘be_destroy_snapshot’:
../beadm-9999/lib/libbe/be_snapshot.c:212:63: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  212 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_SNAP_NAME, &snap_name)
      |                                                               ^~~~~~~~~~
      |                                                               |
      |                                                               char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_snapshot.c:35:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_snapshot.c: In function ‘be_rollback’:
../beadm-9999/lib/libbe/be_snapshot.c:294:63: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  294 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_SNAP_NAME, &bt.obe_snap_name)
      |                                                               ^~~~~~~~~~~~~~~~~
      |                                                               |
      |                                                               char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[13/23] x86_64-pc-linux-gnu-gcc -Ilib/libc/libc.a.p -Ilib/libc -I../beadm-9999/lib/libc -Iinclude -I../beadm-9999/include -I../beadm-9999/lib/libc/inc -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -pthread -MD -MQ lib/libc/libc.a.p/port_gen_deflt.c.o -MF lib/libc/libc.a.p/port_gen_deflt.c.o.d -o lib/libc/libc.a.p/port_gen_deflt.c.o -c ../beadm-9999/lib/libc/port/gen/deflt.c
[14/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_create.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_create.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_create.c.o -c ../beadm-9999/lib/libbe/be_create.c
FAILED: [code=1] lib/libbe/libbe.so.0.0.0.p/be_create.c.o 
x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_create.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_create.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_create.c.o -c ../beadm-9999/lib/libbe/be_create.c
../beadm-9999/lib/libbe/be_create.c: In function ‘be_init’:
../beadm-9999/lib/libbe/be_create.c:133:65: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  133 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_NEW_BE_NAME, &bt.nbe_name)
      |                                                                 ^~~~~~~~~~~~
      |                                                                 |
      |                                                                 char **
In file included from /usr/include/libzfs/libnvpair.h:30,
                 from ../beadm-9999/lib/libbe/be_create.c:40:
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_create.c:148:65: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  148 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_NEW_BE_POOL, &bt.nbe_zpool)
      |                                                                 ^~~~~~~~~~~~~
      |                                                                 |
      |                                                                 char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_create.c: In function ‘be_destroy’:
../beadm-9999/lib/libbe/be_create.c:408:66: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
  408 |         if (nvlist_lookup_string(be_attrs, BE_ATTR_ORIG_BE_NAME, &bt.obe_name)
      |                                                                  ^~~~~~~~~~~~
      |                                                                  |
      |                                                                  char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_create.c: In function ‘be_copy’:
../beadm-9999/lib/libbe/be_create.c:631:25: warning: unused variable ‘nbe_root_container’ [-Wunused-variable]
  631 |         char            nbe_root_container[MAXPATHLEN];
      |                         ^~~~~~~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_create.c:630:25: warning: unused variable ‘obe_root_container’ [-Wunused-variable]
  630 |         char            obe_root_container[MAXPATHLEN];
      |                         ^~~~~~~~~~~~~~~~~~
../beadm-9999/lib/libbe/be_create.c: In function ‘be_get_uuid’:
../beadm-9999/lib/libbe/be_create.c:1442:57: error: passing argument 3 of ‘nvlist_lookup_string’ from incompatible pointer type [-Wincompatible-pointer-types]
 1442 |             nvlist_lookup_string(propname, ZPROP_VALUE, &uu_string) != 0) {
      |                                                         ^~~~~~~~~~
      |                                                         |
      |                                                         char **
/usr/include/libzfs/sys/nvpair.h:237:5: note: expected ‘const char **’ but argument is of type ‘char **’
  237 |     const char **);
      |     ^~~~~~~~~~~~~
[15/23] x86_64-pc-linux-gnu-gcc -Ilib/libcmdutils/libcmdutils.a.p -Ilib/libcmdutils -I../beadm-9999/lib/libcmdutils -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libcmdutils/libcmdutils.a.p/avltree.c.o -MF lib/libcmdutils/libcmdutils.a.p/avltree.c.o.d -o lib/libcmdutils/libcmdutils.a.p/avltree.c.o -c ../beadm-9999/lib/libcmdutils/avltree.c
[16/23] x86_64-pc-linux-gnu-gcc -Ilib/libcmdutils/libcmdutils.a.p -Ilib/libcmdutils -I../beadm-9999/lib/libcmdutils -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libcmdutils/libcmdutils.a.p/nicenum.c.o -MF lib/libcmdutils/libcmdutils.a.p/nicenum.c.o.d -o lib/libcmdutils/libcmdutils.a.p/nicenum.c.o -c ../beadm-9999/lib/libcmdutils/nicenum.c
../beadm-9999/lib/libcmdutils/nicenum.c: In function ‘nicenum_scale’:
../beadm-9999/lib/libcmdutils/nicenum.c:94:48: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
   94 |                 rc = snprintf(buf, buflen, "%llu%s", n, spc);
      |                                             ~~~^     ~
      |                                                |     |
      |                                                |     uint64_t {aka long unsigned int}
      |                                                long long unsigned int
      |                                             %lu
../beadm-9999/lib/libcmdutils/nicenum.c:100:48: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  100 |                 rc = snprintf(buf, buflen, "%llu%s%c", n / divisor, spc, u);
      |                                             ~~~^       ~~~~~~~~~~~
      |                                                |         |
      |                                                |         uint64_t {aka long unsigned int}
      |                                                long long unsigned int
      |                                             %lu
[17/23] x86_64-pc-linux-gnu-gcc -Ilib/libcmdutils/libcmdutils.a.p -Ilib/libcmdutils -I../beadm-9999/lib/libcmdutils -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libcmdutils/libcmdutils.a.p/writefile.c.o -MF lib/libcmdutils/libcmdutils.a.p/writefile.c.o.d -o lib/libcmdutils/libcmdutils.a.p/writefile.c.o -c ../beadm-9999/lib/libcmdutils/writefile.c
[18/23] x86_64-pc-linux-gnu-gcc -Ilib/libbe/libbe.so.0.0.0.p -Ilib/libbe -I../beadm-9999/lib/libbe -Iinclude -I../beadm-9999/include -I/usr/include/libzfs -I/usr/include/libspl -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/tirpc -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu99 -D_GNU_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_LARGE_STACKS=1 '-DTEXT_DOMAIN="zfs-linux-user"' -O2 -pipe -march=native -fPIC -MD -MQ lib/libbe/libbe.so.0.0.0.p/be_utils.c.o -MF lib/libbe/libbe.so.0.0.0.p/be_utils.c.o.d -o lib/libbe/libbe.so.0.0.0.p/be_utils.c.o -c ../beadm-9999/lib/libbe/be_utils.c
ninja: build stopped: subcommand failed.
 * ERROR: sys-apps/beadm-9999::linux-be failed (compile phase):
 *   ninja -v -j32 -l32 failed
 * 
 * Call stack:
 *     ebuild.sh, line  143:  Called src_compile
 *   environment, line 2739:  Called meson_src_compile
 *   environment, line 2236:  Called eninja
 *   environment, line 1479:  Called die
 * The specific snippet of code:
 *       "$@" || die -n "${*} failed"
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/beadm-9999::linux-be'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/beadm-9999::linux-be'`.
 * The complete build log is located at '/var/tmp/portage/sys-apps/beadm-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/beadm-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999-build'
 * S: '/var/tmp/portage/sys-apps/beadm-9999/work/beadm-9999'
Edited by Witaut Bajaryn