Makefile 5.3 KB
Newer Older
F
fyrz 已提交
1 2 3 4 5 6
NATIVE_JAVA_CLASSES = org.rocksdb.AbstractComparator\
	org.rocksdb.AbstractSlice\
	org.rocksdb.BackupableDB\
	org.rocksdb.BackupableDBOptions\
	org.rocksdb.BlockBasedTableConfig\
	org.rocksdb.BloomFilter\
F
fyrz 已提交
7
	org.rocksdb.Checkpoint\
F
fyrz 已提交
8
	org.rocksdb.ColumnFamilyHandle\
9
	org.rocksdb.ColumnFamilyOptions\
F
fyrz 已提交
10 11 12 13 14
	org.rocksdb.Comparator\
	org.rocksdb.ComparatorOptions\
	org.rocksdb.DBOptions\
	org.rocksdb.DirectComparator\
	org.rocksdb.DirectSlice\
F
fyrz 已提交
15
	org.rocksdb.FlushOptions\
F
fyrz 已提交
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
	org.rocksdb.Filter\
	org.rocksdb.GenericRateLimiterConfig\
	org.rocksdb.HashLinkedListMemTableConfig\
	org.rocksdb.HashSkipListMemTableConfig\
	org.rocksdb.MergeOperator\
	org.rocksdb.Options\
	org.rocksdb.PlainTableConfig\
	org.rocksdb.ReadOptions\
	org.rocksdb.RestoreBackupableDB\
	org.rocksdb.RestoreOptions\
	org.rocksdb.RocksDB\
	org.rocksdb.RocksEnv\
	org.rocksdb.RocksIterator\
	org.rocksdb.SkipListMemTableConfig\
	org.rocksdb.Slice\
	org.rocksdb.Statistics\
	org.rocksdb.VectorMemTableConfig\
	org.rocksdb.StringAppendOperator\
	org.rocksdb.WriteBatch\
	org.rocksdb.WriteBatch.Handler\
F
fyrz 已提交
36 37
	org.rocksdb.test.WriteBatchInternal\
	org.rocksdb.test.WriteBatchTest\
F
fyrz 已提交
38
        org.rocksdb.WriteOptions\
A
Ankit Gupta 已提交
39

40 41 42
ROCKSDB_MAJOR = $(shell egrep "ROCKSDB_MAJOR.[0-9]" ../include/rocksdb/version.h | cut -d ' ' -f 3)
ROCKSDB_MINOR = $(shell egrep "ROCKSDB_MINOR.[0-9]" ../include/rocksdb/version.h | cut -d ' ' -f 3)
ROCKSDB_PATCH = $(shell egrep "ROCKSDB_PATCH.[0-9]" ../include/rocksdb/version.h | cut -d ' ' -f 3)
43

44
NATIVE_INCLUDE = ./include
45
ARCH := $(shell getconf LONG_BIT)
46
ROCKSDB_JAR = rocksdbjni-$(ROCKSDB_MAJOR).$(ROCKSDB_MINOR).$(ROCKSDB_PATCH)-linux$(ARCH).jar
47
ifeq ($(PLATFORM), OS_MACOSX)
48
ROCKSDB_JAR = rocksdbjni-$(ROCKSDB_MAJOR).$(ROCKSDB_MINOR).$(ROCKSDB_PATCH)-osx.jar
49
endif
50

51 52
JAVA_TESTS = org.rocksdb.test.BackupableDBOptionsTest\
        org.rocksdb.test.BackupableDBTest\
F
fyrz 已提交
53
		org.rocksdb.test.BlockBasedTableConfigTest\
F
fyrz 已提交
54
		org.rocksdb.test.CheckPointTest\
F
fyrz 已提交
55 56 57 58 59 60 61 62
		org.rocksdb.test.ColumnFamilyOptionsTest\
		org.rocksdb.test.ColumnFamilyTest\
		org.rocksdb.test.ComparatorOptionsTest\
		org.rocksdb.test.ComparatorTest\
		org.rocksdb.test.DBOptionsTest\
		org.rocksdb.test.DirectComparatorTest\
		org.rocksdb.test.FilterTest\
		org.rocksdb.test.FlushTest\
F
fyrz 已提交
63
		org.rocksdb.test.InfoLogLevelTest\
F
fyrz 已提交
64 65 66 67 68 69 70 71
		org.rocksdb.test.KeyMayExistTest\
		org.rocksdb.test.MemTableTest\
		org.rocksdb.test.MergeTest\
		org.rocksdb.test.MixedOptionsTest\
		org.rocksdb.test.OptionsTest\
		org.rocksdb.test.PlainTableConfigTest\
		org.rocksdb.test.ReadOnlyTest\
		org.rocksdb.test.ReadOptionsTest\
F
fyrz 已提交
72
		org.rocksdb.test.RocksDBTest\
73
		org.rocksdb.test.RocksEnvTest\
F
fyrz 已提交
74 75 76
		org.rocksdb.test.RocksIteratorTest\
		org.rocksdb.test.SnapshotTest\
		org.rocksdb.test.StatisticsCollectorTest\
F
fyrz 已提交
77
		org.rocksdb.test.WriteBatchHandlerTest\
