<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><div>From ea50e494473623ed0dbff2907194aaf268dc449a Mon Sep 17 00:00:00 2001</div><div>From: Min Chen <min.chen@multicorewareinc.com></div><div>Date: Wed, 14 Sep 2016 15:23:38 -0500</div><div>Subject: [PATCH] [multi-lib] Support 8+10+12 bits in single DLL (Workaround)</div><div><br></div><div>---</div><div> source/CMakeLists.txt |   40 +++++++++++++++++++++++++++++++++++++++-</div><div> 1 files changed, 39 insertions(+), 1 deletions(-)</div><div><br></div><div>diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt</div><div>index dd19d28..c2c2f7f 100644</div><div>--- a/source/CMakeLists.txt</div><div>+++ b/source/CMakeLists.txt</div><div>@@ -36,6 +36,7 @@ configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"</div><div> configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"</div><div>                "${PROJECT_BINARY_DIR}/x265_config.h")</div><div> </div><div>+</div><div> SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")</div><div> </div><div> # System architecture detection</div><div>@@ -396,6 +397,39 @@ if(WIN32)</div><div>     endif(WINXP_SUPPORT)</div><div> endif()</div><div> </div><div>+</div><div>+if(ENABLE_SHARED AND LINKED_10BIT AND LINKED_12BIT)</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?setParamAspectRatio@x265@@YAXPEAUx265_param@@HH@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?getParamAspectRatio@x265@@YAXPEAUx265_param@@AEAH1@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?general_log_file@x265@@YAXPEBUx265_param@@PEBDH1ZZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?general_log@x265@@YAXPEBUx265_param@@PEBDH1ZZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_api_get_94@x265_10bit@@YAPEBUx265_api@@H@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_api_get_94@x265_12bit@@YAPEBUx265_api@@H@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_api_query@x265_10bit@@YAPEBUx265_api@@HHPEAH@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_api_query@x265_12bit@@YAPEBUx265_api@@HHPEAH@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_mdate@x265@@YA_JXZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_picturePlaneSize@x265@@YAIHHHH@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_ssim2dB@x265@@YANN@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_ssim2dB@x265@@YANN@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_report_simd@x265@@YAXPEAUx265_param@@@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_fopen@x265@@YAPEAU_iobuf@@PEBD0@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_malloc@x265@@YAPEAX_K@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_free@x265@@YAXPEAX@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?x265_atoi@x265@@YAHPEBDAEA_N@Z\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?start@Thread@x265@@QEAA_NXZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?stop@Thread@x265@@QEAAXXZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "??0Thread@x265@@QEAA@XZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "??1Thread@x265@@UEAA@XZ\n")</div><div>+    file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?g_maxCUDepth@x265@@3IA\n")</div><div>+    if(WINXP_SUPPORT)</div><div>+        file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?cond_init@x265@@YAHPEAUConditionVariable@1@@Z\n")</div><div>+        file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?cond_wait@x265@@YAHPEAUConditionVariable@1@PEAU_RTL_CRITICAL_SECTION@@K@Z\n")</div><div>+        file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?cond_destroy@x265@@YAXPEAUConditionVariable@1@@Z\n")</div><div>+        file(APPEND ${PROJECT_BINARY_DIR}/x265.def "?cond_broadcast@x265@@YAXPEAUConditionVariable@1@@Z\n")</div><div>+    endif()</div><div>+endif()</div><div>+</div><div> include(version) # determine X265_VERSION and X265_LATEST_TAG</div><div> include_directories(. common encoder "${PROJECT_BINARY_DIR}")</div><div> </div><div>@@ -608,7 +642,11 @@ if(ENABLE_CLI)</div><div>         if(WIN32 OR NOT ENABLE_SHARED OR INTEL_CXX)</div><div>             # The CLI cannot link to the shared library on Windows, it</div><div>             # requires internal APIs not exported from the DLL</div><div>-            target_link_libraries(cli x265-static ${PLATFORM_LIBS})</div><div>+            if(ENABLE_SHARED AND LINKED_10BIT AND LINKED_12BIT)</div><div>+                target_link_libraries(cli x265-shared ${PLATFORM_LIBS})</div><div>+            else()</div><div>+                target_link_libraries(cli x265-static ${PLATFORM_LIBS})</div><div>+            endif()</div><div>         else()</div><div>             target_link_libraries(cli x265-shared ${PLATFORM_LIBS})</div><div>         endif()</div><div>-- </div><div>1.7.9.msysgit.0</div><div><br></div></div>