From: Thomas Jarosch Date: Tue, 1 Oct 2019 14:17:09 +0000 (+0200) Subject: Fix build dependency if swig wrapper and documentation is both switched on X-Git-Tag: v1.5rc1~17 X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=commitdiff_plain;h=07bdc1ea16ac4b38847b773619a7a840a8cd5dd7 Fix build dependency if swig wrapper and documentation is both switched on Seems to affect new cmake / swig versions only. Reported by Richard Shaw during Fedora Rawhide build: Ok, so far looks like I was right, you have to set the dependency on ftdi1_doc.i before calling swig_add_library or it doesn't get it right: [ 11%] Swig compile ftdi1.i for python /usr/bin/doxygen /builddir/build/BUILD/libftdi-f49ee0d/build-py2/Doxyfile cd /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python && /usr/bin/cmake -E make_directory /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python/CMakeFiles/_ftdi1.dir /usr/bin/doxygen /builddir/build/BUILD/libftdi-f49ee0d/build-py2/Doxyfile.xml cd /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python && /usr/bin/cmake -E touch /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python/CMakeFiles/_ftdi1.dir/ftdi1PYTHON.stamp cd /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python && /usr/bin/cmake -E env SWIG_LIB=/usr/share/swig/3.0.12 /usr/bin/swig -python -DDOXYGEN=YES -outdir /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python -I/builddir/build/BUILD/libftdi-f49ee0d/src -I/usr/include/libusb-1.0 -I/usr/include/python2.7 -o /builddir/build/BUILD/libftdi-f49ee0d/build-py2/python/CMakeFiles/_ftdi1.dir/ftdi1PYTHON_wrap.c /builddir/build/BUILD/libftdi-f49ee0d/python/ftdi1.i /builddir/build/BUILD/libftdi-f49ee0d/python/ftdi1.i:7: Error: Unable to find 'ftdi1_doc.i' make[2]: *** [python/CMakeFiles/ftdi1_swig_compilation.dir/build.make:67: python/CMakeFiles/_ftdi1.dir/ftdi1PYTHON.stamp] Error 1 --- diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 4f758d5..fc1c3d1 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -24,6 +24,8 @@ link_directories ( ${CMAKE_CURRENT_BINARY_DIR}/../src ) if ( DOCUMENTATION ) set(CMAKE_SWIG_FLAGS -DDOXYGEN=${DOXYGEN_FOUND}) + # manually add dependency for new cmake / swig versions + set_property(SOURCE ftdi1.i PROPERTY DEPENDS ftdi1_doc.i) endif() if(NOT CMAKE_VERSION VERSION_LESS 3.8.0) swig_add_library ( ftdi1 LANGUAGE python SOURCES ftdi1.i )