blob: ff8a9b02bd25e01a22bf5156bae2942acba973f2 [file] [log] [blame]
Marc Kupietz28cc53e2017-12-23 17:24:55 +01001PLATFORM_CCFLAGS= -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DOS_LINUX -fno-builtin-memcmp -DROCKSDB_FALLOCATE_PRESENT -DSNAPPY -DGFLAGS=1 -DZLIB -DBZIP2 -DLZ4 -DZSTD -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PTHREAD_ADAPTIVE_MUTEX -DROCKSDB_BACKTRACE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -march=native -DROCKSDB_SUPPORT_THREAD_LOCAL
2PLATFORM_CXXFLAGS=-std=c++11 -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DOS_LINUX -fno-builtin-memcmp -DROCKSDB_FALLOCATE_PRESENT -DSNAPPY -DGFLAGS=1 -DZLIB -DBZIP2 -DLZ4 -DZSTD -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PTHREAD_ADAPTIVE_MUTEX -DROCKSDB_BACKTRACE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -march=native -DROCKSDB_SUPPORT_THREAD_LOCAL
3PLATFORM=OS_LINUX
Marc Kupietzd1659762018-06-05 11:22:12 +02004PLATFORM_LDFLAGS= -L/usr/local/lib -lpthread -lrt -lsnappy -lz -lbz2 -llz4 -lzstd
Marc Kupietz28cc53e2017-12-23 17:24:55 +01005
Marc Kupietzc8ddf452018-01-07 21:33:12 +01006CXXFLAGS = -Wall -Wno-reorder -I/usr/local/include -g -std=c++11 -Ofast -march=k8
7CFLAGS = -Wall -I/usr/local/include -g -std=gnu99 -O2 -march=k8
Marc Kupietz4b799e92018-01-02 11:04:56 +01008
9ARFLAGS = ${EXTRA_ARFLAGS} rs
Marc Kupietz18375e12017-12-24 10:11:18 +010010
Marc Kupietz28cc53e2017-12-23 17:24:55 +010011ifneq ($(USE_RTTI), 1)
12 CXXFLAGS += -fno-rtti
13endif
14LIB_SOURCES = collocatordb.cc
15
16LIBOBJECTS = $(LIB_SOURCES:.cc=.o)
Marc Kupietzd1659762018-06-05 11:22:12 +020017INSTALL_PATH = /usr/local
Marc Kupietz28cc53e2017-12-23 17:24:55 +010018
Marc Kupietz678185d2018-06-05 13:37:02 +020019hello_world: hello_world.c collocatordb.h collocatordb.o Makefile
20 $(CC) $(CFLAGS) -L. -L/usr/local/lib $@.c -o$@ collocatordb.o /vol/work/kupietz/rocksdb/librocksdb.a -std=gnu99 -lstdc++ -lm $(PLATFORM_LDFLAGS) $(PLATFORM_CCFLAGS) $(EXEC_LDFLAGS)
21
Marc Kupietz4b799e92018-01-02 11:04:56 +010022testcdb: testcdb.cc collocatordb.h collocatordb.o Makefile
23 $(CXX) $(CXXFLAGS) -L. -L/usr/local/lib $@.cc -o$@ collocatordb.o -lrocksdb $(PLATFORM_LDFLAGS) $(PLATFORM_CXXFLAGS) $(EXEC_LDFLAGS)
24
Marc Kupietz3400aa52018-06-05 10:28:55 +020025dumpllr: dumpllr.cc collocatordb.h collocatordb.o Makefile
26 $(CXX) $(CXXFLAGS) -L. -L/usr/local/lib $@.cc -fopenmp -o$@ collocatordb.o /vol/work/kupietz/rocksdb/librocksdb.a $(PLATFORM_LDFLAGS) $(PLATFORM_CXXFLAGS) $(EXEC_LDFLAGS)
27
Marc Kupietz06c9a9f2018-01-02 16:56:43 +010028c_testcdb: c_testcdb.c collocatordb.h collocatordb.o Makefile
Marc Kupietzc8ddf452018-01-07 21:33:12 +010029 $(CC) $(CFLAGS) -L. -L/usr/local/lib $@.c -o$@ collocatordb.o -std=gnu99 -lstdc++ -lm -lrocksdb $(PLATFORM_LDFLAGS) $(PLATFORM_CCFLAGS) $(EXEC_LDFLAGS)
30
Marc Kupietz4b799e92018-01-02 11:04:56 +010031collocatordb: collocatordb.cc Makefile
Marc Kupietz18375e12017-12-24 10:11:18 +010032 $(CXX) $(CXXFLAGS) -L/usr/local/lib $@.cc -o$@ -lrocksdb $(PLATFORM_LDFLAGS) $(PLATFORM_CXXFLAGS) $(EXEC_LDFLAGS)
Marc Kupietz28cc53e2017-12-23 17:24:55 +010033
34libcollocatordb.a: $(LIBOBJECTS)
Marc Kupietz4b799e92018-01-02 11:04:56 +010035 $(AM_V_AR)rm -f $@
Marc Kupietz28cc53e2017-12-23 17:24:55 +010036 $(AM_V_at)$(AR) $(ARFLAGS) $@ $(LIBOBJECTS)
37
Marc Kupietz4b799e92018-01-02 11:04:56 +010038libcollocatordb.so.1: collocatordb.cc
39 $(CXX) $(CXXFLAGS) -c collocatordb.cc -Wl,-soname=libcollocatordb.so.1 -Wl,--version-script=collocatordb.exmap -shared -fPIC -o libcollocatordb.so.1
40
Marc Kupietz28cc53e2017-12-23 17:24:55 +010041.cc.o:
Marc Kupietz18375e12017-12-24 10:11:18 +010042 $(CXX) $(CXXFLAGS) -c $< -o$@ $(PLATFORM_CXXFLAGS)
Marc Kupietzd1659762018-06-05 11:22:12 +020043
44install-static: libcollocatordb.a
45 install -C -m 755 libcollocatordb.a $(INSTALL_PATH)/lib
46
47install-shared: libcollocatordb.so.1
48 install -C -m 755 libcollocatordb.so.1 $(INSTALL_PATH)/lib && \
49 ln -fs $(INSTALL_PATH)/lib/libcollocatordb.so.1 $(INSTALL_PATH)/lib/libcollocatordb.so