| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | #**********************************************************************
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | # TODO: build to a BUILD_DIR...
 | 
					
						
							|  |  |  | # TODO: build all target platforms...
 | 
					
						
							|  |  |  | #	- Windows (AppJS)
 | 
					
						
							|  |  |  | #	- MacOSX (AppJS)
 | 
					
						
							|  |  |  | #	- Windows8 (native?) XXX
 | 
					
						
							|  |  |  | #	- PhoneGap-remote
 | 
					
						
							|  |  |  | #	  push and api call to fetch and rebuild
 | 
					
						
							|  |  |  | #	- PhoneGap-local XXX
 | 
					
						
							| 
									
										
										
										
											2013-06-08 15:58:40 +04:00
										 |  |  | #
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | APP_NAME=ImageGrid.Viewer | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 00:42:41 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:19:19 +04:00
										 |  |  | # process LESS files to CSS...
 | 
					
						
							| 
									
										
										
										
											2013-06-04 19:24:18 +04:00
										 |  |  | %.css: %.less | 
					
						
							|  |  |  | 	lessc $< > $@ | 
					
						
							| 
									
										
										
										
											2013-06-04 16:29:20 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:19:19 +04:00
										 |  |  | # minify js...
 | 
					
						
							|  |  |  | %.min.js: %.js | 
					
						
							|  |  |  | 	uglifyjs $< -c -o $@ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | #**********************************************************************
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 00:42:41 +04:00
										 |  |  | # get all the .less files to process...
 | 
					
						
							| 
									
										
										
										
											2013-06-04 19:24:18 +04:00
										 |  |  | CSS_FILES := $(patsubst %.less,%.css,$(wildcard *.less)) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | LIB_DIR=lib | 
					
						
							|  |  |  | EXT_LIB_DIR=ext-lib | 
					
						
							|  |  |  | NW_PROJECT_FILE=package.json | 
					
						
							|  |  |  | JS_FILES := $(wildcard *.js) | 
					
						
							|  |  |  | HTML_FILES := $(wildcard *.html) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:33:02 +04:00
										 |  |  | # get files to minify...
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | JS_MIN_FILES := $(patsubst %.js,%.min.js,$(wildcard *.js)) | 
					
						
							| 
									
										
										
										
											2013-06-05 01:19:19 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 15:08:38 +04:00
										 |  |  | LOGS := *.log | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-21 17:47:44 +04:00
										 |  |  | NODE_DIR=node_modules | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | BUILD_DIR=build | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | WIN_BUILD_DIR=build/Win32 | 
					
						
							|  |  |  | MAC_BUILD_DIR=build/MacOSX | 
					
						
							|  |  |  | ANDROID_BUILD_DIR=build/Android | 
					
						
							|  |  |  | IOS_BUILD_DIR=build/iOS | 
					
						
							| 
									
										
										
										
											2013-06-05 01:19:19 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | DIST_DIR=dist | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | # XXX add version
 | 
					
						
							|  |  |  | WIN_DIST_ZIP=$(DIST_DIR)/$(APP_NAME)-win32.zip | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | APP_ZIP=$(BUILD_DIR)/app.zip | 
					
						
							| 
									
										
										
										
											2013-06-05 01:33:02 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | #**********************************************************************
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | all: dev | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:19:19 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | minify: $(JS_MIN_FILES) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | #**********************************************************************
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | # build dependencies...
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | # XXX can make auto-create directories???
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-21 17:47:44 +04:00
										 |  |  | $(NODE_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(NODE_DIR) | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | $(BUILD_DIR): | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | 	mkdir -p $(BUILD_DIR) | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | $(WIN_BUILD_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(WIN_BUILD_DIR) | 
					
						
							|  |  |  | $(MAC_BUILD_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(MAC_BUILD_DIR) | 
					
						
							|  |  |  | $(ANDROID_BUILD_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(ANDROID_BUILD_DIR) | 
					
						
							|  |  |  | $(IOS_BUILD_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(IOS_BUILD_DIR) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | $(DIST_DIR): | 
					
						
							|  |  |  | 	mkdir -p $(DIST_DIR) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-21 17:47:44 +04:00
										 |  |  | $(APP_ZIP): $(CSS_FILES) $(BUILD_DIR) $(NODE_DIR) node-deps | 
					
						
							|  |  |  | 	zip -r $(APP_ZIP) $(NW_PROJECT_FILE) $(JS_FILES) $(CSS_FILES) $(HTML_FILES) $(LIB_DIR) $(EXT_LIB_DIR) $(NODE_DIR) | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-04 16:29:20 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | #**********************************************************************
 | 
					
						
							| 
									
										
										
										
											2013-06-08 15:57:04 +04:00
										 |  |  | # dev env...
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-21 17:47:44 +04:00
										 |  |  | node-deps: | 
					
						
							|  |  |  | 	npm install fs.extra | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | dev: $(CSS_FILES) | 
					
						
							| 
									
										
										
										
											2013-06-08 15:57:04 +04:00
										 |  |  | 	unzip -uj $(wildcard targets/node-webkit/node-webkit-*-win-ia32.zip) -d . | 
					
						
							|  |  |  | 	chmod +x *.{exe,dll} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | #dev-targets:
 | 
					
						
							|  |  |  | #	mkdir -p targets/node-webkit
 | 
					
						
							|  |  |  | #	wget 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 18:28:10 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 15:57:04 +04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | #**********************************************************************
 | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | # build targets...
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | # node-webkit win32
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | win32: $(APP_ZIP) $(WIN_BUILD_DIR) | 
					
						
							|  |  |  | 	unzip -uj $(wildcard targets/node-webkit/node-webkit-*-win-ia32.zip) -d $(WIN_BUILD_DIR) | 
					
						
							|  |  |  | 	cat $(APP_ZIP) >> $(WIN_BUILD_DIR)/nw.exe | 
					
						
							|  |  |  | 	mv $(WIN_BUILD_DIR)/nw.exe $(WIN_BUILD_DIR)/$(APP_NAME).exe | 
					
						
							|  |  |  | 	chmod +x $(WIN_BUILD_DIR)/*.{exe,dll} | 
					
						
							|  |  |  | win32-dist: win32 $(DIST_DIR) | 
					
						
							|  |  |  | 	zip -rj $(WIN_DIST_ZIP) $(WIN_BUILD_DIR) | 
					
						
							| 
									
										
										
										
											2013-06-05 01:38:02 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | #**********************************************************************
 | 
					
						
							| 
									
										
										
										
											2013-06-08 15:57:04 +04:00
										 |  |  | # cleanup...
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | clean-dev: | 
					
						
							|  |  |  | 	rm -rf *.exe *.dll *.pak | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | clean-build: | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | 	rm -rf $(BUILD_DIR) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-08 15:57:04 +04:00
										 |  |  | clean: clean-build | 
					
						
							|  |  |  | 	rm -f $(CSS_FILES) $(JS_MIN_FILES) $(LOGS) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | clean-all: clean clean-dev | 
					
						
							| 
									
										
										
										
											2013-06-08 14:04:58 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-10 07:49:20 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | #**********************************************************************
 |