1ACLOCAL_AMFLAGS = -I m4
2AM_CPPFLAGS = $(JNI_INCLUDES) -I$(top_srcdir) -I$(top_builddir)
3
4JAVA_FILES = src/main/java/org/opennms/protocols/icmp/AddressMaskReply.java \
5	src/main/java/org/opennms/protocols/icmp/AddressMaskRequest.java \
6	src/main/java/org/opennms/protocols/icmp/ErrorMessage.java \
7	src/main/java/org/opennms/protocols/icmp/ICMPEchoPacket.java \
8	src/main/java/org/opennms/protocols/icmp/ICMPHeader.java \
9	src/main/java/org/opennms/protocols/icmp/IcmpSocket.java \
10	src/main/java/org/opennms/protocols/icmp/TimestampReply.java \
11	src/main/java/org/opennms/protocols/icmp/TimestampRequest.java \
12	src/main/java/org/opennms/protocols/ip/IPHeader.java \
13	src/main/java/org/opennms/protocols/ip/IPv4Address.java \
14	src/main/java/org/opennms/protocols/ip/OC16ChecksumProducer.java \
15	src/main/java/org/opennms/protocols/ip/UnknownIPVersionException.java
16
17classdir=classes
18VPATH += $(classdir)
19
20JICMP_SOURCES = byteswap.h IcmpSocket.h IcmpSocket.c
21JICMP_LDFLAGS = -module -avoid-version -no-undefined $(JAVA_SHREXT_COMMAND)
22
23if WIN32
24lib_LTLIBRARIES = jicmp.la
25jicmp_la_SOURCES = $(JICMP_SOURCES)
26jicmp_la_LDFLAGS = $(JICMP_LDFLAGS)
27jicmp_la_LIBADD = -lws2_32
28else
29lib_LTLIBRARIES = libjicmp.la
30libjicmp_la_SOURCES = $(JICMP_SOURCES)
31libjicmp_la_LDFLAGS = $(JICMP_LDFLAGS)
32endif
33
34TESTS_ENVIRONMENT = $(LIBTOOL) --mode=execute -dlopen $(top_builddir)/libjicmp.la
35TESTS = tests.sh
36MAINTAINERCLEANFILES = aclocal.m4 config.guess config.sub configure depcomp install-sh ltmain.sh Makefile.in missing config.h.in *~ *.tar.gz
37CLEANFILES = org_*.h jicmp.jar
38
39.PHONY: clean-local
40
41clean-local:
42	-rm -rf $(classdir) target java.built *.tar.gz
43
44java-classes: java.built
45
46java.built: $(JAVA_FILES)
47	-mkdir -p $(classdir)
48	$(JAVAC) $(JAVACFLAGS) -source 1.5 -target 1.5 -d $(classdir) $(JAVA_FILES) && touch java.built
49
50IcmpSocket.c: org_opennms_protocols_icmp_IcmpSocket.h
51
52org_opennms_protocols_icmp_IcmpSocket.h: java.built
53	$(JAVAH) -classpath $(classdir) org.opennms.protocols.icmp.IcmpSocket
54
55jicmp.jar: java.built
56	cd $(classdir) && \
57	$(JAR) cvf ../$@ *
58
59jardir=$(datadir)/java
60jar_DATA = jicmp.jar
61
62deploy:
63	mvn deploy:deploy-file
64
65.PHONY: deploy rpm
66
67EXTRA_DIST = ChangeLog $(JAVA_FILES) \
68	tests.sh \
69	tests/*.java \
70	m4/* \
71	debian/changelog \
72	debian/compat \
73	debian/control \
74	debian/copyright \
75	debian/dirs \
76	debian/getjava \
77	debian/rules \
78	solaris/README \
79	solaris/pkginfo* \
80	solaris/Makefile \
81	solaris/prototype.* \
82	win32/*.txt \
83	win32/*.h \
84	win32/*.cpp \
85	win32/jicmp.rc \
86	win32/jicmp.sln \
87	win32/jicmp.vcxproj* \
88	win32/*.vdproj \
89	win32/ReadMe.txt
90
91if MAKE_RPMS
92rpm: @RPM_TARGET@
93
94print_rpm: @RPM_TARGET@
95	@echo $(RPM_TARGET)
96
97EXTRA_DIST += jicmp.spec
98
99$(RPM_TARGET): $(DISTFILES)
100	${MAKE} dist
101	-mkdir -p $(RPM_DIR)/SRPMS
102	-mkdir -p `dirname $(RPM_TARGET)`
103	$(RPMBUILD_PROG) --define 'version $(VERSION)' --define 'rel $(RELEASE)' $(RPM_ARGS) $(RPM_TARBALL)
104	@echo "$(RPM_TARGET) created"
105endif
106