On Thu, Feb 14, 2008 at 5:47 PM, Hans-Christoph Steiner hans@eds.org wrote:
For the Windows builds, I need a way to track all of the various sources needed (One GNU/Linux and Mac OS X, this is done by the package management systems thankfully). There are a lot:
I imagine you've already discussed this to death, but if it's of any interest... in my own code I usually avoid putting other project's sources in my repositories. Instead, I usually just make a script (or set of scripts) called "bootstrap.sh", which downloads the various sources and compiles them all in one shot. It seems to work okay, since generally I only need to do this once, but it's convenient when setting up a new machine. Sometimes I keep a few patches in the project as well, which are automatically applied to the sources after untarring but before compiling.
I've also approached this problem in the patch with scripts in Python or even Makefiles, instead of a shell script. The shell script (surprisingly, perhaps a reflection on my coding abilities.. :) seems to be the most manageable for me, however.
Sometimes I think it would be nice to just dump the external source trees into my repository, but somehow I can't bring myself to do it. Not even sure why.. Well, I should note that sometimes this approach is useful for operating-system-specific patches, since the patched files are not saved in the repository, so conflicts aren't a problem. (I have no interest in resolving platform-dependent conflicts on other people's codebases! .. :) ugh..)
Perhaps it's possible to build the whole Pd-extended using Cygwin sources, which means that there would be a package management system. Hmm... that would be nice...
imho the cygwin package manager has a lot to be desired, but I guess it's more convenient than the big fat nothing that comes with mingw. I think it would be an incredibly worthwhile effort to port something like apt/dpkg to mingw..
there are, however, a few efforts out there, not sure how good they are: - http://lintouch.org/download/mingw-package-1.1/README.html - http://www.mingw.org/MinGWiki/index.php/mingwPORT - http://unigw.sourceforge.net/