FS#46445 - [ustr] Package fail to build with gcc>=5.1
Attached to Project:
Community Packages
Opened by Nicolas I. (IooNag) - Saturday, 26 September 2015, 16:19 GMT
Last edited by Balló György (City-busz) - Sunday, 07 January 2018, 21:13 GMT
Opened by Nicolas I. (IooNag) - Saturday, 26 September 2015, 16:19 GMT
Last edited by Balló György (City-busz) - Sunday, 07 January 2018, 21:13 GMT
|
Details
Description:
Since gcc 5.1 ustr no longer builds. The linker reports many errors like: /tmp/makepkg/ustr/src/ustr-1.0.4/ustr-main.h:822: multiple definition of `ustr_pool_make_subpool' ustr-b-code-so-dbg.o:/tmp/makepkg/ustr/src/ustr-1.0.4/ustr-main.h:822: first defined here ustr-cmp-code-so-dbg.o: In function `ustr_pool_clear': /tmp/makepkg/ustr/src/ustr-1.0.4/ustr-main.h:827: multiple definition of `ustr_pool_clear' ustr-b-code-so-dbg.o:/tmp/makepkg/ustr/src/ustr-1.0.4/ustr-main.h:827: first defined here ustr-cmp-code-so-dbg.o: In function `ustr_pool_free': I understand these errors occur because ustr uses "extern inline" for several functions instead of "static inline", but I feel like I missed something in understanding the complex nature of "inline" for gcc (even though I read http://www.greenend.org.uk/rjk/tech/inline.html which was quite helpful). I made two patches a few months ago, available at https://github.com/fishilico/ustr/commits/master , which fix the errors for my specific use-case (building libsemanage AUR package). I don't know whether my patches are portable to older version of gcc, which prevented me from sending them upstream. Therefore feel free to ignore my patches, but anyway could you please fix ustr package? System configuration: * x86_64 CPU * gcc-multilib package version 5.2.0-2 * ustr package version 1.0.4-4 |
This task depends upon
The next release should work.
https://aur.archlinux.org/packages/ustr/