summaryrefslogtreecommitdiff
path: root/README-DEV
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2024-03-01 23:26:43 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2024-03-07 14:25:58 +0300
commit176d224b694b4f6ec2933fc9b8e3b76043659744 (patch)
treeb19c272941adef7fcdc7d2e4ee2d55d9c7235908 /README-DEV
parent0f00acbca40c056dcbba89423ac88dd819d222d9 (diff)
Release version 8.0.15+13v8.0.15+13
Add mysql-client package. Minor cleanups of the libmysqlclient library.
Diffstat (limited to 'README-DEV')
-rw-r--r--README-DEV22
1 files changed, 16 insertions, 6 deletions
diff --git a/README-DEV b/README-DEV
index 8cf054c..a32aef8 100644
--- a/README-DEV
+++ b/README-DEV
@@ -3,7 +3,8 @@ understanding will be useful when upgrading to a new upstream version.
The upstream package contains the MySQL server, libmysqlclient library and a
number of client/administrative utilities (mysql, mysqlcheck, etc). Currently,
-we only package libmysqlclient (see libmysqlclient/README-DEV for details).
+we only package libmysqlclient and mysql utility (see the respective
+README-DEV files for details).
We add the upstream package as a git submodule and symlink the required files
and subdirectories into the build2 package subdirectories. Then, when required,
@@ -29,7 +30,7 @@ however, that at the time of this writing the latest packaged versions are
different: 5.7.26 on Debian and 8.0.15 on Fedora. These files can be obtained
as follows:
-$ wget https://download.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/source/tree/Packages/c/community-mysql-8.0.15-1.fc30.src.rpm
+$ wget https://kojipkgs.fedoraproject.org/packages/community-mysql/8.0.15/1.fc30/src/community-mysql-8.0.15-1.fc30.src.rpm
$ rpm2cpio community-mysql-8.0.15-1.fc30.src.rpm | cpio -civ '*.spec'
#$ wget http://deb.debian.org/debian/pool/main/m/mysql-5.7/mysql-5.7_5.7.26-1.debian.tar.xz
@@ -38,9 +39,9 @@ $ rpm2cpio community-mysql-8.0.15-1.fc30.src.rpm | cpio -civ '*.spec'
As a side note, on Debian and Fedora the source, library, and headers are
packaged as follows:
- src library headers
-Debian/Ubuntu: mysql-5.7 libmysqlclient20 libmysqlclient-dev
-Fedora/RHEL: community-mysql community-mysql-libs community-mysql-devel
+ src library headers client
+Debian/Ubuntu: mysql-8.0 libmysqlclient21 libmysqlclient-dev mysql-client-core-8.0
+Fedora/RHEL: community-mysql community-mysql-libs community-mysql-devel community-mysql
Search for the Debian and Fedora packages at https://packages.debian.org/search
and https://apps.fedoraproject.org/packages/.
@@ -67,6 +68,14 @@ external dependencies that are not packaged for build2 we end up with:
See the configuration options description at
https://dev.mysql.com/doc/refman/8.0/en/source-configuration-options.html
+Note that the mysql utility cannot be built on POSIX without the system
+Readline or the system or bundled Editline (libedit). None of these libraries
+is currently packaged and so we can only use the bundled libedit library.
+However, the bundled libedit implementation requires ncurses library, which is
+not packaged either. Thus, we bundle our own reduced libedit implementation
+based on the libisocline library (see mysql-client/mysql/downstream/readline.h
+for details).
+
Normally, when packaging a cmake-based project, we try to deduce the source
file and compilation/linking option sets analyzing the root and
feature/component/platform-specific CMakeLists.txt and .cmake files. In
@@ -81,7 +90,8 @@ On POSIX:
$ mkdir build
$ cd build
$ cmake -DDOWNLOAD_BOOST=ON -DWITH_BOOST=../boost -DWITHOUT_SERVER=ON \
- -DENABLED_LOCAL_INFILE=ON -DWITH_ZLIB=system -DWITH_SSL=system ..
+ -DENABLED_LOCAL_INFILE=ON -DWITH_ZLIB=system -DWITH_SSL=system \
+ -DWITH_EDITLINE=system ..
$ make VERBOSE=1 >build.log 2>&1