This looks wrong to me. The include folder should have a subfolder which namespaces the package headers but with this the content of the include folder would get installed into the package specific destination. It should be:

    install(DIRECTORY include/${PACKAGE_NAME}/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION})

or (which is less strict because the user could put headers in the include root or different subfolders):

    install(DIRECTORY include/ DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION})