Add pkg-config metadata files for libraries (#2680)

Should core, ext, libm, and/or port libraries be properly installed
on some system, help compilation and linking against them by
providing standard `.pc` files, which can be picked up by
pkg-config.

JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
This commit is contained in:
Akos Kiss
2019-01-21 09:38:05 +01:00
committed by Robert Sipka
parent 67ef396354
commit 77767c2161
9 changed files with 77 additions and 0 deletions
+8
View File
@@ -276,14 +276,22 @@ target_compile_definitions(${JERRY_CORE_NAME} PUBLIC ${DEFINES_JERRY})
target_include_directories(${JERRY_CORE_NAME} PUBLIC ${INCLUDE_CORE_PUBLIC})
target_include_directories(${JERRY_CORE_NAME} PRIVATE ${INCLUDE_CORE_PRIVATE})
set(JERRY_CORE_PKGCONFIG_REQUIRES)
set(JERRY_CORE_PKGCONFIG_LIBS)
if(JERRY_LIBM)
target_link_libraries(${JERRY_CORE_NAME} jerry-libm)
set(JERRY_CORE_PKGCONFIG_REQUIRES libjerry-libm)
endif()
separate_arguments(EXTERNAL_LINK_LIBS)
foreach(EXT_LIB ${EXTERNAL_LINK_LIBS})
target_link_libraries(${JERRY_CORE_NAME} ${EXT_LIB})
set(JERRY_CORE_PKGCONFIG_LIBS "${JERRY_CORE_PKGCONFIG_LIBS} -l${EXT_LIB}")
endforeach()
configure_file(libjerry-core.pc.in libjerry-core.pc @ONLY)
install(TARGETS ${JERRY_CORE_NAME} DESTINATION lib)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libjerry-core.pc DESTINATION lib/pkgconfig)
install(DIRECTORY ${INCLUDE_CORE_PUBLIC}/ DESTINATION include)