external_tools.txt 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. External Tools used by Raptor
  2. ==============================
  3. For the sake of convenience Raptor has been bundled with many of the
  4. fundamental tools and libraries that are needed to bootstrap it from
  5. merely having the source code to being able to use it.
  6. If you have Raptor from an installer then this document is not likely
  7. to be of interest. It's about how one uses Raptor directly from the
  8. source repository.
  9. The benefit of bundling tools with the source is to make it ready to
  10. use on a variety of platforms without having to manually download and
  11. configure many items.
  12. This takes away some complexities and adds others. In the case of some
  13. tools such as Python or Bash it lead to Raptor keeping a whole copy
  14. in its repository, to be uncompressed and built so as to ensure that
  15. a precise version of that tool was available even if that platform's
  16. default version was not up-to-date enough.
  17. These large compressed archives are not stored efficiently in most
  18. "current" SCMs and the inefficiency grows every time one attempts to
  19. add a new version.
  20. It has become less and less necessary to do this as better project
  21. hosting sites have become available. It's now possible to let Raptors
  22. own bootstrapping scripts download what they need from a single worldwide
  23. download or from a set of alternatives and feel confident that
  24. the necessary items will always be available.
  25. Tools Needed when Bootstrapping Raptor
  26. ---------------------------------------
  27. When one enters $SBS_HOME/util and types "make" to bootstrap Raptor,
  28. it will now not only build tools but actually fetch the source code of
  29. any external ones that it might need.
  30. Examples of external tools:
  31. Python
  32. GNU Bash Shell
  33. GNU Make
  34. "dialog" utility
  35. Download locations are chosen:
  36. 1) To be the project's natural home location e.g. the GNU ftp site
  37. 2) To have fallback locations where the item can also be found
  38. 3) To use http://projects.developer.nokia.com/raptor/files if they cannot
  39. be obtained any other way
  40. Tools that are created by the makefiles in the util/toolname.mk makefiles
  41. use wget to fetch from a list of alternatives. e.g. in make.mk the line:
  42. MAKE_TAR_URL:=http://mirrors.kernel.org/gnu/make/make-$(RAPTOR_MAKE_VER).tar.bz2
  43. http://www.nic.funet.fi/pub/gnu/ftp.gnu.org/pub/gnu/make/make-$(RAPTOR_MAKE_VER).tar.bz2
  44. .... indicates alternative locations to attempt to fetch the gnu make
  45. source from.
  46. Tools Used to Generate Installers
  47. ---------------------------------
  48. NSIS installer
  49. --------------
  50. The raptorinstallermaker.py script in util/install-windows now downloads
  51. NSIS.zip which contains a specifically structured version of the NSIS
  52. installer creator. It has hardcoded alternate source locations for
  53. this file.