mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 14:02:32 +01:00
382639fa22
git-svn-id: file:///svn/mysql/tokudb-engine/src@11402 c7de825b-a66e-492c-adef-691d508d4ae1
65 lines
1.8 KiB
Text
65 lines
1.8 KiB
Text
# the tunables
|
|
MYSQL_SRC = $(HOME)/mysql-5.1.23-rc
|
|
MYSQL_LIBDIR = $(HOME)/mysql-5.1.23-rc-build/lib/mysql
|
|
TOKUDB = /usr/local/tokudb-4.4
|
|
TOKUDB_VERSION = "Tokudb"
|
|
CXX = cc
|
|
DEBUG = 1
|
|
GCOV = 0
|
|
SINGLESO = 1
|
|
SYSTEM = $(shell uname -s | tr [A-Z] [a-z])
|
|
|
|
# sources to target
|
|
SRCS = $(wildcard *.cc)
|
|
OBJS = $(patsubst %.cc,%.o,$(SRCS))
|
|
TARGET = ha_tokudb.so
|
|
|
|
ifeq ($(GCOV),1)
|
|
GCOV_FLAGS = -ftest-coverage -fprofile-arcs
|
|
endif
|
|
|
|
ifeq ($(DEBUG),0)
|
|
OPTFLAGS = -O2
|
|
MYSQL_FLAGS =
|
|
CXXFLAGS =
|
|
else
|
|
OPTFLAGS = -O0
|
|
MYSQL_FLAGS = -DHAVE_CONFIG_H -DDBUG_ON -DSAFE_MUTEX -DEXTRA_DEBUG -DSAFEMALLOC -DPEDANTIC_SAFEMALLOC -DSAFE_MUTEX
|
|
CXXFLAGS = -Wall -Werror
|
|
endif
|
|
|
|
MYSQL_FLAGS += -DMYSQL_DYNAMIC_PLUGIN
|
|
MYSQL_CXXFLAGS = -fno-implicit-templates -fno-exceptions -fno-rtti
|
|
|
|
CPPFLAGS = -I. -I$(MYSQL_SRC)/sql -I$(MYSQL_SRC)/include -I$(MYSQL_SRC)/regex -I$(TOKUDB)/include -I$(TOKUDB)/toku_include -I$(TOKUDB)/src
|
|
ifeq ($(SYSTEM),linux)
|
|
CPPFLAGS += -I$(TOKUDB)/linux
|
|
endif
|
|
CPPFLAGS += $(MYSQL_FLAGS)
|
|
CPPFLAGS += -DTOKUDB_VERSION=\"$(TOKUDB_VERSION)\"
|
|
CXXFLAGS += -g $(OPTFLAGS) $(GCOV_FLAGS) $(MYSQL_CXXFLAGS)
|
|
CXXFLAGS += -fPIC
|
|
LDFLAGS = -fPIC -shared -Wl,-soname -Wl,libtokudb_engine.so
|
|
ifeq ($(SINGLESO),1)
|
|
LIBS = $(TOKUDB)/src/ydb_lib.o $(TOKUDB)/lib/libtokudb.a $(TOKUDB)/lib/libtokuportability.a
|
|
else
|
|
LIBS = -L$(TOKUDB)/lib -ltokudb -ltokuportability
|
|
endif
|
|
LIBS += -lpthread -lz -lm -lc
|
|
|
|
|
|
# LIBDIR = /usr/lib
|
|
# GCCLIBDIR = /usr/lib/gcc/i386-redhat-linux/4.1.1
|
|
# BEGINLIBS = $(LIBDIR)/crti.o $(GCCLIBDIR)/crtbeginS.o
|
|
# ENDLIBS = $(GCCLIBDIR)/crtendS.o $(LIBDIR)/crtn.o
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CXX) $(LDFLAGS) $(GCOV_FLAGS) $(MYSQL_CXXFLAGS) $(BEGINLIBS) $^ $(LIBS) $(ENDLIBS) -o $@
|
|
|
|
clean:
|
|
rm -rf $(TARGET) $(OBJS) *.gcno *.gcda *.gcov
|
|
|
|
install: $(TARGET)
|
|
cp $(TARGET) $(MYSQL_LIBDIR)/libtokudb_engine.so
|