BrinkerVII

LWJGL GNU Makefile

Jun 26th, 2018
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 0.99 KB | None | 0 0
  1. # User configuration
  2. MAVEN=mvn
  3. PACKAGE_COMMAND=$(MAVEN) package
  4. OUTPUT_DIR=./dist
  5.  
  6. # Derived params
  7. XMLNS=http://maven.apache.org/POM/4.0.0
  8. ARTIFACT_ID=$(shell xml sel -N my=$(XMLNS) -t -m my:project -v my:artifactId pom.xml)
  9. VERSION=$(shell xml sel -N my=$(XMLNS) -t -m my:project -v my:version pom.xml)
  10. DEPJAR=target/$(ARTIFACT_ID)-$(VERSION)-jar-with-dependencies.jar
  11.  
  12. linux: prepare
  13.     $(PACKAGE_COMMAND) -P lwjgl-natives-linux
  14.     cp -f $(DEPJAR) $(OUTPUT_DIR)/$(ARTIFACT_ID)-$(VERSION)-linux.jar
  15.  
  16. windows: prepare
  17.     $(PACKAGE_COMMAND) -P lwjgl-natives-windows
  18.     cp -f $(DEPJAR) $(OUTPUT_DIR)/$(ARTIFACT_ID)-$(VERSION)-windows.jar
  19.  
  20. macos: prepare
  21.     $(PACKAGE_COMMAND) -P lwjgl-natives-macos
  22.     cp -f $(DEPJAR) $(OUTPUT_DIR)/$(ARTIFACT_ID)-$(VERSION)-macos.jar
  23.  
  24. clean:
  25.     $(shell rm -r ./target)
  26.     $(shell rm -r $(OUTPUT_DIR))
  27.  
  28. all: clean linux windows macos
  29.  
  30. .PHONY: clean prepare
  31.  
  32. prepare:
  33.     # Fails if XMLstarlet isn't installed
  34.     xml --help
  35.     rm $(DEPJAR) || :
  36.     mkdir -p $(OUTPUT_DIR) || :
Advertisement
Add Comment
Please, Sign In to add comment