Merge pull request #223 from gsomlo/gls-pytrellis-cmake

ecp5: cmake: Search for pytrellis.so in multiple locations
This commit is contained in:
David Shah 2019-02-10 15:43:29 +00:00 committed by GitHub
commit 6cd0b8a123
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -6,12 +6,19 @@ if (NOT DEFINED TRELLIS_ROOT)
set(TRELLIS_ROOT "/usr/local/share/trellis")
endif()
file(GLOB found_pytrellis ${TRELLIS_ROOT}/libtrellis/pytrellis.*)
file(GLOB found_pytrellis ${TRELLIS_ROOT}/libtrellis/pytrellis.*
/usr/lib/pytrellis.*
/usr/lib64/pytrellis.*
/usr/lib/trellis/pytrellis.*
/usr/lib64/trellis/pytrellis.*)
if ("${found_pytrellis}" STREQUAL "")
message(FATAL_ERROR "failed to find pytrellis library in ${TRELLIS_ROOT}/libtrellis/")
message(FATAL_ERROR "failed to locate pytrellis library!")
endif()
list(GET found_pytrellis 0 PYTRELLIS_LIB)
get_filename_component(PYTRELLIS_LIBDIR ${PYTRELLIS_LIB} DIRECTORY)
set(DB_PY ${CMAKE_CURRENT_SOURCE_DIR}/ecp5/trellis_import.py)
file(MAKE_DIRECTORY ecp5/chipdbs/)
@ -20,9 +27,9 @@ target_compile_definitions(ecp5_chipdb PRIVATE NEXTPNR_NAMESPACE=nextpnr_${famil
target_include_directories(ecp5_chipdb PRIVATE ${family}/)
if (CMAKE_HOST_WIN32)
set(ENV_CMD ${CMAKE_COMMAND} -E env "PYTHONPATH=\"${TRELLIS_ROOT}/libtrellis\;${TRELLIS_ROOT}/util/common\;${TRELLIS_ROOT}/timing/util\"")
set(ENV_CMD ${CMAKE_COMMAND} -E env "PYTHONPATH=\"${PYTRELLIS_LIBDIR}\;${TRELLIS_ROOT}/util/common\;${TRELLIS_ROOT}/timing/util\"")
else()
set(ENV_CMD ${CMAKE_COMMAND} -E env "PYTHONPATH=${TRELLIS_ROOT}/libtrellis:${TRELLIS_ROOT}/util/common:${TRELLIS_ROOT}/timing/util")
set(ENV_CMD ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTRELLIS_LIBDIR}\:${TRELLIS_ROOT}/util/common:${TRELLIS_ROOT}/timing/util")
endif()
if (MSVC)