From: Charles W. <cwi...@us...> - 2011-11-01 22:22:59
|
On the whole, I agree with the spirit of Earnie's proposal for the organization of the FRS. More inline... On 11/1/2011 4:15 PM, Earnie wrote: > When looking at FRS/mingw/files IMO at most we should see > > MinGW > MSYS > Other > > I would use Other to move the current > > Cross-Hosted MinGW Build Tool > OldFiles > mingwPORT > UserContributed > > directories to. Fine by me -- with one possible exception: "OldFiles" is not visible to non-members. It contains files we have "deleted". We probably should have a directory under "Other" that holds packages/files which (a) we don't want to actually delete for some reason (e.g. non-members can still see them for historical purposes?), but (b) they should no longer be installed on any modern system. Hence, an additional "Obsolete" directory under "Other". > Under MinGW and MSYS I would have > > Base > Contributed I agree, with the understanding that "core" packages (e.g. supported by us) which are not part of the minimal-install "Base" footprint) have "package directories" directly under MinGW/ and/or MSYS/, as they do now. Alternatively, those mingw.org-supported, but non-Base packages, could live in a third subdir -- say 'Extension' or 'Adjunct' or 'Supplement' (you, too, can have fun at thesaurus.com). > > and those would contain the package directories. We don't need any > other complication of directory. Yes. The more I look at MinGW/BaseSystem/GCC/ MinGW/BaseSystem/GDB/ MinGW/BaseSystem/GNU-Binutils/ MinGW/BaseSystem/RuntimeLibraries/ the more confusing I imagine it would be to a new user browsing the FRS. Aren't GDB and GCC GNU projects? Why does libstdc++ live "under" GCC/Version4/gcc-$ver/ but mingwrt lives "under" RuntimeLibraries? -- isn't libstdc++ a runtime library? > MinGW > Base > binutils > gcc > libgmp > libgomp Actually, I think "packages" (in the mingw-get sense) which derive from a single -src (as libgomp derives from gcc*-src) should "live" in the same directory: Base/gcc/gcc-4.6.1-2/ gcc-4.6.1-2-mingw32-*.tar.lzma gcc-4.6.1-2-mingw32-lic.tar.lzma gcc-4.6.1-2-mingw32-lic.tar.lzma libgomp-4.6.1-2-mingw32-lic.tar.lzma etc. =====> Never mind. You mentioned this below. > libiconv > libintl Ditto here; libintl is part of gettext/ > libmpc > libmpfr > libpthreadgc > libquadmath > libssp > libstdc++ Ditto; these three are all "part" of gcc. > mingw-get > mingwrt > pthreads > w32api > mingw-rt > Contributed > MSYS > Base IMO, the Base directory should contain the following: bash bzip2 msys-core << ??? name? coreutils cygutils diffutils expat file findutils gawk gettext grep gzip less libiconv make popt regex sed tar termcap texinfo xz zlib I arrived at this list using the following algorithm: 1. Look in the msys-base meta-package. 2. for each component listed, identify the corresponding -src package. 3. ALL components for that -src will live under Base, even if only (e.g.) the dll is actually IN the msys-base meta-package -- for example, libintl-vs-gettext. 4. For each package so selected, iterate through all of the related components' <requires /> elements, and repeat 2-4. (e.g. recurse). With the possible exception of popt and cygutils, I think that's a pretty good list that stays true to the original MinimalSYStem goals, for a default installation. It's not totally bare-bones (e.g. the msys-tiny metapackage), but it doesn't pull in beasts like perl or vim). (FYI, the only reason popt is pulled in, is because of cygutils-dos2unix. I'm considering asking Erwin to create msys-dos2unix (and mingw32-dos2unix) from his upstream dos2unix project, which has replaced cygutils-dos2unix in the cygwin distribution...then we could remove popt & cygutils-dos2unix from "Base"...) We've talked about "what goes into base" a couple of times in the past... RFD: mingw-get & xml files: working notes for meta-package membership http://thread.gmane.org/gmane.comp.gnu.mingw.devel/3784 mingw-get publication of msys-base -- phase 2 http://thread.gmane.org/gmane.comp.gnu.mingw.devel/4058 > Contributed > Other > Cross-Hosted MinGW Build Tool > OldFiles > mingwPORT > UserContributed > > > The packages under each "Base" folder are based on a minimal set of > packages in var/cache/mingw-get/packages after I installed gcc, g++, > msys, msys-bison, msys-flex, msys-m4, msys-perl and msys-vim. I wouldn't consider any of these part of the "base" msys install. The "msys-base" meta-package was defined explicitly to be relatively minimal, and perl/vim definitely aren't. Plus, flex, bison? Those are rarely used unless building gcc. m4...I could see that, but its main client is auto*, and once you pull those in you'll get m4 (and perl) automatically. > Of course > this probably missed something and also may have included a package that > belongs under another folder (libstdc++) for instance. Ah, right. OK, ignore the tedious bits related to this, above. -- Chuck |