aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: d3b753fbe5a3f7e29f624942653a15880d573a89 (plain)
  1. DOCUMENTS = report
  2. JAVA_PROJECTMODULES = \
  3. com.example.portfolio2 com.example.portfolio3 dk.biks.bachelorizer
  4. JAVA_MODULEPATHS_portfolio2 = /usr/share/java/sqlite-jdbc.jar
  5. JAVA_ROOT_portfolio2 = src/com.example.portfolio2
  6. JAVA_EXTRACLASSES_portfolio2 = MyDB
  7. JAVA_ROOT_portfolio3 = src/com.example.portfolio3
  8. JAVA_EXTRACLASSES_portfolio3 = AbstractGraph AdjListGraph AdjMapGraph \
  9. Edge EdgeGraph GraphAlgorithms Graph Graphs MatrixGraph Vertex
  10. JAVA_MODULEPATHS_bachelorizer = \
  11. /usr/share/openjfx/lib /usr/share/java/sqlite-jdbc.jar
  12. JAVA_ROOT_bachelorizer = src/dk.biks.bachelorizer
  13. JAVA_MAINCLASSES_bachelorizer = Main Graph Window
  14. JAVA_EXTRACLASSES_bachelorizer = \
  15. Controller Database GUI Person Storage UI
  16. JAVA_MODULES_bachelorizer = $(addprefix javafx.,base controls graphics)
  17. ZIPNAME = bachelorizer
  18. ZIPFILES += $(STEMS:=.java)
  19. include _make/*.mk
  20. # silence security restriction warning
  21. JAVAFLAGS += --enable-native-access=javafx.graphics \
  22. --enable-native-access=sqlite.jdbc
  23. # silence unsafe memory-access methods warning on recent JDKs
  24. # @see <https://stackoverflow.com/a/79526038/18619283>
  25. ifeq ($(shell expr $(JAVA_MAJOR_VERSION) \>= 23), 1)
  26. JAVAFLAGS += --sun-misc-unsafe-memory-access=allow
  27. endif
  28. # loading as modules works with JDK 22+, and is required with JDK 23+
  29. ifeq ($(shell expr $(JAVA_MAJOR_VERSION) \>= 22), 1)
  30. JAVA_MODULEPATHS_bachelorizer += \
  31. mods/com.example.portfolio2 mods/com.example.portfolio3
  32. else
  33. JAVA_CLASSPATHS_bachelorizer += \
  34. mods/com.example.portfolio2 mods/com.example.portfolio3
  35. endif
  36. # TODO: fix properly declare and resolve local interdependencies
  37. runsrc-dk.biks.bachelorizer build-dk.biks.bachelorizer: \
  38. build-com.example.portfolio2 build-com.example.portfolio3