Bad paths in *.pc (pkgconf) files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



David (CC'd) is working on the Fedora RISC-V port and he noticed that
some *.pc files in Fedora contain incorrect paths.  For example[1]:

  $ pkgconf --libs libcares
  -L/usr/usr/lib64 -lcares

  $ pkgconf --libs libasyncns
  -L/usr/lib -lasyncns 

On non-riscv64 this happens to work because the default search path
includes the right directory anyway (eg. /usr/lib64).

On riscv64 this causes build failures since meson seems to go off and
search for the *.so files and then tries to construct an absolute path
to them (I'm not sure if this isn't a bug in meson TBH).  For example:

  http://fedora.riscv.rocks/koji/taskinfo?taskID=1305782

This problem appears to be widespread.  I scanned just the *-devel
packages that I happen to have installed, results below.  Not sure how
to scan all *-devel packages in Fedora.

What should we do here?  Is it worth having an RPM build step that
checks for this problem?

Rich.

package libibmad refers to non-existent path -I/usr/usr/include
package libibmad refers to non-existent path -L/usr/usr/lib64
package libcares refers to non-existent path -L/usr/usr/lib64
package libibnetdisc refers to non-existent path -I/usr/usr/include
package libibnetdisc refers to non-existent path -L/usr/usr/lib64
package libmlx5 refers to non-existent path -I/usr/usr/include
package libmlx5 refers to non-existent path -L/usr/usr/lib64
package libefa refers to non-existent path -I/usr/usr/include
package libefa refers to non-existent path -L/usr/usr/lib64
package libibumad refers to non-existent path -I/usr/usr/include
package libibumad refers to non-existent path -L/usr/usr/lib64
package librdmacm refers to non-existent path -I/usr/usr/include
package librdmacm refers to non-existent path -L/usr/usr/lib64
package valgrind refers to non-existent path -L/usr/lib64/valgrind
package libmlx4 refers to non-existent path -I/usr/usr/include
package libmlx4 refers to non-existent path -L/usr/usr/lib64
package libibverbs refers to non-existent path -I/usr/usr/include
package libibverbs refers to non-existent path -L/usr/usr/lib64

[1] Proposed fix for c-ares issue:
http://fedora.riscv.rocks:3000/rpms/c-ares/commit/e5acf4bc513b425793a30fa1fe12af48a15eadd7

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org

Attachment: check-pkgconf.sh
Description: Bourne shell script

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux