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

118 lines
3.1 KiB

  1. jnidir = $(libdir)/jni
  2. libcaca_javadir = $(datadir)/java
  3. java_jar = libjava.jar
  4. if USE_JAVA
  5. jni_LTLIBRARIES = libcaca-java.la
  6. libcaca_java_DATA = $(java_jar)
  7. noinst_DATA = examples/Driver.class examples/TrueColor.class
  8. endif
  9. java_src = $(wildcard $(srcdir)/org/zoy/caca/*.java)
  10. java_jni_headers = \
  11. org_zoy_caca_Attribute.h \
  12. org_zoy_caca_Caca.h \
  13. org_zoy_caca_Canvas.h \
  14. org_zoy_caca_Display.h \
  15. org_zoy_caca_Dither.h \
  16. org_zoy_caca_Event.h \
  17. org_zoy_caca_Font.h
  18. java_jni_src = \
  19. org_zoy_caca_Attribute.c \
  20. org_zoy_caca_Caca.c \
  21. org_zoy_caca_Canvas.c \
  22. org_zoy_caca_Display.c \
  23. org_zoy_caca_Dither.c \
  24. org_zoy_caca_Event.c \
  25. org_zoy_caca_Font.c
  26. java_jni_classes = \
  27. org/zoy/caca/Attribute.class \
  28. org/zoy/caca/Caca.class \
  29. org/zoy/caca/Canvas.class \
  30. org/zoy/caca/Display.class \
  31. org/zoy/caca/Dither.class \
  32. org/zoy/caca/Event.class \
  33. org/zoy/caca/Font.class
  34. java_jni_java = \
  35. org/zoy/caca/CacaException.java \
  36. org/zoy/caca/Caca.java \
  37. org/zoy/caca/NativeObject.java \
  38. org/zoy/caca/Dither.java \
  39. org/zoy/caca/Canvas.java \
  40. org/zoy/caca/CacaObject.java \
  41. org/zoy/caca/Font.java \
  42. org/zoy/caca/Attribute.java \
  43. org/zoy/caca/Color.java \
  44. org/zoy/caca/Event.java \
  45. org/zoy/caca/TimeoutException.java \
  46. org/zoy/caca/Display.java
  47. JAVAH_FLAGS = -d . -classpath .
  48. $(java_jni_classes): $(java_src)
  49. $(JAVAC) -d . $(java_src)
  50. $(JAR) -cf $(java_jar) org
  51. # Javah does not update the file if it detects that there is nothing to do,
  52. # hence the `touch` so that javah is not run at every `make`.
  53. org_zoy_caca_Attribute.h: org/zoy/caca/Attribute.class
  54. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Attribute
  55. @touch org_zoy_caca_Attribute.h
  56. org_zoy_caca_Caca.h: org/zoy/caca/Caca.class
  57. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Caca
  58. @touch org_zoy_caca_Caca.h
  59. org_zoy_caca_Canvas.h: org/zoy/caca/Canvas.class
  60. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Canvas
  61. @touch org_zoy_caca_Canvas.h
  62. org_zoy_caca_Display.h: org/zoy/caca/Display.class
  63. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Display
  64. @touch org_zoy_caca_Display.h
  65. org_zoy_caca_Dither.h: org/zoy/caca/Dither.class
  66. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Dither
  67. @touch org_zoy_caca_Dither.h
  68. org_zoy_caca_Event.h: org/zoy/caca/Event.class
  69. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Event
  70. @touch org_zoy_caca_Event.h
  71. org_zoy_caca_Font.h: org/zoy/caca/Font.class
  72. $(JAVAH) $(JAVAH_FLAGS) org.zoy.caca.Font
  73. @touch org_zoy_caca_Font.h
  74. CLEANFILES = $(noinst_DATA) $(java_jar) \
  75. org/zoy/caca/*.class org_zoy_caca_[A-Z]*.h
  76. EXTRA_DIST = README $(java_jni_java) \
  77. examples/Driver.java examples/TrueColor.java
  78. if USE_JAVA
  79. BUILT_SOURCES = $(java_jni_headers) $(java_jni_classes)
  80. endif
  81. libcaca_java_la_CPPFLAGS = $(JAVA_CFLAGS)
  82. libcaca_java_la_SOURCES = \
  83. caca_java_common.h \
  84. caca_java_common.c \
  85. $(java_jni_src)
  86. #nodist_libcaca_java_la_SOURCES = \
  87. # $(java_jni_headers)
  88. libcaca_java_la_LDFLAGS = -shared $(JAVA_LIBS)
  89. libcaca_java_la_LIBADD = ../caca/libcaca.la
  90. examples/Driver.class: examples/Driver.java
  91. $(JAVAC) $^
  92. examples/TrueColor.class: examples/TrueColor.java
  93. $(JAVAC) $^