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

71 lines
1.8 KiB
Makefile

# 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/>.
5 years ago
.PHONY: clean install interactive cypress
assets := assets/game/acf/
docker:
sudo docker build --network=host . -t farm
dev:
npx webpack --config webpack.dev.js --env.assets ./$(assets)
rundev:
webpack-dev-server --open --config webpack.dev.js --env.assets ./$(assets)
# make interactive
rundevserver:
make interactive
prod: src/server/farm
npx webpack --config webpack.prod.js --env.assets ./$(assets)
prodfe:
npx webpack --config webpack.prod.js --env.assets ./$(assets)
install:
npm init -y
npm install
interactive:
csi -include-path $(assets) -include-path src/server -s src/server/farm.scm
interactiveserver:
cd dist ; csi -include-path $(assets) -include-path ../src/server -s farm.scm
src/server/farm: src/server/farm.scm src/server/db.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
5 years ago
cypress:
npm run cypress:open
clean:
rm -f *~ res/js/app.js