summaryrefslogtreecommitdiffstats
path: root/project/cmake/modules/FindCpluff.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'project/cmake/modules/FindCpluff.cmake')
-rw-r--r--project/cmake/modules/FindCpluff.cmake46
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
9if(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)
31else()
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
42endif()
43
44set(CPLUFF_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/cpluff/include)
45set(CPLUFF_FOUND 1)
46mark_as_advanced(CPLUFF_INCLUDE_DIRS CPLUFF_FOUND)