It looks like the unnecessary internal include dirs in the cephfs
cmake file were the reason language="c++" was added to pybind. The
system utime.h was being aliased by ceph's include/utime.h. Fix this
by using -iquote instead of -I, to only add ceph's include dir as a
search path for quoted #includes, not sytem headers. The automake
build already uses -iquote here.
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
COMMAND
LDFLAGS=-L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
CYTHON_BUILD_DIR=${CMAKE_BINARY_DIR}/src/pybind/cephfs
- CFLAGS=\"-I${CMAKE_SOURCE_DIR}/src -I${CMAKE_BINARY_DIR}/include -I${CMAKE_SOURCE_DIR}/src/include -std=c++11\"
+ CFLAGS=\"-iquote ${CMAKE_SOURCE_DIR}/src/include\"
python ${CMAKE_SOURCE_DIR}/src/pybind/cephfs/setup.py build --build-base ${CYTHON_MODULE_DIR} --verbose
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/pybind/cephfs
DEPENDS rados cephfs)
COMMAND
LDFLAGS=-L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
CYTHON_BUILD_DIR=${CMAKE_BINARY_DIR}/src/pybind/rados
- CFLAGS=\"-I${CMAKE_SOURCE_DIR}/src/include -std=c++11\"
+ CFLAGS=\"-iquote ${CMAKE_SOURCE_DIR}/src/include\"
python ${CMAKE_SOURCE_DIR}/src/pybind/rados/setup.py build --build-base ${CYTHON_MODULE_DIR} --verbose
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/pybind/rados
DEPENDS rados)
COMMAND
LDFLAGS=-L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
CYTHON_BUILD_DIR=${CMAKE_BINARY_DIR}/src/pybind/rbd
- CFLAGS=\"-I${CMAKE_SOURCE_DIR}/src/include -std=c++11\"
+ CFLAGS=\"-iquote ${CMAKE_SOURCE_DIR}/src/include\"
python ${CMAKE_SOURCE_DIR}/src/pybind/rbd/setup.py build --build-base ${CYTHON_MODULE_DIR} --verbose
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/pybind/rbd
DEPENDS rbd)