2016-12-23 17:29:19 -06:00
|
|
|
OS=$(shell uname | tr [:upper:] [:lower:])
|
2016-12-23 18:06:27 -06:00
|
|
|
HOST_ENV=${OS}-$(shell uname -m)
|
2016-12-22 13:16:05 -06:00
|
|
|
DEVENV=devenv$(shell pwd | sed 's/\//-/g')
|
2017-04-14 04:08:13 -05:00
|
|
|
DEVENV_IMAGE=nostalgia-devenv
|
2017-05-18 16:39:33 -05:00
|
|
|
ifneq ($(shell which gmake),)
|
|
|
|
MAKE=gmake
|
|
|
|
else
|
|
|
|
MAKE=make
|
|
|
|
endif
|
2017-04-09 03:16:20 -05:00
|
|
|
ifneq ($(shell which docker),)
|
|
|
|
ifeq ($(shell docker inspect --format="{{.State.Status}}" ${DEVENV} 2>&1),running)
|
2017-04-10 17:45:32 -05:00
|
|
|
ENV_RUN=docker exec -i -t --user $(shell id -u ${USER}) ${DEVENV}
|
2017-04-09 03:16:20 -05:00
|
|
|
endif
|
2016-12-22 20:28:48 -06:00
|
|
|
endif
|
2016-12-18 15:54:13 -06:00
|
|
|
|
2016-03-26 15:49:05 -05:00
|
|
|
make:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build HOST_ENV=${HOST_ENV}
|
2017-04-18 17:49:35 -05:00
|
|
|
build_rom:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build ARGS="install" HOST_ENV=${HOST_ENV}
|
|
|
|
${ENV_RUN} ${MAKE} -j -C build HOST_ENV=${HOST_ENV}
|
2017-05-16 01:35:32 -05:00
|
|
|
${ENV_RUN} ./scripts/build_rom.sh
|
2016-03-26 15:49:05 -05:00
|
|
|
preinstall:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build ARGS="preinstall" HOST_ENV=${HOST_ENV}
|
2016-03-26 15:49:05 -05:00
|
|
|
install:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build ARGS="install" HOST_ENV=${HOST_ENV}
|
2016-03-26 15:49:05 -05:00
|
|
|
clean:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build ARGS="clean" HOST_ENV=${HOST_ENV}
|
2016-12-23 17:29:19 -06:00
|
|
|
purge:
|
2017-05-16 01:35:32 -05:00
|
|
|
${ENV_RUN} rm -rf $$(find build -mindepth 1 -maxdepth 1 -type d) dist
|
2016-03-26 15:49:05 -05:00
|
|
|
test:
|
2017-05-18 16:39:33 -05:00
|
|
|
${ENV_RUN} ${MAKE} -j -C build ARGS="test" HOST_ENV=${HOST_ENV}
|
2016-12-23 18:06:27 -06:00
|
|
|
|
2017-05-16 13:53:57 -05:00
|
|
|
run: install
|
|
|
|
./dist/current/bin/nostalgia -debug
|
|
|
|
run-studio: install
|
|
|
|
./dist/current/bin/nostalgia-studio -profile dist/current/share/nostalgia-studio.json
|
2017-04-04 19:21:29 -05:00
|
|
|
gba-run: make
|
|
|
|
${ENV_RUN} mgba-qt build/current/src/player/nostalgia.bin
|
2016-12-23 17:29:19 -06:00
|
|
|
gdb: make
|
2016-03-26 15:49:05 -05:00
|
|
|
gdb ./build/current/src/wombat/wombat
|
2016-12-23 18:06:27 -06:00
|
|
|
|
2017-04-14 04:08:13 -05:00
|
|
|
devenv-build:
|
2017-04-21 06:12:17 -05:00
|
|
|
docker build . -t ${DEVENV_IMAGE}
|
2016-12-18 15:54:13 -06:00
|
|
|
devenv:
|
2017-04-18 17:49:35 -05:00
|
|
|
docker run -d \
|
2016-12-22 20:28:48 -06:00
|
|
|
-e LOCAL_USER_ID=$(shell id -u ${USER}) \
|
2017-04-04 19:21:29 -05:00
|
|
|
-e DISPLAY=$(DISPLAY) \
|
|
|
|
-e QT_AUTO_SCREEN_SCALE_FACTOR=1 \
|
|
|
|
-v /tmp/.X11-unix:/tmp/.X11-unix \
|
|
|
|
-v /run/dbus/:/run/dbus/ \
|
2017-04-18 17:49:35 -05:00
|
|
|
-v $(shell pwd):/usr/src/project \
|
2017-04-04 19:21:29 -05:00
|
|
|
-v /dev/shm:/dev/shm \
|
|
|
|
--restart=always \
|
|
|
|
--name ${DEVENV} \
|
2016-12-24 00:41:57 -06:00
|
|
|
-t ${DEVENV_IMAGE} bash
|
2016-12-18 15:54:13 -06:00
|
|
|
devenv-destroy:
|
|
|
|
docker rm -f ${DEVENV}
|
2016-03-26 15:49:05 -05:00
|
|
|
|
2017-04-10 17:45:32 -05:00
|
|
|
shell:
|
|
|
|
${ENV_RUN} bash
|
|
|
|
|
2016-12-23 17:29:19 -06:00
|
|
|
release:
|
2016-12-23 18:06:27 -06:00
|
|
|
${ENV_RUN} rm -rf build/${HOST_ENV}-release
|
2017-05-16 00:17:22 -05:00
|
|
|
${ENV_RUN} ./scripts/setup_build ${HOST_ENV} release
|
2016-12-23 17:29:19 -06:00
|
|
|
${ENV_RUN} rm -f build/current
|
2016-03-26 15:49:05 -05:00
|
|
|
|
2016-12-23 17:29:19 -06:00
|
|
|
debug:
|
2016-12-23 18:06:27 -06:00
|
|
|
${ENV_RUN} rm -rf build/${HOST_ENV}-debug
|
|
|
|
${ENV_RUN} ./scripts/setup_build ${HOST_ENV} debug
|
2016-12-23 17:29:19 -06:00
|
|
|
${ENV_RUN} rm -f build/current
|
|
|
|
|
|
|
|
windows:
|
|
|
|
${ENV_RUN} rm -rf build/windows
|
|
|
|
${ENV_RUN} ./scripts/setup_build windows
|
|
|
|
${ENV_RUN} rm -f build/current
|
|
|
|
|
|
|
|
windows-debug:
|
|
|
|
${ENV_RUN} rm -rf build/windows
|
|
|
|
${ENV_RUN} ./scripts/setup_build windows debug
|
|
|
|
${ENV_RUN} rm -f build/current
|
2016-03-26 15:49:05 -05:00
|
|
|
|
|
|
|
gba:
|
2016-12-23 17:29:19 -06:00
|
|
|
${ENV_RUN} rm -rf build/gba-release
|
2017-05-16 01:35:32 -05:00
|
|
|
${ENV_RUN} ./scripts/setup_build gba release
|
2016-12-23 17:29:19 -06:00
|
|
|
${ENV_RUN} rm -f build/current
|
2016-12-24 13:06:44 -06:00
|
|
|
|
|
|
|
gba-debug:
|
|
|
|
${ENV_RUN} rm -rf build/gba-debug
|
|
|
|
${ENV_RUN} ./scripts/setup_build gba debug
|
|
|
|
${ENV_RUN} rm -f build/current
|