diff --git a/CMakeLists.txt b/CMakeLists.txt index a71ece122..bb57c3e7d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2576,6 +2576,16 @@ if(WOLFSSL_INSTALL) set(includedir "\${prefix}/include") set(VERSION ${PROJECT_VERSION}) + # Setting libm in Libs.private of wolfssl.pc. + # See "Link Libraries" in above about `m` insertion to LINK_LIBRARIES + get_target_property(_wolfssl_dep_libs wolfssl LINK_LIBRARIES) + list(FIND _wolfssl_dep_libs m _dep_libm) + if ("${_dep_libm}" GREATER -1) + set(LIBM -lm) + else() + set(LIBM) + endif() + configure_file(support/wolfssl.pc.in ${CMAKE_CURRENT_BINARY_DIR}/support/wolfssl.pc @ONLY) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/support/wolfssl.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) diff --git a/configure.ac b/configure.ac index dbb7c5977..d505dd67c 100644 --- a/configure.ac +++ b/configure.ac @@ -9172,6 +9172,7 @@ AC_SUBST([AM_LDFLAGS]) AC_SUBST([AM_CCASFLAGS]) AC_SUBST([LIB_ADD]) AC_SUBST([LIB_STATIC_ADD]) +AC_SUBST([LIBM]) # FINAL AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h]) diff --git a/support/wolfssl.pc.in b/support/wolfssl.pc.in index df7d387b9..19aa4431c 100644 --- a/support/wolfssl.pc.in +++ b/support/wolfssl.pc.in @@ -7,5 +7,5 @@ Name: wolfssl Description: wolfssl C library. Version: @VERSION@ Libs: -L${libdir} -lwolfssl -Libs.private: -lm +Libs.private: @LIBM@ Cflags: -I${includedir}