build.sh 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. #!/bin/bash
  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=../package/
  8. PACKAGE_THEME=../package.theme/
  9. MINIFIED="min"
  10. #script
  11. clear
  12. echo -e "\033[0m"============================ LUNGO COMPILER ============================
  13. ## Files to compile
  14. FILES_TO_COMPILE=""
  15. FILES_TO_JOIN=""
  16. #Main
  17. DIR=$LUNGO_SOURCES$LUNGO_NAMESPACE
  18. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES
  19. FILES=(js Init.js Core.js Dom.js Service.js Constants.js Events.js Notification.js Fallback.js)
  20. for file in "${FILES[@]}"
  21. do
  22. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  23. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  24. done
  25. #Router
  26. DIR=$LUNGO_SOURCES"router/"$LUNGO_NAMESPACE"Router."
  27. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"router/"
  28. FILES=(js History.js)
  29. for file in "${FILES[@]}"
  30. do
  31. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  32. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  33. done
  34. #View
  35. DIR=$LUNGO_SOURCES"view/"$LUNGO_NAMESPACE"View."
  36. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"view/"
  37. FILES=(Article.js Aside.js)
  38. for file in "${FILES[@]}"
  39. 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. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"element/"
  46. FILES=(Cache.js Carousel.js Count.js Loading.js Progress.js Pull.js)
  47. for file in "${FILES[@]}"
  48. do
  49. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  50. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  51. done
  52. #Data
  53. DIR=$LUNGO_SOURCES"data/"$LUNGO_NAMESPACE"Data."
  54. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"data/"
  55. FILES=(Cache.js Sql.js Storage.js)
  56. for file in "${FILES[@]}"
  57. do
  58. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  59. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  60. done
  61. #Attributes
  62. DIR=$LUNGO_SOURCES"attributes/"$LUNGO_NAMESPACE"Attributes."
  63. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"attributes/"
  64. FILES=(Data.js)
  65. for file in "${FILES[@]}"
  66. do
  67. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  68. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  69. done
  70. #Boot
  71. DIR=$LUNGO_SOURCES"boot/"$LUNGO_NAMESPACE"Boot."
  72. echo -e "\033[33m [DIR]: "$LUNGO_SOURCES"boot/"
  73. FILES=(Resources.js Stats.js Layout.js Events.js Data.js Section.js Article.js)
  74. for file in "${FILES[@]}"
  75. do
  76. FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
  77. FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
  78. done
  79. #COMPILED Version
  80. #FILES_TO_COMPILE=" --js "$LUNGO_SOURCES"lib/quo.debug.js "$FILES_TO_COMPILE
  81. java -jar $COMPILER $FILES_TO_COMPILE --js_output_file $PACKAGE/lungo.js
  82. # cat $LUNGO_SOURCES"lib/quo.debug.js" $PACKAGE/lungo-$VERSION.standalone.js > $PACKAGE/lungo-$VERSION.js
  83. echo -e "\033[32m [BUILD]: lungo.js\033[0m"
  84. FILES_TO_COMPRESS=""
  85. DIR=$LUNGO_SOURCES"stylesheets/css/"
  86. echo -e "\033[33m [DIR]: "$DIR" >> COMPRESSING"
  87. FILES=(base layout layout.nav layout.aside layout.article layout.list layout.grid widgets widgets.splash widgets.button widgets.form widgets.colour widgets.loading widgets.notification widgets.pull)
  88. for file in "${FILES[@]}"
  89. do
  90. # echo " - Compressing "$DIR$LUNGO_NAMESPACE$file".css ..."
  91. #Compressing via YUI
  92. java -jar $COMPRESSOR $DIR$LUNGO_NAMESPACE$file".css" -o $DIR$LUNGO_NAMESPACE$file".min.css"
  93. FILES_TO_COMPRESS=$FILES_TO_COMPRESS" "$DIR$LUNGO_NAMESPACE$file".min.css"
  94. # FILES_TO_COMPRESS=$FILES_TO_COMPRESS" "$DIR$LUNGO_NAMESPACE$file".css"
  95. done
  96. cat $FILES_TO_COMPRESS > $PACKAGE/lungo.css
  97. echo -e "\033[32m [BUILD]: lungo.css\033[0m"
  98. for file in "${FILES[@]}"
  99. do
  100. rm $DIR$LUNGO_NAMESPACE$file".min.css"
  101. done
  102. DIR=$LUNGO_SOURCES"stylesheets/css/"
  103. FILES=(css brand.css)
  104. for file in "${FILES[@]}"
  105. do
  106. echo -e "\033[32m [BUILD]: lungo.icon."$file"\033[0m"
  107. cp $DIR"Lungo.widgets.icon."$file $PACKAGE'lungo.icon.'$file
  108. done
  109. FILES=(default.css)
  110. for file in "${FILES[@]}"
  111. do
  112. echo -e "\033[32m [BUILD]: lungo.theme."$file"\033[0m"
  113. cp $DIR"Lungo.theme."$file $PACKAGE'lungo.theme.'$file
  114. done
  115. DIR=$LUNGO_SOURCES"stylesheets/"
  116. FILES=(lungo.theme.default.less mixins.less)
  117. for file in "${FILES[@]}"
  118. do
  119. echo -e "\033[32m [COPY]: "$file"\033[0m"
  120. cp $DIR$file $PACKAGE_THEME$file
  121. done
  122. echo ============================ /LUNGO COMPILER ============================