Bug 748196

Summary: CLucene dev package is missing clucene-config.h
Product: [Fedora] Fedora Reporter: Troy A. Griffitts <junkmail>
Component: cluceneAssignee: Rex Dieter <rdieter>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 16CC: dakingun, devurandom, rdieter
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: clucene-2.3.3.4-3.fc16 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-11-25 23:29:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Troy A. Griffitts 2011-10-22 23:40:18 UTC
Description of problem:
missing clucene-config.h from distribution

Version-Release number of selected component (if applicable):


How reproducible:
compile a program which includes CLucene.h

Steps to Reproduce:
1. compile a program which includes CLucene.h
2.
3.
  
Actual results:
In file included from /usr/include/CLucene/StdHeader.h:20:0,
                 from /usr/include/CLucene.h:11,
                 from ../src/modules/swmodule.cpp:42:
/usr/include/CLucene/SharedHeader.h:19:36: fatal error: CLucene/clucene-config.h: No such file or directory


Expected results:
no compile error

Additional info:

Comment 1 Rex Dieter 2011-10-23 19:14:21 UTC
Which app fails to build?

Fwiw, we build clucene with option
  -DLUCENE_SYS_INCLUDES:PATH=%{_libdir}
because these (like clucene-core.h are not multilib-safe), so it ends up @
%{_libdir}/CLucene/clucene-config.h


Fwiw,
pkg-config --cflags libclucene-core
-I/usr/include/CLucene/ext  

fails to include -I%{_libdir}, so there's at least one upstreamable-bugfix to apply here.

Comment 2 Troy A. Griffitts 2011-11-05 23:00:45 UTC
(In reply to comment #1)
> Which app fails to build?

libsword from svn.  It now has support for detecting both 0.9 and 2.x CLucene versions and compiling against either, but a simple include of CLucene.h ends up trying to include CLucene/StdHeader.h, which tries to include CLucene/clucene-config.h, which doesn't exist.  I couldn't find this file anywhere under /usr/include/CLucene.h

find /usr/include/CLucene/ -name clucene-config.h -print

returns nothing.

Hope this is helpful.

> 
> Fwiw, we build clucene with option
>   -DLUCENE_SYS_INCLUDES:PATH=%{_libdir}
> because these (like clucene-core.h are not multilib-safe), so it ends up @
> %{_libdir}/CLucene/clucene-config.h
> 
> 
> Fwiw,
> pkg-config --cflags libclucene-core
> -I/usr/include/CLucene/ext  
> 
> fails to include -I%{_libdir}, so there's at least one upstreamable-bugfix to
> apply here.

Comment 3 Troy A. Griffitts 2011-11-05 23:06:27 UTC
(In reply to comment #2)
> (In reply to comment #1)

> > Fwiw, we build clucene with option
> >   -DLUCENE_SYS_INCLUDES:PATH=%{_libdir}
> > because these (like clucene-core.h are not multilib-safe), so it ends up @
> > %{_libdir}/CLucene/clucene-config.h

ah, reading your comment more closely, I understand.  
find /usr/lib64/CLucene/ -name clucene-config.h -print
/usr/lib64/CLucene/clucene-config.h

So, for now we can add a -I%{_libdir} to the clucene cflags

> > 
> > 
> > Fwiw,
> > pkg-config --cflags libclucene-core
> > -I/usr/include/CLucene/ext  
> > 
> > fails to include -I%{_libdir}, so there's at least one upstreamable-bugfix to
> > apply here.

Comment 4 Rex Dieter 2011-11-07 00:30:05 UTC
%changelog
* Sun Oct 23 2011 Rex Dieter <rdieter> 2.3.3.4-3
- include LUCENE_SYS_INCLUDES in pkgconfig --cflags output (#748196)

Mind testing this build out?
http://koji.fedoraproject.org/koji/taskinfo?taskID=3493021

Comment 5 Rex Dieter 2011-11-14 20:35:15 UTC
In the meantime, can you give me a hint where/how to checkout libsword svn for testing? (I suspect libsword may require patching)

Comment 6 Rex Dieter 2011-11-14 20:59:47 UTC
OK, found it, http://www.crosswire.org/sword/develop/biblecs/svn.jsp

Comment 7 Rex Dieter 2011-11-14 21:13:04 UTC
OK, from what I can gather, upstream cmake support "just-works", but the autotools support (pretty much) assumes
pkg-config --cflags libclucene-core
to work, per the patched build from comment #4

I'll issue an update shortly.

Comment 8 Fedora Update System 2011-11-14 21:15:02 UTC
clucene-2.3.3.4-3.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/clucene-2.3.3.4-3.fc16

Comment 9 Troy A. Griffitts 2011-11-14 22:40:56 UTC
Dear Rex, sorry for not testing when you replied a week or so ago.  Been busy here.  I added a patch to libsword to handle the setup you told me about.  Have a look at the delta here:

svn log -r2666 http://crosswire.org/svn/sword/trunk
svn diff -r2665:2666 http://crosswire.org/svn/sword/trunk

But certainly agree that pkg-config -cflags should give the -I/usr/lib[64]

Thanks for doing this!

Comment 10 Fedora Update System 2011-11-16 00:32:45 UTC
Package clucene-2.3.3.4-3.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing clucene-2.3.3.4-3.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2011-15988
then log in and leave karma (feedback).

Comment 11 Fedora Update System 2011-11-25 23:29:08 UTC
clucene-2.3.3.4-3.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.