http://bugs.grommit.com/show_bug.cgi?id=217
Summary: ksh93-integration prototype005 still references some
files as "unused"
Product: ksh93-integration
Version: unspecified
Platform: All
OS/Version: Solaris 11/Nevada
Status: NEW
Severity: major
Priority: P3
Component: Other
AssignedTo: ksh93-integration-discuss at opensolaris.org
ReportedBy: roland.mainz at nrubsig.org
CC: roland.mainz at nrubsig.org, april.chin at sun.com,
mike.kupfer at sun.com, ksh93-integration-
discuss at opensolaris.org
[Originally reported by April Chin]
The current ksh93-integration prototype005 tree's "findunref" run reports the
following files as "unreferenced" (filtered list from i386/AMD64 build):
-- snip --
> ./lib/libast/amd64/src/lib/libast/FEATURE/align
> ./lib/libast/amd64/src/lib/libast/FEATURE/botch
> ./lib/libast/amd64/src/lib/libast/FEATURE/ccode
> ./lib/libast/amd64/src/lib/libast/FEATURE/dirent
> ./lib/libast/amd64/src/lib/libast/FEATURE/fcntl
> ./lib/libast/amd64/src/lib/libast/FEATURE/iconv
> ./lib/libast/amd64/src/lib/libast/FEATURE/lib
> ./lib/libast/amd64/src/lib/libast/FEATURE/limits
> ./lib/libast/amd64/src/lib/libast/FEATURE/map
> ./lib/libast/amd64/src/lib/libast/FEATURE/mode
> ./lib/libast/amd64/src/lib/libast/FEATURE/nl_types
> ./lib/libast/amd64/src/lib/libast/FEATURE/preroot
> ./lib/libast/amd64/src/lib/libast/FEATURE/sig
> ./lib/libast/amd64/src/lib/libast/FEATURE/stdio
> ./lib/libast/amd64/src/lib/libast/FEATURE/sys
> ./lib/libast/amd64/src/lib/libast/FEATURE/time
> ./lib/libast/amd64/src/lib/libast/FEATURE/tmx
> ./lib/libast/amd64/src/lib/libast/FEATURE/tty
> ./lib/libast/amd64/src/lib/libast/FEATURE/tv
> ./lib/libast/amd64/src/lib/libast/FEATURE/types
> ./lib/libast/amd64/src/lib/libast/FEATURE/vfork
> ./lib/libast/amd64/src/lib/libast/FEATURE/wait
> ./lib/libast/amd64/src/lib/libast/FEATURE/wchar
> ./lib/libast/amd64/src/lib/libast/ast.req
> ./lib/libast/amd64/src/lib/libast/conf
> ./lib/libast/amd64/src/lib/libast/conflim.h
> ./lib/libast/i386/src/lib/libast/FEATURE/align
> ./lib/libast/i386/src/lib/libast/FEATURE/botch
> ./lib/libast/i386/src/lib/libast/FEATURE/ccode
> ./lib/libast/i386/src/lib/libast/FEATURE/dirent
> ./lib/libast/i386/src/lib/libast/FEATURE/fcntl
> ./lib/libast/i386/src/lib/libast/FEATURE/iconv
> ./lib/libast/i386/src/lib/libast/FEATURE/lib
> ./lib/libast/i386/src/lib/libast/FEATURE/limits
> ./lib/libast/i386/src/lib/libast/FEATURE/map
> ./lib/libast/i386/src/lib/libast/FEATURE/mode
> ./lib/libast/i386/src/lib/libast/FEATURE/nl_types
> ./lib/libast/i386/src/lib/libast/FEATURE/preroot
> ./lib/libast/i386/src/lib/libast/FEATURE/sig
> ./lib/libast/i386/src/lib/libast/FEATURE/stdio
> ./lib/libast/i386/src/lib/libast/FEATURE/sys
> ./lib/libast/i386/src/lib/libast/FEATURE/time
> ./lib/libast/i386/src/lib/libast/FEATURE/tmx
> ./lib/libast/i386/src/lib/libast/FEATURE/tty
> ./lib/libast/i386/src/lib/libast/FEATURE/tv
> ./lib/libast/i386/src/lib/libast/FEATURE/types
> ./lib/libast/i386/src/lib/libast/FEATURE/vfork
> ./lib/libast/i386/src/lib/libast/FEATURE/wait
> ./lib/libast/i386/src/lib/libast/FEATURE/wchar
> ./lib/libast/i386/src/lib/libast/ast.req
> ./lib/libast/i386/src/lib/libast/conf
> ./lib/libast/i386/src/lib/libast/conflim.h
> ./lib/libdll/amd64/src/lib/libdll/FEATURE/dll
> ./lib/libdll/i386/src/lib/libdll/FEATURE/dll
> ./lib/libpp/common/ppsym.c
> ./lib/libpp/i386/gentab
> ./lib/libpp/i386/ppkey.yacc
> ./lib/libpp/i386/probe.sh
> ./lib/libshell/amd64/src/cmd/ksh93/FEATURE/acct
> ./lib/libshell/i386/src/cmd/ksh93/FEATURE/acct
-- snip --
Tis is a problem. usr/src/lib/lib*/*/src/*/*/FEATURE/* are partially included
like '#include "FEATURE/foobar"' and partailly processed into public includes,
for example ./lib/libast/i386/src/lib/libast/FEATURE/align is processed into
/usr/include/ast/align.h
Uhm... I guess the best option is to add the following likes to the
"exception_list":
-- snip --
./src/lib/libast/*/src/lib/libast/FEATURE/*
./src/lib/libdll/*/src/lib/libdll/FEATURE/*.
./src/lib/libcmd/*/src/lib/libcmd/FEATURE/*
./src/lib/libshell/*/src/cmd/ksh93/FEATURE/*
./src/lib/libpp/common/ppsym.c
-- snip --
(manually stripping the */FEATURE/*"-files would be a maintaince nightmare for
updates since there is no automated way to seperate between files which are
included directly and those which are used indirectly as public includes).
... I am just praying that the reviewers will accept that... ;-/
... and add the following files to usr/src/lib/libshell/misc/filelist.txt to
get them removed before the putback:
-- snip --
./src/lib/libast/i386/src/lib/libast/ast.req
./src/lib/libast/amd64/src/lib/libast/ast.req
./src/lib/libast/sparc/src/lib/libast/ast.req
./src/lib/libast/sparcv9/src/lib/libast/ast.req
./src/lib/libast/i386/src/lib/libast/conf
./src/lib/libast/amd64/src/lib/libast/conf
./src/lib/libast/sparc/src/lib/libast/conf
./src/lib/libast/sparcv9/src/lib/libast/conf
./src/lib/libast/i386/src/lib/libast/conflim.h
./src/lib/libast/amd64/src/lib/libast/conflim.h
./src/lib/libast/sparc/src/lib/libast/conflim.h
./src/lib/libast/sparcv9/src/lib/libast/conflim.h
./src/lib/libpp/i386/gentab
./src/lib/libpp/i386/ppkey.yacc
./src/lib/libpp/i386/probe.sh
./src/lib/libpp/sparc/gentab
./src/lib/libpp/sparc/ppkey.yacc
./src/lib/libpp/sparc/probe.sh
-- snip --
Patch follows...
--
Configure bugmail: http://bugs.grommit.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
You are the assignee for the bug, or are watching the assignee.