On Thu, 2008-01-10 at 15:35 -0600, Jason Kraftcheck wrote: > Greetings, > > I think the OpenCascade Debian packages would be more useful if they were > split up further, and slightly differently. I've included a description > of how I think the packages should be split, and a few scripts that will > hopefully make maintenance of the split packages easier. > > Warning: I don't clam to be an expert on OpenCascade--there are most > likely aspects of the following that I am mistaken about. > > Motivations for dividing OpenCascade libraries into multiple packages: > Primary: I may need a package containing core libraries that does > not depend on X11, such that it can be installed on a > compute node w/out also installing X client libraries. > Secondary: I and many others will most likely never want the WOK* > or test harness stuff. > Tertiary: I would like core stuff separate from the Lite OpenCascade > Application Framework, as I do not intend to use the latter. > > Suggested Packages: > OpenCascade-Common : Stuff requried by both OpenCascade and WOK*. > OpenCascade-Core : The CAD/Solid Modelling Components > OpenCascade-Vis : Visualization Components > OpenCascade-OCAFLite : Lightweight Application Framework > OpenCascade-OCAF : Application Framework > OpenCascade-Test : Test harness, test code, and DRAWEXE > OpenCascade-WOK : OpenCascade Developement Tools > OpenCascade-*-dev : dev packages for all of the above > > Attached Files: > pkgdep.ps : graph of dependencies amongst proposed packages > - items that depend on X are orange > libdep.ps : graph of dependencies amongst OpenCascade libraries > - items that depend on X are orange > - direct dependencies not shown if also implied indirectly > (otherwise graph is unreadable mess.) > libdepdot : Bash script to generate graphviz input for libdep.ps > modmap.txt : map between OpenCascade Modules and proposed packages > pkgsrc.txt : List of ToolKits and other source directories for each > proposed package. NOTE: The WOK package should also > include a bunch of stuff from the "wok" directory. > occfiles : Perl script to generate lists of headers, libraries, > and executables from a list of ToolKits and source > directories such as specified for each proposed > package in 'pkgsrc.txt'. NOTE: Doesn't handle > data files (tcl, fonts, etc.) yet. NOTE: Must be > run after OpenCascade is compiled so it can determine > which libs and executables are actually built. > toolkits : reduce list of directories in ros/src/ to a list of > ToolKits and any directories that are not included > in any ToolKit. > > * WOK: OpenCascade's combined source code repository system, build > system, and IDL parser. Not required unless modifying > OpenCascade. Not used to build on Linux.
This is really beautiful, I find your motivation compelling, and the division is elegent. Thanks very much! I have a couple of reactions: -common is a name generally used for architecture-independent deps, e.g. openmpi-common has a bunch of data files in /usr/share, so I'd use -kernel or -base or something similar. You're using ldd to generate these dependencies. But several of the libraries are over-linked, that is linked to libraries where they don't call any symbols, hence the thousand-odd warnings generated by dh_shlibdeps at the end of the build. I wonder if the graphs are simpler, and have fewer X links, than you make them out to. Splitting up the libs should be no problem. Splitting up the headers among the -dev packages will be a herculean task! There are some fifteen thousand of them, including nearly four thousand beginning with the word "Handle"!! Are you volunteering? :-) dpkg -c libopencascade6.2-dev_6.2.0-6_amd64.deb | grep include | wc I'm uploading -6 to the usual place now, with STLport stricken from its presence so I can build Salomé (though that's still having trouble...). I'll start -7 tomorrow, or when I hear from you, whichever comes later. Thanks again! -Adam -- GPG fingerprint: D54D 1AEE B11C CE9B A02B C5DD 526F 01E8 564E E4B6 Engineering consulting with open source tools http://www.opennovation.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

