diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 6521c3016ef73d6900fad3cf10f73eb183d019e4..6204ed7178324a16ea1e713ceb107c3d0d8ce153 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -1,7 +1,7 @@ # # Software License Agreement (BSD License) # -# Copyright (c) 2019 CNRS-LAAS +# Copyright (c) 2019 CNRS-LAAS INRIA # Author: Joseph Mirabel # All rights reserved. # @@ -34,6 +34,7 @@ ADD_REQUIRED_DEPENDENCY("eigenpy >= 1.2") +# Name of the Python library SET(LIBRARY_NAME hppfcl) INCLUDE_DIRECTORIES("${Boost_INCLUDE_DIRS}" ${PYTHON_INCLUDE_DIRS}) @@ -54,7 +55,27 @@ PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} eigenpy) SET_TARGET_PROPERTIES(${LIBRARY_NAME} PROPERTIES PREFIX "" SUFFIX "${PYTHON_EXT_SUFFIX}" - LIBRARY_OUTPUT_NAME ${LIBRARY_NAME}) + LIBRARY_OUTPUT_NAME ${LIBRARY_NAME} + LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/python/${LIBRARY_NAME}" + ) + +IF(DEFINED HPP_FCL_SITELIB_ROOT AND HPP_FCL_SITELIB_ROOT) + SET(${LIBRARY_NAME}_INSTALL_DIR ${HPP_FCL_SITELIB_ROOT}/${PYTHON_SITELIB}/${LIBRARY_NAME}) +ELSE() + SET(${LIBRARY_NAME}_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/${PYTHON_SITELIB}/${LIBRARY_NAME}) +ENDIF() INSTALL(TARGETS ${LIBRARY_NAME} - DESTINATION ${PYTHON_SITELIB}) + DESTINATION ${${LIBRARY_NAME}_INSTALL_DIR}) + +# --- INSTALL SCRIPTS +SET(PYTHON_FILES + __init__.py + ) + +FOREACH(python ${PYTHON_FILES}) + PYTHON_BUILD(${LIBRARY_NAME} ${python}) + INSTALL(FILES + "${CMAKE_CURRENT_SOURCE_DIR}/${LIBRARY_NAME}/${python}" + DESTINATION ${${LIBRARY_NAME}_INSTALL_DIR}) +ENDFOREACH(python) diff --git a/python/hppfcl/__init__.py b/python/hppfcl/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..257d4a9c7ff30492259a410a2fb430d2ff79a455 --- /dev/null +++ b/python/hppfcl/__init__.py @@ -0,0 +1,34 @@ +# Software License Agreement (BSD License) +# +# Copyright (c) 2019 INRIA +# Author: Justin Carpentier +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of CNRS-LAAS. nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +from hppfcl import * diff --git a/travis_custom/custom_before_install_osx.sh b/travis_custom/custom_before_install_osx.sh index b2d8bb1153c3c8a083f8aad1548a883c0c225df0..40dbd837a763a7dfd2baaf0e618fd629178b652e 100755 --- a/travis_custom/custom_before_install_osx.sh +++ b/travis_custom/custom_before_install_osx.sh @@ -4,8 +4,11 @@ brew update brew tap gepetto/homebrew-gepetto # install eigenpy -brew install boost assimp eigen octomap eigenpy -# set environment variables -export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:/opt/openrobots/lib/pkgconfig" -export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/openrobots/lib" +brew install python@2 +brew install boost assimp eigen octomap + +brew uninstall numpy +pip uninstall numpy -y +brew install eigenpy +brew link --overwrite numpy@1.16