~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/xtrabackup/Makefile

  • Committer: Lee Bieber
  • Date: 2011-03-31 14:40:56 UTC
  • mfrom: (2242.1.133 drizzle-xtrabackup)
  • Revision ID: kalebral@gmail.com-20110331144056-hdhp6cj0zo1keuc9
Merge Stewart - xtrabackup port to drizzle

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Makefile to build XtraBackup for Percona Server and different versions of MySQL
 
2
#
 
3
# Syntax:
 
4
# make [5.1|5.5|xtradb|xtradb55]
 
5
#
 
6
# Default is xtradb - to build XtraBackup for Percona Server 5.1
 
7
# xtradb55 - Xtrabackup for Percona Server 5.5
 
8
# 5.1 - XtraBackup for MySQL versions 5.1.* with builtin InnoDB
 
9
# 5.5 - XtraBackup for MySQL versions 5.5.*     
 
10
 
 
11
LIBS = -lpthread
 
12
DEFS = -DUNIV_LINUX -DMYSQL_SERVER
 
13
 
 
14
CFLAGS += -O3 -g -pedantic -Wall -Wundef -Wshadow  -fdiagnostics-show-option  -fno-strict-aliasing -Wno-strict-aliasing -Wextra -Wformat -Wno-format-nonliteral -Wno-format-security -Wno-long-long  -Wmissing-declarations  -Wno-redundant-decls --std=gnu99
 
15
 
 
16
TARGET=xtrabackup
 
17
PREFIX=/usr
 
18
BIN_DIR=$(PREFIX)/bin
 
19
 
 
20
default: xtradb
 
21
 
 
22
# XtraBackup for MySQL 5.1
 
23
5.1: INC = -I. -isystem.. -isystem./../include -isystem./../../include -isystem./../../../include
 
24
5.1: INNODBOBJS = ../libinnobase_a-btr0btr.o ../libinnobase_a-btr0cur.o ../libinnobase_a-btr0pcur.o \
 
25
        ../libinnobase_a-btr0sea.o ../libinnobase_a-buf0buf.o ../libinnobase_a-buf0flu.o \
 
26
        ../libinnobase_a-buf0lru.o ../libinnobase_a-buf0rea.o ../libinnobase_a-data0data.o \
 
27
        ../libinnobase_a-data0type.o ../libinnobase_a-dict0boot.o ../libinnobase_a-dict0crea.o \
 
28
        ../libinnobase_a-dict0dict.o ../libinnobase_a-dict0load.o ../libinnobase_a-dict0mem.o \
 
29
        ../libinnobase_a-dyn0dyn.o ../libinnobase_a-eval0eval.o ../libinnobase_a-eval0proc.o \
 
30
        ../libinnobase_a-fil0fil.o ../libinnobase_a-fsp0fsp.o ../libinnobase_a-fut0fut.o \
 
31
        ../libinnobase_a-fut0lst.o ../libinnobase_a-ha0ha.o ../libinnobase_a-hash0hash.o \
 
32
        ../libinnobase_a-ibuf0ibuf.o ../libinnobase_a-lock0iter.o ../libinnobase_a-lock0lock.o \
 
33
        ../libinnobase_a-log0log.o ../libinnobase_a-log0recv.o ../libinnobase_a-mach0data.o \
 
34
        ../libinnobase_a-mem0mem.o ../libinnobase_a-mem0pool.o ../libinnobase_a-mtr0log.o \
 
35
        ../libinnobase_a-mtr0mtr.o ../libinnobase_a-os0file.o ../libinnobase_a-os0proc.o \
 
36
        ../libinnobase_a-os0sync.o ../libinnobase_a-os0thread.o ../libinnobase_a-page0cur.o \
 
37
        ../libinnobase_a-page0page.o ../libinnobase_a-lexyy.o ../libinnobase_a-pars0grm.o \
 
38
        ../libinnobase_a-pars0opt.o ../libinnobase_a-pars0pars.o ../libinnobase_a-pars0sym.o \
 
39
        ../libinnobase_a-que0que.o ../libinnobase_a-read0read.o ../libinnobase_a-rem0cmp.o \
 
40
        ../libinnobase_a-rem0rec.o ../libinnobase_a-row0ins.o ../libinnobase_a-row0mysql.o \
 
41
        ../libinnobase_a-row0purge.o ../libinnobase_a-row0row.o ../libinnobase_a-row0sel.o \
 
42
        ../libinnobase_a-row0uins.o ../libinnobase_a-row0umod.o ../libinnobase_a-row0undo.o \
 
43
        ../libinnobase_a-row0upd.o ../libinnobase_a-row0vers.o ../libinnobase_a-srv0que.o \
 
