# # Makefile for a Java project with native methods. # SHELL = /bin/sh VPATH = @srcdir@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = .. PACKAGE = @PACKAGE@ VERSION = @VERSION@ distdir = $(top_srcdir)/$(PACKAGE)-$(VERSION) prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ sbindir = @sbindir@ libexecdir = @libexecdir@ datarootdir = @datarootdir@ datadir = @datadir@ sysconfdir = @sysconfdir@ sharedstatedir = @sharedstatedir@ localstatedir = @localstatedir@ libdir = @libdir@ infodir = @infodir@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include configdir = ${sysconfdir}/sane.d V_MAJOR = @V_MAJOR@ V_MINOR = @V_MINOR@ DLL_PRELOAD = @DLL_PRELOAD@ MKDIR = $(top_srcdir)/mkinstalldirs INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ RANLIB = @RANLIB@ JAVAC=javac JAVAH=javah -jni CC = @CC@ # We'll need something in 'configure' for the Java includes. INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include \ -I${JDK_HOME}/include -I${JDK_HOME}/include/genunix CPPFLAGS = @CPPFLAGS@ CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ DEFS = @DEFS@ LIBTOOL = ../libtool MCOMP = --mode=compile MLINK = --mode=link MINST = --mode=install COMPILE = $(CC) -c $(CFLAGS) $(DEFS) $(INCLUDES) $(CPPFLAGS) DISTCLEAN_FILES = @DISTCLEAN_FILES@ @SET_MAKE@ LIBSANE = -L`pwd`/../backend/libs -lsane # Classes to compile. CLASSES = SaneDevice.class SaneOption.class SaneRange.class Sane.class \ SaneParameters.class ScanIt.class ImageCanvas.class \ ImageCanvasClient.class DISTFILES = ImageCanvas.java ImageCanvasClient.java Jscanimage.java \ Makefile.in README.JAVA Sane.c Sane.java SaneDevice.java \ SaneOption.java SaneParameters.java SaneRange.java ScanIt.java \ Test.java .PHONY: all clean dist distclean install uninstall .SUFFIXES: .c .o .h .la .lo .java .class .java.class: $(JAVAC) $< .class.h: $(JAVAH) $* %.lo: %.c @$(LIBTOOL) $(MCOMP) $(COMPILE) $< # Don't delete any intermediate files. .PRECIOUS: %.h %.lo all: libsanej.la $(CLASSES) Test.class Jscanimage.class libsanej.la: Sane.lo @$(LIBTOOL) $(MLINK) $(CC) -o $@ $(LDFLAGS) $^ \ -rpath $(libdir) -version-info \ $(V_MAJOR):$(V_MINOR):0 $(LIBSANE) Sane.lo: Sane.h clean: rm -f *.class *.lo *.o *.la *.so rm -f Sane.h rm -rf .libs distclean: clean rm -f $(DISTCLEAN_FILES) # Install library. Don't know where to install .class files yet. install: $(MKDIR) $(libdir) $(configdir) $(LIBTOOL) $(MINST) $(INSTALL_PROGRAM) libsanej.la \ $(libdir)/libsanej.la || exit 1; @$(LIBTOOL) $(MINST) --finish $(libdir) # fixme uninstall: dist: $(DISTFILES) for file in $(DISTFILES); do \ ln $$file $(distdir)/japi 2> /dev/null \ || cp -p $$file $(distdir)/japi ; \ done