ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/mports/trunk/databases/mysql57-server/Makefile
Revision: 24461
Committed: Fri Oct 12 23:32:43 2018 UTC (5 years, 6 months ago) by laffer1
Content type: text/plain
File size: 5483 byte(s)
Log Message:
add mysql 5.7

File Contents

# Content
1 # $MidnightBSD$
2
3 PORTNAME?= mysql
4 PORTVERSION= 5.7.22
5 PORTREVISION?= 0
6 CATEGORIES= databases ipv6
7 MASTER_SITES= MYSQL/MySQL-5.7
8 PKGNAMESUFFIX?= 57-server
9 DISTNAME= ${PORTNAME}-boost-${PORTVERSION}
10
11 MAINTAINER= ports@MidnightBSD.org
12 COMMENT?= Multithreaded SQL database (server)
13
14 LICENSE= gpl2
15
16 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
17
18 SLAVEDIRS= databases/mysql57-client
19 USES= bison:build cmake:outsource,noninja compiler:c11 compiler:c++11-lib \
20 cpe libedit localbase perl5 shebangfix ssl
21
22 USE_PERL5= run
23
24 MY_DBDIR= /var/db/mysql
25 MY_SECDIR= /var/db/mysql_secure
26 MY_TMPDIR= /var/db/mysql_tmpdir
27
28 LIB_DEPENDS+= libcurl.so:ftp/curl \
29 libevent.so:devel/libevent \
30 liblz4.so:archivers/liblz4 \
31 libprotobuf.so:devel/protobuf
32
33 CMAKE_BUILD_TYPE= Release
34
35 CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \
36 -DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \
37 -DINSTALL_PKGCONFIGDIR="${LOCALBASE}/libdata/pkgconfig" \
38 -DINSTALL_DOCDIR="share/doc/mysql" \
39 -DINSTALL_DOCREADMEDIR="share/doc/mysql" \
40 -DINSTALL_INCLUDEDIR="include/mysql" \
41 -DINSTALL_INFODIR="info" \
42 -DINSTALL_LIBDIR="lib/mysql" \
43 -DINSTALL_MANDIR="man" \
44 -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \
45 -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \
46 -DINSTALL_MYSQLSHAREDIR="share/mysql" \
47 -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \
48 -DINSTALL_PLUGINDIR="lib/mysql/plugin" \
49 -DINSTALL_SBINDIR="libexec" \
50 -DINSTALL_SCRIPTDIR="bin" \
51 -DINSTALL_SECURE_FILE_PRIVDIR="${MY_SECDIR}" \
52 -DINSTALL_SHAREDIR="share" \
53 -DINSTALL_SUPPORTFILESDIR="share/mysql" \
54 -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \
55 -DWITH_BOOST="${WRKSRC}/boost" \
56 -DWITH_EDITLINE=system \
57 -DWITH_LIBEVENT=system \
58 -DWITH_LZ4=system \
59 -DWITH_ZLIB=system \
60 -DWITH_PROTOBUF=system \
61 -DWITH_CURL=system \
62 -DINSTALL_MYSQLTESTDIR=0 \
63 -DWITH_DEBUG=0
64
65 SHEBANG_FILES= scripts/*.pl* scripts/*.sh
66
67 .ifdef USE_MYSQL
68 .error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
69 .endif
70
71 SUB_LIST= MY_DBDIR=${MY_DBDIR} \
72 MY_SECDIR=${MY_SECDIR} \
73 MY_TMPDIR=${MY_TMPDIR}
74
75 PLIST_SUB= MY_DBDIR=${MY_DBDIR} \
76 MY_SECDIR=${MY_SECDIR} \
77 MY_TMPDIR=${MY_TMPDIR}
78
79 OPTIONS_SUB= YES
80
81 # MySQL-Server part
82 .if !defined(CLIENT_ONLY)
83 USES+= mysql:57
84
85 CONFLICTS_INSTALL= mysql5[0-68-9]-server-* \
86 mysql[0-46-9][0-9]-server-* \
87 mysqlwsrep* \
88 mariadb[0-9][0-9]-server-* \
89 percona[0-9][0-9]-server-*
90
91 USE_RC_SUBR= mysql-server
92
93 SUB_FILES= my.cnf.sample
94
95 USERS= mysql
96 GROUPS= mysql
97
98 USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin
99
100 MMAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \
101 mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \
102 mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \
103 mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 \
104 mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 \
105 mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1
106
107 CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON"
108
109 OPTIONS_GROUP+= STORAGE
110 OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA
111 STORAGE_DESC= Permissible "Storage Engines" (to compile statically into the server)
112 ARCHIVE_DESC= Compile "Archive Storage" statically in server
113 BLACKHOLE_DESC= Compile "Blackhole Storage" statically in server
114 EXAMPLE_DESC= Compile "Example Storage" statically in server
115 FEDERATED_DESC= Compile "Federated Storage" statically in server
116 INNOBASE_DESC= Compile "InnoDB Storage" statically in server
117 PARTITION_DESC= Compile "Partitioning support Storage" statically in server
118 PERFSCHEMA_DESC= Compile "Performance Schema Storage" statically in server
119
120 ARCHIVE_CMAKE_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1
121 BLACKHOLE_CMAKE_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1
122 EXAMPLE_CMAKE_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1
123 FEDERATED_CMAKE_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1
124 INNOBASE_CMAKE_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1
125 PARTITION_CMAKE_ON= -DWITH_PARTITION_STORAGE_ENGINE=1
126 PERFSCHEMA_CMAKE_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
127
128 OPTIONS_GROUP+= FEATURES
129 FEATURES_DESC= Default features knobs
130 OPTIONS_GROUP_FEATURES= PERFSCHM
131 PERFSCHM_DESC= Enable "Performance Schema" by default (High RAM usage)
132 OPTIONS_DEFAULT+= PERFSCHM
133
134 PERFSCHM_SUB_LIST+= PERFSCHEMRC=""
135 PERFSCHM_SUB_LIST_OFF+= PERFSCHEMRC="--skip-performance-schema"
136 FEDERATED_SUB_LIST+= FEDER="--federated"
137 FEDERATED_SUB_LIST_OFF+= FEDER=""
138
139 # issue 220865: Currently there's no source to be built with server-side support.
140 # But this keeps the pkg-plist not overlaping
141 CMAKE_ARGS+= -DWITH_AUTHENTICATION_LDAP=0
142 .endif
143
144 .include <bsd.mport.options.mk>
145
146 SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment "
147
148 .include <bsd.port.pre.mk>
149
150 .if ${SSL_DEFAULT} == base
151 CMAKE_ARGS+= -DWITH_SSL=system
152 .else
153 CMAKE_ARGS+= -DWITH_SSL=${OPENSSLBASE}
154 .endif
155
156 post-extract:
157 @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
158
159 post-patch:
160 @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt
161 # issue 220865: MySQL developers forgot that FreeBSD != Linux
162 @${REINPLACE_CMD} -e 's|%%FREEBSD_LOCAL_LIB%%|${LOCALBASE}/lib|g' \
163 ${WRKSRC}/configure.cmake
164
165 .if !defined(CLIENT_ONLY)
166 post-install:
167 ${MKDIR} ${STAGEDIR}${ETCDIR}
168 ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample ${STAGEDIR}${ETCDIR}/my.cnf.sample
169 ${MKDIR} ${STAGEDIR}${ETCDIR}/keyring
170 ${MKDIR} ${STAGEDIR}${MY_SECDIR}
171 ${MKDIR} ${STAGEDIR}${MY_TMPDIR}
172 .endif
173
174 .include <bsd.port.post.mk>

Properties

Name Value
svn:eol-style native
svn:keywords MidnightBSD=%H
svn:mime-type text/plain