Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions jerry-core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -269,14 +269,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)
12 changes: 12 additions & 0 deletions jerry-core/libjerry-core.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libjerry-core
Description: JerryScript: lightweight JavaScript engine (core engine library)
URL: https://github.com/pando-project/jerryscript
Version: 1.0
Requires.private: @JERRY_CORE_PKGCONFIG_REQUIRES@ # NOTE: libjerry-port-default* is not added as a required package
Libs: -L${libdir} -ljerry-core
Libs.private: @JERRY_CORE_PKGCONFIG_LIBS@
Cflags: -I${includedir}
6 changes: 6 additions & 0 deletions jerry-ext/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,15 @@ target_include_directories(${JERRY_EXT_NAME} PRIVATE ${INCLUDE_EXT_PRIVATE})
target_compile_definitions(${JERRY_EXT_NAME} PUBLIC ${DEFINES_EXT})
target_link_libraries(${JERRY_EXT_NAME} jerry-core)

set(JERRY_EXT_PKGCONFIG_LIBS)

if(USING_MSVC AND FEATURE_DEBUGGER)
target_link_libraries(${JERRY_EXT_NAME} ws2_32)
set(JERRY_EXT_PKGCONFIG_LIBS -lws2_32)
endif()

configure_file(libjerry-ext.pc.in libjerry-ext.pc @ONLY)

install(TARGETS ${JERRY_EXT_NAME} DESTINATION lib)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libjerry-ext.pc DESTINATION lib/pkgconfig)
install(DIRECTORY ${INCLUDE_EXT_PUBLIC}/ DESTINATION include)
12 changes: 12 additions & 0 deletions jerry-ext/libjerry-ext.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libjerry-ext
Description: JerryScript: lightweight JavaScript engine (extensions library)
URL: https://github.com/pando-project/jerryscript
Version: 1.0
Requires.private: libjerry-core
Libs: -L${libdir} -ljerry-ext
Libs.private: @JERRY_EXT_PKGCONFIG_LIBS@
Cflags: -I${includedir}
3 changes: 3 additions & 0 deletions jerry-libm/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,5 +36,8 @@ set_property(TARGET ${JERRY_LIBM_NAME}

target_include_directories(${JERRY_LIBM_NAME} PUBLIC ${INCLUDE_LIBM})

configure_file(libjerry-libm.pc.in libjerry-libm.pc @ONLY)

install(TARGETS ${JERRY_LIBM_NAME} DESTINATION lib)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libjerry-libm.pc DESTINATION lib/pkgconfig)
install(DIRECTORY ${INCLUDE_LIBM}/ DESTINATION include/jerry-libm)
10 changes: 10 additions & 0 deletions jerry-libm/libjerry-libm.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/lib
includedir=${prefix}/include/jerry-libm

Name: libjerry-libm
Description: JerryScript: lightweight JavaScript engine (minimal math library)
URL: https://github.com/pando-project/jerryscript
Version: 1.0
Libs: -L${libdir} -ljerry-libm
Cflags: -I${includedir}
4 changes: 4 additions & 0 deletions jerry-port/default/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,9 @@ endforeach()
target_compile_definitions(${JERRY_PORT_DEFAULT_NAME}-minimal PRIVATE DISABLE_EXTRA_API)

# Installation
configure_file(libjerry-port-default.pc.in libjerry-port-default.pc @ONLY)
configure_file(libjerry-port-default-minimal.pc.in libjerry-port-default-minimal.pc @ONLY)

install(TARGETS ${JERRY_PORT_DEFAULT_NAME} ${JERRY_PORT_DEFAULT_NAME}-minimal DESTINATION lib)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libjerry-port-default.pc ${CMAKE_CURRENT_BINARY_DIR}/libjerry-port-default-minimal.pc DESTINATION lib/pkgconfig)
install(DIRECTORY ${INCLUDE_PORT_DEFAULT}/ DESTINATION include)
11 changes: 11 additions & 0 deletions jerry-port/default/libjerry-port-default-minimal.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libjerry-port-default-minimal
Description: JerryScript: lightweight JavaScript engine (default minimal port library)
URL: https://github.com/pando-project/jerryscript
Version: 1.0
Conflicts: libjerry-port-default
Libs: -L${libdir} -ljerry-port-default-minimal
Cflags: -I${includedir}
11 changes: 11 additions & 0 deletions jerry-port/default/libjerry-port-default.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/lib
includedir=${prefix}/include

Name: libjerry-port-default
Description: JerryScript: lightweight JavaScript engine (default port library)
URL: https://github.com/pando-project/jerryscript
Version: 1.0
Conflicts: libjerry-port-default-minimal
Libs: -L${libdir} -ljerry-port-default
Cflags: -I${includedir}