[Xapian-tickets] [Xapian] #586: compilation fails with 'uuid.h: no such file' when configured with no back end. (was: xapian: compilation fails with 'uuid.h: no such file' when configured with no back end.)

Xapian nobody at xapian.org
Thu Feb 16 09:53:23 GMT 2012


#586: compilation fails with 'uuid.h: no such file' when configured with no back
end.
--------------------------+-------------------------------------------------
 Reporter:  blueness      |       Owner:  olly 
     Type:  defect        |      Status:  new  
 Priority:  normal        |   Milestone:       
Component:  Build system  |     Version:  1.2.8
 Severity:  normal        |    Keywords:       
Blockedby:                |    Platform:  All  
 Blocking:                |  
--------------------------+-------------------------------------------------

Old description:

> Configuring xapian with
>
> ./configure --disable-backend-brass --disable-backend-chert --disable-
> backend-flint --disable-backend-inmemory --disable-backend-remote
>
> The build fails at compile time with:
>
> In file included from ./backends/brass/brass_version.h:27:0,
>                  from api/compactor.cc:53:
> ./common/safeuuid.h:57:19: fatal error: uuid.h: No such file or directory
> compilation terminated.
> make[2]: *** [api/compactor.lo] Error 1
> make[2]: Leaving directory `/var/tmp/portage/dev-libs/xapian-1.2.8/work
> /xapian-core-1.2.8'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/var/tmp/portage/dev-libs/xapian-1.2.8/work
> /xapian-core-1.2.8'
> make: *** [all] Error 2
>
> This is because of line 694 of configure.ac where the header check is
> done in
>
> case $enable_backend_flint$enable_backend_chert$enable_backend_brass in
>

> I didn't attach a patch because I'm not sure if at least one backend must
> be defined or the header check should be made with all backends disabled.

New description:

 Configuring xapian with

 {{{
 ./configure --disable-backend-brass --disable-backend-chert --disable-
 backend-flint --disable-backend-inmemory --disable-backend-remote
 }}}

 The build fails at compile time with:

 {{{
 In file included from ./backends/brass/brass_version.h:27:0,
                  from api/compactor.cc:53:
 ./common/safeuuid.h:57:19: fatal error: uuid.h: No such file or directory
 compilation terminated.
 make[2]: *** [api/compactor.lo] Error 1
 make[2]: Leaving directory `/var/tmp/portage/dev-libs/xapian-1.2.8/work
 /xapian-core-1.2.8'
 make[1]: *** [all-recursive] Error 1
 make[1]: Leaving directory `/var/tmp/portage/dev-libs/xapian-1.2.8/work
 /xapian-core-1.2.8'
 make: *** [all] Error 2
 }}}

 This is because of line 694 of configure.ac where the header check is done
 in

 {{{
 case $enable_backend_flint$enable_backend_chert$enable_backend_brass in
 }}}

 I didn't attach a patch because I'm not sure if at least one backend must
 be defined or the header check should be made with all backends disabled.

--

Comment(by olly):

 It doesn't seem a very useful configuration, but libuuid shouldn't be
 needed in it.

 I'd say the bug is that we try to use the header in this case, and that
 most of the contents of api/compactor.cc should be #if-ed away if none of
 the relevant backends macros are defined.

-- 
Ticket URL: <http://trac.xapian.org/ticket/586#comment:2>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list