Ken Mahoney wrote: > Good morning, > > There are a few binary objects that must be present under ~/libsrc > before SipX can be fully built. Among these are the java-sun-windows JVM > and Sun's JDK package. I believe these types of files should be checked > into the sipXecs repository. I was considering whether these should be > saved into the ~/src/lib/ directories and then have the lib make > infrastructure copy them over to ~/libsrc when a build begins. I realize > that traditionally ~/src/lib was preserved for packages that affect SipX > run-time only, but maybe it should be expanded to include special > packages like these? Or perhaps, a ~/src/buildpkgs directory (or > something similarly named) should be created for these types of objects?
The lib directory is for building 3rd party dependencies that do are not available (packaged) properly on a distribution that sipXecs needs to be run on. It maybe a build dependency or run-time dependency: it does not matter. What lib directory was set up for is to provide the way for sipX packagers to check in the build files and patches that properly package those dependencies. But as you noticed the sources or the binaries are not checked in there and there are important reasons why not. We (sipx team) tried to maintain the repository with all the dependencies checked in - it wasn't a pretty picture. > > My concern in not having these types of files not saved in subversion is > that it leaves us at the mercy teams who release these types of > packages; source packages have been known to disappear from the Internet > as they approach the end of their software life-cycle, forcing > developers and end-users to grab the next available release of package > "X" hoping that it will still work with SipX. > I do not think that bringing up end users and even developers here is a fair argument. All the released/supported versions and the night builds are available on sipfoundry for them. The difficult part is building dependencies from source. But that's not what most developers (and certainly none of the users) is forced to do. You are right that it's a good idea to have a backup copy of all the source and binary dependencies (in case they suddenly disappear from internet). That's why all the tarballs and binaries needed to build dependencies are in LIBSRC directory (it's configurable). The make targets. which "wget" those tarballs where possible, were meant just as a shortcut for someone like me - who needs to build dependencies from time to time - but mostly gets them from sipx repos. If you are maintaining a build farm however you should setup common LIBSRC to be shared from the other system and you can use whatever tool you like to make a permanent copy of all the tarballs that you ever use. I would not use source control system to do that copy, but that's just me. In any case - even if you do want to use version control to keep the contents of LIBSRC backed up - please do not make all sipx developers pay the price: don't use sipXecs repository for it. D. _______________________________________________ sipx-dev mailing list [email protected] List Archive: http://list.sipfoundry.org/archive/sipx-dev Unsubscribe: http://list.sipfoundry.org/mailman/listinfo/sipx-dev
