[94599] trunk/dports/databases/percona

pixilla at macports.org pixilla at macports.org
Sun Jun 24 15:44:05 PDT 2012


Revision: 94599
          https://trac.macports.org/changeset/94599
Author:   pixilla at macports.org
Date:     2012-06-24 15:44:01 -0700 (Sun, 24 Jun 2012)
Log Message:
-----------
databases/percona:
- Upgrade to version 5.5.24 release 26.0.

Modified Paths:
--------------
    trunk/dports/databases/percona/Portfile
    trunk/dports/databases/percona/files/percona

Added Paths:
-----------
    trunk/dports/databases/percona/files/macports-default.cnf
    trunk/dports/databases/percona/files/my.cnf
    trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-CMakeLists.txt.diff
    trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-src-auth_pam_common.h.diff

Removed Paths:
-------------
    trunk/dports/databases/percona/files/patch-storage-innobase-buf-buf0buf.c.diff

Modified: trunk/dports/databases/percona/Portfile
===================================================================
--- trunk/dports/databases/percona/Portfile	2012-06-24 21:00:12 UTC (rev 94598)
+++ trunk/dports/databases/percona/Portfile	2012-06-24 22:44:01 UTC (rev 94599)
@@ -5,8 +5,11 @@
 
 name                percona
 set name_mysql      ${name}
-set version_mysql   5.5.23
-set release         25.3
+set version_mysql   5.5.24
+set release         26.0
+# Please set revision_client and revision_server to 0 if you bump version_mysql or release.
+set revision_client 0
+set revision_server 0
 version             ${version_mysql}-${release}
 categories          databases
 platforms           darwin
@@ -21,6 +24,7 @@
 
     set branch          [join [lrange [split ${version} .] 0 1] .]
 
+    revision            ${revision_client}
     license             GPL-2
     description         Multithreaded SQL database server
     long_description    MySQL is an open-source, multi-threaded SQL database with a command \
@@ -37,46 +41,66 @@
     patchfiles          patch-cmake-install_layout.cmake.diff
     # http://bugs.mysql.com/bug.php?id=65050
     patchfiles-append   patch-configure.cmake.diff
-    # https://bugs.launchpad.net/percona-server/+bug/997496
-    patchfiles-append   patch-storage-innobase-buf-buf0buf.c.diff
+    # https://code.launchpad.net/~stewart/percona-pam-for-mysql/bug1012488
+    patchfiles-append   patch-plugin-percona-pam-for-mysql-CMakeLists.txt.diff \
+                        patch-plugin-percona-pam-for-mysql-src-auth_pam_common.h.diff
 
-    checksums           rmd160  7e2cedb0e4ecc87389a506eb16d34fee30890b75 \
-                        sha256  4173c39a06a45d399725e334d716716b871f4b43b90dad9faf3afbeb61acb00e
+    checksums           rmd160  16d4c9958b002f45673e64c1bc5d798ccc21b319 \
+                        sha256  5b54738099156b44d387142a875ff529895406a75652ebb4654cabd3597f1f56
 
     depends_lib-append  port:zlib \
-                        port:readline \
                         port:cmake
-    depends_run         port:mysql_select
+    depends_run-append  port:mysql_select
 
     select.group        mysql
-    select.file         ${filespath}/${name}
+    select.file         ${filespath}/${name_mysql}
 
-    archcheck.files     lib/libz.dylib \
-                        lib/libreadline.dylib
+    archcheck.files     lib/libz.dylib
 
+    post-extract {
+        file mkdir ${worksrcpath}/build_macports/macports
+        copy ${filespath}/macports-default.cnf \
+            ${filespath}/my.cnf \
+            ${worksrcpath}/build_macports/macports/
+    }
+
     post-patch {
-        reinplace "s|@NAME@|${name}|g" ${worksrcpath}/cmake/install_layout.cmake
+        reinplace "s|@NAME@|${name_mysql}|g" \
+            ${worksrcpath}/cmake/install_layout.cmake
+        reinplace "s|@NAME@|${name_mysql}|g" \
+            ${worksrcpath}/build_macports/macports/macports-default.cnf \
+            ${worksrcpath}/build_macports/macports/my.cnf
+        reinplace "s|@PREFIX@|${prefix}|g" \
+            ${worksrcpath}/build_macports/macports/macports-default.cnf \
+            ${worksrcpath}/build_macports/macports/my.cnf
     }
 
