|  |  |  | # Copyright 2020 Thomas Hintz
 | 
					
						
							|  |  |  | #
 | 
					
						
							|  |  |  | # This file is part of the Alpha Centauri Farming project.
 | 
					
						
							|  |  |  | #
 | 
					
						
							|  |  |  | # The Alpha Centauri Farming project is free software: you can
 | 
					
						
							|  |  |  | # redistribute it and/or modify it under the terms of the GNU
 | 
					
						
							|  |  |  | # General Public License as published by the Free Software
 | 
					
						
							|  |  |  | # Foundation, either version 3 of the License, or (at your option)
 | 
					
						
							|  |  |  | # any later version.
 | 
					
						
							|  |  |  | #
 | 
					
						
							|  |  |  | # The Alpha Centauri Farming project is distributed in the hope that
 | 
					
						
							|  |  |  | # it will be useful, but WITHOUT ANY WARRANTY; without even the
 | 
					
						
							|  |  |  | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 | 
					
						
							|  |  |  | # PURPOSE.  See the GNU General Public License for more details.
 | 
					
						
							|  |  |  | #
 | 
					
						
							|  |  |  | # You should have received a copy of the GNU General Public License
 | 
					
						
							|  |  |  | # along with the Alpha Centauri Farming project.  If not, see
 | 
					
						
							|  |  |  | # <https://www.gnu.org/licenses/>.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PHONY: clean install interactive | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | assets := assets/game/acf/ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dev: | 
					
						
							|  |  |  | 	npx webpack --config webpack.dev.js --env.assets ./$(assets) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | rundev: | 
					
						
							|  |  |  | 	make interactive | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | prod: src/server/farm | 
					
						
							|  |  |  | 	npx webpack --config webpack.prod.js --env.assets ./$(assets) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | install: | 
					
						
							|  |  |  | 	npm init -y | 
					
						
							|  |  |  | 	npm install | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | interactive: | 
					
						
							|  |  |  | 	cd dist/ && csi -include-path $(assets) -include-path ../src/server -s farm.scm | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | src/server/farm: src/server/farm.scm | 
					
						
							|  |  |  | 	cd src/server/ && csc -include-path ../../$(assets) -O3 farm.scm | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | farm: | 
					
						
							|  |  |  | 	make src/server/farm | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | runprod: | 
					
						
							|  |  |  | 	cd dist/ && chmod +x farm && ./farm -:a50 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | upload: | 
					
						
							|  |  |  | 	rsync -rtvz dist/ $(SERVER):~/farm | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | clean: | 
					
						
							|  |  |  | 	rm -f *~ res/js/app.js | 
					
						
							|  |  |  | 
 |