Files
Kaila_Btw fd49f71b00 Grawlingson: CORE Update entire compile process using !30 clean up CLI work
* Adds patcher and core openrsc client the IdleRSC project

 * app = idlersc app files
 * client = openrsc client
 * patcher = idlersc patcher

"* Fix CLI due to input causing the program to crash on startup.
* Fix transitive dependency spitting out an error on [startup](https://www.slf4j.org/codes.html#StaticLoggerBinder).
* Fix `.editorconfig` causing IDE formatting to clash with spotless' preferred formatting.
* Fix typo in debugger button. (This isn't 100% fixed, I'll investigate later.)
* Fix infinite looping bug when the cache creation window is exited.
* Add more documentation.
* Add `patcher` and `client` subprojects.
* Add `run` task to gradle for development/debugging purposes. This can be invoked via IDE or command line using the gradle wrapper. Bonus - args can be passed via the gradle --args option. For example, `./gradlew run --args='--auto-login --username username --password password --init-cache coleslaw'`
* Move main project to `app` subproject due to shared dependencies.
* ~~Bump JDK required to 11.~~ Keeping minimum required JDK at 8.
* Add convenience scripts to update code shared from `core` repository.
* Played musical chairs with level 3 chickens. Spoiler: I lost, every time."
2024-01-03 21:45:51 -05:00

58 lines
1.4 KiB
Makefile

# Terminal Colours
RED?=$(shell tput setaf 1)
GREEN?=$(shell tput setaf 2)
YELLOW?=$(shell tput setaf 3)
BLUE?=$(shell tput setaf 4)
BOLD?=$(shell tput bold)
RST?=$(shell tput sgr0)
##@ Build
.PHONY: build
build: ## Build the project
@./gradlew build
.PHONY: release
release: ## Create a release archive
@./gradlew release
.PHONY: clean
clean: ## Clean everything up
@./gradlew clean
##@ Maintenance
.PHONY: check-cache
check-cache: ## Check cache contents and update if necessary
@scripts/check-cache.sh
.PHONY: check-client
check-client: ## Check client contents and update if necessary
@scripts/check-client.sh
.PHONY: update-core
update-core: ## Update core repository
@scripts/get-core-repository.sh
##@ Utility/CI
.DEFAULT_GOAL = help
.PHONY: run
run: ## Compile & run the project
@./gradlew run
.PHONY: build-javadoc
build-javadoc: ## Build API documentation
@./gradlew app:javadoc
@cp -r app/build/docs/javadoc public
.PHONY: check-format
check-format: ## Check if source code is properly formatted
@./gradlew spotlessCheck
.PHONY: format
format: ## Format source code
@./gradlew spotlessApply
.PHONY: help
help: ## Display this help
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n $(YELLOW)make$(RST) $(BLUE)command$(RST)\n"} /^[a-zA-Z0-9_-]+:.*?##/ { printf " $(BLUE)%-15s$(RST) %s\n", $$1, $$2 } /^##@/ { printf "\n$(BOLD)%s$(RST)\n", substr($$0, 5) } ' $(MAKEFILE_LIST)