pkgsrc/databases/mysql51-server/Makefile
adam 249c2baf0f Changes 5.1.71:
Functionality Added or Changed
* comp_err now checks to make sure that new errors are not being added to MySQL 5.1 or 5.5 because the set of errors for these series is frozen.

Bugs Fixed
* InnoDB: During an insert buffer merge, InnoDB would invoke lock_rec_restore_from_page_infimum() on a potentially invalid record pointer.
* InnoDB: The page_zip_validate() consistency check would fail after compressing a page, in page_zip_compress(). This problem was caused by page_zip_decompress(), which would fail to set heap_no correctly when a record contained no user data bytes. A record with no user data bytes occurs when, for example, a primary key is an empty string and all secondary index fields are NULL or an empty string.
* InnoDB: The pthread_mutex, commit_threads_m, which was initialized but never used, has been removed from the code base.
* Partitioning: When dropping a partitioned table, the table's .par file was deleted first, before the table definition or data. This meant that, if the server failed during the drop operation, the table could be left in an inconsistent state in which it could neither be accessed nor dropped.
* Shared-compatibility conflict errors occurred for RPM install operations, even if no shared-compatibility RPMs were already installed.
* A user variable referenced during execution of a prepared statement is set to memory that is freed at the end of execution. A second execution of the statement could result in Valgrind warnings when accessing this memory.
* Misoptimization of left expressions in prepared statements could cause a server exit.
* Subsequent to Prepared statement needs to be re-prepared errors, inserts into DECIMAL columns caused a server exit.
* Assigning the result of a subquery to a user variable raised an assertion when the outer query included DISTINCT and GROUP BY.
2013-08-04 10:20:24 +00:00

115 lines
3.4 KiB
Makefile

# $NetBSD: Makefile,v 1.17 2013/08/04 10:20:24 adam Exp $
PKGNAME= ${DISTNAME:S/-/-server-/}
SVR4_PKGNAME= mysqs
COMMENT= MySQL 5, a free SQL database (server)
CONFLICTS= {mysql-server-[0-9]*,mysql3-server-[0-9]*}
.include "../../databases/mysql51-client/Makefile.common"
CONFIGURE_ARGS+= --with-libwrap
CONFIGURE_ARGS+= --with-mysqld-user=${MYSQL_USER}
.if !empty(PKG_OPTIONS:Membedded-server)
CONFIGURE_ARGS+= --with-embedded-privilege-control
CONFIGURE_ARGS+= --with-embedded-server
CONFIGURE_ARGS+= --with-pic
PLIST.embedded= yes
.endif
.if !empty(PKG_OPTIONS:Mndb-cluster)
CONFIGURE_ARGS+= --with-plugins=innobase,ndbcluster
REPLACE_PERL+= storage/ndb/tools/ndb_error_reporter \
storage/ndb/tools/ndb_size.pl
PLIST.ndb= yes
BUILDLINK_DEPMETHOD.readline= full
.else
CONFIGURE_ARGS+= --with-plugins=innobase
.endif
.if !empty(PKG_OPTIONS:Mpstack)
CONFIGURE_ARGS+= --with-pstack
PLIST.pstack= yes
.endif
.if !empty(PKG_OPTIONS:Mmysqlmanager)
CONFIGURE_ARGS+= --with-mysqlmanager
PLIST.manager= yes
.endif
PLIST_VARS+= embedded manager ndb pstack
PTHREAD_OPTS+= require
CONFIGURE_ARGS+= --with-pthread
PKG_GROUPS= ${MYSQL_GROUP}
PKG_USERS= ${MYSQL_USER}:${MYSQL_GROUP}
PKG_GECOS.${MYSQL_USER}= MySQL database administrator
PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR}
PKG_SHELL.${MYSQL_USER}= ${SH}
RCD_SCRIPTS= mysqld
FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} \
MYSQL_DATADIR=${MYSQL_DATADIR} \
MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP}
MESSAGE_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} \
MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP}
BUILD_DEFS+= MYSQL_DATADIR
BUILD_DIRS= . man
REPLACE_PERL+= mysql-test/lib/My/SafeProcess/safe_process.pl \
mysql-test/lib/v1/mysql-test-run.pl \
mysql-test/mysql-stress-test.pl \
mysql-test/mysql-test-run.pl \
mysql-test/suite/engines/rr_trx/run_stress_tx_rr.pl \
mysql-test/suite/funcs_1/lib/DataGen_local.pl \
mysql-test/suite/funcs_1/lib/DataGen_modify.pl \
mysql-test/suite/funcs_2/lib/gen_charset_utf8.pl \
mysql-test/mtr \
scripts/mysqld_multi.sh
INSTALLATION_DIRS= bin
.include "../../mk/bsd.prefs.mk"
.if !empty(PKGSRC_COMPILER:Msunpro)
CFLAGS+= -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
CXXFLAGS+= -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
.endif
.include "../../databases/mysql51-client/buildlink3.mk"
.include "../../security/tcp_wrappers/buildlink3.mk"
# Only 'ndb_mgm' needs readline otherwise we only need it to placate the
# configure script. As ndb_mgm is only build if the 'ndb-cluster' option
# is enabled that option sets a full dependency on readline otherwise
# make this only a build-time dependency.
BUILDLINK_DEPMETHOD.readline?= build
.include "../../mk/readline.buildlink3.mk"
post-configure:
cd ${WRKSRC}/include && cp -f config.h my_config.h
${RM} -f ${WRKSRC}/mysql-test/mysql-test-run
post-build:
cd ${WRKSRC}/scripts && \
${BUILD_MAKE_CMD} mysqld_safe mysql_install_db
post-install:
${INSTALL_SCRIPT} ${WRKSRC}/scripts/mysqld_safe \
${DESTDIR}${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKSRC}/scripts/mysql_install_db \
${DESTDIR}${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKSRC}/support-files/mysql.server \
${DESTDIR}${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/man/mysqld_multi.1 \
${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
# ${INSTALL_MAN} ${WRKSRC}/man/mysqld_safe.1 \
# ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
${INSTALL_SCRIPT} ${WRKSRC}/scripts/mysql_secure_installation.sh \
${DESTDIR}${PREFIX}/bin/mysql_secure_installation
.include "../../mk/bsd.pkg.mk"