SET(LIBWEBVI_SOURCES libwebvi.c mainmenu.c webvicontext.c request.c link.c linktemplates.c linkextractor.c menubuilder.c pipecomponent.c urlutils.c) SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/libwebvi) ADD_LIBRARY(webvi SHARED ${LIBWEBVI_SOURCES}) ADD_LIBRARY(webvistatic STATIC ${LIBWEBVI_SOURCES}) SET_TARGET_PROPERTIES(webvi PROPERTIES VERSION "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}") SET_TARGET_PROPERTIES(webvi PROPERTIES SOVERSION "${MAJOR_VERSION}.${MINOR_VERSION}") SET_TARGET_PROPERTIES(webvi PROPERTIES COMPILE_FLAGS "-fvisibility=hidden") SET_TARGET_PROPERTIES(webvistatic PROPERTIES OUTPUT_NAME webvi) ADD_DEFINITIONS(-DLIBWEBVI_LOG_DOMAIN="libwebvi") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99 -Wall") # Required libraries FIND_PACKAGE(LibXml2 REQUIRED) FIND_PACKAGE(CURL REQUIRED) FIND_PACKAGE(LibTidy REQUIRED) FIND_PACKAGE(PkgConfig) PKG_CHECK_MODULES(GLIB REQUIRED glib-2.0) ADD_DEFINITIONS(${GLIB_CFLAGS} ${GLIB_CFLAGS_OTHER}) LINK_DIRECTORIES(${GLIB_LIBRARY_DIRS}) INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${GLIB_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${LIBTIDY_INCLUDE_DIRS}) ADD_DEFINITIONS(-DHAVE_TIDY_ULONG_VERSION=${HAVE_TIDY_ULONG_VERSION}) TARGET_LINK_LIBRARIES(webvi ${GLIB_LIBRARIES} ${LIBXML2_LIBRARIES} ${CURL_LIBRARIES} ${LIBTIDY_LIBRARIES}) # Installing INSTALL(TARGETS webvi DESTINATION bin) INSTALL(FILES libwebvi.h DESTINATION include)