diff options
Diffstat (limited to 'project/cmake/modules/FindCpluff.cmake')
| -rw-r--r-- | project/cmake/modules/FindCpluff.cmake | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/project/cmake/modules/FindCpluff.cmake b/project/cmake/modules/FindCpluff.cmake new file mode 100644 index 0000000..b8fa22d --- /dev/null +++ b/project/cmake/modules/FindCpluff.cmake | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | # - Builds Cpluff as external project | ||
| 2 | # Once done this will define | ||
| 3 | # | ||
| 4 | # CPLUFF_FOUND - system has cpluff | ||
| 5 | # CPLUFF_INCLUDE_DIRS - the cpluff include directories | ||
| 6 | # | ||
| 7 | # and link Kodi against the cpluff libraries. | ||
| 8 | |||
| 9 | if(NOT WIN32) | ||
| 10 | string(REPLACE ";" " " defines "${CMAKE_C_FLAGS} ${SYSTEM_DEFINES} -I${EXPAT_INCLUDE_DIR}") | ||
| 11 | get_filename_component(expat_dir ${EXPAT_LIBRARY} PATH) | ||
| 12 | set(ldflags "-L${expat_dir}") | ||
| 13 | ExternalProject_Add(libcpluff SOURCE_DIR ${CORE_SOURCE_DIR}/lib/cpluff | ||
| 14 | PREFIX ${CORE_BUILD_DIR}/cpluff | ||
| 15 | PATCH_COMMAND rm -f config.status | ||
| 16 | UPDATE_COMMAND PATH=${NATIVEPREFIX}/bin:$ENV{PATH} autoreconf -vif | ||
| 17 | CONFIGURE_COMMAND CC=${CMAKE_C_COMPILER} ${CORE_SOURCE_DIR}/lib/cpluff/configure | ||
| 18 | --disable-nls | ||
| 19 | --enable-static | ||
| 20 | --disable-shared | ||
| 21 | --with-pic | ||
| 22 | --prefix=<INSTALL_DIR> | ||
| 23 | --host=${ARCH} | ||
| 24 | CFLAGS=${defines} | ||
| 25 | LDFLAGS=${ldflags} | ||
| 26 | BUILD_COMMAND make V=1) | ||
| 27 | set(ldflags "${ldflags};-lexpat") | ||
| 28 | core_link_library(${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cpluff/lib/libcpluff.a | ||
| 29 | system/libcpluff libcpluff extras "${ldflags}") | ||
| 30 | set(WRAP_FILES ${WRAP_FILES} PARENT_SCOPE) | ||
| 31 | else() | ||
| 32 | ExternalProject_Add(libcpluff SOURCE_DIR ${CORE_SOURCE_DIR}/lib/cpluff | ||
| 33 | PREFIX ${CORE_BUILD_DIR}/cpluff | ||
| 34 | CONFIGURE_COMMAND "" | ||
| 35 | # TODO: Building the project directly from lib/cpluff/libcpluff/win32/cpluff.vcxproj | ||
| 36 | # fails becaue it imports XBMC.defaults.props | ||
| 37 | BUILD_COMMAND devenv /build ${CORE_BUILD_CONFIG} | ||
| 38 | ${CORE_SOURCE_DIR}/project/VS2010Express/XBMC\ for\ Windows.sln | ||
| 39 | /project cpluff | ||
| 40 | INSTALL_COMMAND "") | ||
| 41 | # TODO: core_link_library | ||
| 42 | endif() | ||
| 43 | |||
| 44 | set(CPLUFF_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cpluff/include) | ||
| 45 | set(CPLUFF_FOUND 1) | ||
| 46 | mark_as_advanced(CPLUFF_INCLUDE_DIRS CPLUFF_FOUND) | ||
