Summary: | [patch] databases/mysql41-server: update to 4.1.25 | ||
---|---|---|---|
Product: | Ports & Packages | Reporter: | Eygene Ryabinkin <rea-fbsd> |
Component: | Individual Port(s) | Assignee: | Alex Dupre <ale> |
Status: | Closed FIXED | ||
Severity: | Affects Only Me | ||
Priority: | Normal | ||
Version: | Latest | ||
Hardware: | Any | ||
OS: | Any |
Description
Eygene Ryabinkin
2008-12-29 15:40:02 UTC
Responsible Changed From-To: freebsd-ports-bugs->ale Over to maintainer (via the GNATS Auto Assign Tool) Eygene Ryabinkin wrote: > I had tested its compilability, run the whole testsuite and tested good > packaging for databases/mysql41-*. Andrew, Eugene, Alex, anyone -- if > you'll be so kind to test this update, it will be very good. > > This patch should fix ports/129979 from the mysql-4.1 side. > >Release-Note: > >Audit-Trail: > >Unformatted: H! The patch applies OK to fresh ports tree but building of the port fails for me at 'configure' stage: checking for BerkeleyDB... searching... Compiling Berekeley DB in 'bdb' checking for Innodb... Using Innodb checking for aio_read in -lrt... no checking for example storage engine... no checking for archive storage engine... no checking for csv storage engine... no checking for blackhole storage engine... no checking for NDB Cluster... Not using NDB Cluster CONFIGURING FOR BERKELEY DB ../.././bdb/dist/configure: Can't open ../.././bdb/dist/configure: No such file or directory configure: error: could not configure Berkeley DB ===> Script "configure" failed unexpectedly. Please report the problem to ale@FreeBSD.org [maintainer] and attach the "/home/ports/databases/mysql41-server/work/mysql-4.1.25/config.log" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. an `ls /var/db/pkg`). *** Error code 1 Stop in /home/ports/databases/mysql41-server. Note I've no any version of BDB other than in base system, e.g. no BDB ports installed. Here is FreeBSD-6.4 PRERELEASE. Eugene Grosbein Eugene, good day. Tue, Dec 30, 2008 at 12:17:42PM +0700, Eugene Grosbein wrote: > The patch applies OK to fresh ports tree but building of the port > fails for me at 'configure' stage: >=20 > checking for BerkeleyDB... searching... > Compiling Berekeley DB in 'bdb' > checking for Innodb... Using Innodb > checking for aio_read in -lrt... no > checking for example storage engine... no > checking for archive storage engine... no > checking for csv storage engine... no > checking for blackhole storage engine... no > checking for NDB Cluster... Not using NDB Cluster > CONFIGURING FOR BERKELEY DB > ../.././bdb/dist/configure: Can't open ../.././bdb/dist/configure: No such > file > or directory > configure: error: could not configure Berkeley DB OK, I had tested the new ports only for amd64 and the variant for i386 includes Berkeley DB stuff that I missed. I had created configure script for the bundled BDB and fixed some rough places. The following patch is the reworked variant of the original upgrade patch. Basically, it just changes 'distinfo' contents -- all other stuff was done in the tarball. You should wipe out the old tarball and download the new one, possibly 'make fetch' will do it automatically because it will notice the difference in the tarball size. Now I had tested the port both for amd64 and i386 on 7.x. It compiles and packages fine, at least for me. Please, try it again. The new distinfo contents follow (you can drop them over the old patched variant and proceed): ----- MD5 (mysql-4.1.25.tar.bz2) =3D 884fb8a3b21951ecd2b07b0a1781afe0 SHA256 (mysql-4.1.25.tar.bz2) =3D 827198b5fe71dd624b5afb8a9b160c22004c50d38= e79d23f363358901197ac43 SIZE (mysql-4.1.25.tar.bz2) =3D 11712509 ----- New variant of the original patch; --- mysql41-upgrade-to-4.1.25.diff begins here --- =46rom f43dcc05e7668c4d43288791e744c452a9142797 Mon Sep 17 00:00:00 2001 =46rom: Eygene Ryabinkin <rea-fbsd@codelabs.ru> Date: Mon, 29 Dec 2008 18:02:22 +0300 Subject: [PATCH] databases/mysql41-*: upgrade to 4.1.25 This is not an official distribution, but rather tarball exported from the official Bazaar repository. 4.1.22 has many security vulnerabilities that are rather hard to backport, so it is just easier to host the semi-official tarball at the FreeBSD and 3rd-party servers and to have all fixes and enhancements since 4.1.22. Signed-off-by: Eygene Ryabinkin <rea-fbsd@codelabs.ru> --- databases/mysql41-server/Makefile | 22 +---- databases/mysql41-server/distinfo | 6 +- .../mysql41-server/files/patch-Docs::Makefile.in | 14 ++-- .../mysql41-server/files/patch-sql::mysqld.cc | 21 ----- .../mysql41-server/files/patch-sql_mysql_priv.h | 11 --- .../mysql41-server/files/patch-sql_sql_parse.cc | 82 ----------------= ---- databases/mysql41-server/pkg-plist.client | 2 +- 7 files changed, 15 insertions(+), 143 deletions(-) delete mode 100644 databases/mysql41-server/files/patch-sql_mysql_priv.h delete mode 100644 databases/mysql41-server/files/patch-sql_sql_parse.cc diff --git a/databases/mysql41-server/Makefile b/databases/mysql41-server/M= akefile index 1754134..16e5b7c 100644 --- a/databases/mysql41-server/Makefile +++ b/databases/mysql41-server/Makefile @@ -6,11 +6,10 @@ # =20 PORTNAME?=3D mysql -PORTVERSION=3D 4.1.22 -PORTREVISION?=3D 1 +PORTVERSION=3D 4.1.25 +PORTREVISION?=3D 0 CATEGORIES=3D databases -MASTER_SITES=3D ${MASTER_SITE_MYSQL} -MASTER_SITE_SUBDIR=3D MySQL-4.1 +MASTER_SITES=3D http://inse.ru/fbsd/ PKGNAMESUFFIX?=3D -server =20 MAINTAINER=3D ale@FreeBSD.org @@ -18,6 +17,7 @@ COMMENT?=3D Multithreaded SQL database (server) =20 SLAVEDIRS=3D databases/mysql41-client USE_AUTOTOOLS=3D libtool:15 +USE_BZIP2=3D yes =20 CONFIGURE_ARGS=3D --localstatedir=3D/var/db/mysql \ --without-debug \ @@ -100,11 +100,6 @@ PLIST_SUB+=3D NDB=3D"" PLIST_SUB+=3D NDB=3D"@comment " .endif =20 -MAN1=3D myisamchk.1 myisamlog.1 myisampack.1 mysqld.1 \ - mysqld_safe.1 mysql.server.1 perror.1 replace.1 - -MAN8=3D mysqld.8 - INFO=3D mysql =20 pre-fetch: @@ -131,7 +126,6 @@ post-patch: @${REINPLACE_CMD} -e "s|all: config.h|all: config.h all-local|g" ${WRKSRC= }/Makefile.in @${REINPLACE_CMD} -e "s|bin_SCRIPTS =3D|bin_SCRIPTS =3D @server_scripts@ = mysql_create_system_tables|g" ${WRKSRC}/scripts/Makefile.in @${REINPLACE_CMD} -e "s|dist_pkgdata_DATA =3D|dist_pkgdata_DATA =3D fill_= help_tables.sql|g" ${WRKSRC}/scripts/Makefile.in - @${REINPLACE_CMD} -e "s|man1_MANS =3D|man1_MANS =3D ${MAN1}|g;s|man8_MANS= =3D|man8_MANS =3D ${MAN8}|g" ${WRKSRC}/man/Makefile.in @${REINPLACE_CMD} -e "s|install-data-am: install-pkgincludeHEADERS|instal= l-data-am:|g" ${WRKSRC}/include/Makefile.in @${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/mysys/default.c .if defined(WITH_PROC_SCOPE_PTH) @@ -150,9 +144,6 @@ LATEST_LINK=3D mysql41-client =20 CONFLICTS=3D mysql-client-3.* mysql-client-4.[02-9].* mysql-client-5.* mys= ql-client-6.* =20 -MAN1=3D mysql_config.1 mysql.1 mysqladmin.1 mysqlbinlog.1 \ - mysqlcheck.1 mysqldump.1 mysqlimport.1 mysqlshow.1 - USE_LDCONFIG=3D ${PREFIX}/lib/mysql =20 CONFIGURE_ARGS+=3D--without-server @@ -163,7 +154,6 @@ post-patch: @${REINPLACE_CMD} -e "s|all: config.h|all: config.h all-local|g" ${WRKSRC= }/Makefile.in @${REINPLACE_CMD} -e "s|bin_SCRIPTS =3D|bin_SCRIPTS =3D mysql_config mysq= l_fix_privilege_tables mysqlbug|g" ${WRKSRC}/scripts/Makefile.in @${REINPLACE_CMD} -e "s|dist_pkgdata_DATA =3D|dist_pkgdata_DATA =3D mysql= _fix_privilege_tables.sql|g" ${WRKSRC}/scripts/Makefile.in - @${REINPLACE_CMD} -e "s|man1_MANS =3D|man1_MANS =3D ${MAN1}|g" ${WRKSRC}/= man/Makefile.in @${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/mysys/default.c .if defined(WITH_PROC_SCOPE_PTH) @${REINPLACE_CMD} -e "s|PTHREAD_SCOPE_SYSTEM|PTHREAD_SCOPE_PROCESS|g" ${W= RKSRC}/tools/mysqlmanager.c @@ -184,9 +174,6 @@ LATEST_LINK=3D mysql41-scripts =20 CONFLICTS=3D mysql-scripts-3.* mysql-scripts-4.[02-9].* mysql-scripts-5.* = mysql-scripts-6.* =20 -MAN1=3D msql2mysql.1 mysql_zap.1 mysqlaccess.1 mysqlhotcopy.1 \ - mysqld_multi.1 mysql_fix_privilege_tables.1 - SCRIPTS=3D msql2mysql mysql_fix_extensions mysql_setpermission \ mysql_secure_installation mysql_zap mysqlaccess \ mysql_convert_table_format mysql_find_rows mysqlhotcopy \ @@ -196,7 +183,6 @@ post-patch: @${REINPLACE_CMD} -e "s|SUBDIRS =3D|SUBDIRS =3D scripts @man_dirs@|g" ${W= RKSRC}/Makefile.in @${REINPLACE_CMD} -e "s|bin_SCRIPTS =3D|bin_SCRIPTS =3D ${SCRIPTS}|g" ${W= RKSRC}/scripts/Makefile.in @${REINPLACE_CMD} -e "s|install-exec-am install-data-am|install-exec-am|g= " ${WRKSRC}/scripts/Makefile.in - @${REINPLACE_CMD} -e "s|man1_MANS =3D|man1_MANS =3D ${MAN1}|g" ${WRKSRC}/= man/Makefile.in .endif .endif # Common part diff --git a/databases/mysql41-server/distinfo b/databases/mysql41-server/d= istinfo index b7e9ff6..98544fc 100644 --- a/databases/mysql41-server/distinfo +++ b/databases/mysql41-server/distinfo @@ -1,3 +1,3 @@ -MD5 (mysql-4.1.22.tar.gz) =3D 37b4479951fa0cf052269d27c41ca200 -SHA256 (mysql-4.1.22.tar.gz) =3D 6bd2436fd0f233bb1518e15975cb4e9fa4434acb5= 3c3c3cd7d4648219abf58e9 -SIZE (mysql-4.1.22.tar.gz) =3D 17761101 +MD5 (mysql-4.1.25.tar.bz2) =3D 884fb8a3b21951ecd2b07b0a1781afe0 +SHA256 (mysql-4.1.25.tar.bz2) =3D 827198b5fe71dd624b5afb8a9b160c22004c50d3= 8e79d23f363358901197ac43 +SIZE (mysql-4.1.25.tar.bz2) =3D 11712509 diff --git a/databases/mysql41-server/files/patch-Docs::Makefile.in b/datab= ases/mysql41-server/files/patch-Docs::Makefile.in index 803cbea..ed4333e 100644 --- a/databases/mysql41-server/files/patch-Docs::Makefile.in +++ b/databases/mysql41-server/files/patch-Docs::Makefile.in @@ -1,15 +1,15 @@ ---- Docs/Makefile.in.orig Wed Nov 30 21:37:04 2005 -+++ Docs/Makefile.in Thu Dec 22 16:03:51 2005 -@@ -324,7 +324,7 @@ - INSTALL-BINARY ../support-files/MacOSX/ReadMe.txt -=20 - GT =3D $(srcdir)/Support/generate-text-files.pl +--- Docs/Makefile.in.orig 2008-12-29 16:52:20.000000000 +0300 ++++ Docs/Makefile.in 2008-12-29 17:25:03.000000000 +0300 +@@ -334,7 +334,7 @@ + vio_libs =3D @vio_libs@ + zlib_dir =3D @zlib_dir@ + EXTRA_DIST =3D mysql.info INSTALL-BINARY -all: all-am +all: =20 .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) -@@ -410,7 +410,7 @@ +@@ -419,7 +419,7 @@ install-data: install-data-am uninstall: uninstall-am =20 diff --git a/databases/mysql41-server/files/patch-sql::mysqld.cc b/database= s/mysql41-server/files/patch-sql::mysqld.cc index 69c124f..e79f985 100644 --- a/databases/mysql41-server/files/patch-sql::mysqld.cc +++ b/databases/mysql41-server/files/patch-sql::mysqld.cc @@ -9,24 +9,3 @@ #include <syslog.h> #ifdef NEED_SYS_SYSLOG_H #include <sys/syslog.h> ---- sql/mysqld.cc 2007-11-29 10:52:36 +0000 -+++ sql/mysqld.cc 2008-02-29 09:55:00 +0000 -@@ -390,6 +390,7 @@ - char compiled_default_collation_name[]=3D MYSQL_DEFAULT_COLLATION_NAME; - char *language_ptr, *default_collation_name, *default_character_set_name; - char mysql_data_home_buff[2], *mysql_data_home=3Dmysql_real_data_home; -+char mysql_unpacked_real_data_home[FN_REFLEN]; - struct passwd *user_info; - char server_version[SERVER_VERSION_LENGTH]; - char *mysqld_unix_port, *opt_mysql_tmpdir; -@@ -6896,6 +6897,9 @@ - pos[1]=3D 0; - } - convert_dirname(mysql_real_data_home,mysql_real_data_home,NullS); -+ (void) fn_format(buff, mysql_real_data_home, "", "", -+ (MY_RETURN_REAL_PATH|MY_RESOLVE_SYMLINKS)); -+ (void) unpack_dirname(mysql_unpacked_real_data_home, buff); - convert_dirname(language,language,NullS); - (void) my_load_path(mysql_home,mysql_home,""); // Resolve current dir - (void) my_load_path(mysql_real_data_home,mysql_real_data_home,mysql_hom= e); - diff --git a/databases/mysql41-server/files/patch-sql_mysql_priv.h b/databa= ses/mysql41-server/files/patch-sql_mysql_priv.h deleted file mode 100644 index a02b313..0000000 --- a/databases/mysql41-server/files/patch-sql_mysql_priv.h +++ /dev/null @@ -1,11 +0,0 @@ ---- sql/mysql_priv.h 2007-11-09 12:05:01 +0000 -+++ sql/mysql_priv.h 2008-02-29 09:55:00 +0000 -@@ -890,6 +890,7 @@ - extern time_t start_time; - extern char *mysql_data_home,server_version[SERVER_VERSION_LENGTH], - mysql_real_data_home[], *opt_mysql_tmpdir, mysql_charsets_dir[], -+ mysql_unpacked_real_data_home[], - def_ft_boolean_syntax[sizeof(ft_boolean_syntax)]; - #define mysql_tmpdir (my_tmpdir(&mysql_tmpdir_list)) - extern MY_TMPDIR mysql_tmpdir_list; - diff --git a/databases/mysql41-server/files/patch-sql_sql_parse.cc b/databa= ses/mysql41-server/files/patch-sql_sql_parse.cc deleted file mode 100644 index 418d6d2..0000000 --- a/databases/mysql41-server/files/patch-sql_sql_parse.cc +++ /dev/null @@ -1,82 +0,0 @@ ---- sql/sql_parse.cc 2007-06-12 12:47:36 +0000 -+++ sql/sql_parse.cc 2008-02-29 09:55:00 +0000 -@@ -65,7 +65,8 @@ - const char *table_name); - =20 - static TABLE_LIST* get_table_by_alias(TABLE_LIST* tl, const char* db, -- const char* alias); =20 -+ const char* alias); -+static bool test_if_data_home_dir(const char *dir); -=20 - const char *any_db=3D"*any*"; // Special symbol for check_access -=20 -@@ -2531,6 +2532,20 @@ - "INDEX DIRECTORY option ignored"); - create_info.data_file_name=3D create_info.index_file_name=3D NULL; - #else -+ -+ if (test_if_data_home_dir(lex->create_info.data_file_name)) -+ { -+ my_error(ER_WRONG_ARGUMENTS,MYF(0),"DATA DIRECORY"); -+ res=3D -1; -+ break; -+ } -+ if (test_if_data_home_dir(lex->create_info.index_file_name)) -+ { -+ my_error(ER_WRONG_ARGUMENTS,MYF(0),"INDEX DIRECORY"); -+ res=3D -1; -+ break; -+ } -+ - /* Fix names if symlinked tables */ - if (append_file_to_dir(thd, &create_info.data_file_name, - create_table->real_name) || -@@ -5920,3 +5935,47 @@ - return negated; - return new Item_func_not(expr); - } -+ -+ -+/* -+ Check if path does not contain mysql data home directory -+ -+ SYNOPSIS -+ test_if_data_home_dir() -+ dir directory -+ conv_home_dir converted data home directory -+ home_dir_len converted data home directory length -+ -+ RETURN VALUES -+ 0 ok -+ 1 error =20 -+*/ -+ -+static bool test_if_data_home_dir(const char *dir) -+{ -+ char path[FN_REFLEN], conv_path[FN_REFLEN]; -+ uint dir_len, home_dir_len=3D strlen(mysql_unpacked_real_data_home); -+ DBUG_ENTER("test_if_data_home_dir"); -+ -+ if (!dir) -+ DBUG_RETURN(0); -+ -+ (void) fn_format(path, dir, "", "", -+ (MY_RETURN_REAL_PATH|MY_RESOLVE_SYMLINKS)); -+ dir_len=3D unpack_dirname(conv_path, dir); -+ -+ if (home_dir_len <=3D dir_len) -+ { -+ if (lower_case_file_system) -+ { -+ if (!my_strnncoll(default_charset_info, (const uchar*) conv_path, -+ home_dir_len, -+ (const uchar*) mysql_unpacked_real_data_home, -+ home_dir_len)) -+ DBUG_RETURN(1); -+ } -+ else if (!memcmp(conv_path, mysql_unpacked_real_data_home, home_dir_l= en)) -+ DBUG_RETURN(1); -+ } -+ DBUG_RETURN(0); -+} - diff --git a/databases/mysql41-server/pkg-plist.client b/databases/mysql41-= server/pkg-plist.client index 94d6384..556634e 100644 --- a/databases/mysql41-server/pkg-plist.client +++ b/databases/mysql41-server/pkg-plist.client @@ -11,6 +11,7 @@ bin/mysqlmanager-pwgen bin/mysqlmanagerc bin/mysqlshow bin/mysqltest +include/mysql/abi_check include/mysql/errmsg.h include/mysql/keycache.h include/mysql/m_ctype.h @@ -25,7 +26,6 @@ include/mysql/my_list.h include/mysql/my_net.h include/mysql/my_no_pthread.h include/mysql/my_pthread.h -include/mysql/my_semaphore.h include/mysql/my_sys.h include/mysql/my_xml.h include/mysql/mysql.h --=20 1.6.0.6 --- mysql41-upgrade-to-4.1.25.diff ends here --- --=20 Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ # ale 2008-12-30 14:02:23 UTC FreeBSD ports repository Modified files: databases/mysql41-server Makefile distinfo pkg-plist pkg-plist.client databases/mysql41-server/files patch-sql::mysqld.cc Removed files: databases/mysql41-server/files patch-sql_mysql_priv.h patch-sql_sql_parse.cc Log: Update to 4.1.25 release. PR: ports/130023 Submitted by: Eygene Ryabinkin <rea-fbsd@codelabs.ru> Revision Changes Path 1.230 +4 -4 ports/databases/mysql41-server/Makefile 1.94 +3 -3 ports/databases/mysql41-server/distinfo 1.6 +0 -21 ports/databases/mysql41-server/files/patch-sql::mysqld.cc 1.2 +0 -11 ports/databases/mysql41-server/files/patch-sql_mysql_priv.h (dead) 1.2 +0 -82 ports/databases/mysql41-server/files/patch-sql_sql_parse.cc (dead) 1.78 +1 -1 ports/databases/mysql41-server/pkg-plist 1.26 +1 -1 ports/databases/mysql41-server/pkg-plist.client _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org" State Changed From-To: open->closed Updated with a different tarball, thanks for submitting. |