Added support for building the mecab plugin library (JEN-427) #317
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
BUG:
libpluginmecab.so is missing from 5.7.10-1rc1
https://bugs.launchpad.net/percona-server/+bug/1534617
JEN-427
DOCS:
https://dev.mysql.com/doc/refman/5.7/en/fulltext-search-mecab.html
INFO:
The library is statically built into libpluginmecab.so on centos and dynamically linked on ubuntu (probably because the packages exists in ubuntu/debian repositories) - although MySQL documentation says it's statically linked on all linuxes - seems it's not.
Where system packages exist it can be built with "-DWITH_MECAB=system" and that will do a dynamic link and will not bundle config and other stuff - we do this on ubuntu/debian.
If you do a "-DWITH_MECAB=<path_to_lib>" it will statically link the library into libpluginmecab.so and bundle config - we do this on centos with some included dictionary (but we currently don't have packages on centos so we build from sources every time - link below).
The change in this PR is basically just adding the option to build with -DWITH_MECAB=system|path to build-binary.sh, debian package (built with system). Rpm has optional build from before, now only the jenkins was changed to use it.
The sources for static builds are from here:
http://jenkins.percona.com/downloads/mecab/
TEST BUILDS:
http://jenkins.percona.com/job/percona-server-5.7-redhat-binary/63/
http://jenkins.percona.com/job/percona-server-5.7-debian-binary/32/
http://jenkins.percona.com/job/percona-server-5.7-debian-binary-notokudb/40/
http://jenkins.percona.com/job/percona-server-5.7-binaries-release/28/
TEST:
DEBIAN CONTENT:
TARBALL CONTENT:
RPM CONTENT:
RPM INSTALL:
I have setup the following option:
dicdir = /usr/lib64/mysql/mecab/dic/ipadic
in config file: /usr/etc/mecabrc
(otherwise you get an error on installation)