1515# See the License for the specific language governing permissions and
1616# limitations under the License.
1717
18- cmake_minimum_required (VERSION 3.3 )
18+ cmake_minimum_required (VERSION 2.8 )
1919project (DRMPlayready)
2020
21- find_package (Thunder)
21+ if (DEFINED MAKE_VERBOSE)
22+ set (CMAKE_VERBOSE_MAKEFILE TRUE )
23+ endif ()
24+
25+ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /cmake" )
26+
27+ set (DRM_PLUGIN_NAME "Playready" )
28+
29+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -w -Wno-psabi " )
30+
31+ if (NOT CMAKE_CROSSCOMPILING )
32+ set (STAGING_DIR "${CMAKE_INSTALL_PREFIX} " )
33+ else ()
34+ set (STAGING_DIR "${CMAKE_FIND_ROOT_PATH} " )
35+ endif ()
2236
23- list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR} /cmake" )
37+ if (DEFINED USE_PLAYREADY_CMAKE)
38+ find_package (PlayReady REQUIRED)
39+ endif ()
2440
25- set (MODULE_NAME Playready )
41+ find_package (OpenSSL REQUIRED )
2642
43+ file (GLOB DRM_PLUGIN_INCLUDES *.h)
2744
28- find_package (${NAMESPACE} Core REQUIRED)
29- find_package (PlayReady REQUIRED)
45+ if (DEFINED USE_PLAYREADY_CMAKE)
46+ set (DRM_PLUGIN_LIBS
47+ ${PLAYREADY_LIBRARIES} )
48+ endif ()
3049
31- add_library ( ${MODULE_NAME} SHARED
32- MediaSession.cpp
50+ set (DRM_PLUGIN_SOURCES
51+ MediaSession.cpp
3352 MediaSystem.cpp
3453 MediaSessionExt.cpp)
3554
36- set_target_properties (${MODULE_NAME} PROPERTIES
37- CXX_STANDARD 11
38- CXX_STANDARD_REQUIRED YES )
3955
40- target_compile_definitions (${MODULE_NAME}
41- PRIVATE
42- BSTD_CPU_ENDIAN=BSTD_ENDIAN_LITTLE
43- DRM_BUILD_PROFILE=900
44- )
56+ # add the library
57+ add_library (${DRM_PLUGIN_NAME} SHARED ${DRM_PLUGIN_SOURCES} )
58+
59+ if (DEFINED USE_PLAYREADY_CMAKE)
60+ target_compile_definitions (${DRM_PLUGIN_NAME} PRIVATE ${PLAYREADY_FLAGS} )
61+ target_include_directories (${DRM_PLUGIN_NAME} PRIVATE ${PLAYREADY_INCLUDE_DIRS} )
62+ target_link_libraries (${DRM_PLUGIN_NAME} ${DRM_PLUGIN_LIBS} )
63+ endif ()
4564
46- target_include_directories (${MODULE_NAME}
47- PRIVATE
48- "${CMAKE_SYSROOT} /usr/include"
49- "${CMAKE_SYSROOT} /usr/include/${NAMESPACE} "
50- ${PLAYREADY_INCLUDE_DIRS} )
65+ set_target_properties (${DRM_PLUGIN_NAME} PROPERTIES SUFFIX ".drm" )
66+ set_target_properties (${DRM_PLUGIN_NAME} PROPERTIES PREFIX "" )
5167
52- target_link_libraries (${MODULE_NAME}
53- ${NAMESPACE} Core::${NAMESPACE} Core
54- ${PLAYREADY_LIBRARIES} )
68+ # openssl library added
69+ target_link_libraries (${DRM_PLUGIN_NAME} OpenSSL::SSL)
70+
71+ if (DEFINED PLAYREADY_REALTEK)
72+ target_link_libraries (${DRM_PLUGIN_NAME} PRIVATE playreadypk)
73+ message (STATUS "PLAYREADY_REALTEK is ON" )
74+ elseif (DEFINED PLAYREADY_BROADCOM)
75+ #target_link_libraries(${DRM_PLUGIN_NAME} PRIVATE NEXUS::NEXUS NXCLIENT::NXCLIENT NexusWidevine::NexusWidevine)
76+ #message(STATUS "PLAYREADY_BROADCOM is ON")
77+ endif ()
78+
79+ # Enable SVP.
80+ #if("${RDK_SVP}" STREQUAL "ENABLED")
81+ message (STATUS "Using RDK_SVP" )
82+ add_definitions (-DUSE_SVP)
83+ target_include_directories (${DRM_PLUGIN_NAME} PRIVATE ${CMAKE_SYSROOT} /usr/include /gstreamer-1.0)
84+ target_include_directories (${DRM_PLUGIN_NAME} PRIVATE ${CMAKE_SYSROOT} /usr/include /glib-2.0)
85+ target_include_directories (${DRM_PLUGIN_NAME} PRIVATE ${CMAKE_SYSROOT} /usr/lib/glib-2.0/include )
86+ target_include_directories (${DRM_PLUGIN_NAME} PRIVATE ${CMAKE_SYSROOT} /usr/include /WPEFramework)
87+ target_link_libraries (${DRM_PLUGIN_NAME} gstsvpext)
88+ #endif()
5589
56- # Library installation section
57- set_target_properties (${MODULE_NAME} PROPERTIES SUFFIX ".drm" )
58- set_target_properties (${MODULE_NAME} PROPERTIES PREFIX "" )
90+ if ("${DYNAMIC_SVP_DECRYPTION} " STREQUAL "ON" )
91+ add_definitions ( -DDYNAMIC_SVP_DECRYPTION )
92+ message (STATUS "DYNAMIC_SVP_DECRYPTION is ON" )
93+ else ()
94+ message (STATUS "DYNAMIC_SVP_DECRYPTION is OFF" )
95+ endif ()
5996
60- install (TARGETS ${MODULE_NAME}
61- PERMISSIONS OWNER_READ GROUP_READ
62- DESTINATION ${CMAKE_INSTALL_PREFIX} /share/${NAMESPACE} /OCDM)
97+ if ("${RESOLUTION_CHECK_ENABLED} " STREQUAL "ON" )
98+ add_definitions ( -DRESOLUTION_CHECK_ENABLED )
99+ message (STATUS "RESOLUTION_CHECK_ENABLED is ON" )
100+ else ()
101+ message (STATUS "DYNAMIC_SVP_DECRYPTION is OFF" )
102+ endif ()
63103
64- if (NOT "${CMAKE_FIND_ROOT_PATH} " STREQUAL "" )
65- install (CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink /etc/playready ${CMAKE_CURRENT_BINARY_DIR} /playready)" )
66- install (DIRECTORY DESTINATION ${CMAKE_INSTALL_PREFIX} /../${PERSISTENT_PATH} /OCDM)
67- install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} /playready DESTINATION ${CMAKE_INSTALL_PREFIX} /../${PERSISTENT_PATH} /OCDM/)
104+ if ("${NO_PERSISTENT_LICENSE_CHECK} " STREQUAL "ON" )
105+ add_definitions ( -DNO_PERSISTENT_LICENSE_CHECK=1 )
106+ message (STATUS "NO_PERSISTENT_LICENSE_CHECK is ON" )
107+ else ()
108+ message (STATUS "NO_PERSISTENT_LICENSE_CHECK is OFF" )
68109endif ()
110+
111+ if ("${TEE_CONFIG_NEED} " STREQUAL "ON" )
112+ add_definitions ( -DTEE_CONFIG_NEED=1 )
113+ message (STATUS "TEE_CONFIG_NEED is ON" )
114+ else ()
115+ message (STATUS "TEE_CONFIG_NEED is OFF" )
116+ endif ()
117+
118+ install (TARGETS ${DRM_PLUGIN_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX} /share/WPEFramework/OCDM)
0 commit comments