diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3da9ea4d0faa06c689afab7cdf7af41aceb40109..a791837585d43d79b9697366a2ffb3a419ab528e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -53,6 +53,9 @@ include_directories(SYSTEM ${LIBXSLT_INCLUDE_DIR})
 find_package(Jansson REQUIRED)
 include_directories(SYSTEM ${JANSSON_INCLUDE_DIRS})
 
+find_package(uuid REQUIRED)
+include_directories(SYSTEM ${UUID_INCLUDE_DIR})
+
 include_directories(SYSTEM "/usr/include/irods")
 
 add_library(msiSetUpperCaseWhereQuery SHARED src/msiSetUpperCaseWhereQuery.cc)
@@ -73,7 +76,7 @@ add_library(msi_json_objops           SHARED src/msi_json_objops.cc)
 target_link_libraries(msiCurlMail               LINK_PUBLIC ${CURL_LIBRARIES})
 target_link_libraries(msiStrToUpper             LINK_PUBLIC ${Boost_LIBRARIES})
 target_link_libraries(msiRegisterDataCiteDOI    LINK_PUBLIC ${CURL_LIBRARIES} ${JANSSON_LIBRARIES})
-target_link_libraries(msiGenerateEpicPID        LINK_PUBLIC ${JANSSON_LIBRARIES})
+target_link_libraries(msiGenerateEpicPID        LINK_PUBLIC ${JANSSON_LIBRARIES} ${UUID_LIBRARIES})
 target_link_libraries(msiGetDataCiteDOI         LINK_PUBLIC ${CURL_LIBRARIES} ${JANSSON_LIBRARIES})
 target_link_libraries(msiRemoveDataCiteMetadata LINK_PUBLIC ${CURL_LIBRARIES} ${JANSSON_LIBRARIES})
 target_link_libraries(msiLoadMetadataFromXml    LINK_PUBLIC ${LIBXML2_LIBRARIES})
diff --git a/CMakeModules/Finduuid.cmake b/CMakeModules/Finduuid.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..9265a5446873d715e9d33e4c480b0c6a8dcc108f
--- /dev/null
+++ b/CMakeModules/Finduuid.cmake
@@ -0,0 +1,35 @@
+#
+# find libuuid
+#
+find_path(UUID_INCLUDE_DIR
+  NAMES
+    uuid/uuid.h
+  PATHS
+    $ENV{UUID_HOME}/include
+    /usr/include
+    /usr/local/include
+)
+
+find_library(UUID_LIBRARIES
+  NAMES
+    uuid
+  PATHS
+    $ENV{UUID_HOME}/lib
+    /usr/lib
+    /usr/lib64
+    /usr/local/lib
+    /usr/local/lib64
+)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(
+  uuid
+  DEFAULT_MSG
+  UUID_LIBRARIES
+  UUID_INCLUDE_DIR
+)
+
+mark_as_advanced(
+  UUID_INCLUDE_DIR
+  UUID_LIBRARIES
+)