fixed problem with absolute path for boost iostreams lib in pkg-config file
[libi2ncommon] / CMakeLists.txt
index 4492d3d..a77be06 100644 (file)
@@ -144,8 +144,15 @@ set(includedir  ${CMAKE_INSTALL_PREFIX}/include)
 set(libdir      ${CMAKE_INSTALL_PREFIX}/lib)
 
 # construct ${BOOST_LDADD} from ${Boost_LIBRARIES}
-string(REGEX REPLACE ";" " " BOOST_LDADD "${Boost_IOSTREAMS_LIBRARIES}")
-set(BOOST_LDADD "-l${BOOST_LDADD}")
+# forming "-L/some/path -lboost_a -L/other/path -lboost_b" from
+# "/some/path/libboost_a.so.3.5;/other/path/libboost_b.so"
+set(BOOST_LDADD "")
+FOREACH(boost_lib_full ${Boost_IOSTREAMS_LIBRARIES})
+    get_filename_component(boost_lib_path ${boost_lib_full} PATH)
+    get_filename_component(boost_lib_file ${boost_lib_full} NAME_WE)
+    string(REGEX REPLACE "^lib(boost.+)$" "\\1" boost_lib_name ${boost_lib_file})
+    set(BOOST_LDADD "${BOOST_LDADD} -L${boost_lib_path} -l${boost_lib_name}")
+ENDFOREACH()
 
 # construct ${BOOST_CFLAGS} from ${Boost_INCLUDE_DIRS}
 string(REGEX REPLACE ";" " -I" BOOST_CFLAGS "${Boost_INCLUDE_DIRS}")