You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 2.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. NPM = npm
  2. BROWSERIFY = ./node_modules/.bin/browserify
  3. UGLIFYJS = ./node_modules/.bin/uglifyjs
  4. EXORCIST = ./node_modules/.bin/exorcist
  5. CLEANCSS = ./node_modules/.bin/cleancss
  6. CSS_FILES = font.css toastr.css main.css overlay.css videolayout_default.css font-awesome.css jquery-impromptu.css modaldialog.css notice.css popup_menu.css recording.css login_menu.css popover.css jitsi_popover.css contact_list.css chat.css welcome_page.css settingsmenu.css feedback.css jquery.contextMenu.css keyboard-shortcuts.css
  7. DEPLOY_DIR = libs
  8. BROWSERIFY_FLAGS = -d
  9. OUTPUT_DIR = .
  10. LIBJITSIMEET_DIR = node_modules/lib-jitsi-meet/
  11. IFRAME_API_DIR = ./modules/API/external
  12. all: update-deps compile compile-iframe-api uglify uglify-iframe-api deploy clean
  13. update-deps:
  14. $(NPM) update
  15. compile:
  16. $(BROWSERIFY) $(BROWSERIFY_FLAGS) -e app.js -s APP | $(EXORCIST) $(OUTPUT_DIR)/app.bundle.js.map > $(OUTPUT_DIR)/app.bundle.js
  17. compile-iframe-api:
  18. $(BROWSERIFY) $(BROWSERIFY_FLAGS) -e $(IFRAME_API_DIR)/external_api.js -s JitsiMeetExternalAPI | $(EXORCIST) $(OUTPUT_DIR)/external_api.js.map > $(OUTPUT_DIR)/external_api.js
  19. clean:
  20. rm -f $(OUTPUT_DIR)/app.bundle.* $(OUTPUT_DIR)/external_api.*
  21. deploy: deploy-init deploy-appbundle deploy-lib-jitsi-meet deploy-css deploy-local
  22. deploy-init:
  23. mkdir -p $(DEPLOY_DIR)
  24. deploy-appbundle:
  25. cp $(OUTPUT_DIR)/app.bundle.min.js $(OUTPUT_DIR)/app.bundle.min.map \
  26. $(OUTPUT_DIR)/app.bundle.js $(OUTPUT_DIR)/app.bundle.js.map \
  27. $(OUTPUT_DIR)/external_api.js.map $(OUTPUT_DIR)/external_api.js \
  28. $(OUTPUT_DIR)/external_api.min.map $(OUTPUT_DIR)/external_api.min.js \
  29. $(DEPLOY_DIR)
  30. deploy-lib-jitsi-meet:
  31. cp $(LIBJITSIMEET_DIR)/lib-jitsi-meet.min.js \
  32. $(LIBJITSIMEET_DIR)/lib-jitsi-meet.min.map \
  33. $(LIBJITSIMEET_DIR)/lib-jitsi-meet.js \
  34. $(LIBJITSIMEET_DIR)/lib-jitsi-meet.js.map \
  35. $(LIBJITSIMEET_DIR)/connection_optimization/external_connect.js \
  36. $(DEPLOY_DIR)
  37. deploy-css:
  38. (cd css; cat $(CSS_FILES)) | $(CLEANCSS) > css/all.css
  39. deploy-local:
  40. ([ ! -x deploy-local.sh ] || ./deploy-local.sh)
  41. uglify:
  42. $(UGLIFYJS) -p relative $(OUTPUT_DIR)/app.bundle.js -o $(OUTPUT_DIR)/app.bundle.min.js --source-map $(OUTPUT_DIR)/app.bundle.min.map --in-source-map $(OUTPUT_DIR)/app.bundle.js.map
  43. uglify-iframe-api:
  44. $(UGLIFYJS) -p relative $(OUTPUT_DIR)/external_api.js -o $(OUTPUT_DIR)/external_api.min.js --source-map $(OUTPUT_DIR)/external_api.min.map --in-source-map $(OUTPUT_DIR)/external_api.js.map
  45. source-package:
  46. mkdir -p source_package/jitsi-meet/css && \
  47. cp -r *.js *.html connection_optimization favicon.ico fonts images libs sounds LICENSE lang source_package/jitsi-meet && \
  48. cp css/all.css source_package/jitsi-meet/css && \
  49. cp css/unsupported_browser.css source_package/jitsi-meet/css && \
  50. (cd source_package ; tar cjf ../jitsi-meet.tar.bz2 jitsi-meet) && \
  51. rm -rf source_package