Возможно, ваши переменные не содержат значений, которые, по вашему мнению, они содержат ... Дважды проверьте значение ваших переменных sfml_ *. Также дважды проверьте, что переменная CMake GIT_EXECUTABLE имеет значение, которое вы ожидаете после включения ExternalProject ...
Следующий файл CMakeLists.txt работает на моем Mac с использованием CMake 2.8.5:
cmake_minimum_required(VERSION 2.8)
project(SfmlBuilder)
include(ExternalProject)
set(sfml_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/sfml")
set(sfml_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/sfml")
set(sfml_CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${sfml_INSTALL_DIR})
message("sfml_PREFIX='${sfml_PREFIX}'")
message("sfml_INSTALL_DIR='${sfml_INSTALL_DIR}'")
message("sfml_CMAKE_ARGS='${sfml_CMAKE_ARGS}'")
message("GIT_EXECUTABLE='${GIT_EXECUTABLE}'")
ExternalProject_Add(sfml
PREFIX ${sfml_PREFIX}
GIT_REPOSITORY https://github.com/LaurentGomila/SFML.git
INSTALL_DIR ${sfml_INSTALL_DIR}
CMAKE_ARGS ${sfml_CMAKE_ARGS}
)
Сбой во время установки для меня с отказом в разрешении, потому что я не запустил "make" как sudo, и он пытается установить по абсолютному пути "/Library/Frameworks/sndfile.framework"
Еще один совет. Я замечаю, что вы устанавливаете "/ Applications / CMake 2.8-5.app/Contents/share/cmake-2.8/Modules/FindSFML.cmake" непосредственно в установку CMake ... Как правило, это не рекомендуется, так как это изменение CMake установка может исчезнуть, если пользователь удалит и повторно установит CMake. Или просто обновить до другого CMake. Или использует второй или третий CMake, который также установлен на компьютере.
Вместо этого вы должны создать файл конфигурации проекта в вашей собственной установке, который CMake сможет найти с помощью встроенных правил поиска пакетов в стандартных местах. Прочитайте мелкий шрифт документации CMake find_package для получения полной информации о файлах конфигурации проекта:
http://cmake.org/cmake/help/cmake-2-8-docs.html#command:find_package