build.sh 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. #!/bin/sh
  2. #define paths
  3. COMPILER=google-compiler/compiler.jar
  4. COMPRESSOR=yuicompressor/yuicompressor-2.4.2.jar
  5. LUNGO_SOURCES=../src/
  6. LUNGO_NAMESPACE=Lungo.
  7. PACKAGE=../packages/package/
  8. PACKAGE_THEME=../packages/package.theme/
  9. MINIFIED="min"
  10. # colors
  11. alias decho='printf "\033[33m%s\033[0m\n"'
  12. alias becho='printf "\033[32m%s\033[0m\n"'
  13. mkdir -p ${PACKAGE} ${PACKAGE_THEME}
  14. clear
  15. decho "============================ LUNGO COMPILER ============================"
  16. ## Files to compile
  17. FILES_TO_COMPILE=""
  18. FILES_TO_JOIN=""
  19. #Main
  20. DIR=$LUNGO_SOURCES$LUNGO_NAMESPACE
  21. decho " [DIR]: $LUNGO_SOURCES"
  22. FILES="js Init.js Core.js Dom.js Service.js Constants.js Events.js Notification.js Fallback.js Resource.js Scroll.js"
  23. for file in ${FILES} ; do
  24. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  25. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  26. done
  27. #Router
  28. DIR=$LUNGO_SOURCES"router/"$LUNGO_NAMESPACE"Router."
  29. decho " [DIR]: ${LUNGO_SOURCES}router/"
  30. FILES="js History.js"
  31. for file in ${FILES} ; do
  32. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  33. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  34. done
  35. #View
  36. DIR=$LUNGO_SOURCES"view/"$LUNGO_NAMESPACE"View."
  37. decho " [DIR]: ${LUNGO_SOURCES}view/"
  38. FILES="Article.js Aside.js"
  39. for file in ${FILES} ; do
  40. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  41. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  42. done
  43. #View
  44. DIR=$LUNGO_SOURCES"element/"$LUNGO_NAMESPACE"Element."
  45. decho " [DIR]: ${LUNGO_SOURCES}element/"
  46. FILES="Cache.js Carousel.js Count.js Loading.js Progress.js Pull.js"
  47. for file in ${FILES} ; do
  48. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  49. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  50. done
  51. #Data
  52. DIR=$LUNGO_SOURCES"data/"$LUNGO_NAMESPACE"Data."
  53. decho " [DIR]: ${LUNGO_SOURCES}data/"
  54. FILES="Cache.js Sql.js Storage.js"
  55. for file in ${FILES} ; do
  56. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  57. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  58. done
  59. #Attributes
  60. DIR=$LUNGO_SOURCES"attributes/"$LUNGO_NAMESPACE"Attributes."
  61. decho " [DIR]: "$LUNGO_SOURCES"attributes/"
  62. FILES="Data.js"
  63. for file in ${FILES} ; do
  64. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  65. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  66. done
  67. #Boot
  68. DIR=$LUNGO_SOURCES"boot/"$LUNGO_NAMESPACE"Boot."
  69. decho " [DIR]: ${LUNGO_SOURCES}boot/"
  70. FILES="Events.js Data.js Layout.js"
  71. for file in ${FILES} ; do
  72. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  73. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  74. done
  75. #COMPILED Version
  76. #FILES_TO_COMPILE=" --js "$LUNGO_SOURCES"lib/quo.debug.js "$FILES_TO_COMPILE
  77. java -jar $COMPILER $FILES_TO_COMPILE --js_output_file $PACKAGE/lungo.js
  78. cat $FILES_TO_JOIN > $PACKAGE/lungo.debug.js
  79. # cat $LUNGO_SOURCES"lib/quo.debug.js" $PACKAGE/lungo-$VERSION.standalone.js > $PACKAGE/lungo-$VERSION.js
  80. becho " [BUILD]: lungo.js"
  81. FILES_TO_COMPRESS=""
  82. DIR=$LUNGO_SOURCES"stylesheets/css/"
  83. decho " [DIR]: $DIR >> COMPRESSING"
  84. FILES="base layout layout.nav layout.aside layout.article layout.list layout.grid widgets widgets.splash widgets.button widgets.form widgets.loading widgets.notification widgets.pull"
  85. for file in ${FILES} ; do
  86. # echo " - Compressing "$DIR$LUNGO_NAMESPACE$file".css ..."
  87. #Compressing via YUI
  88. java -jar $COMPRESSOR $DIR$LUNGO_NAMESPACE$file".css" -o $DIR$LUNGO_NAMESPACE$file".min.css"
  89. FILES_TO_COMPRESS=$FILES_TO_COMPRESS" "$DIR$LUNGO_NAMESPACE$file".min.css"
  90. # FILES_TO_COMPRESS=$FILES_TO_COMPRESS" "$DIR$LUNGO_NAMESPACE$file".css"
  91. done
  92. cat $FILES_TO_COMPRESS > $PACKAGE/lungo.css
  93. becho " [BUILD]: lungo.css"
  94. for file in ${FILES} ; do
  95. rm $DIR$LUNGO_NAMESPACE$file".min.css"
  96. done
  97. DIR=$LUNGO_SOURCES"stylesheets/css/"
  98. FILES="css brand.css"
  99. for file in ${FILES} ; do
  100. becho " [BUILD]: lungo.icon.$file"
  101. cp $DIR"Lungo.widgets.icon."$file $PACKAGE'lungo.icon.'$file
  102. done
  103. FILES="default.css"
  104. for file in ${FILES} ; do
  105. becho " [BUILD]: lungo.theme.$file"
  106. cp $DIR"Lungo.theme."$file $PACKAGE'lungo.theme.'$file
  107. done
  108. DIR=$LUNGO_SOURCES"stylesheets/"
  109. FILES="lungo.theme.default.styl vendor.styl"
  110. for file in ${FILES} ; do
  111. becho " [COPY]: $file"
  112. cp $DIR$file $PACKAGE_THEME$file
  113. done
  114. decho "============================ /LUNGO COMPILER ============================"