mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-06-21 07:01:39 +02:00
handle android build of tbb, don't prefix win with lib
This commit is contained in:
parent
31b136f807
commit
7ec01c9095
4 changed files with 65 additions and 25 deletions
|
@ -110,11 +110,13 @@ set(HIFI_CMAKE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
||||||
set(MACRO_DIR "${HIFI_CMAKE_DIR}/macros")
|
set(MACRO_DIR "${HIFI_CMAKE_DIR}/macros")
|
||||||
set(EXTERNAL_PROJECT_DIR "${HIFI_CMAKE_DIR}/externals")
|
set(EXTERNAL_PROJECT_DIR "${HIFI_CMAKE_DIR}/externals")
|
||||||
|
|
||||||
|
STRING(REGEX REPLACE " " "-" CMAKE_GENERATOR_FOLDER_NAME ${CMAKE_GENERATOR})
|
||||||
|
|
||||||
set(EXTERNALS_BINARY_ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/build-externals")
|
set(EXTERNALS_BINARY_ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/build-externals")
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
set(EXTERNALS_BINARY_DIR "${EXTERNALS_BINARY_ROOT_DIR}/android/${CMAKE_GENERATOR}")
|
set(EXTERNALS_BINARY_DIR "${EXTERNALS_BINARY_ROOT_DIR}/android/${CMAKE_GENERATOR_FOLDER_NAME}")
|
||||||
else ()
|
else ()
|
||||||
set(EXTERNALS_BINARY_DIR "${EXTERNALS_BINARY_ROOT_DIR}/${CMAKE_GENERATOR}")
|
set(EXTERNALS_BINARY_DIR "${EXTERNALS_BINARY_ROOT_DIR}/${CMAKE_GENERATOR_FOLDER_NAME}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
set_property(DIRECTORY PROPERTY EP_PREFIX "project")
|
set_property(DIRECTORY PROPERTY EP_PREFIX "project")
|
||||||
|
|
23
cmake/externals/tbb/AndroidTBBLibCopy.cmake
vendored
Normal file
23
cmake/externals/tbb/AndroidTBBLibCopy.cmake
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
#
|
||||||
|
# AndroidTBBLibCopy.cmake
|
||||||
|
# cmake/macros
|
||||||
|
#
|
||||||
|
# Copyright 2015 High Fidelity, Inc.
|
||||||
|
# Created by Stephen Birarda on February 18, 2014
|
||||||
|
#
|
||||||
|
# Distributed under the Apache License, Version 2.0.
|
||||||
|
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
||||||
|
#
|
||||||
|
|
||||||
|
# first find the so files in the source dir
|
||||||
|
file(GLOB_RECURSE _TBB_LIBRARIES "${CMAKE_CURRENT_SOURCE_DIR}/build/*.so")
|
||||||
|
|
||||||
|
# raise an error if we found none
|
||||||
|
if (NOT _TBB_LIBRARIES)
|
||||||
|
message(FATAL_ERROR "Did not find any compiled TBB libraries")
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
# make the libs directory and copy the resulting files there
|
||||||
|
file(MAKE_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/lib")
|
||||||
|
message(STATUS "Copying TBB Android libs to ${CMAKE_CURRENT_SOURCE_DIR}/lib")
|
||||||
|
file(COPY ${_TBB_LIBRARIES} DESTINATION "${CMAKE_CURRENT_SOURCE_DIR}/lib")
|
29
cmake/externals/tbb/CMakeLists.txt
vendored
29
cmake/externals/tbb/CMakeLists.txt
vendored
|
@ -1,5 +1,21 @@
|
||||||
set(EXTERNAL_NAME tbb)
|
set(EXTERNAL_NAME tbb)
|
||||||
|
|
||||||
|
include(ExternalProject)
|
||||||
|
|
||||||
|
if (ANDROID)
|
||||||
|
|
||||||
|
find_program(NDK_BUILD_COMMAND NAMES ndk-build DOC "Path to the ndk-build command")
|
||||||
|
|
||||||
|
ExternalProject_Add(
|
||||||
|
${EXTERNAL_NAME}
|
||||||
|
URL http://hifi-public.s3.amazonaws.com/dependencies/tbb43_20150209oss_src.tgz
|
||||||
|
BUILD_COMMAND ${NDK_BUILD_COMMAND} --directory=jni target=android tbb tbbmalloc arch=arm
|
||||||
|
BUILD_IN_SOURCE 1
|
||||||
|
CONFIGURE_COMMAND ""
|
||||||
|
INSTALL_COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/AndroidTBBLibCopy.cmake
|
||||||
|
LOG_DOWNLOAD ON
|
||||||
|
)
|
||||||
|
else ()
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
set(DOWNLOAD_URL http://s3.amazonaws.com/hifi-public/dependencies/tbb43_20150209oss_osx.tgz)
|
set(DOWNLOAD_URL http://s3.amazonaws.com/hifi-public/dependencies/tbb43_20150209oss_osx.tgz)
|
||||||
elseif (WIN32)
|
elseif (WIN32)
|
||||||
|
@ -8,16 +24,15 @@ else ()
|
||||||
set(DOWNLOAD_URL http://s3.amazonaws.com/hifi-public/dependencies/tbb43_20150209oss_lin.tgz)
|
set(DOWNLOAD_URL http://s3.amazonaws.com/hifi-public/dependencies/tbb43_20150209oss_lin.tgz)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
include(ExternalProject)
|
|
||||||
ExternalProject_Add(
|
ExternalProject_Add(
|
||||||
${EXTERNAL_NAME}
|
${EXTERNAL_NAME}
|
||||||
URL ${DOWNLOAD_URL}
|
URL ${DOWNLOAD_URL}
|
||||||
BUILD_COMMAND ""
|
BUILD_COMMAND ""
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
INSTALL_COMMAND ""
|
INSTALL_COMMAND ""
|
||||||
UPDATE_COMMAND ""
|
|
||||||
LOG_DOWNLOAD ON
|
LOG_DOWNLOAD ON
|
||||||
)
|
)
|
||||||
|
endif ()
|
||||||
|
|
||||||
ExternalProject_Get_Property(${EXTERNAL_NAME} SOURCE_DIR)
|
ExternalProject_Get_Property(${EXTERNAL_NAME} SOURCE_DIR)
|
||||||
|
|
||||||
|
@ -34,14 +49,14 @@ if (APPLE)
|
||||||
elseif (WIN32)
|
elseif (WIN32)
|
||||||
set(_TBB_WIN_LIB_DIR "${SOURCE_DIR}/lib/ia32/vc12")
|
set(_TBB_WIN_LIB_DIR "${SOURCE_DIR}/lib/ia32/vc12")
|
||||||
|
|
||||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${_TBB_WIN_LIB_DIR}/libtbb_debug.lib CACHE TYPE "TBB debug library location")
|
set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${_TBB_WIN_LIB_DIR}/tbb_debug.lib CACHE TYPE "TBB debug library location")
|
||||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${_TBB_WIN_LIB_DIR}/libtbb.lib CACHE TYPE "TBB release library location")
|
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${_TBB_WIN_LIB_DIR}/tbb.lib CACHE TYPE "TBB release library location")
|
||||||
set(${EXTERNAL_NAME_UPPER}_MALLOC_LIBRARY_DEBUG ${_TBB_WIN_LIB_DIR}/libtbbmalloc_debug.lib CACHE TYPE "TBB malloc debug library location")
|
set(${EXTERNAL_NAME_UPPER}_MALLOC_LIBRARY_DEBUG ${_TBB_WIN_LIB_DIR}/tbbmalloc_debug.lib CACHE TYPE "TBB malloc debug library location")
|
||||||
set(${EXTERNAL_NAME_UPPER}_MALLOC_LIBRARY_RELEASE ${_TBB_WIN_LIB_DIR}/libtbbmalloc.lib CACHE TYPE "TBB malloc release library location")
|
set(${EXTERNAL_NAME_UPPER}_MALLOC_LIBRARY_RELEASE ${_TBB_WIN_LIB_DIR}/tbbmalloc.lib CACHE TYPE "TBB malloc release library location")
|
||||||
|
|
||||||
set(${EXTERNAL_NAME_UPPER}_DLL_PATH "${SOURCE_DIR}/bin/ia32/vc12" CACHE TYPE "Path to TBB DLLs")
|
set(${EXTERNAL_NAME_UPPER}_DLL_PATH "${SOURCE_DIR}/bin/ia32/vc12" CACHE TYPE "Path to TBB DLLs")
|
||||||
elseif (ANDROID)
|
elseif (ANDROID)
|
||||||
set(_TBB_ANDROID_LIB_DIR "${SOURCE_DIR}/lib/android/x86_64")
|
set(_TBB_ANDROID_LIB_DIR "${SOURCE_DIR}/lib")
|
||||||
|
|
||||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${_TBB_ANDROID_LIB_DIR}/libtbb_debug.so CACHE TYPE "TBB debug library location")
|
set(${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG ${_TBB_ANDROID_LIB_DIR}/libtbb_debug.so CACHE TYPE "TBB debug library location")
|
||||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${_TBB_ANDROID_LIB_DIR}/libtbb.so CACHE TYPE "TBB release library location")
|
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${_TBB_ANDROID_LIB_DIR}/libtbb.so CACHE TYPE "TBB release library location")
|
||||||
|
|
|
@ -19,7 +19,7 @@ target_include_directories(${TARGET_NAME} PRIVATE ${GVERB_INCLUDE_DIRS})
|
||||||
# we use libsoxr for resampling
|
# we use libsoxr for resampling
|
||||||
find_package(Soxr REQUIRED)
|
find_package(Soxr REQUIRED)
|
||||||
target_link_libraries(${TARGET_NAME} ${SOXR_LIBRARIES})
|
target_link_libraries(${TARGET_NAME} ${SOXR_LIBRARIES})
|
||||||
include_directories(SYSTEM ${SOXR_INCLUDE_DIRS})
|
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${SOXR_INCLUDE_DIRS})
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
find_library(CoreAudio CoreAudio)
|
find_library(CoreAudio CoreAudio)
|
||||||
|
|
Loading…
Reference in a new issue