diff -up amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/CMakeLists.txt.shared amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/CMakeLists.txt
--- amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/CMakeLists.txt.shared	2021-05-21 16:09:36.044867830 -0400
+++ amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/CMakeLists.txt	2021-05-21 16:09:36.046867905 -0400
@@ -5,6 +5,11 @@ project(KinesisVideoProducerC LANGUAGES
 
 include(GNUInstallDirs)
 
+set(KINESIS_VIDEO_PRODUCER_C_MAJOR_VERSION 1)
+set(KINESIS_VIDEO_PRODUCER_C_MINOR_VERSION 1)
+set(KINESIS_VIDEO_PRODUCER_C_PATCH_VERSION 1)
+set(KINESIS_VIDEO_PRODUCER_C_VERSION ${KINESIS_VIDEO_PRODUCER_C_MAJOR_VERSION}.${KINESIS_VIDEO_PRODUCER_C_MINOR_VERSION}.${KINESIS_VIDEO_PRODUCER_C_PATCH_VERSION})
+
 # User Flags
 option(ADD_MUCLIBC "Add -muclibc c flag" OFF)
 option(BUILD_STATIC "Static build" OFF)
@@ -26,6 +31,11 @@ option(UNDEFINED_BEHAVIOR_SANITIZER "Bui
 option(ALIGNED_MEMORY_MODEL "Aligned memory model ONLY." OFF)
 option(SET_SSL_CALLBACKS "Set SSL thread and lock callbacks." OFF)
 
+set(TYPE_OF_LIB SHARED)
+if (BUILD_STATIC)
+  set(TYPE_OF_LIB STATIC)
+endif()
+
 set(CMAKE_MACOSX_RPATH TRUE)
 
 get_filename_component(ROOT "${CMAKE_CURRENT_SOURCE_DIR}" ABSOLUTE)
@@ -250,8 +260,11 @@ if(BUILD_COMMON_LWS)
       "${CMAKE_CURRENT_SOURCE_DIR}/libkvsCommonLws.pc.cmake"
       "${CMAKE_CURRENT_BINARY_DIR}/libkvsCommonLws.pc" @ONLY)
 
-    add_library(kvsCommonLws STATIC ${KVS_COMMON_SOURCE_FILES_BASE} ${KVS_COMMON_SOURCE_FILES_LWS})
+    add_library(kvsCommonLws ${TYPE_OF_LIB} ${KVS_COMMON_SOURCE_FILES_BASE} ${KVS_COMMON_SOURCE_FILES_LWS})
     target_compile_definitions(kvsCommonLws PRIVATE KVS_BUILD_WITH_LWS ${CPRODUCER_COMMON_TLS_OPTION})
+    if(NOT BUILD_STATIC)
+      set_target_properties(kvsCommonLws PROPERTIES VERSION ${KINESIS_VIDEO_PRODUCER_C_VERSION} SOVERSION ${KINESIS_VIDEO_PRODUCER_C_MAJOR_VERSION})
+    endif()
     target_link_libraries(kvsCommonLws
             ${OPENSSL_CRYPTO_LIBRARY}
             ${OPENSSL_SSL_LIBRARY}
@@ -274,8 +287,11 @@ if(BUILD_COMMON_CURL)
       "${CMAKE_CURRENT_SOURCE_DIR}/libkvsCommonCurl.pc.cmake"
       "${CMAKE_CURRENT_BINARY_DIR}/libkvsCommonCurl.pc" @ONLY)
 
-    add_library(kvsCommonCurl STATIC ${KVS_COMMON_SOURCE_FILES_BASE} ${KVS_COMMON_SOURCE_FILES_CURL})
+    add_library(kvsCommonCurl ${TYPE_OF_LIB} ${KVS_COMMON_SOURCE_FILES_BASE} ${KVS_COMMON_SOURCE_FILES_CURL})
     target_compile_definitions(kvsCommonCurl PRIVATE KVS_BUILD_WITH_CURL ${CPRODUCER_COMMON_TLS_OPTION})
+    if(NOT BUILD_STATIC)
+      set_target_properties(kvsCommonCurl PROPERTIES VERSION ${KINESIS_VIDEO_PRODUCER_C_VERSION} SOVERSION ${KINESIS_VIDEO_PRODUCER_C_MAJOR_VERSION})
+    endif()
     target_link_libraries(kvsCommonCurl
             ${PRODUCER_CRYPTO_LIBRARY}
             kvspicUtils
@@ -294,16 +310,14 @@ if(BUILD_COMMON_CURL)
       "${CMAKE_CURRENT_SOURCE_DIR}/libcproducer.pc.cmake"
       "${CMAKE_CURRENT_BINARY_DIR}/libcproducer.pc" @ONLY)
 
-    set(TYPE_OF_LIB SHARED)
-    if (BUILD_STATIC)
-      set(TYPE_OF_LIB STATIC)
-    endif()
-
     if (WIN32)
       add_library(cproducer STATIC ${PRODUCER_C_SOURCE_FILES})
     else()
       add_library(cproducer ${TYPE_OF_LIB} ${PRODUCER_C_SOURCE_FILES})
     endif()
+    if(NOT BUILD_STATIC)
+      set_target_properties(cproducer PROPERTIES VERSION ${KINESIS_VIDEO_PRODUCER_C_VERSION} SOVERSION ${KINESIS_VIDEO_PRODUCER_C_MAJOR_VERSION})
+    endif()
     target_link_libraries(cproducer PUBLIC kvsCommonCurl kvspic)
 
     install(
diff -up amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libcproducer.pc.cmake.shared amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libcproducer.pc.cmake
--- amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libcproducer.pc.cmake.shared	2021-05-21 16:10:35.189086868 -0400
+++ amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libcproducer.pc.cmake	2021-05-21 16:10:51.274690388 -0400
@@ -5,6 +5,6 @@ libdir=${exec_prefix}/@CMAKE_INSTALL_LIB
 
 Name: KVS-libcproducer
 Description: KVS C Producer library
-Version: 0.0.0
+Version: @KINESIS_VIDEO_PRODUCER_C_VERSION@
 Cflags: -I${includedir}
 Libs: -L${libdir} -lcproducer
diff -up amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonCurl.pc.cmake.shared amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonCurl.pc.cmake
--- amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonCurl.pc.cmake.shared	2021-05-21 16:11:02.937127956 -0400
+++ amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonCurl.pc.cmake	2021-05-21 16:11:16.937653246 -0400
@@ -5,6 +5,6 @@ libdir=${exec_prefix}/@CMAKE_INSTALL_LIB
 
 Name: KVS-libkvsCommonCurl
 Description: KVS C Producer common curl library
-Version: 0.0.0
+Version: @KINESIS_VIDEO_PRODUCER_C_VERSION@
 Cflags: -I${includedir}
 Libs: -L${libdir} -lkvsCommonCurl
diff -up amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonLws.pc.cmake.shared amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonLws.pc.cmake
--- amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonLws.pc.cmake.shared	2021-05-21 16:11:24.208926063 -0400
+++ amazon-kinesis-video-streams-producer-c-a8091d1a140fbdcb260ba3c8302aa2e4712d2d91/libkvsCommonLws.pc.cmake	2021-05-21 16:11:32.492236848 -0400
@@ -5,6 +5,6 @@ libdir=${exec_prefix}/@CMAKE_INSTALL_LIB
 
 Name: KVS-libkvsCommonLws
 Description: KVS C Producer common libwebsockets library
-Version: 0.0.0
+Version: @KINESIS_VIDEO_PRODUCER_C_VERSION@
 Cflags: -I${includedir}
 Libs: -L${libdir} -lkvsCommonLws
