mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-12-26 11:17:44 +01:00
fix[cmake]: Fix libm / libmvec compile error
Signed-off-by: Herman Chen <herman.chen@rock-chips.com> Change-Id: I431aa784db20494a4df89fae366ccd428dafa7d5
This commit is contained in:
parent
2ee4a5518b
commit
d1855e020d
3 changed files with 12 additions and 24 deletions
|
|
@ -120,31 +120,10 @@ endif(UNIX)
|
|||
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||
set(CLANG true)
|
||||
endif()
|
||||
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
|
||||
set(INTEL_CXX true)
|
||||
endif()
|
||||
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
set(GCC true)
|
||||
endif()
|
||||
|
||||
if(INTEL_CXX AND UNIX)
|
||||
# treat icpc roughly like gcc
|
||||
set(GCC true)
|
||||
add_definitions(-Wall -Wextra -Wshadow)
|
||||
elseif(CLANG)
|
||||
# treat clang roughly like gcc
|
||||
set(GCC true)
|
||||
add_definitions(-Wall -Wextra -Wshadow -ffast-math)
|
||||
elseif(CMAKE_COMPILER_IS_GNUCXX)
|
||||
add_definitions(-Wall -Wextra -Wshadow -ffast-math)
|
||||
check_cxx_compiler_flag(-Wno-narrowing GCC_HAS_NO_NARROWING)
|
||||
check_cxx_compiler_flag(-mstackrealign GCC_HAS_STACK_REALIGN)
|
||||
if (GCC_HAS_STACK_REALIGN)
|
||||
add_definitions(-mstackrealign)
|
||||
endif()
|
||||
execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
|
||||
endif()
|
||||
|
||||
if(GCC)
|
||||
if(ARM)
|
||||
if(ARMEABI_V6)
|
||||
|
|
@ -184,6 +163,15 @@ if(GCC)
|
|||
# save intermediate files
|
||||
# add_definitions(-save-temps)
|
||||
|
||||
# check library mvec
|
||||
find_library(LMVEC_LIB mvec)
|
||||
if(LMVEC_LIB)
|
||||
set(LIBM mvec m)
|
||||
else()
|
||||
set(LIBM m)
|
||||
add_definitions(-fno-builtin-pow)
|
||||
endif()
|
||||
|
||||
# for libary linking
|
||||
set(BEGIN_WHOLE_ARCHIVE -Wl,--whole-archive)
|
||||
set(END_WHOLE_ARCHIVE -Wl,--no-whole-archive)
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ endif()
|
|||
set_target_properties(${MPP_SHARED} PROPERTIES FOLDER "mpp")
|
||||
set_target_properties(${MPP_SHARED} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
|
||||
target_link_libraries(${MPP_SHARED} mpp_codec mpp_hal mpp_vproc kmpp
|
||||
${BEGIN_WHOLE_ARCHIVE} mpp_base kmpp_base osal ${END_WHOLE_ARCHIVE} m)
|
||||
${BEGIN_WHOLE_ARCHIVE} mpp_base kmpp_base osal ${END_WHOLE_ARCHIVE} ${LIBM})
|
||||
|
||||
# build static library
|
||||
add_library(${MPP_STATIC} STATIC ${MPP_SRC})
|
||||
|
|
|
|||
|
|
@ -77,9 +77,9 @@ if(ANDROID)
|
|||
# in Android pthread is in libc, also need liblog
|
||||
# Android 14 requires libc++ not libstdc++
|
||||
if("${ANDROID_STL}" STREQUAL "c++_static")
|
||||
target_link_libraries(osal log m)
|
||||
target_link_libraries(osal log ${LIBM})
|
||||
else()
|
||||
target_link_libraries(osal log stdc++ m)
|
||||
target_link_libraries(osal log stdc++ ${LIBM})
|
||||
endif()
|
||||
endif(ANDROID)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue