diff --git a/CMakeLists.txt b/CMakeLists.txt
index e6bf33201a969018c2f6169453654235bd0a5cf4..d139ed7cf1b93dedea0080e96563fdccbab876cd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1806,6 +1806,10 @@ if(APPLE AND ENABLE_OS_SPECIFIC_INSTALL)
   file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/Info.plist "${F1}")
   set(CPACK_BUNDLE_PLIST ${CMAKE_CURRENT_BINARY_DIR}/Info.plist)
   set(CPACK_BUNDLE_ICON ${CMAKE_CURRENT_SOURCE_DIR}/Fltk/MacIcons.icns)
+  if(PACKAGER STREQUAL "geuzaine FIXME")
+    # codesigning requires CMake >= 3.2
+    set(CPACK_BUNDLE_APPLE_CERT_APP "Developer ID Application: Christophe Geuzaine")
+  endif(PACKAGER STREQUAL "geuzaine FIXME")
   install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/Fltk/MacIconsGeo.icns DESTINATION .
           RENAME GmshGeo.icns)
   install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/Fltk/MacIconsMsh.icns DESTINATION .
@@ -1815,12 +1819,6 @@ if(APPLE AND ENABLE_OS_SPECIFIC_INSTALL)
   install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/Fltk/MacIconsPos.icns DESTINATION .
           RENAME GmshPos.icns)
   set(CPACK_PACKAGE_ICON ${CMAKE_CURRENT_SOURCE_DIR}/Fltk/MacIcons.icns)
-  if(PACKAGER STREQUAL "geuzaine FIXME")
-    set(CODESIGN "codesign --verbose --deep --sign
-        \"Developer ID Application: Christophe Geuzaine\"")
-    set(APPDIR _CPack_Packages/Darwin/Bundle/gmsh-${GMSH_VERSION}-MacOSX/Gmsh.app)
-    install(CODE "execute_process(COMMAND ${CODESIGN} ${APPDIR})")
-  endif(PACKAGER STREQUAL "geuzaine FIXME")
 elseif(WIN32 OR CYGWIN)
   set(CPACK_GENERATOR ZIP)
 else(APPLE AND ENABLE_OS_SPECIFIC_INSTALL)