deps.tex 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. \section{Dependencies}
  2. \subsection{OTP Compliant}
  3. mad supports app files inside ebin, priv static folder and c_src ports directories points.
  4. Specifically two kinds of directory layouts:
  5. \vspace{1\baselineskip}
  6. \begin{lstlisting}[caption=Solution]
  7. +-- apps
  8. +-- deps
  9. +-- rebar.config
  10. +-- sys.config
  11. \end{lstlisting}
  12. \vspace{1\baselineskip}
  13. \vspace{1\baselineskip}
  14. \begin{lstlisting}[caption=OTP Application]
  15. +-- deps
  16. +-- ebin
  17. +-- include
  18. +-- priv
  19. +-- src
  20. +-- rebar.config
  21. \end{lstlisting}
  22. \vspace{1\baselineskip}
  23. \subsection{Application Depot}
  24. As you may know you can create OTP releases systools from sasl application.
  25. mad currently creates releases with systools, but manually manages binary access:
  26. from local erlang or public applcation depot.
  27. To bundle binary BEAM or LING along with synrc spplications MAD can use
  28. global repository statically avaliable at Github Pages:
  29. \vspace{1\baselineskip}
  30. \begin{lstlisting}
  31. $ curl -X GET http://synrc.com/apps/index.txt
  32. [ {bin,[beam], ["7.0.3"]},
  33. {lib,[active], ["0.9"]},
  34. {lib,[compiler], ["6.0"]},
  35. {lib,[cowboy], ["1.0.1"]},
  36. {lib,[cowlib], ["1.0.0"]},
  37. {lib,[crypto], ["3.6"]},
  38. {lib,[erlydtl], ["0.8.0"]},
  39. {lib,[fs], ["1.9"]},
  40. {lib,[gproc], ["0.3"]},
  41. {lib,[jsone], ["v0.3.3"]},
  42. {lib,[kernel], ["4.0"]},
  43. {lib,[stdlib], ["2.5"]},
  44. {lib,[kvs], ["2.9"]},
  45. {lib,[mad], ["2.9"]},
  46. {lib,[mnesia], ["4.13"]},
  47. {lib,[n2o], ["2.10"]},
  48. {lib,[nitro], ["0.9"]},
  49. {lib,[ranch], ["1.0.0"]},
  50. {lib,[rest], ["2.9"]},
  51. {lib,[review], ["2.9"]},
  52. {lib,[sh], ["1.9"]},
  53. {lib,[syntax_tools], ["1.7"]} ].
  54. \end{lstlisting}
  55. \vspace{1\baselineskip}