Bug 194462 - sysutils/lsof is broken
Summary: sysutils/lsof is broken
Status: Closed Works As Intended
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-19 10:20 UTC by Anton Saietskii
Modified: 2014-10-20 17:30 UTC (History)
2 users (show)

See Also:
ler: maintainer-feedback-


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Saietskii 2014-10-19 10:20:42 UTC
root@cs0:/usr/ports/sysutils/lsof# cc -v
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
Target: x86_64-unknown-freebsd9.3
Thread model: posix
Selected GCC installation: 
root@cs0:/usr/ports/sysutils/lsof# uname -srm
FreeBSD 9.3-RELEASE-p2 amd64
root@cs0:/usr/ports/sysutils/lsof# env MAKE_JOBS_UNSAFE=yes make all
===>   lsof-4.88,8 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by lsof-4.88,8 for building
===>  Extracting for lsof-4.88,8
=> SHA256 Checksum OK for lsof_4.88.tar.bz2.

This configuration step (the Inventory script) takes inventory of
the lsof distribution.  The script runs for a minute or two while
it checks that all the subdirectories, information files, scripts,
header files and source files that should be present really are.

It's not absolutely necessary that you take inventory, but it's a
good idea to do it right after the lsof distribution has been
unpacked.  Once the inventory has been taken, this script creates
the file ./.ck00MAN as a signal that the inventory step has been
done.

You can call the Inventory script directly at any time to take
inventory.  You can inhibit the inventory step permanently by
creating the file ./.neverInv, and you can tell the Configure script
to skip the inventory and customization steps with the -n option.

Do you want to take inventory (y|n) [y]? 
Conducting an inventory of the lsof distribution; this will take a while.

Examining /usr/obj/usr/ports/sysutils/lsof/work/lsof_4.88/lsof_4.88_src: OK
Examining .: OK
Examining ./dialects: OK
Examining ./dialects/aix: OK
Examining ./dialects/aix/aix5: OK
Examining ./dialects/aix/aix5/j2: OK
Examining ./dialects/darwin: OK
Examining ./dialects/darwin/kmem: OK
Examining ./dialects/darwin/libproc: OK
Examining ./dialects/du: OK
Examining ./dialects/freebsd: OK
Examining ./dialects/freebsd/include: OK
Examining ./dialects/freebsd/include/procfs: OK
Examining ./dialects/hpux: OK
Examining ./dialects/hpux/kmem: OK
Examining ./dialects/hpux/kmem/hpux11: OK
Examining ./dialects/hpux/pstat: OK
Examining ./dialects/linux: OK
Examining ./dialects/n+obsd: OK
Examining ./dialects/n+os: OK
Examining ./dialects/osr: OK
Examining ./dialects/osr/include: OK
Examining ./dialects/osr/include/sys: OK
Examining ./dialects/sun: OK
Examining ./dialects/uw: OK
Examining ./dialects/uw/uw7: OK
Examining ./dialects/uw/uw7/fs: OK
Examining ./dialects/uw/uw7/fs/nsc_cfs: OK
Examining ./dialects/uw/uw7/fs/procfs: OK
Examining ./dialects/uw/uw7/sys: OK
Examining ./dialects/uw/uw7/sys/fs: OK
Examining ./dialects/uw/uw7/vm: OK
Examining ./lib: OK
Examining ./scripts: OK
Examining ./tests: OK

This lsof distribution seems to be complete.

