Blame view

buildroot/buildroot-2016.08.1/package/mysql/mysql.mk 3.51 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
  ################################################################################
  #
  # mysql
  #
  ################################################################################
  
  MYSQL_VERSION_MAJOR = 5.1
  MYSQL_VERSION = $(MYSQL_VERSION_MAJOR).73
  MYSQL_SOURCE = mysql-$(MYSQL_VERSION).tar.gz
  MYSQL_SITE = http://downloads.skysql.com/archives/mysql-$(MYSQL_VERSION_MAJOR)
  MYSQL_INSTALL_STAGING = YES
  MYSQL_DEPENDENCIES = readline ncurses
  MYSQL_AUTORECONF = YES
  MYSQL_LICENSE = GPLv2
  MYSQL_LICENSE_FILES = README COPYING
  
  MYSQL_CONF_ENV = \
  	ac_cv_sys_restartable_syscalls=yes \
  	ac_cv_path_PS=/bin/ps \
  	ac_cv_FIND_PROC="/bin/ps p \$\$PID | grep -v grep | grep mysqld > /dev/null" \
  	ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=yes \
  	ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=no \
  	ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=yes \
  	mysql_cv_new_rl_interface=yes
  
  MYSQL_CONF_OPTS = \
  	--without-ndb-binlog \
  	--without-docs \
  	--without-man \
  	--without-libedit \
  	--without-readline \
  	--with-low-memory \
  	--enable-thread-safe-client \
  	--disable-mysql-maintainer-mode
  
  # host-mysql only installs what is needed to build mysql, i.e. the
  # gen_lex_hash tool, and it only builds the parts that are needed to
  # create this tool
  HOST_MYSQL_DEPENDENCIES = host-zlib host-ncurses
  
  HOST_MYSQL_CONF_OPTS = \
  	--with-embedded-server \
  	--disable-mysql-maintainer-mode
  
  define HOST_MYSQL_BUILD_CMDS
  	$(MAKE) -C $(@D)/include my_config.h
  	$(MAKE) -C $(@D)/mysys libmysys.a
  	$(MAKE) -C $(@D)/strings libmystrings.a
  	$(MAKE) -C $(@D)/vio libvio.a
  	$(MAKE) -C $(@D)/dbug libdbug.a
  	$(MAKE) -C $(@D)/regex libregex.a
  	$(MAKE) -C $(@D)/sql gen_lex_hash
  endef
  
  define HOST_MYSQL_INSTALL_CMDS
  	$(INSTALL) -m 0755  $(@D)/sql/gen_lex_hash $(HOST_DIR)/usr/bin/
  endef
  
  ifeq ($(BR2_PACKAGE_OPENSSL),y)
  MYSQL_DEPENDENCIES += openssl
  endif
  
  ifeq ($(BR2_PACKAGE_ZLIB),y)
  MYSQL_DEPENDENCIES += zlib
  endif
  
  ifeq ($(BR2_PACKAGE_MYSQL_SERVER),y)
  MYSQL_DEPENDENCIES += host-mysql host-bison
  
  MYSQL_CONF_OPTS += \
  	--localstatedir=/var/mysql \
  	--with-atomic-ops=up \
  	--with-embedded-server \
  	--without-query-cache \
  	--without-plugin-partition \
  	--without-plugin-daemon_example \
  	--without-plugin-ftexample \
  	--without-plugin-archive \
  	--without-plugin-blackhole \
  	--without-plugin-example \
  	--without-plugin-federated \
  	--without-plugin-ibmdb2i \
  	--without-plugin-innobase \
  	--without-plugin-innodb_plugin \
  	--without-plugin-ndbcluster
  
  # Debugging is only available for the server, so no need for
  # this if-block outside of the server if-block
  ifeq ($(BR2_ENABLE_DEBUG),y)
  MYSQL_CONF_OPTS += --with-debug=full
  else
  MYSQL_CONF_OPTS += --without-debug
  endif
  
  define MYSQL_USERS
  	mysql -1 nogroup -1 * /var/mysql - - MySQL daemon
  endef
  
  define MYSQL_ADD_FOLDER
  	$(INSTALL) -d $(TARGET_DIR)/var/mysql
  endef
  
  MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_ADD_FOLDER
  
  define MYSQL_INSTALL_INIT_SYSV
  	$(INSTALL) -D -m 0755 package/mysql/S97mysqld \
  		$(TARGET_DIR)/etc/init.d/S97mysqld
  endef
  
  define MYSQL_INSTALL_INIT_SYSTEMD
  	$(INSTALL) -D -m 644 package/mysql/mysqld.service \
  		$(TARGET_DIR)/usr/lib/systemd/system/mysqld.service
  	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
  	ln -sf ../../../../usr/lib/systemd/system/mysqld.service \
  		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mysqld.service
  endef
  
  else
  MYSQL_CONF_OPTS += \
  	--without-server
  endif
  
  
  define MYSQL_REMOVE_TEST_PROGS
  	rm -rf $(TARGET_DIR)/usr/mysql-test $(TARGET_DIR)/usr/sql-bench
  endef
  
  MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_REMOVE_TEST_PROGS
  
  $(eval $(autotools-package))
  $(eval $(host-autotools-package))