Отключил сборку ассемблерного кода (он не реализован для 32 битных
систем). Починил сборку с помощью clang на linux.
This commit is contained in:
parent
ac5aa179e6
commit
3f65576372
@ -15,8 +15,12 @@ SET(CMAKE_ASM_NASM_COMPILER yasm)
|
|||||||
|
|
||||||
project(${MAIN_PROJECT_NAME} CXX ASM_NASM)
|
project(${MAIN_PROJECT_NAME} CXX ASM_NASM)
|
||||||
aux_source_directory(${SRC_DIR} SRC_FILES)
|
aux_source_directory(${SRC_DIR} SRC_FILES)
|
||||||
file(GLOB_RECURSE ASM_SRC_FILES "${SRC_DIR}/asm/${SYSTEM}/${ARCH}" "*.asm")
|
|
||||||
set(SRC_FILES ${SRC_FILES} ${ASM_SRC_FILES})
|
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
||||||
|
file(GLOB_RECURSE ASM_SRC_FILES "${SRC_DIR}/asm/${SYSTEM}/${ARCH}" "*.asm")
|
||||||
|
set(SRC_FILES ${SRC_FILES} ${ASM_SRC_FILES})
|
||||||
|
endif()
|
||||||
|
|
||||||
include_directories(${INCLUDE_DIR})
|
include_directories(${INCLUDE_DIR})
|
||||||
add_library(${MAIN_PROJECT_NAME} STATIC ${SRC_FILES})
|
add_library(${MAIN_PROJECT_NAME} STATIC ${SRC_FILES})
|
||||||
target_link_libraries(${MAIN_PROJECT_NAME})
|
target_link_libraries(${MAIN_PROJECT_NAME})
|
||||||
|
|||||||
@ -382,18 +382,18 @@ std::size_t ustring::find(const ustring& str, std::size_t pos /* = 0 */) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__GNUC__) // GCC and clang
|
#if defined(__GNUC__) // GCC and clang
|
||||||
/*
|
|
||||||
char32_t* fpos = reinterpret_cast<char32_t*>(memmem(_pData + pos, (_len - pos)*sizeof(char32_t), str._pData, str._len*sizeof(char32_t)));
|
char32_t* fpos = reinterpret_cast<char32_t*>(memmem(_pData + pos, (_len - pos)*sizeof(char32_t), str._pData, str._len*sizeof(char32_t)));
|
||||||
if(fpos)
|
if(fpos)
|
||||||
{
|
{
|
||||||
return (fpos - _pData);
|
return (fpos - _pData);
|
||||||
}
|
}
|
||||||
*/
|
/*
|
||||||
const char32_t* fpos = _asm_ucs4_strstr(_pData + pos, (_len - pos), str._pData, str._len);
|
const char32_t* fpos = _asm_ucs4_strstr(_pData + pos, (_len - pos), str._pData, str._len);
|
||||||
if(fpos)
|
if(fpos)
|
||||||
{
|
{
|
||||||
return (fpos - _pData);
|
return (fpos - _pData);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
#else
|
#else
|
||||||
const char32_t* pStr = str._pData;
|
const char32_t* pStr = str._pData;
|
||||||
const std::size_t len = _len - str.length();
|
const std::size_t len = _len - str.length();
|
||||||
|
|||||||
@ -1,12 +1,9 @@
|
|||||||
#include "utf.h"
|
#include "utf.h"
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
#if defined(__clang__)
|
#if defined(__GNUC__)
|
||||||
#include <libkern/OSByteOrder.h>
|
#define bswap_16 __builtin_bswap16
|
||||||
#define bswap_32 OSSwapInt32
|
#define bswap_32 __builtin_bswap32
|
||||||
#define bswap_16 OSSwapInt16
|
|
||||||
#elif defined(__GNUC__)
|
|
||||||
#include <byteswap.h>
|
|
||||||
#elif defined(_MSC_VER)
|
#elif defined(_MSC_VER)
|
||||||
#define bswap_16 _byteswap_ushort
|
#define bswap_16 _byteswap_ushort
|
||||||
#define bswap_32 _byteswap_ulong
|
#define bswap_32 _byteswap_ulong
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user