Bug 1926868

Summary: devel package should have Requires for geos-devel librttopo-devel geos-devel and freexl-devel
Product: [Fedora] Fedora Reporter: Mamoru TASAKA <mtasaka>
Component: libspatialiteAssignee: Sandro Mani <manisandro>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: volker27
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-10 18:09:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1926706    

Description Mamoru TASAKA 2021-02-09 15:20:46 UTC
Description of problem:

With libspatialite-devel-5.0.1-1.fc34.x86_64:  
/usr/lib64/pkgconfig/spatialite.pc contains the line:

-------------------------------
Libs: -L${libdir} -lspatialite -lminizip -lrttopo -lfreexl -lproj -lsqlite3 -lsqlite3 -lz -lsqlite3  -L/usr/lib@LIB_SUFFIX -lgeos_c -lxml2  -lm
-------------------------------

So `$ pkg-config --libs spatialite` will now contain `-lrotopo -lfreexl`, and so on.
This means that libspatialite-devel must have Requires for the packages containing
librotopo.so (i.e. librttopo-devel), libfreexl.so (i.e. freexl-devel) and so on,
however currently libspatialite-devel-5.0.1-1.fc34.x86_64 does not have such
Requires:

https://koji.fedoraproject.org/koji/rpminfo?rpmID=25165521


Version-Release number of selected component (if applicable):
libspatialite-devel-5.0.1-1.fc34.x86_64

Note:
This currently breaks librasterlite2 rebuild:
https://koji.fedoraproject.org/koji/taskinfo?taskID=61657085

-------------------------------
libtool: link: gcc -shared  -fPIC -DPIC  .libs/rasterlite2.o .libs/rl2raw.o .libs/rl2codec.o .libs/rl2jpeg.o .libs/rl2png.o .libs/rl2gif.o .libs/rl2webp.o .libs/rl2tiff.o .libs/rl2wms.o .libs/rl2ascii.o .libs/rl2paint.o .libs/rl2dbms.o .libs/rl2import.o .libs/rl2pyramid.o .libs/rl2sql.o .libs/rl2sqlaux.o .libs/rl2auxrender.o .libs/rl2svg.o .libs/rl2svgxml.o .libs/rl2svgaux.o .libs/rl2symbolizer.o .libs/rl2symbaux.o .libs/rl2rastersym.o .libs/rl2version.o .libs/rl2md5.o .libs/md5.o .libs/rl2openjpeg.o .libs/rl2auxgeom.o .libs/rl2auxfont.o .libs/rl2symclone.o .libs/rl2_internal_data.o .libs/rl2draping.o .libs/rl2map_config.o   -lpng16 -lwebp -llzma -llz4 -lzstd -lopenjp2 -lcurl -lfontconfig -lfreetype -lpixman-1 -lcairo -lspatialite -lrttopo -lfreexl -L/usr/lib@LIB_SUFFIX -lgeos_c -lxml2 -lpthread -lm -lminizip -lproj -lgeotiff -ltiff -lgif -ljpeg -lz -lsqlite3 -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -O2 -flto=auto -m64 -mtune=generic -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now   -Wl,-soname -Wl,librasterlite2.so.1 -o .libs/librasterlite2.so.1.0.0
/usr/bin/ld: cannot find -lrttopo
/usr/bin/ld: cannot find -lfreexl
/usr/bin/ld: cannot find -lgeos_c
collect2: error: ld returned 1 exit status
-------------------------------

Additional info:
Actually I am not sure if these "-lminizip -lrttopo -lfreexl -lproj -lsqlite3 -lsqlite3 -lz -lsqlite3  -L/usr/lib@LIB_SUFFIX -lgeos_c -lxml2" is really needed. pkgconfig file changed between 5.0.0 and 5.0.1:

-------------------------------
--- ./libspatialite-5.0.0/spatialite.pc.in	2020-08-24 01:46:22.000000000 +0900
+++ ./libspatialite-5.0.1/spatialite.pc.in	2021-02-08 00:53:46.000000000 +0900
@@ -8,5 +8,5 @@ includedir=@includedir@
 Name: spatialite
 Description: Spatial SQL database engine based on SQLite
 Version: @VERSION@
-Libs: -L${libdir} -lspatialite
+Libs: -L${libdir} -lspatialite @LIBS@ @LIBXML2_LIBS@ -lm
 Cflags: -I${includedir}
-------------------------------

Comment 1 Mamoru TASAKA 2021-02-09 15:22:19 UTC
Once changing the assignee to the person who *really* updated the package.

Comment 2 Sandro Mani 2021-02-09 15:44:01 UTC
Looks like unnecessary dependencies to me, these should be in Libs.private

Comment 3 Mamoru TASAKA 2021-02-10 11:34:24 UTC
Note that the last commit https://src.fedoraproject.org/rpms/libspatialite/c/a3c1248d9ebe0dae35d5d0dfc5f23898745d9189?branch=rawhide adds the patch in src.rpm but does not actually apply it...

Comment 4 Sandro Mani 2021-02-10 17:43:21 UTC
Indeed, blindly expected %autosetup to be there...

Comment 5 Sandro Mani 2021-02-10 18:09:11 UTC
Should be fixed in libspatialite-5.0.1-4

Comment 6 Mamoru TASAKA 2021-02-11 10:27:39 UTC
Confirmed, thank you!