about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner2020-08-26 05:37:51 -0500
committerEfraim Flashner2020-08-26 05:38:46 -0500
commite830efcac72db22f42cab70055cda109f16303b1 (patch)
treebc8633fd8dd74551cf270a2abc170f5131e28318
parentfd141c17686f54d94dd68391298347de6007cf81 (diff)
downloadguix-bioinformatics-e830efcac72db22f42cab70055cda109f16303b1.tar.gz
add mysql-5.0, mysql-5.5
-rw-r--r--gn/packages/databases.scm119
1 files changed, 119 insertions, 0 deletions
diff --git a/gn/packages/databases.scm b/gn/packages/databases.scm
new file mode 100644
index 0000000..d5567e9
--- /dev/null
+++ b/gn/packages/databases.scm
@@ -0,0 +1,119 @@
+(define-module (gn packages databases)
+  #:use-module (gnu packages)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages readline)
+  #:use-module (gnu packages tls))
+
+(define-public mysql-5.0
+  (package
+    (inherit mysql)
+    (version "5.0.96")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://downloads.mysql.com/archives/mysql-"
+                            (version-major+minor version)
+                            "/mysql-" version ".tar.gz"))
+        (sha256
+         (base32
+          "117w87bqj2vqxkiljcwyaxbkj5fygl5570zla0baln2ifwa3i1a3"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:configure-flags
+       (list
+         "--with-unix-socket-path=/var/run/mysqld/mysqld.sock"
+         "--with-extra-charsets=all"
+         "--enable-thread-safe-client"
+         "--without-openssl"
+         "--without-docs"
+         ;; Use system readline.
+         "--without-readline"
+         "--without-libedit")
+       ;; TODO: Enable tests.
+       ;#:test-target "test-force"
+       ;#:test-target "test-bt"
+       #:make-flags '("CXXFLAGS=-Wno-narrowing -fpermissive")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'pre-check
+           (lambda _
+             (setenv "PERL5LIB" (string-append
+                                  (getcwd) "/mqsql-test"
+                                  ":" (getenv "PERL5LIB")))
+             #t))
+         (add-after 'install 'clean-install-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (delete-file-recursively (string-append out "/mysql-test"))
+               (delete-file-recursively (string-append out "/sql-bench"))
+               (for-each delete-file
+                         (find-files (string-append out "/bin") "^mysqltest"))
+               #t))))))
+    (inputs
+     `(("ncurses" ,ncurses)
+       ("perl" ,perl)
+       ("procps" ,procps)
+       ("readline" ,readline)
+       ("zlib" ,zlib)))
+    (native-inputs `())))
+
+(define-public mysql-5.5
+  (package
+    (inherit mysql)
+    (version "5.5.62")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://downloads.mysql.com/archives/mysql-"
+                            (version-major+minor version)
+                            "/mysql-" version ".tar.gz"))
+        (sha256
+         (base32
+          "1mwrzwk9ap09s430fpdkyhvx5j2syd3xj2hyfzvanjphq4xqbrxi"))))
+    (arguments
+     `(#:configure-flags
+       '("-DBUILD_CONFIG=mysql_release"
+         "-DWITH_SSL=system"
+         "-DWITH_ZLIB=system"
+         "-DWITH_READLINE=OFF"
+         "-DWITH_LIBEDIT=OFF"
+         "-DDEFAULT_CHARSET=utf8"
+         "-DDEFAULT_COLLATION=utf8_general_ci"
+         "-DMYSQL_DATADIR=/var/lib/mysql"
+         "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
+         "-DINSTALL_INFODIR=share/mysql/docs"
+         "-DINSTALL_MANDIR=share/man"
+         "-DINSTALL_PLUGINDIR=lib/mysql/plugin"
+         "-DINSTALL_SCRIPTDIR=bin"
+         "-DINSTALL_INCLUDEDIR=include/mysql"
+         "-DINSTALL_DOCREADMEDIR=share/mysql/docs"
+         "-DINSTALL_SUPPORTFILESDIR=share/mysql"
+         "-DINSTALL_MYSQLSHAREDIR=share/mysql"
+         "-DINSTALL_DOCDIR=share/mysql/docs"
+         "-DINSTALL_SHAREDIR=share/mysql"
+         ;; Get rid of test data.
+         "-DINSTALL_MYSQLTESTDIR="
+         "-DINSTALL_SQLBENCHDIR=")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'clean-install-directories
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (delete-file-recursively (string-append out "/data"))
+               (for-each delete-file
+                         (find-files (string-append out "/bin") "_embedded$"))
+               #t))))))
+    (inputs
+     `(("libaio" ,libaio)
+       ("ncurses" ,ncurses)
+       ("openssl" ,openssl-1.0)
+       ("readline" ,readline)
+       ("zlib" ,zlib)))))