--- ./CMakeLists.txt.1032	2019-06-25 12:23:30.000000000 +0200
+++ ./CMakeLists.txt	2019-12-02 10:07:37.000000000 +0100
@@ -69,6 +69,10 @@
   ENDIF()
 ENDIF()
 
+IF(CMAKE_HOST_SYSTEM_NAME MATCHES "AIX")
+  CMAKE_MINIMUM_REQUIRED(VERSION 3.16.0)
+ENDIF()
+
 # CMake 3.5 is needed for TARGET_SOURCES(... $<TARGET_OBJECTS:${LIB}_objlib>)
 CMAKE_MINIMUM_REQUIRED(VERSION 3.5.1)
 
@@ -1142,11 +1146,19 @@
     SET(BEFORE_OR_AFTER "AFTER")
   ENDIF()
 
+  IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  IF(DEFINED ${LIBRARY}_INCLUDE_DIRS)
+    INCLUDE_DIRECTORIES(${BEFORE_OR_AFTER} ${${LIBRARY}_INCLUDE_DIRS})
+  ELSEIF(DEFINED ${LIBRARY}_INCLUDE_DIR)
+    INCLUDE_DIRECTORIES(${BEFORE_OR_AFTER} ${${LIBRARY}_INCLUDE_DIR})
+  ENDIF()
+  ELSE()
   IF(DEFINED ${LIBRARY}_INCLUDE_DIRS)
     INCLUDE_DIRECTORIES(${BEFORE_OR_AFTER} SYSTEM ${${LIBRARY}_INCLUDE_DIRS})
   ELSEIF(DEFINED ${LIBRARY}_INCLUDE_DIR)
     INCLUDE_DIRECTORIES(${BEFORE_OR_AFTER} SYSTEM ${${LIBRARY}_INCLUDE_DIR})
   ENDIF()
+  ENDIF()
   IF("${${LIBRARY}_INCLUDE_DIR}" STREQUAL "")
     IF("${${LIBRARY}_INCLUDE_DIRS}" STREQUAL "")
       MESSAGE(WARNING "${LIBRARY} is unknown")
@@ -1161,6 +1173,15 @@
 ENDMACRO()
 
 MACRO(MY_TARGET_INCLUDE_SYSTEM_DIRECTORIES TARGET LIBRARY)
+  IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  IF(${WITH_${LIBRARY}} STREQUAL "bundled")
+    TARGET_INCLUDE_DIRECTORIES(${TARGET} BEFORE PRIVATE
+      ${${LIBRARY}_INCLUDE_DIR})
+  ELSE()
+    TARGET_INCLUDE_DIRECTORIES(${TARGET} PRIVATE
+      ${${LIBRARY}_INCLUDE_DIR})
+  ENDIF()
+  ELSE()
   IF(${WITH_${LIBRARY}} STREQUAL "bundled")
     TARGET_INCLUDE_DIRECTORIES(${TARGET} SYSTEM BEFORE PRIVATE
       ${${LIBRARY}_INCLUDE_DIR})
@@ -1168,6 +1189,7 @@
     TARGET_INCLUDE_DIRECTORIES(${TARGET} SYSTEM PRIVATE
       ${${LIBRARY}_INCLUDE_DIR})
   ENDIF()
+  ENDIF()
 ENDMACRO()
 
 IF(LINUX)
--- ./client/dump/CMakeLists.txt.orig	2019-12-02 09:42:30.000000000 +0100
+++ ./client/dump/CMakeLists.txt	2019-12-02 10:00:13.000000000 +0100
@@ -28,7 +28,11 @@
     -DBOOST_SYSTEM_NO_DEPRECATED)
 ENDIF()
 
-INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  INCLUDE_DIRECTORIES(${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ELSE()
+  INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ENDIF()
 
 SET(MYSQLPUMP_LIB_SOURCES
   abstract_chain_element.cc
--- ./plugin/keyring_udf/CMakeLists.txt.orig	2019-12-02 09:43:13.000000000 +0100
+++ ./plugin/keyring_udf/CMakeLists.txt	2019-12-02 10:00:04.000000000 +0100
@@ -20,7 +20,11 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  INCLUDE_DIRECTORIES(${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ELSE()
+  INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ENDIF()
 
 MYSQL_ADD_PLUGIN(keyring_udf
                  keyring_udf.cc
--- ./cmake/rapidjson.cmake.orig	2019-12-02 10:51:35.000000000 +0100
+++ ./cmake/rapidjson.cmake	2019-12-02 10:52:56.000000000 +0100
@@ -123,11 +123,19 @@
 
   MESSAGE(STATUS "RAPIDJSON_INCLUDE_DIR ${RAPIDJSON_INCLUDE_DIR}")
   CHECK_RAPIDJSON_VERSION()
+  IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  IF(WITH_RAPIDJSON STREQUAL "bundled")
+    INCLUDE_DIRECTORIES(BEFORE ${RAPIDJSON_INCLUDE_DIR})
+  ELSE()
+    INCLUDE_DIRECTORIES(${RAPIDJSON_INCLUDE_DIR})
+  ENDIF()
+  ELSE()
   IF(WITH_RAPIDJSON STREQUAL "bundled")
     INCLUDE_DIRECTORIES(BEFORE SYSTEM ${RAPIDJSON_INCLUDE_DIR})
   ELSE()
     INCLUDE_DIRECTORIES(SYSTEM ${RAPIDJSON_INCLUDE_DIR})
   ENDIF()
+  ENDIF()
 ENDMACRO()
 
 ADD_DEFINITIONS(-DRAPIDJSON_NO_SIZETYPEDEFINE)
--- ./unittest/gunit/CMakeLists.txt_orig	2020-03-09 04:06:59 +0000
+++ ./unittest/gunit/CMakeLists.txt	2020-03-09 04:12:37 +0000
@@ -25,9 +25,15 @@
 ENDIF()
 
 # Some tests require Boost.
-INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  INCLUDE_DIRECTORIES(${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
 
-INCLUDE_DIRECTORIES(SYSTEM ${GMOCK_INCLUDE_DIRS})
+  INCLUDE_DIRECTORIES(${GMOCK_INCLUDE_DIRS})
+ELSE()
+  INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+
+  INCLUDE_DIRECTORIES(SYSTEM ${GMOCK_INCLUDE_DIRS})
+ENDIF()
 
 MY_CHECK_CXX_COMPILER_FLAG("-fno-builtin-memcmp" HAVE_NO_BUILTIN_MEMCMP)
 
--- ./sql/CMakeLists.txt_orig	2020-03-09 04:06:10 +0000
+++ ./sql/CMakeLists.txt	2020-03-09 04:06:22 +0000
@@ -20,7 +20,11 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+IF(CMAKE_SYSTEM_NAME MATCHES AIX)
+  INCLUDE_DIRECTORIES(${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ELSE()
+  INCLUDE_DIRECTORIES(SYSTEM ${BOOST_PATCHES_DIR} ${BOOST_INCLUDE_DIR})
+ENDIF()
 
 MY_INCLUDE_SYSTEM_DIRECTORIES(ICU)
 
