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

Reply via email to