+    configure.cmd       cmake ..
+    configure.dir       ${worksrcpath}/build_macports
+    build.dir           ${worksrcpath}/build_macports
+
     configure.args-delete \
                         -DCMAKE_INSTALL_NAME_DIR=${prefix}/lib
     configure.args-append \
-                        -DCMAKE_INSTALL_NAME_DIR:STRING=${prefix}/lib/${name}/mysql \
-                        -DINSTALL_LAYOUT=MACPORTS \
-                        -DSYSCONFDIR:PATH=${prefix}/etc/${name} \
-                        -DMYSQL_UNIX_ADDR:PATH=${prefix}/var/run/${name}/mysqld.sock \
-                        -DMYSQL_DATADIR:PATH=${prefix}/var/db/${name} \
+                        -DCMAKE_INSTALL_NAME_DIR:STRING=${prefix}/lib/${name_mysql}/mysql \
+                        -DINSTALL_LAYOUT:STRING=MACPORTS \
+                        -DSYSCONFDIR:PATH=${prefix}/etc/${name_mysql} \
+                        -DMYSQL_UNIX_ADDR:PATH=${prefix}/var/run/${name_mysql}/mysqld.sock \
+                        -DMYSQL_DATADIR:PATH=${prefix}/var/db/${name_mysql} \
                         -DDEFAULT_CHARSET:STRING=utf8 \
                         -DDEFAULT_COLLATION:STRING=utf8_general_ci \
                         -DWITH_EMBEDDED_SERVER:BOOL=OFF \
-                        -DWITH_READLINE:BOOL=ON \
                         -DWITH_ZLIB:STRING=system \
-                        -DWITH_UNIT_TESTS:BOOL=OFF \
+                        -DWITH_UNIT_TESTS:BOOL=ON \
                         -DENABLE_GCOV:BOOL=OFF \
-                        -DENABLE_DTRACE:BOOL=OFF
+                        -DENABLE_DTRACE:BOOL=OFF \
+                        -DWITH_READLINE:BOOL=ON \
+                        -DWITH_LIBEDIT:BOOL=OFF \
+                        -DWITH_LIBWRAP:BOOL=ON \
+                        -DWITH_SSL:STRING=no
 
     post-build {
-        set dirs ${worksrcpath}
+        set dirs ${worksrcpath}/build_macports
         foreach dir ${dirs} {
             reinplace -E {s|-arch [a-z0-9_]+||g} \
                 ${dir}/scripts/mysql_config \
@@ -84,43 +108,77 @@
         }
     }
 
-    pre-destroot {
-        xinstall -m 755 -d ${destroot}${prefix}/etc/${name}
-        destroot.keepdirs-append ${destroot}${prefix}/etc/${name}
-    }
-
     post-destroot {
         # proc portdestroot::destroot_finish fails to find and compress our man pages
         # so borrow the compress command and run on our files now.
         set manpath "${destroot}${prefix}/share/man"
         set gzip [findBinary gzip ${portutil::autoconf::gzip_path}]
-        foreach manpage [glob -type f ${destroot}${prefix}/share/man/${name}/man\[1-9\]/*] {
+        foreach manpage [glob -type f ${destroot}${prefix}/share/man/${name_mysql}/man\[1-9\]/*] {
             # Fix paths in manpages
-            reinplace "s|/etc/|${prefix}/etc/${name}/|g" ${manpage}
+            reinplace "s|/etc/|${prefix}/etc/${name_mysql}/|g" ${manpage}
             # Compress all manpages with gzip
             system "$gzip -9vf ${manpage}"
         }
-        foreach samp_conffile [glob -type f ${destroot}${prefix}/share/${name}/support-files/my-*.cnf] {
+        foreach samp_conffile [glob -type f ${destroot}${prefix}/share/${name_mysql}/support-files/my-*.cnf] {
             # Fix paths in sample configuration files
-            reinplace "s|/etc/my.cnf|${prefix}/etc/${name}/my.cnf|g" ${samp_conffile}
+            reinplace "s|/etc/my.cnf|${prefix}/etc/${name_mysql}/my.cnf|g" ${samp_conffile}
         }
+        xinstall -m 755 -o root -d \
+            ${destroot}${prefix}/etc/${name_mysql}
+        copy ${worksrcpath}/build_macports/macports/macports-default.cnf \
+            ${destroot}${prefix}/etc/${name_mysql}/
+        xinstall -m 755 -o root -d \
+            ${destroot}${prefix}/share/${name_mysql}/support-files/macports
+        copy ${worksrcpath}/build_macports/macports/my.cnf \
+            ${destroot}${prefix}/share/${name_mysql}/support-files/macports/
     }
 
     post-install {
-        if {![file exists ${prefix}/etc/LaunchDaemons/org.macports.${name}/org.macports.${name}-server.plist]} {
-            ui_msg "The ${name} client has been installed."
-            ui_msg "To install the ${name} server, install the ${name}-server port."
+        if {![file exists ${prefix}/etc/LaunchDaemons/org.macports.${name_mysql}/org.macports.${name_mysql}-server.plist]} {
+            ui_msg "The ${name_mysql} client has been installed."
+            ui_msg "To install the ${name_mysql} server, install the ${name_mysql}-server port."
         }
     }
 
+    pre-activate {
+        if { [file exists ${prefix}/etc/${name_mysql}/macports-default.cnf]
+            && ![catch {set vers [lindex [registry_active ${name_mysql}-server] 0]}]
+            && [vercmp [lindex $vers 1] 5.5.24-26.0] < 0 } {
+        
+            set deactivate_proc registry_deactivate_composite
+            if {[info commands registry_deactivate_composite] == {}} {
+                set deactivate_proc registry_deactivate
+            }
+            $deactivate_proc ${name_mysql}-server "" [list ports_nodepcheck 1]
+        }
+    }
+
+    post-activate {
+        if {![file exists ${prefix}/etc/${name_mysql}/my.cnf]} {
+            copy ${destroot}${prefix}/share/${name_mysql}/support-files/macports/my.cnf \
+                ${prefix}/etc/${name_mysql}/
+        }
+    }
+
     variant openssl description {Enable OpenSSL support} {
 
-        license-append          OpenSSL SSLeay
         depends_lib-append      port:openssl
-        configure.args-append   -DWITH_SSL:STRING=ON
+        configure.args-delete   -DWITH_SSL:STRING=no
+        configure.args-append   -DWITH_SSL:STRING=system
         archcheck.files-append  lib/libssl.dylib
     }
 
+    variant system_readline description {Use system readline instead of bundled readline} {
+    
+        # Add readline support.
+        # "-DWITH_READLINE:BOOL=OFF" has the peculiar meaning "do not use the bundled copy
+        # of readline but use the system's (i.e. MacPorts') copy of readline"
+        depends_lib-append      port:readline
+        configure.args-delete   -DWITH_READLINE:BOOL=ON
+        configure.args-append   -DWITH_READLINE:BOOL=OFF
+        archcheck.files-append  lib/libreadline.dylib
+    }
+
     livecheck.type          regex
     livecheck.url           http://www.percona.com/downloads/Percona-Server-${branch}/
     livecheck.version       ${version_mysql}-${release}
@@ -129,7 +187,7 @@
 
 subport ${name_mysql}-server {
 
-    revision            1
+    revision            ${revision_server}
     license             BSD
     description         Run ${name_mysql} as server
     long_description    ${description}
@@ -154,7 +212,8 @@
     build {}
 
     destroot {
-        xinstall -m 755 -o root -d ${destroot}${prefix}/var/run
+        xinstall -m 755 -o root -d \
+            ${destroot}${prefix}/var/run
         xinstall -m 755 -o ${mysqluser} -g ${mysqluser} -d \
             ${destroot}${prefix}/etc/${name_mysql} \
             ${destroot}${prefix}/var/db/${name_mysql} \
@@ -164,34 +223,12 @@
             ${destroot}${prefix}/var/db/${name_mysql} \
             ${destroot}${prefix}/var/log/${name_mysql} \
             ${destroot}${prefix}/var/run/${name_mysql}
-        set fp [open "${destroot}${prefix}/etc/${name_mysql}/macports-default.cnf" "w"]
-        puts $fp "# WARNING! ANY CHANGES TO THIS FILE WILL BE LOST ON UNINSTALL/UPGRADES!"
-        puts $fp "# Make your changes to ${prefix}/etc/${name_mysql}/my.cnf"
-        puts $fp "# YOU HAVE BEEN WARNED!"
-        puts $fp ""
-        puts $fp "# MacPorts default options"
-        puts $fp "\[mysqld\]"
-        puts $fp "# skip-networking so multple mysql server ports can be loaded"
-        puts $fp "# without each competing for port 3306."
-        puts $fp "# One can always put the servers on different ports and"
-        puts $fp "# remove or comment this option."
-        puts $fp "skip-networking"
-        close $fp
     }
 
-    post-activate {
-        if {![file exists ${prefix}/etc/${name_mysql}/my.cnf]} {
-            set fp [open "${prefix}/etc/${name_mysql}/my.cnf" "w"]
-            puts $fp "# Use default MacPorts settings"
-            puts $fp "!include ${prefix}/etc/${name_mysql}/macports-default.cnf"
-            close $fp
-        }
-    }
-
     notes "
 If this is a new install you might want to run:
 
-\$ sudo -u ${mysqluser} ${prefix}/lib/${name_mysql}/scripts/mysql_install_db
+\$ sudo -u ${mysqluser} ${prefix}/lib/${name_mysql}/bin/mysql_install_db
 "
 
     livecheck.type          none

Added: trunk/dports/databases/percona/files/macports-default.cnf
===================================================================
--- trunk/dports/databases/percona/files/macports-default.cnf	                        (rev 0)
+++ trunk/dports/databases/percona/files/macports-default.cnf	2012-06-24 22:44:01 UTC (rev 94599)
@@ -0,0 +1,11 @@
+# WARNING! ANY CHANGES TO THIS FILE WILL BE LOST ON UNINSTALL/UPGRADES!
+# Make your changes to @PREFIX@/etc/@NAME@/my.cnf
+# YOU HAVE BEEN WARNED!
+
+# MacPorts default options
+[mysqld]
+# skip-networking so multple mysql server ports can be loaded
+# without each competing for port 3306.
+# One can always put the servers on different ports and
+# remove or comment this option.
+skip-networking

Added: trunk/dports/databases/percona/files/my.cnf
===================================================================
--- trunk/dports/databases/percona/files/my.cnf	                        (rev 0)
+++ trunk/dports/databases/percona/files/my.cnf	2012-06-24 22:44:01 UTC (rev 94599)
@@ -0,0 +1,2 @@
+# Use default MacPorts settings
+!include @PREFIX@/etc/@NAME@/macports-default.cnf

Added: trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-CMakeLists.txt.diff
===================================================================
--- trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-CMakeLists.txt.diff	                        (rev 0)
+++ trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-CMakeLists.txt.diff	2012-06-24 22:44:01 UTC (rev 94599)
@@ -0,0 +1,11 @@
+--- a/plugin/percona-pam-for-mysql/CMakeLists.txt	2012-06-24 11:50:56.000000000 -0700
++++ b/plugin/percona-pam-for-mysql/CMakeLists.txt	2012-06-24 13:48:30.000000000 -0700
+@@ -17,6 +17,8 @@
+ CHECK_LIBRARY_EXISTS(pam pam_authenticate "" HAVE_PAM) 
+ CHECK_SYMBOL_EXISTS(getpwnam_r "pwd.h" HAVE_GETPWNAM_R)
+ CHECK_SYMBOL_EXISTS(getgrgid_r "grp.h" HAVE_GETGRGID_R)
++CHECK_INCLUDE_FILES (security/pam_misc.h HAVE_SECURITY_PAM_MISC_H)
++CHECK_INCLUDE_FILES (security/openpam.h HAVE_SECURITY_OPENPAM_H)
+ IF(HAVE_PAM AND HAVE_GETPWNAM_R AND HAVE_GETGRGID_R)
+   SET(AUTH_PAM_COMMON_SOURCES 
+     src/auth_pam_common.c src/lib_auth_pam_client.c src/lib_auth_pam_client.h

Added: trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-src-auth_pam_common.h.diff
===================================================================
--- trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-src-auth_pam_common.h.diff	                        (rev 0)
+++ trunk/dports/databases/percona/files/patch-plugin-percona-pam-for-mysql-src-auth_pam_common.h.diff	2012-06-24 22:44:01 UTC (rev 94599)
@@ -0,0 +1,14 @@
+--- a/plugin/percona-pam-for-mysql/src/auth_pam_common.h	2012-06-24 11:50:56.000000000 -0700
++++ b/plugin/percona-pam-for-mysql/src/auth_pam_common.h	2012-06-24 13:47:31.000000000 -0700
+@@ -31,7 +31,11 @@
+ 
+ #include <security/pam_appl.h>
+ #include <security/pam_modules.h>
++#if HAVE_SECURITY_PAM_MISC_H
+ #include <security/pam_misc.h>
++#elif HAVE_SECURITY_OPENPAM_H
++#include <security/openpam.h>
++#endif
+ 
+ #include <mysql/plugin.h>
+ #include <mysql/plugin_auth.h>

Deleted: trunk/dports/databases/percona/files/patch-storage-innobase-buf-buf0buf.c.diff
===================================================================
--- trunk/dports/databases/percona/files/patch-storage-innobase-buf-buf0buf.c.diff	2012-06-24 21:00:12 UTC (rev 94598)
+++ trunk/dports/databases/percona/files/patch-storage-innobase-buf-buf0buf.c.diff	2012-06-24 22:44:01 UTC (rev 94599)
@@ -1,15 +0,0 @@
-=== modified file 'Percona-Server/storage/innobase/buf/buf0buf.c'
---- Percona-Server/storage/innobase/buf/buf0buf.c	2012-05-02 07:37:27 +0000
-+++ Percona-Server/storage/innobase/buf/buf0buf.c	2012-05-10 08:22:32 +0000
-@@ -57,7 +57,9 @@
- /* prototypes for new functions added to ha_innodb.cc */
- trx_t* innobase_get_trx();
- 
--inline void _increment_page_get_statistics(buf_block_t* block, trx_t* trx)
-+static inline
-+void
-+_increment_page_get_statistics(buf_block_t* block, trx_t* trx)
- {
- 	ulint           block_hash;
- 	ulint           block_hash_byte;
-

Modified: trunk/dports/databases/percona/files/percona
===================================================================
--- trunk/dports/databases/percona/files/percona	2012-06-24 21:00:12 UTC (rev 94598)
+++ trunk/dports/databases/percona/files/percona	2012-06-24 22:44:01 UTC (rev 94599)
@@ -17,8 +17,8 @@
 lib/percona/bin/mysql_convert_table_format
 lib/percona/bin/mysql_find_rows
 lib/percona/bin/mysql_fix_extensions
+-
 lib/percona/bin/mysql_install_db
--
 lib/percona/bin/mysql_plugin
 lib/percona/bin/mysql_secure_installation
 lib/percona/bin/mysql_setpermission
@@ -32,16 +32,38 @@
 lib/percona/bin/mysqlbinlog
 lib/percona/bin/mysqlbug
 lib/percona/bin/mysqlcheck
+lib/percona/bin/mysqld
 lib/percona/bin/mysqld_multi
 lib/percona/bin/mysqld_safe
 lib/percona/bin/mysqldump
 lib/percona/bin/mysqldumpslow
 lib/percona/bin/mysqlhotcopy
 lib/percona/bin/mysqlimport
+-
 lib/percona/bin/mysqlshow
 lib/percona/bin/mysqlslap
 lib/percona/bin/mysqltest
 -
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
 lib/percona/bin/perror
 lib/percona/bin/replace
 lib/percona/bin/resolve_stack_dump
@@ -65,6 +87,7 @@
 share/man/percona/man1/mysql_convert_table_format.1.gz
 share/man/percona/man1/mysql_find_rows.1.gz
 share/man/percona/man1/mysql_fix_extensions.1.gz
+-
 share/man/percona/man1/mysql_install_db.1.gz
 share/man/percona/man1/mysql_plugin.1.gz
 share/man/percona/man1/mysql_secure_installation.1.gz
@@ -89,8 +112,30 @@
 share/man/percona/man1/mysqlslap.1.gz
 share/man/percona/man1/mysqltest.1.gz
 share/man/percona/man1/mysqltest_embedded.1.gz
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
 share/man/percona/man1/perror.1.gz
 share/man/percona/man1/replace.1.gz
 share/man/percona/man1/resolve_stack_dump.1.gz
 share/man/percona/man1/resolveip.1.gz
 share/man/percona/man8/mysqld.8.gz
+-
+-
+-
+-
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120624/801207f4/attachment-0001.html>


More information about the macports-changes mailing list