We have some downstream patches and other scripts that include variables to be expanded by cmake. Cmake needs to know about them, so adding them manually. # Install libgcc as mylibgcc.a --- mariadb-10.5.5/scripts/CMakeLists.txt.old 2020-09-24 10:13:35.272589689 +0200 +++ mariadb-10.5.5/scripts/CMakeLists.txt 2020-09-24 10:17:31.428985798 +0200 @@ -377,6 +377,34 @@ INSTALL_LINK(${file} ${binname} ${INSTALL_BINDIR} ${${file}_COMPONENT}) ENDIF() ENDFOREACH() + + # files for systemd + SET(SYSTEMD_SCRIPTS + mariadb.tmpfiles.d + mysql.service + mysql@.service + mariadb-prepare-db-dir + mariadb-check-socket + mariadb-check-upgrade + mariadb-scripts-common + mysql_config_multilib + clustercheck + galera_new_cluster + my.cnf + ) + FOREACH(file ${SYSTEMD_SCRIPTS}) + IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh + ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY) + ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.in) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.in + ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY) + ELSE() + MESSAGE(FATAL_ERROR "Can not find ${file}.sh or ${file}.in in " + "${CMAKE_CURRENT_SOURCE_DIR}" ) + ENDIF() + ENDFOREACH() + ENDIF() # Install libgcc as mylibgcc.a