Re: openshadinglanguage failure on non x86_64

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

 



Mamoru TASAKA wrote on 2022/10/10 10:09:
Luya Tshimbalanga wrote on 2022/10/10 2:46:
Hello team,

openshadinglanguage 1.12.6.2 only successfully built on x86_64 architecture but failed on others due to the following errors:

In file included from /builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/liboslexec/oslexec_pvt.h:42,
                  from /builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/liboslexec/oslexec.cpp:12:
/builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/include/OSL/mask.h:7:10: fatal error: immintrin.h: No such file or directory
     7 | #include <immintrin.h>
       |          ^~~~~~~~~~~~~
compilation terminated.


That "immintrin.h" is provided by both gcc and clang according to "dnf -C repoquery --whatprovides */immintrin.h". Could someone investigate the cause and provide a patch?

See https://koji.fedoraproject.org/koji/taskinfo?taskID=92833862

Thanks in advance


Well, gcc immintrin.h is "/usr/lib/gcc/x86_64-redhat-linux/12/include/immintrin.h" (note that "x86_64-" path).

And clang immintrin.h "/usr/lib64/clang/15.0.0/include/immintrin.h" says:
------------------------------------------
#if !defined(__i386__) && !defined(__x86_64__)
#error "This header is only meant to be used on x86 and x64 architecture"
#endif
------------------------------------------

AFAIK immintrin.h is available only on x86 / x86_64.

Then as far as I looked at src/include/OSL/mask.h, it looks like actually this supports non-x86 architectures
(as I see #elif defined(__GNUC__) || defined(__clang__) or so),
so just try to guard the inclusion like

#if defined(__i386__) || defined(__x86_64__)
#include <immintrin.h>
#endif

and see how it goes. Maybe some additional modification is needed, but for now I expect that
most things may go well.

Actually this guard makes build successful:
https://koji.fedoraproject.org/koji/taskinfo?taskID=92870693

Dan has proposed another fix in this thread, I think it should work well similarly.

Regards,
Mamoru
_______________________________________________
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