[Bug 210429] sysutils/smartmontools: incomplete type variable declaration leads to build failure

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jun 21 10:51:55 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=210429

            Bug ID: 210429
           Summary: sysutils/smartmontools: incomplete type variable
                    declaration leads to build failure
           Product: Ports & Packages
           Version: Latest
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: freebsd-ports-bugs at FreeBSD.org
          Reporter: bkazemi at users.sf.net
                CC: samm at os2.kiev.ua
                CC: samm at os2.kiev.ua
             Flags: maintainer-feedback?(samm at os2.kiev.ua)

When updating to the latest smartmontools (6.5_1), I run into this error:

c++ -DHAVE_CONFIG_H -I.  -DBUILD_INFO='"(local build)"'
-DSMARTMONTOOLS_SYSCONFDIR='"/usr/local/etc"'
-DSMARTMONTOOLS_SMARTDSCRIPTDIR='"/usr/local/etc"'
-DSMARTMONTOOLS_DRIVEDBDIR='"/usr/local/share/smartmontools"'        -O2 -pipe
-fstack-protector -fno-strict-aliasing  -Wall -W -c -o smartd.o smartd.cpp
/bin/sh ./config.status --file=update-smart-drivedb
/bin/sh ./config.status --file=smartd_warning.sh
os_freebsd.cpp:552:26: error: variable has incomplete type
      'struct nvme_pt_command'
  struct nvme_pt_command pt;
                         ^
os_freebsd.cpp:552:10: note: forward declaration of 'nvme_pt_command'
  struct nvme_pt_command pt;
         ^
os_freebsd.cpp:567:32: error: invalid application of 'sizeof' to an incomplete
      type 'struct nvme_pt_command'
  int status = ioctl(get_fd(), NVME_PASSTHROUGH_CMD, &pt);
                               ^~~~~~~~~~~~~~~~~~~~
./freebsd_nvme_ioctl.h:32:30: note: expanded from macro 'NVME_PASSTHROUGH_CMD'
#define NVME_PASSTHROUGH_CMD    _IOWR('n', 0, struct nvme_pt_command)
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/sys/ioccom.h:61:48: note: expanded from macro '_IOWR'
#define _IOWR(g,n,t)    _IOC(IOC_INOUT, (g), (n), sizeof(t))
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/usr/include/sys/ioccom.h:55:16: note: expanded from macro '_IOC'
        ((inout) | (((len) & IOCPARM_MASK) << 16) | ((group) << 8) | (num)))
                      ^~~
os_freebsd.cpp:552:10: note: forward declaration of 'nvme_pt_command'
  struct nvme_pt_command pt;
         ^

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list