Build fails using CMake under Debian 8/x86_64
---------------------------------------------

                 Key: CORE-5661
                 URL: http://tracker.firebirdsql.org/browse/CORE-5661
             Project: Firebird Core
          Issue Type: Bug
          Components: Build Issues / Porting
    Affects Versions: 3.0.2
         Environment: Debian 8 (Jessie) x86_64
            Reporter: Vadim Zeitlin
            Priority: Minor


Trying to build with CMake fails with

Building CXX object src/CMakeFiles/common.dir/common/CRC32C.cpp.o
In file included from 
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/nmmintrin.h:31:0,
                 from /tmp/firebird/src/common/CRC32C.cpp:34:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h: In function 'unsigned 
int CRC32C(unsigned int, const unsigned char*)':
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h:827:1: error: inlining 
failed in call to always_inline 'unsigned int _mm_crc32_u8(unsigned int, 
unsigned char)': target specific option mismatch
 _mm_crc32_u8 (unsigned int __C, unsigned char __V)
 ^
/tmp/firebird/src/common/CRC32C.cpp:41:41: error: called from here
   return _mm_crc32_u8(hash_value, *value);
                                         ^
In file included from 
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/nmmintrin.h:31:0,
                 from /tmp/firebird/src/common/CRC32C.cpp:34:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h:833:1: error: inlining 
failed in call to always_inline 'unsigned int _mm_crc32_u16(unsigned int, short 
unsigned int)': target specific option mismatch
 _mm_crc32_u16 (unsigned int __C, unsigned short __V)
 ^
/tmp/firebird/src/common/CRC32C.cpp:44:60: error: called from here
   return _mm_crc32_u16(hash_value, *(unsigned short*) value);
                                                            ^
In file included from 
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/nmmintrin.h:31:0,
                 from /tmp/firebird/src/common/CRC32C.cpp:34:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h:839:1: error: inlining 
failed in call to always_inline 'unsigned int _mm_crc32_u32(unsigned int, 
unsigned int)': target specific option mismatch
 _mm_crc32_u32 (unsigned int __C, unsigned int __V)
 ^
/tmp/firebird/src/common/CRC32C.cpp:48:65: error: called from here
   hash_value = _mm_crc32_u32(hash_value, *(unsigned int*) value);
                                                                 ^
In file included from 
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/nmmintrin.h:31:0,
                 from /tmp/firebird/src/common/CRC32C.cpp:34:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h:833:1: error: inlining 
failed in call to always_inline 'unsigned int _mm_crc32_u16(unsigned int, short 
unsigned int)': target specific option mismatch
 _mm_crc32_u16 (unsigned int __C, unsigned short __V)
 ^
/tmp/firebird/src/common/CRC32C.cpp:55:67: error: called from here
   hash_value = _mm_crc32_u16(hash_value, *(unsigned short*) value);
                                                                   ^
In file included from 
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/nmmintrin.h:31:0,
                 from /tmp/firebird/src/common/CRC32C.cpp:34:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/smmintrin.h:827:1: error: inlining 
failed in call to always_inline 'unsigned int _mm_crc32_u8(unsigned int, 
unsigned char)': target specific option mismatch
 _mm_crc32_u8 (unsigned int __C, unsigned char __V)
 ^
/tmp/firebird/src/common/CRC32C.cpp:62:48: error: called from here
   hash_value = _mm_crc32_u8(hash_value, *value);
                                                ^
src/CMakeFiles/common.dir/build.make:537: recipe for target 
'src/CMakeFiles/common.dir/common/CRC32C.cpp.o' failed
make: *** [src/CMakeFiles/common.dir/common/CRC32C.cpp.o] Error 1

This happens because CMake compiles this file without -msse4 option used by 
autoconf-based build system. I don't know how to add this option for just this 
file using CMake, but adding it globally would at least fix the build for now.

BTW, I'd gladly avoid using CMake in the first place if only autoconf supported 
building out of the source directory, which it currently doesn't, 
unfortunately...

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to