F
fyrz 已提交
78
		org.rocksdb.test.WriteBatchTest\
F
fyrz 已提交
79
		org.rocksdb.test.WriteOptionsTest\
F
fyrz 已提交
80 81 82 83 84 85 86 87 88

JAVA_TEST_LIBDIR = ./test-libs/
JAVA_JUNIT_JAR = $(JAVA_TEST_LIBDIR)junit-4.12-beta-2.jar
JAVA_HAMCR_JAR = $(JAVA_TEST_LIBDIR)hamcrest-core-1.3.jar
JAVA_MOCKITO_JAR = $(JAVA_TEST_LIBDIR)mockito-all-1.9.5.jar
JAVA_CGLIB_JAR = $(JAVA_TEST_LIBDIR)cglib-2.2.2.jar
JAVA_ASSERTJ_JAR = $(JAVA_TEST_LIBDIR)assertj-core-1.7.0.jar
JAVA_TESTCLASSPATH = $(ROCKSDB_JAR):$(JAVA_JUNIT_JAR):$(JAVA_HAMCR_JAR):$(JAVA_MOCKITO_JAR):$(JAVA_CGLIB_JAR):$(JAVA_ASSERTJ_JAR):.:./*

89 90 91
clean:
	-find . -name "*.class" -exec rm {} \;
	-find . -name "hs*.log" -exec rm {} \;
F
fyrz 已提交
92
	rm -rf include/*
C
Chris Riccomini 已提交
93
	rm -rf javadoc/*
F
fyrz 已提交
94
	rm -rf test-libs/
F
fyrz 已提交
95
	rm -rf target
F
fyrz 已提交
96 97
	rm -f librocksdbjni*
	rm -f rocksdbjni*
F
fyrz 已提交
98

99

100
javadocs:
F
fyrz 已提交
101
	mkdir -p javadoc; javadoc -d javadoc -sourcepath . -subpackages org -exclude org.rocksdb.test
102

F
fyrz 已提交
103 104 105
javalib: java javadocs

java: resolve_test_deps
106
	javac org/rocksdb/util/*.java org/rocksdb/*.java
F
fyrz 已提交
107
	javac -cp $(JAVA_TESTCLASSPATH) org/rocksdb/test/*.java
108 109
	@cp ../HISTORY.md ./HISTORY-CPP.md
	@rm -f ./HISTORY-CPP.md
110 111
	javah -d $(NATIVE_INCLUDE) -jni $(NATIVE_JAVA_CLASSES)

112
sample: java
113
	javac -cp $(ROCKSDB_JAR) RocksDBSample.java
114 115
	@rm -rf /tmp/rocksdbjni
	@rm -rf /tmp/rocksdbjni_not_found
A
Ankit Gupta 已提交
116
	java -ea -Djava.library.path=.:../ -cp ".:./*" -Xcheck:jni RocksDBSample /tmp/rocksdbjni
117 118
	@rm -rf /tmp/rocksdbjni
	@rm -rf /tmp/rocksdbjni_not_found
119

F
fyrz 已提交
120 121 122 123 124 125
column_family_sample: java
	javac -cp $(ROCKSDB_JAR) RocksDBColumnFamilySample.java
	@rm -rf /tmp/rocksdbjni
	java -ea -Djava.library.path=.:../ -cp ".:./*" -Xcheck:jni RocksDBColumnFamilySample /tmp/rocksdbjni
	@rm -rf /tmp/rocksdbjni

F
fyrz 已提交
126 127
resolve_test_deps:
	mkdir -p "$(JAVA_TEST_LIBDIR)"
128 129 130 131 132
	test -s "$(JAVA_JUNIT_JAR)" || curl -k -L -o $(JAVA_JUNIT_JAR) http://search.maven.org/remotecontent?filepath=junit/junit/4.12-beta-2/junit-4.12-beta-2.jar
	test -s "$(JAVA_HAMCR_JAR)" || curl -k -L -o $(JAVA_HAMCR_JAR) http://search.maven.org/remotecontent?filepath=org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
	test -s "$(JAVA_MOCKITO_JAR)" || curl -k -L -o "$(JAVA_MOCKITO_JAR)" http://search.maven.org/remotecontent?filepath=org/mockito/mockito-all/1.9.5/mockito-all-1.9.5.jar
	test -s "$(JAVA_CGLIB_JAR)" || curl -k -L -o "$(JAVA_CGLIB_JAR)" http://search.maven.org/remotecontent?filepath=cglib/cglib/2.2.2/cglib-2.2.2.jar
	test -s "$(JAVA_ASSERTJ_JAR)" || curl -k -L -o "$(JAVA_ASSERTJ_JAR)" http://central.maven.org/maven2/org/assertj/assertj-core/1.7.0/assertj-core-1.7.0.jar
F
fyrz 已提交
133 134

test: java resolve_test_deps
135
	java -ea -Djava.library.path=.:../ -cp "$(JAVA_TESTCLASSPATH)" org.rocksdb.test.RocksJunitRunner $(JAVA_TESTS)
136 137 138

db_bench: java
	javac org/rocksdb/benchmark/*.java