===>  Patching for lsof-4.88,8
===>  Configuring for lsof-4.88,8
Creating ./lockf_owner.h from /usr/src/sys/kern/kern_lockf.c
./lockf_owner.h creation succeeded.
rm -f ddev.c dfile.c dlsof.h dmnt.c dnode*.c dproc.c dproto.h dsock.c dstore.c dzfs.h kernelbase.h machine.h machine.h.old new_machine.h __lseek.s Makefile Makefile.zfs ./tests/config.cflags
rm -f ./tests/config.cc ./tests/config.xobj ./tests/config.ldflags
Testing C library for localtime() and strftime(), using cc ... present
ln -s dialects/freebsd/dlsof.h dlsof.h
ln -s dialects/freebsd/dmnt.c dmnt.c
ln -s dialects/freebsd/dnode.c dnode.c
ln -s dialects/freebsd/dnode1.c dnode1.c
ln -s dialects/freebsd/dnode2.c dnode2.c
ln -s dialects/freebsd/dproc.c dproc.c
ln -s dialects/freebsd/dproto.h dproto.h
ln -s dialects/freebsd/dsock.c dsock.c
ln -s dialects/freebsd/dstore.c dstore.c
ln -s dialects/freebsd/dzfs.h dzfs.h
ln -s dialects/freebsd/machine.h machine.h
Makefile and lib/Makefile created.
Makefile.zfs created.
./tests/config.cc created
./tests/config.cflags created
./tests/config.ldflags created
./tests/config.xobj created
===>  Building for lsof-4.88,8
(cd lib; /usr/bin/make DEBUG="-O3" CFGF="-pipe -fno-strict-aliasing -march=core2 -DHASTASKS -DHAS_PAUSE_SBT -DHASEFFNLINK=i_effnlink -DHASF_VNODE -DHAS_FILEDESCENT -DHAS_TMPFS -DHASWCTYPE_H -DHASSBSTATE -DHAS_KVM_VNODE -DHAS_UFS1_2 -DHAS_VM_MEMATTR_T -DHAS_CDEV2PRIV -DHAS_NO_SI_UDEV -DHAS_SYS_SX_H -DHAS_ZFS -DHAS_V_LOCKF -DHAS_LOCKF_ENTRY -DHAS_NO_6PORT -DHAS_NO_6PPCB -DNEEDS_BOOLEAN_T -DFREEBSDV=9000 -DHASFDESCFS=2 -DHASPSEUDOFS -DHASNULLFS -DHASIPv6 -DHASUTMPX -DHAS_STRFTIME -DLSOF_VSTR=\"9.3-RELEASE-p2\"")
cc  -pipe -fno-strict-aliasing -march=core2 -DHASTASKS -DHAS_PAUSE_SBT -DHASEFFNLINK=i_effnlink -DHASF_VNODE -DHAS_FILEDESCENT -DHAS_TMPFS -DHASWCTYPE_H -DHASSBSTATE -DHAS_KVM_VNODE -DHAS_UFS1_2 -DHAS_VM_MEMATTR_T -DHAS_CDEV2PRIV -DHAS_NO_SI_UDEV -DHAS_SYS_SX_H -DHAS_ZFS -DHAS_V_LOCKF -DHAS_LOCKF_ENTRY -DHAS_NO_6PORT -DHAS_NO_6PPCB -DNEEDS_BOOLEAN_T -DFREEBSDV=9000 -DHASFDESCFS=2 -DHASPSEUDOFS -DHASNULLFS -DHASIPv6 -DHASUTMPX -DHAS_STRFTIME -DLSOF_VSTR="9.3-RELEASE-p2" -I/usr/src/sys -O3 -c ckkv.c
In file included from ckkv.c:43:
In file included from ./../lsof.h:195:
In file included from ./../dlsof.h:41:
/usr/include/stdlib.h:54:9: error: unknown type name '___wchar_t'
typedef ___wchar_t      wchar_t;
        ^
In file included from ckkv.c:43:
In file included from ./../lsof.h:195:
In file included from ./../dlsof.h:376:
In file included from /usr/src/sys/sys/file.h:42:
In file included from /usr/src/sys/sys/refcount.h:36:
In file included from /usr/src/sys/sys/systm.h:46:
/usr/src/sys/sys/stdint.h:75:9: warning: 'WCHAR_MIN' macro redefined
#define WCHAR_MIN       __WCHAR_MIN
        ^
/usr/include/x86/_stdint.h:185:9: note: previous definition is here
#define WCHAR_MIN       INT32_MIN
        ^
In file included from ckkv.c:43:
In file included from ./../lsof.h:195:
In file included from ./../dlsof.h:376:
In file included from /usr/src/sys/sys/file.h:42:
In file included from /usr/src/sys/sys/refcount.h:36:
In file included from /usr/src/sys/sys/systm.h:46:
/usr/src/sys/sys/stdint.h:76:9: warning: 'WCHAR_MAX' macro redefined
#define WCHAR_MAX       __WCHAR_MAX
        ^
/usr/include/x86/_stdint.h:186:9: note: previous definition is here
#define WCHAR_MAX       INT32_MAX
        ^
2 warnings and 1 error generated.
*** [ckkv.o] Error code 1

Stop in /tmp/obj/usr/ports/sysutils/lsof/work/lsof_4.88/lsof_4.88_src/lib.
*** [lib/liblsof.a] Error code 1

Stop in /tmp/obj/usr/ports/sysutils/lsof/work/lsof_4.88/lsof_4.88_src.
*** [do-build] Error code 1

Stop in /usr/ports/sysutils/lsof.
root@cs0:/usr/ports/sysutils/lsof#
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2014-10-19 10:20:42 UTC
Maintainer CC'd
Comment 2 Larry Rosenman freebsd_committer freebsd_triage 2014-10-19 14:12:34 UTC
This looks to me like a system header issue, not specific to lsof.....

all of these are related to wide character support, and system headers not having
a consistent view of it. 

I do NOT have a 9.x system to look at.
Comment 3 Anton Saietskii 2014-10-20 17:30:23 UTC
Oh, my fault. I'v already switched to releng/10 in preparation to upgrade, so sources aren't in sync with current world.
Closing PR.