Packages
rocksdb
3.0.0
3.1.1
3.1.0
3.0.0
2.6.2
2.6.1
retired
2.6.0
retired
2.5.0
2.4.1
2.4.0
2.3.0
2.2.0
2.1.0
2.0.0
1.9.0
1.8.0
1.7.0
1.6.0
1.5.1
1.5.0
1.4.0
1.3.2
1.3.1
1.3.0
1.2.0
1.1.1
1.1.0
1.0.0
0.26.2
0.26.1
0.26.0
0.25.0
0.24.0
0.23.3
0.23.2
0.23.1
0.23.0
0.22.0
0.21.0
0.20.1
0.20.0
0.19.0
0.18.0
0.17.0
0.16.0
0.15.0
0.14.0
0.13.1
0.13.0
0.12.0
0.11.0
0.10.0
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.1
0.7.0
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
RocksDB for Erlang
Current section
Files
Jump to
Current section
Files
deps/Makefile
# Barrel dependecy Makefile
UNAME_SYS := $(shell sh -c 'uname -s 2>/dev/null || echo not')
ifeq ($(UNAME_SYS), Darwin)
CC ?= cc
CFLAGS ?= -O2 -std=c99 -Wall -Wmissing-prototypes
CXXFLAGS ?= -O2
#LDFLAGS ?= -arch x86_64 -flat_namespace -undefined suppress
else ifeq ($(UNAME_SYS), FreeBSD)
CC = clang
CXX = clang++
CFLAGS ?= -O2 -D_GCLIBCXX_USE_C99
CXXFLAGS ?= -O2 -std=c++11 -stdlib=libc++ -D_GCLIBCXX_USE_C99
else ifeq ($(UNAME_SYS), OpenBSD)
CC = egcc
CXX = eg++
CFLAGS ?= -O2 -std=c99 -finline-functions -Wall -Wmissing-prototypes
CFLAGS += -D_GCLIBCXX_USE_C99
CXXFLAGS ?= -O2
CXXFLAGS += -std=c++11 -pthread -finline-functions -D_GCLIBCXX_USE_C99
else ifeq ($(UNAME_SYS), DragonFly)
CC = c++48
CXX = c++48
CFLAGS ?= -O2 -std=c99 -finline-functions -Wall -Wmissing-prototypes
CFLAGS += -D_GCLIBCXX_USE_C99
CXXFLAGS ?= -O2 -finline-functions
CXXFLAGS += -D_GCLIBCXX_USE_C99
else ifeq ($(UNAME_SYS), NetBSD)
CC = c++48
CXX = c++48
CFLAGS ?= -O2 -std=c99 -finline-functions -Wall -Wmissing-prototypes
CFLAGS += -D_GCLIBCXX_USE_C99
CXXFLAGS ?= -O2 -finline-functions
CXXFLAGS += -D_GCLIBCXX_USE_C99
else ifeq ($(UNAME_SYS), SunOS)
ifeq ($(shell uname -v | sed 's/_.*$$//'), joyent)
CC = gcc
CXX = g++
else
CC = c++48
CXX = c++48
endif
CFLAGS ?= -O2 -std=c99 -finline-functions -Wall -Wmissing-prototypes
CFLAGS += -D_GCLIBCXX_USE_C99
CXXFLAGS ?= -O2 -finline-functions
CXXFLAGS += -D_GCLIBCXX_USE_C99
else ifeq ($(UNAME_SYS), Linux)
CC ?= gcc
CFLAGS ?= -O2 -std=c99 -finline-functions -Wall -Wmissing-prototypes
CXXFLAGS ?= -O2 -finline-functions
endif
SNAPPYLIB=$(CURDIR)/snappy/build/libsnappy.a
LZ4LIB=$(CURDIR)/lz4/lib/liblz4.a
ZSTDLIB=$(CURDIR)/zstd/lib/libzstd.a
RDBLIB=$(CURDIR)/rocksdb/librocksdb.a
RDB_CXXFLAGS="$(CXXFLAGS) -DNDEBUG -DSNAPPY -DLZ4 -DZSTD -I$(CURDIR)/snappy/build -I$(CURDIR)/snappy -I$(CURDIR)/lz4/lib -I$(CURDIR)/zstd/lib -fPIC"
RDB_CFLAGS="$(CFLAGS) -DNDEBUG -I$(CURDIR)/snappy/build -I$(CURDIR)/snappy -I$(CURDIR)/lz4/lib -I$(CURDIR)/zstd/lib"
RDB_LDFLAGS="$(SNAPPYLIB) $(LZ4LIB) $(ZSTDLIB) $(LDFLAGS) -L$(CURDIR)/snappy/build -L$(CURDIR)/lz4/lib -L$(CURDIR)/zstd/lib"
ifeq ($(UNAME_SYS),OpenBSD)
RDB_CXXFLAGS="$(RDB_CXXFLAGS) -DOS_OPENBSD"
RDB_CFLAGS="$(RDB_CFLAGS) -DOS_OPENBSD"
RDB_LDFLAGS="$(LDFLAGS) -lstdc++"
RDB_CPPFLAGS="-DOS_OPENBSD"
endif
default:
@echo "Explicit target required"
.PHONY: default
distclean:
@-(cd rocksdb && $(MAKE) clean) > /dev/null || true
@-(cd snappy && rm -rf build) > /dev/null || true
@-(cd lz4 && $(MAKE) clean) > /dev/null || true
@-(cd zstd && $(MAKE) clean) > /dev/null || true
.PHONY: distclean
$(SNAPPYLIB):
@mkdir -p snappy/build
@cd snappy/build && \
cmake ../ -DCMAKE_POSITION_INDEPENDENT_CODE=ON && $(MAKE)
.PHONY: snappy
$(LZ4LIB):
@cd lz4 && $(MAKE) CFLAGS="-O2 -fPIC" CXX="$(CXX)"
.PHONY: lz4
$(ZSTDLIB):
@cd zstd && $(MAKE) CFLAGS="-O2 -fPIC" CXX="$(CXX)" lib-mt
.PHONY: zstd
rocksdb: $(RDBLIB)
$(RDBLIB): $(SNAPPYLIB) $(LZ4LIB) $(ZSTDLIB)
@cd rocksdb && \
CXX=$(CXX) CC=$(CC) $(MAKE) static_lib EXTRA_CXXFLAGS=$(RDB_CXXFLAGS) EXTRA_LDFLAGS=$(RDB_LDFLAGS) USE_RTTI=1 DISABLE_JEMALLOC=1 DEBUG_LEVEL=0 PORTABLE=1
.PHONY: rocksdb