# -*- mode: Makefile; -*- ## ----------------------------------------------------------------------------- ## --SECTION-- JAVASCRIPT ## ----------------------------------------------------------------------------- ################################################################################ ### @brief JavaScript modules for browser ################################################################################ JAVASCRIPT_BROWSER = \ js/apps/system/aardvark/frontend/js/modules/org/arangodb.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-collection.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-database.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-query-cursor.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-statement.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arangosh.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/graph.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/simple-query.js \ \ js/apps/system/aardvark/frontend/js/modules/org/arangodb-common.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-collection-common.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/arango-statement-common.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/graph-common.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/graph/traversal.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/aql/functions.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/mimetypes.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/replication.js \ js/apps/system/aardvark/frontend/js/modules/org/arangodb/simple-query-common.js \ \ js/apps/system/aardvark/frontend/js/bootstrap/errors.js \ js/apps/system/aardvark/frontend/js/bootstrap/monkeypatches.js \ js/apps/system/aardvark/frontend/js/bootstrap/module-internal.js \ \ js/apps/system/aardvark/frontend/js/client/client.js \ js/apps/system/aardvark/frontend/js/client/bootstrap/module-internal.js BUILT_SOURCES += $(JAVASCRIPT_BROWSER) ################################################################################ ### @brief files for jslint ################################################################################ JAVASCRIPT_JSLINT = \ `find @srcdir@/js/actions -name "*.js"` \ `find @srcdir@/js/common/bootstrap -name "*.js"` \ `find @srcdir@/js/client/bootstrap -name "*.js"` \ `find @srcdir@/js/server/bootstrap -name "*.js"` \ \ `find @srcdir@/js/common/modules/org -name "*.js"` \ `find @srcdir@/js/client/modules -name "*.js"` \ `find @srcdir@/js/server/modules -name "*.js"` \ `find @srcdir@/js/apps/system/aardvark/frontend/js/models -name "*.js"` \ `find @srcdir@/js/apps/system/aardvark/frontend/js/views -name "*.js"` \ `find @srcdir@/js/apps/system/aardvark/frontend/js/collections -name "*.js"` \ `find @srcdir@/js/apps/system/aardvark/frontend/js/routers -name "*.js"` \ \ @srcdir@/js/client/client.js \ @srcdir@/js/server/server.js \ @srcdir@/js/server/version-check.js \ \ @srcdir@/js/apps/system/aardvark/frontend/js/shell/browser.js ################################################################################ ### @brief executes jslint ################################################################################ .PHONY: jslint jslint: @for file in $(JAVASCRIPT_JSLINT); do \ @builddir@/bin/arangosh \ -c none \ --log.level error \ --server.password "" \ --javascript.startup-directory @srcdir@/js \ --javascript.modules-path "@srcdir@/js/client/modules;@srcdir@/js/common/modules;@srcdir@/js/node" \ --javascript.package-path "@srcdir@/js/npm;@srcdir@/js/common/test-data/modules" \ --jslint $$file; \ done ################################################################################ ### @brief sets up the directories ################################################################################ BUILT_SOURCES += @builddir@/.setup-js-directories @builddir@/.setup-js-directories: @test -d js/apps/system/aardvark/frontend/js/modules/org/arangodb/graph || mkdir -p js/apps/system/aardvark/frontend/js/modules/org/arangodb/graph @test -d js/apps/system/aardvark/frontend/js/modules/org/arangodb/aql || mkdir -p js/apps/system/aardvark/frontend/js/modules/org/arangodb/aql @test -d js/apps/system/aardvark/frontend/js/bootstrap || mkdir -p js/apps/system/aardvark/frontend/js/bootstrap @test -d js/apps/system/aardvark/frontend/js/client/bootstrap || mkdir -p js/apps/system/aardvark/frontend/js/client/bootstrap @touch $@ ################################################################################ ### @brief copy JavaScript files ################################################################################ js/apps/system/aardvark/frontend/js/bootstrap/%.js: @srcdir@/js/common/bootstrap/%.js .setup-js-directories cat $< > $@ js/apps/system/aardvark/frontend/js/client/bootstrap/%.js: @srcdir@/js/client/bootstrap/%.js .setup-js-directories cat $< > $@ js/apps/system/aardvark/frontend/js/client/%.js: @srcdir@/js/client/%.js .setup-js-directories cat $< > $@ ################################################################################ ### @brief converts JavaScript files to header files ################################################################################ js/apps/system/aardvark/frontend/js/modules/%.js: @srcdir@/js/common/modules/%.js .setup-js-directories (echo "module.define(\"$(patsubst js/common/modules/%.js,%,$<)\", function(exports, module) {" && cat $< && echo "});") > $@ js/apps/system/aardvark/frontend/js/modules/%.js: @srcdir@/js/client/modules/%.js .setup-js-directories (echo "module.define(\"$(patsubst js/client/modules/%.js,%,$<)\", function(exports, module) {" && cat $< && echo "});") > $@ ## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE ## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor ## outline-regexp: "### @brief\\|## --SECTION--\\|# -\\*- " ## End: