Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 695396 - dev-libs/xapian-1.4.12[-glass] fails to build: backends/dbcheck.cc:451:35: error: expected ‘)’ before ‘GLASS_TABLE_EXTENSION’
Summary: dev-libs/xapian-1.4.12[-glass] fails to build: backends/dbcheck.cc:451:35: er...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: Normal normal
Assignee: Anthony Basile
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-22 10:35 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2019-10-26 23:07 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2019-09-22 10:35:12 UTC
dev-libs/xapian-1.4.12 fails to build with USE="-glass".
This problem does not occur with USE="glass".


/bin/sh ./libtool  --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12  -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/common -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/include -I'./include' -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/languages -Ilanguages -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/queryparser  -Wall -W -Wredundant-decls -Wpointer-arith -Wcast-qual -Wcast-align -Wformat-security -fno-gnu-keywords -Wundef -Woverloaded-virtual -Wstrict-null-sentinel -Wshadow -Wstrict-overflow=1 -Wlogical-op -Wmissing-declarations -Wdouble-promotion -Winit-self -fvisibility=hidden -fvisibility-inlines-hidden -march=native -O2 -fno-ident -frecord-gcc-switches -fstack-clash-protection -fstack-protector-all -mfunction-return=thunk -mindirect-branch=thunk -mindirect-branch-register -pipe -Wall -Werror=terminate -c -o backends/dbcheck.lo /var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12 -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/common -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/include -I./include -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/languages -Ilanguages -I/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/queryparser -Wall -W -Wredundant-decls -Wpointer-arith -Wcast-qual -Wcast-align -Wformat-security -fno-gnu-keywords -Wundef -Woverloaded-virtual -Wstrict-null-sentinel -Wshadow -Wstrict-overflow=1 -Wlogical-op -Wmissing-declarations -Wdouble-promotion -Winit-self -fvisibility=hidden -fvisibility-inlines-hidden -march=native -O2 -fno-ident -frecord-gcc-switches -fstack-clash-protection -fstack-protector-all -mfunction-return=thunk -mindirect-branch=thunk -mindirect-branch-register -pipe -Wall -Werror=terminate -c /var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc  -fPIC -DPIC -o backends/.libs/dbcheck.o
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc: In static member function ‘static size_t Xapian::Database::check_(const string*, int, int, std::ostream*)’:
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:451:35: error: expected ‘)’ before ‘GLASS_TABLE_EXTENSION’
  451 |      } else if (endswith(path, "." GLASS_TABLE_EXTENSION)) {
      |                         ~         ^~~~~~~~~~~~~~~~~~~~~~
      |                                   )
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:476:36: error: expected ‘)’ before ‘GLASS_TABLE_EXTENSION’
  476 |     } else if (stat((filename + "." GLASS_TABLE_EXTENSION).c_str(), &sb) == 0) {
      |                     ~              ^~~~~~~~~~~~~~~~~~~~~~
      |                                    )
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:478:6: error: expected ‘)’ before ‘else’
  478 |     } else {
      |      ^~~~~
      |      )
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:476:20: note: to match this ‘(’
  476 |     } else if (stat((filename + "." GLASS_TABLE_EXTENSION).c_str(), &sb) == 0) {
      |                    ^
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:483:52: error: expected ‘)’ before ‘;’ token
  483 |     return check_db_table(path, opts, out, backend);
      |                                                    ^
      |                                                    )
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:476:15: note: to match this ‘(’
  476 |     } else if (stat((filename + "." GLASS_TABLE_EXTENSION).c_str(), &sb) == 0) {
      |               ^
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:483:52: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body]
  483 |     return check_db_table(path, opts, out, backend);
      |                                                    ^
/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12/backends/dbcheck.cc:467:23: warning: control reaches end of non-void function [-Wreturn-type]
  467 |     string filename = path;
      |                       ^~~~
make[2]: *** [Makefile:2815: backends/dbcheck.lo] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12-abi_x86_64.amd64'
make[1]: *** [Makefile:3279: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/dev-libs/xapian-1.4.12/work/xapian-core-1.4.12-abi_x86_64.amd64'
make: *** [Makefile:1582: all] Error 2
 * ERROR: dev-libs/xapian-1.4.12::gentoo failed (compile phase):
 *   emake failed
Comment 1 Anthony Basile gentoo-dev 2019-10-15 16:03:02 UTC
This is fixed in xapian 1.4.13.  Upstream has repeatedly made changes where disabling some backend causes failure.  While I originally wanted to give users the choice, I am moving towards just enabling all backends.  Thoughts?
Comment 2 Arfrever Frehtes Taifersar Arahesis 2019-10-24 03:13:16 UTC
So change made in xapian-1.4.13.ebuild is dropping of "glass" USE flag:

--- xapian-1.4.12.ebuild
+++ xapian-1.4.13.ebuild
@@ -15,5 +15,5 @@
 SLOT="0/30" # ABI version of libxapian.so
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-solaris"
-IUSE="doc static-libs -cpu_flags_x86_sse +cpu_flags_x86_sse2 +glass +inmemory +remote"
+IUSE="doc static-libs -cpu_flags_x86_sse +cpu_flags_x86_sse2 +inmemory +remote"
 
 DEPEND="sys-libs/zlib"
@@ -37,9 +37,8 @@
        myconf="${myconf} $(use_enable static-libs static)"
 
-       use glass || myconf="${myconf} --disable-backend-glass"
        use inmemory || myconf="${myconf} --disable-backend-inmemory"
        use remote || myconf="${myconf} --disable-backend-remote"
 
-       myconf="${myconf} --enable-backend-chert --program-suffix="
+       myconf="${myconf} --enable-backend-glass --enable-backend-chert --program-suffix="
 
        ECONF_SOURCE=${S} econf $myconf
Comment 3 Anthony Basile gentoo-dev 2019-10-26 19:43:02 UTC
(In reply to Arfrever Frehtes Taifersar Arahesis from comment #2)
> So change made in xapian-1.4.13.ebuild is dropping of "glass" USE flag:
> 

correct, so as I said, upstream is repeatedly sloppy about the backends.  they always code as if they are always enabled.  do you see any issue with that?
Comment 4 Arfrever Frehtes Taifersar Arahesis 2019-10-26 23:07:09 UTC
Since these backends have no additional dependencies, enabling them unconditionally seems acceptable.