Testing a compile on FreeBSD. gmake[2]: Entering directory '/usr/home/wash/Tools/Dovecot/fts-xapian/src' /bin/sh ../libtool --tag=CXX --mode=compile c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp libtool: compile: c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp -fPIC -DPIC -o .libs/fts-backend-xapian.o fts-backend-xapian.cpp:3:10: fatal error: 'xapian.h' file not found #include <xapian.h> ^~~~~~~~~~
Well, I installed xapian-core and the xapian.h is in /usr/local/include/ I can overcome the fatal error by doing: env CPPFLAGS=-I/usr/local/include PANDOC=false ./configure --prefix=/opt --with-dovecot=/opt/dovecot2.3/lib/dovecot/ Is that something that you can address within the code or we (*BSD) have to live with it? During `make`, the following warning is generated: /bin/sh ../libtool --tag=CXX --mode=compile c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/usr/local/include -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp libtool: compile: c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/usr/local/include -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp -fPIC -DPIC -o .libs/fts-backend-xapian.o fts-backend-xapian.cpp:486:14: warning: format string is not a string literal (potentially insecure) [-Wformat-security] i_warning(e.get_msg().c_str()); ^~~~~~~~~~~~~~~~~~~ fts-backend-xapian.cpp:486:14: note: treat the string as an argument to avoid this i_warning(e.get_msg().c_str()); ^ "%s", 1 warning generated. Is that something you can look into as well? On Mon, 14 Jan 2019 at 11:43, Joan Moreau <j...@grosjo.net> wrote: > THank you Odhiambo. I updated accordingly > > > > > > On 2019-01-14 08:07, Odhiambo Washington wrote: > > In your README.md, perhaps "This project intends to provide a > straightforward and simple *procedure *to configure FTS plugin for > Dovecot, leveraging the efforts by the Xapian.org team." is better?? > Also in the part after cloning from git: > > ./configure --prefix=/usr --with-dovecot=/path/to/dovecot [ This > /path/to/dovecot is not obvious. Is it the dovecot binary or what??] > > On Mon, 14 Jan 2019 at 09:42, Joan Moreau via dovecot <dovecot@dovecot.org> > wrote: > >> Thank you Stephan. >> >> The version here shall be up and running : >> https://github.com/grosjo/fts-xapian >> >> >> >> >> >> On 2019-01-14 00:07, Stephan Bosch wrote: >> >> >> >> Op 13/01/2019 om 21:25 schreef Joan Moreau via dovecot: >> >> >> I tried to combined it, the "autoreconf" errors are solved >> >> Now, when I type "make install", the lib is not pushed into dovecot >> folder, but somewhere in /usr/local/... >> >> How to adjust this to have it arriving in the proper folder ? >> >> >> Depends on your system. It mostly a matter of setting a proper --prefix >> directory for configure, but other paths are configurable as well. I >> usually check what the official distribution package for Dovecot is doing >> and use that as a basis. >> >> For Debian I use the following configure command: >> >> ./configure --with-ldap=plugin --with-ssl=openssl --with-sql=plugin >> --with-lua=plugin --with-pgsql --with-mysql --with-sqlite \ >> --with-gssapi=plugin --with-solr --with-ioloop=best >> --enable-maintainer-mode \ >> --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib >> --localstatedir=/var --mandir=/usr/share/man \ >> --infodir=/usr/share/info >> --with-moduledir=/usr/lib/dovecot/modules --disable-rpath --disable-static >> >> Regards, >> >> Stephan >> >> >> On 2019-01-13 21:01, Tuomi, Aki wrote: >> >> You copied your Makefile.am there. Stephan made you a working version, >> can you try that? >> (sorry for dup) >> Aki >> -------- Original message -------- >> From: Joan Moreau <j...@grosjo.net> >> Date: 13/01/2019 21:39 (GMT+02:00) >> To: Stephan Bosch <step...@rename-it.nl> >> Cc: Aki Tuomi <aki.tu...@open-xchange.com> >> Subject: Re: [FTS Xapian] Beta release >> >> I used the skeleton from Aki : https://github.com/grosjo/fts-xapian >> >> However, when I try to act as a visitor, I reach teh follwoing error: >> >> # autoreconf -vi >> autoreconf: Entering directory `.' >> autoreconf: configure.ac: not using Gettext >> autoreconf: running: aclocal -I m4 >> autoreconf: configure.ac: tracing >> autoreconf: running: libtoolize --copy >> libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, '.'. >> libtoolize: copying file './ltmain.sh' >> libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. >> libtoolize: copying file 'm4/libtool.m4' >> libtoolize: copying file 'm4/ltoptions.m4' >> libtoolize: copying file 'm4/ltsugar.m4' >> libtoolize: copying file 'm4/ltversion.m4' >> libtoolize: copying file 'm4/lt~obsolete.m4' >> autoreconf: running: /usr/bin/autoconf >> autoreconf: running: /usr/bin/autoheader >> autoreconf: running: automake --add-missing --copy --no-force >> configure.ac:9: installing './compile' >> configure.ac:11: installing './config.guess' >> configure.ac:11: installing './config.sub' >> configure.ac:7: installing './install-sh' >> configure.ac:7: installing './missing' >> src/Makefile.am: installing './depcomp' >> /usr/share/automake-1.16/am/depend2.am: error: am__fastdepCXX does not >> appear in AM_CONDITIONAL >> /usr/share/automake-1.16/am/depend2.am: The usual way to define >> 'am__fastdepCXX' is to add 'AC_PROG_CXX' >> /usr/share/automake-1.16/am/depend2.am: to 'configure.ac' and run >> 'aclocal' and 'autoconf' again >> src/Makefile.am: error: C++ source seen but 'CXX' is undefined >> src/Makefile.am: The usual way to define 'CXX' is to add 'AC_PROG_CXX' >> src/Makefile.am: to 'configure.ac' and run 'autoconf' again. >> src/Makefile.am:11: warning: variable 'NOPLUGIN_LDFLAGS' is defined but >> no program or >> src/Makefile.am:11: library has 'NOPLUGIN' as canonical name (possible >> typo) >> autoreconf: automake failed with exit status: 1 >> >> >> >> On 2019-01-13 20:24, Stephan Bosch wrote: >> >> Oh, right, a distribution tarball doesn't include some of the >> necessary files for your repository like autogen.sh and >> .gitignore. The attached tarball includes all those and is ready >> for `git init`. The previous tarball was made with `make >> distcheck` from this one. >> >> Regards, >> >> Stephan. >> >> Op 13/01/2019 om 20:14 schreef Stephan Bosch: >> >> Hi Joan, >> >> Op 13/01/2019 om 19:03 schreef Aki Tuomi: >> >> Yes, from compiling point of view it is done. >> >> Unfortunately what is not done is all the other work >> involved, such as fixing all the inevitable bugs it has >> and maintaining it. We do not want, at this moment, take >> up maintaining and developing yet another FTS plugin as >> we have plenty of things to do already. >> >> I invite you to setup your own repository and provide >> this plugin from there, being the maintainer of this >> plugin. We can add a link to your plugin on our FTS page >> so people can also find it. >> >> There are other plugins like this, e.g. >> https://github.com/st3fan/dovecot-xaps-plugin >> >> >> I turned the code you provided into a separate plugin >> package. The distribution tarball is attached. >> >> Notable changes: >> >> - Added example copyright headers and COPYING and AUTHORS >> files. You should modify those to your preference. >> - Added README and INSTALL files (in markdown using Pandoc). >> Those need to be amended with details. >> - Amended the plugin code to display a debug message with the >> plugin name and version upon plugin load. >> >> >> I advise you to turn this into a git repository and continue from >> there. >> >> I do not recommend releasing this plugin with the >> -fpermissive flag and the resulting warning as it is now. But >> I'm assuming this is still a work in progress, so that is OK. >> >> Regards, >> >> Stephan. >> >> >> On 13 January 2019 at 19:52 Joan Moreau <j...@grosjo.net >> <mailto:j...@grosjo.net>> wrote: >> >> >> The only point here of this fts-xapian is to get rid >> of solr (because it >> >> is just a nightmare to setup) and squat (because it is >> considere >> obsolete). >> >> I already sent the changed in configure.ac, makefile.am >> , etc.. in order >> to include it in the dovecot, and it compiles properly >> >> >> The only remaining point is to push it in hte git (yes, >> everything is >> already done) >> >> On 2019-01-13 18:45, Aki Tuomi wrote: >> >> On 13 January 2019 at 17:05 Joan Moreau via >> dovecot <dovecot@dovecot.org >> <mailto:dovecot@dovecot.org>> wrote: >> >> Hi >> >> Please find attached the beta release of FTS >> Xapian, with the objective >> to replace fts_squat that is being deprecated. >> >> >> Configuration is exactly the same as for fts_squat: >> >> plugin { >> >> plugin = fts fts_xapian (...) >> fts = xapian >> fts_autoindex = yes >> fts_enforced = yes >> fts_xapian = partial=2 full=20 >> >> This is installed on my production server >> (>120Gb of mailboxes), and I >> will observe it during the coming days. >> >> >> I will definitely appreciate that this is added in >> the core git of >> docevot, in order to have a versionning of >> it, to remove squat and let >> >> basic users able to avoid Solr alternative as much >> as possible. >> >> Thanks >> >> JM >> >> Hi! >> >> I still recommend you setup a, say, github >> repository for your plugin. We are not able to >> currently include your work in dovecot core as it >> is more work than just pushing the code into the >> repo. Maybe it can be included in the future. >> >> If you want, I can help you in setting up the >> required configuration scripts and such to make >> it possible to compile it as plugin. >> >> Then anyone can download it and install it for >> their dovecot, even if dovecot itself has been >> installed from packages, and also makes it >> possible for package maintainers to consider >> including it in distributions. >> >> Aki >> >> >> >> > > -- > Best regards, > Odhiambo WASHINGTON, > Nairobi,KE > +254 7 3200 0004/+254 7 2274 3223 > "Oh, the cruft.", grep ^[^#] :-) > > -- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 "Oh, the cruft.", grep ^[^#] :-)