cmake version 3.0.2 and version 3.3.0
same issue
Your build process uses symlinks (according to your makefile to support backward compatibility). To create these symlinks, your build process is using cmake's Command-Line Tool Mode and the command create_symlink. This will work on vanilla Unix but NOT on OSX, as the cmake Command-Line Tool Mode documentation makes not totally clear:
*UNIX-specific Command-Line Tools
The following cmake -E commands are available only on UNIX:
create_symlink <old> <new>
Create a symbolic link <new> naming <old>.*
If you try to do a straight up cmake -G "Unix Makefiles" build, the same thing happens, the build fails on:
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libmariadb${CMAKE_SHARED_LIBRARY_SUFFIX} libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}
.../mariadb-connector-c-2.1.0-src/libmariadb/CMakeLists.txt line 407, see excerpt below.
- There are still several projects which don't make use
- of the config program. To make sure these programs can
- use mariadb client library we provide libmysql symlinks
IF(NOT WIN32 AND WITH_MYSQLCOMPAT)
ADD_CUSTOM_COMMAND(OUTPUT "libmysql${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX}"
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f libmysql${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libmariadb${CMAKE_SHARED_LIBRARY_SUFFIX} libmysql${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libmariadb${CMAKE_SHARED_LIBRARY_SUFFIX} libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libmariadb${CMAKE_SHARED_LIBRARY_SUFFIX} libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX}
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libmariadbclient${CMAKE_STATIC_LIBRARY_SUFFIX} libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX}
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/libmariadb
DEPENDS libmariadb mariadbclient)
ADD_CUSTOM_TARGET(LIBMYSQL_SYMLINKS
ALL
DEPENDS "libmysql${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX}"
"libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX}"
VERBATIM)
ENDIF()
Xcode doesn't really produce a listing in the same way as make, but the error message states clearly enough that create_symlink is not an available -E command in cmake.
Could you please attach output of your cmake build, outout of the build and provide version of cmake?