44
        ../libinnobase_a-srv0srv.o ../libinnobase_a-srv0start.o ../libinnobase_a-sync0arr.o \
 
45
        ../libinnobase_a-sync0rw.o ../libinnobase_a-sync0sync.o ../libinnobase_a-thr0loc.o \
 
46
        ../libinnobase_a-trx0purge.o ../libinnobase_a-trx0rec.o ../libinnobase_a-trx0roll.o \
 
47
        ../libinnobase_a-trx0rseg.o ../libinnobase_a-trx0sys.o ../libinnobase_a-trx0trx.o \
 
48
        ../libinnobase_a-trx0undo.o ../libinnobase_a-usr0sess.o ../libinnobase_a-ut0byte.o \
 
49
        ../libinnobase_a-ut0dbg.o ../libinnobase_a-ut0list.o ../libinnobase_a-ut0mem.o \
 
50
        ../libinnobase_a-ut0rnd.o ../libinnobase_a-ut0ut.o ../libinnobase_a-ut0vec.o \
 
51
        ../libinnobase_a-ut0wqueue.o
 
52
5.1: MYSQLOBJS= ../../../mysys/libmysys.a ../../../strings/libmystrings.a
 
53
5.1: TARGET := xtrabackup_51
 
54
5.1: $(TARGET)
 
55
 
 
56
# XtraBackup for MySQL 5.5
 
57
5.5: INC = -I. -I.. -I./../include -I./../../include -I./../../../include
 
58
5.5: INNODBOBJS= ../libinnobase.a
 
59
 
 
60
5.5: MYSQLOBJS= ../../../mysys/libmysys.a ../../../strings/libstrings.a ../../../zlib/libzlib.a
 
61
ifeq ($(shell uname -s),Linux)
 
62
5.5: LIBS += -laio
 
63
endif
 
64
5.5: TARGET := xtrabackup_innodb55
 
65
# In CMake server builds it is important to build with exactly the same preprocessor flags
 
66
# as were used to build InnoDB
 
67
5.5: DEFS = $(shell grep C_DEFINES ../CMakeFiles/innobase.dir/flags.make | \
 
68
               sed -e 's/C_DEFINES = //')
 
69
5.5: $(TARGET)
 
70
 
 
71
# XtraBackup for XtraDB 
 
72
xtradb: INC=-I. -isystem.. -isystem./../include -isystem./../../include -isystem./../../../include
 
73
xtradb: INNODBOBJS = ../libinnobase_a-btr0btr.o ../libinnobase_a-btr0cur.o ../libinnobase_a-btr0pcur.o \
 
74
        ../libinnobase_a-btr0sea.o ../libinnobase_a-buf0buddy.o ../libinnobase_a-buf0buf.o \
 
75
        ../libinnobase_a-buf0flu.o ../libinnobase_a-buf0lru.o ../libinnobase_a-buf0rea.o \
 
76
        ../libinnobase_a-data0data.o ../libinnobase_a-data0type.o ../libinnobase_a-dict0boot.o \
 
77
        ../libinnobase_a-dict0crea.o ../libinnobase_a-dict0dict.o ../libinnobase_a-dict0load.o \
 
78
        ../libinnobase_a-dict0mem.o ../libinnobase_a-dyn0dyn.o ../libinnobase_a-eval0eval.o \
 
79
        ../libinnobase_a-eval0proc.o ../libinnobase_a-fil0fil.o ../libinnobase_a-fsp0fsp.o \
 
80
        ../libinnobase_a-fut0fut.o ../libinnobase_a-fut0lst.o ../libinnobase_a-ha0ha.o \
 
81
        ../libinnobase_a-ha0storage.o ../libinnobase_a-hash0hash.o ../libinnobase_a-ibuf0ibuf.o \
 
82
        ../libinnobase_a-lock0iter.o ../libinnobase_a-lock0lock.o ../libinnobase_a-log0log.o \
 
83
        ../libinnobase_a-log0recv.o ../libinnobase_a-mach0data.o ../libinnobase_a-mem0mem.o \
 
84
        ../libinnobase_a-mem0pool.o ../libinnobase_a-mtr0log.o ../libinnobase_a-mtr0mtr.o \
 
85
        ../libinnobase_a-os0file.o ../libinnobase_a-os0proc.o ../libinnobase_a-os0sync.o \
 
86
        ../libinnobase_a-os0thread.o ../libinnobase_a-page0cur.o ../libinnobase_a-page0page.o \
 
87
        ../libinnobase_a-page0zip.o ../libinnobase_a-lexyy.o ../libinnobase_a-pars0grm.o \
 
88
        ../libinnobase_a-pars0opt.o ../libinnobase_a-pars0pars.o ../libinnobase_a-pars0sym.o \
 
89
        ../libinnobase_a-que0que.o ../libinnobase_a-read0read.o ../libinnobase_a-rem0cmp.o \
 
90
        ../libinnobase_a-rem0rec.o ../libinnobase_a-row0ext.o ../libinnobase_a-row0ins.o \
 
91
        ../libinnobase_a-row0merge.o ../libinnobase_a-row0mysql.o ../libinnobase_a-row0purge.o \
 
92
        ../libinnobase_a-row0row.o ../libinnobase_a-row0sel.o ../libinnobase_a-row0uins.o \
 
93
        ../libinnobase_a-row0umod.o ../libinnobase_a-row0undo.o ../libinnobase_a-row0upd.o \
 
94
        ../libinnobase_a-row0vers.o ../libinnobase_a-srv0que.o ../libinnobase_a-srv0srv.o \
 
95
        ../libinnobase_a-srv0start.o ../libinnobase_a-sync0arr.o ../libinnobase_a-sync0rw.o \
 
96
        ../libinnobase_a-sync0sync.o ../libinnobase_a-thr0loc.o ../libinnobase_a-trx0purge.o \
 
97
        ../libinnobase_a-trx0rec.o ../libinnobase_a-trx0roll.o ../libinnobase_a-trx0rseg.o \
 
98
        ../libinnobase_a-trx0sys.o ../libinnobase_a-trx0trx.o ../libinnobase_a-trx0undo.o \
 
99
        ../libinnobase_a-usr0sess.o ../libinnobase_a-ut0byte.o ../libinnobase_a-ut0dbg.o \
 
100
        ../libinnobase_a-ut0list.o ../libinnobase_a-ut0mem.o ../libinnobase_a-ut0rnd.o \
 
101
        ../libinnobase_a-ut0ut.o ../libinnobase_a-ut0vec.o ../libinnobase_a-ut0wqueue.o \
 
102
        ../libinnobase_a-ut0rbt.o
 
103
xtradb: MYSQLOBJS = ../../../mysys/libmysys.a ../../../strings/libmystrings.a ../../../zlib/.libs/libzlt.a
 
104
xtradb: DEFS += -DXTRADB_BASED 
 
105
xtradb: TARGET := xtrabackup 
 
106
xtradb: $(TARGET)
 
107
 
 
108
# XtraBackup for XtraDB 5.5
 
109
xtradb55dbug: DBUG_LIB = ../../../dbug/libdbug.a
 
110
xtradb55dbug: xtradb55
 
111
xtradb55: INC=-I. -isystem.. -isystem./../include -isystem./../../include -isystem./../../../include
 
112
xtradb55: INNODBOBJS = ../libinnobase.a
 
113
ifeq ($(shell uname -s),Linux)
 
114
xtradb55: LIBS += -laio
 
115
endif
 
116
ifeq "$(wildcard ../../../zlib/.libs/libzlt.a)" ""
 
117
xtradb55: LIBZ= -lz
 
118
else
 
119
xtradb55: LIBZ= ../../../zlib/.libs/libzlt.a
 
120
endif
 
121
xtradb55: MYSQLOBJS = ../../../mysys/libmysys.a ../../../strings/libstrings.a $(LIBZ) $(DBUG_LIB)
 
122
# In CMake server builds it is important to build with exactly the same preprocessor flags
 
123
# as were used to build InnoDB
 
124
xtradb55: DEFS = $(shell grep C_DEFINES ../CMakeFiles/innobase.dir/flags.make | \
 
125
               sed -e 's/C_DEFINES = //')
 
126
xtradb55: DEFS += -DXTRADB_BASED -DXTRADB55
 
127
xtradb55: TARGET := xtrabackup_55
 
128
xtradb55: $(TARGET)
 
129
 
 
130
 
 
131
xtrabackup.o: xtrabackup.c
 
132
        $(CC) $(CFLAGS) $(INC) $(DEFS) -c $*.c
 
133
 
 
134
$(TARGET): xtrabackup.o $(INNODBOBJS) $(MYSQLOBJS)
 
135
        $(CC)  $(CFLAGS)  xtrabackup.o $(INNODBOBJS) $(MYSQLOBJS) $(LIBS) -o $(TARGET)
 
136
 
 
137
clean:
 
138
        rm -f *.o xtrabackup_* 
 
139
install:
 
140
        install -m 755 innobackupex-1.5.1 $(BIN_DIR)
 
141
        install -m 755 xtrabackup_*  $(BIN_DIR)