On 09/30/2012 10:12 PM, Kent A. Reed wrote: > I ran a shell script over the contents of the linuxcnc-dev/bin and > linuxcnc-dev/scripts directories that I built from source.
Thanks for doing that :-) I looked in to the dependencies you discovered, and ... > In no particular order, the following invocations occur in those contents > > /usr/bin/python We already depend on this one. > /bin/sh <---hmm, in Ubuntu, this is a symbolic link to /bin/dash /bin/sh is provided by dash, which is marked Essential, which means we don't need to depend on it. Debian Policy Manual, section 3.5: <http://www.debian.org/doc/debian-policy/ch-binary.html#s-dependencies> > /bin/bash /bin/bash is provided by bash.deb, which is also Essential. > /usr/bin/tclsh8.5 This comes from tcl$VERSION, which we already depend on. > /usr/bin/wish This is the system's default wish, which is provided by tk$VERSION, which we already depend on. > /usr/bin/wish8.5 Covered by the above dependency. > /bin/pidof On Hardy this is provided by sysvutils, which is Essential, which means we're *not* supposed to have an explicit dependency on it. On Precise and Lucid this is provided by sysvinit-utils, which is not marked Essential. However if I build a deb that depends on it, lintian complains that I depended on an Essential package. I think this means there is some package marked Essential which depends (perhaps indirectly) on sysinit-utils. If that's true, then we should *not* depend on sysvinit-utils. So I didn't add a Dependency on these packages... > /bin/ps Provided by procps, "Priority: required" but not Essential. Added dependency. > /usr/bin/awk Provided by the virtual package awk, which can be provided by several different packages: gawk, mawk, etc. The base-files package (which is Essential) Pre-depends on awk, so awk is Essential, so we're fine here. > /usr/bin/ipcs Provided by util-linux, which is Essential. > /bin/kill Provided by procps, see above. > Detecting invocations like the bc that occurs in latency-test is harder. > I was hoping some of bash's built-in machinery---like its cache---would > be helpful but that stuff seems helpful only for interactive commands. > > So, I built my own custom bash (it wasn't pretty but it worked!) to dump > to stderr every command it looks for. Yowser Kent, you're serious about this! > When I invoke latency-test from the command line, my custom bash returns > > readlink > dirname > mktemp These are all provided by coreutils, Essential. > bc Taken care of ;-) > sed Provided by the Essential package sed. > cat Provided by coreutils, Essential. > halrun Provided by us ;-) > rm Provided by coreutils. > When I Invoke linuxcnc from the command line (with several different sim > configurations), my custom bash returns > > mktemp > uname > tty > touch > sleep All from coreutils, Essential > linuxcncserver > halcmd > xlinuxcnc > inivar > axis > milltask > axis-remote All from linuxcnc. > seq > wc coreutils > ipcrm util-linux > As well, I believe I saw 'cut' is invoked in some other script, so I > don't claim this list is all inclusive. cut is from coreutils. > Good hunting. Thanks for making these lists! -- Sebastian Kuzminsky ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers