Bug 743249

Summary: Provide a thread-safe version of the CFITSIO libray
Product: [Fedora] Fedora Reporter: Enrique <cquike>
Component: cfitsioAssignee: Sergio Pascual <sergio.pasra>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: rawhideCC: mmahut, orion, sergio.pasra
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-07-03 13:49:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Enrique 2011-10-04 11:13:55 UTC
Description of problem:

 The installed version in Fedora (at least as of F15) does not include support for a thread-safe environment. The support for multithreading applications can be enabled using the configure flag --enable-reentrant. However, even when compiled with that flag, the created shared library libcfitsio.so does not have a reference to libpthread.so:

ldd libcfitsio.so
        linux-vdso.so.1 =>  (0x00007fff5cce5000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f73d8e1d000)
        /lib64/ld-linux-x86-64.so.2 (0x00000035a0800000)

which makes applications to fail, unless explicitly stated compilation against -lpthread.
  To solve that, I propose the following patch:
diff cfitsio/Makefile.in cfitsio.new/Makefile.in
93c93
<               ${SHLIB_LD} ${LDFLAGS} -o $@ ${OBJECTS}
---
>               ${SHLIB_LD} ${LDFLAGS} ${LIBS} -o $@ ${OBJECTS}

 Regards,
 Enrique

Comment 1 Sergio Pascual 2011-10-29 15:33:04 UTC
I have made a scratch build

http://koji.fedoraproject.org/koji/taskinfo?taskID=3471729

Please check that it works as intended.

Before sending this new version as an update, I'm going to check if packagers of dependent software find any problem using the multithreaded library.

Comment 2 Sergio Pascual 2012-07-03 13:49:16 UTC
Multithread is enabled since 3.280-2