summaryrefslogtreecommitdiff
path: root/webapps/swat/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'webapps/swat/Makefile')
-rw-r--r--webapps/swat/Makefile247
1 files changed, 247 insertions, 0 deletions
diff --git a/webapps/swat/Makefile b/webapps/swat/Makefile
new file mode 100644
index 0000000000..bf8af850ff
--- /dev/null
+++ b/webapps/swat/Makefile
@@ -0,0 +1,247 @@
+###################################################################################
+# PUBLIC VARIABLES
+###################################################################################
+
+QOOXDOO = ../qooxdoo-0.6.3-sdk
+SCRIPTNAME = swat.js
+APPCLASS = swat.main.Main
+INCLUDEALL = false
+OPTIMIZESTRINGS = false
+OPTIMIZEVARIABLES = false
+SOURCELOADER=
+NICE=10
+LOCALINSTALLDIR = /usr/local/samba/share/swat/apps/swat
+
+
+###################################################################################
+# PRIVATE VARIABLES
+###################################################################################
+
+FRONTEND = $(QOOXDOO)/frontend
+FRAMEWORK = $(FRONTEND)/framework
+API = $(FRONTEND)/api
+CACHE = $(FRAMEWORK)/.cache
+GENERATOR = $(FRAMEWORK)/tool/generator.py
+
+
+ifeq ($(INCLUDEALL),false)
+ INCLUDE = --include $(APPCLASS)
+else
+ INCLUDE =
+endif
+
+ifeq ($(OPTIMIZESTRINGS),true)
+ OPTIMIZESTR = --optimize-strings
+else
+ OPTIMIZESTR =
+endif
+
+ifeq ($(OPTIMIZEVARIABLES),true)
+ OPTIMIZEVAR = --optimize-variables
+else
+ OPTIMIZEVAR =
+endif
+
+ifneq ($(SOURCELOADER),)
+ SOURCELDR = --source-loader-type $(SOURCELOADER)
+else
+ SOURCELDR =
+endif
+
+
+###################################################################################
+# DEFAULT TARGET
+###################################################################################
+
+all: build
+
+
+
+###################################################################################
+# COMMON TARGETS
+###################################################################################
+
+source: info-source \
+ generate-script-source \
+ generate-api-data
+
+build: info-build \
+ generate-script-build \
+ generate-api-data \
+ copy-build-files \
+ fix-build-rights
+
+api: generate-api-build generate-api-data
+ @echo
+ @echo " CREATE COPY OF HTML FILE"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Copying file..."
+ @cp -f $(API)/source/index.html api/index.html
+
+pretty: generate-pretty
+fix: generate-fix
+
+
+
+###################################################################################
+# CLEANUP TARGETS
+###################################################################################
+
+clean:
+ @echo
+ @echo " CLEANUP OF GENERATED FILES"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Deleting files..."
+ @rm -f source/script/$(SCRIPTNAME) build/script/$(SCRIPTNAME)
+
+realclean: clean
+ @echo
+ @echo " CLEANUP OF GENERATED FILES (REAL)"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Deleting files..."
+ @nice -n $(NICE) rm -rf build
+
+distclean: realclean
+ @echo
+ @echo " CLEANUP OF GENERATED FILES (DIST)"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Deleting files..."
+ @nice -n $(NICE) find . -name "*~" -o -name "*.bak" -o -name "*.old" | xargs rm -rf
+ @nice -n $(NICE) rm -rf $(CACHE)
+
+
+
+###################################################################################
+# GENERATOR TARGETS
+###################################################################################
+
+generate-script-source:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input $(FRAMEWORK)/source/class \
+ --source-script-path ../$(FRAMEWORK)/source/class \
+ --script-input $(API)/source/class \
+ --source-script-path ../$(API)/source/class \
+ --script-input source/class \
+ --source-script-path class \
+ --generate-source-script $(SOURCELDR) \
+ $(INCLUDE) \
+ --source-script-file source/script/$(SCRIPTNAME) \
+ --define-runtime-setting qx.manager.object.AliasManager.resourceUri:../$(FRAMEWORK)/source/resource \
+ --cache-directory $(CACHE) \
+ --add-new-lines
+
+#
+# djl: --script-input begins a set for which --resource-input and
+# --resource-output apply. Since there is a --resource-input and a
+# --resource-output defined for one set, it must be defined for each set
+#
+generate-script-build:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input $(FRAMEWORK)/source/class \
+ --resource-input $(FRAMEWORK)/source/resource \
+ --resource-output build/resource \
+ --script-input $(API)/source/class \
+ --resource-input $(API)/source/resource \
+ --resource-output build/resource \
+ --script-input source/class \
+ --resource-input source/resource \
+ --resource-output build/resource \
+ --generate-compiled-script \
+ $(INCLUDE) $(OPTIMIZESTR) $(OPTIMIZEVAR) \
+ --compiled-script-file build/script/$(SCRIPTNAME) \
+ --copy-resources \
+ --define-runtime-setting qx.manager.object.AliasManager.resourceUri:./resource \
+ --cache-directory $(CACHE) \
+ --add-new-lines
+
+generate-api-build:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input $(FRAMEWORK)/source/class \
+ --resource-input $(FRAMEWORK)/source/resource \
+ --resource-output api/resource/qooxdoo \
+ --script-input $(API)/source/class \
+ --resource-input $(API)/source/resource \
+ --resource-output api/resource \
+ --include api \
+ $(OPTIMIZESTR) $(OPTIMIZEVAR) \
+ --generate-compiled-script \
+ --compiled-script-file api/script/api.js \
+ --define-runtime-setting qx.manager.object.AliasManager.resourceUri:resource/qooxdoo \
+ --define-runtime-setting api.Viewer.title:Swat \
+ --copy-resources \
+ --cache-directory $(CACHE)
+
+generate-api-data:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input $(FRAMEWORK)/source/class \
+ --script-input $(API)/source/class \
+ --script-input source/class \
+ --generate-api-documentation \
+ --api-documentation-json-file build/script/data.js \
+ --cache-directory $(CACHE)
+
+generate-pretty:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input source/class \
+ --script-input $(FRAMEWORK)/source/class \
+ --include-without-dependencies api.* \
+ --pretty-print \
+ --cache-directory $(CACHE)
+
+generate-fix:
+ @chmod u+x $(GENERATOR) && nice -n $(NICE) $(GENERATOR) \
+ --script-input source/class \
+ --script-input $(FRAMEWORK)/source/class \
+ --include-without-dependencies api.* \
+ --fix-source \
+ --cache-directory $(CACHE)
+
+
+
+###################################################################################
+# ADDITIONAL TARGETS
+###################################################################################
+
+copy-build-files:
+ @echo
+ @echo " CREATE COPY OF HTML FILE"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Copying file..."
+ @cp -f source/index.html build/index.html
+
+fix-build-rights:
+ @echo
+ @echo " FIX RIGHTS ON BUILD FILES"
+ @echo "----------------------------------------------------------------------------"
+ @echo " * Fixing file rights..."
+ @nice -n $(NICE) find build -type d | xargs chmod a+rx
+ @nice -n $(NICE) find build -type f | xargs chmod a+r
+
+
+
+
+
+###################################################################################
+# INFO TARGETS
+###################################################################################
+
+info-build:
+ @echo "****************************************************************************"
+ @echo " GENERATING SWAT WEB APPLICATION BUILD"
+ @echo "****************************************************************************"
+
+info-source:
+ @echo "****************************************************************************"
+ @echo " GENERATING SWAT WEB APPLICATION SOURCE"
+ @echo "****************************************************************************"
+
+###################################################################################
+# INSTALL TARGETS (for developer use only)
+###################################################################################
+
+install:
+ @echo "****************************************************************************"
+ @echo " INSTALLING SWAT"
+ @echo "****************************************************************************"
+ @echo " * Installing swat files..."
+ @rsync -av --exclude=crystalsvg --delete build/ $(LOCALINSTALLDIR)