X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=CMakeLists.txt;h=cee5a07fd048caf05f85fb11f5977fc5b46ea756;hb=95b6dc2f61f447783c65f98e2e1e2dda16249073;hp=f37c44c3427782c3ad15fc5aa4bf93a33e085204;hpb=f16675ed24fd331903b8d6ef5d8ac07f6acbd6b0;p=src%2Fapp-framework-binder.git diff --git a/CMakeLists.txt b/CMakeLists.txt index f37c44c3..cee5a07f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,6 +13,26 @@ INCLUDE(CheckIncludeFiles) INCLUDE(CheckLibraryExists) INCLUDE(GNUInstallDirs) +########################################################################### + +add_compile_options(-Wall -Wextra -Wconversion) +add_compile_options(-Wno-unused-parameter) # frankly not using a parameter does it care? +add_compile_options(-Wno-sign-compare -Wno-sign-conversion) +add_compile_options(-Werror=maybe-uninitialized) +add_compile_options(-Werror=implicit-function-declaration) +add_compile_options(-ffunction-sections -fdata-sections) +add_compile_options(-Wl,--gc-sections) +add_compile_options(-fPIC) +add_compile_options(-g) + +set(CMAKE_C_FLAGS_PROFILING "-g -O2 -pg -Wp,-U_FORTIFY_SOURCE") +set(CMAKE_C_FLAGS_DEBUG "-g -O2 -ggdb -Wp,-U_FORTIFY_SOURCE") +set(CMAKE_C_FLAGS_RELEASE "-g -O2") +set(CMAKE_C_FLAGS_CCOV "-g -O2 --coverage") + +########################################################################### + + CHECK_INCLUDE_FILES(magic.h HAVE_MAGIC_H) CHECK_LIBRARY_EXISTS(magic magic_load "" HAVE_LIBMAGIC_SO) IF(HAVE_MAGIC_H) @@ -34,14 +54,16 @@ IF(CMAKE_BUILD_TYPE MATCHES Debug) ENDIF(CMAKE_BUILD_TYPE MATCHES Debug) INCLUDE(FindPkgConfig) +PKG_CHECK_MODULES(libsystemd REQUIRED libsystemd>=222) PKG_CHECK_MODULES(json-c REQUIRED json-c) -PKG_CHECK_MODULES(libmicrohttpd REQUIRED libmicrohttpd) +PKG_CHECK_MODULES(libmicrohttpd REQUIRED libmicrohttpd>=0.9.48) +PKG_CHECK_MODULES(openssl REQUIRED openssl) PKG_CHECK_MODULES(uuid REQUIRED uuid) -PKG_CHECK_MODULES(dbus REQUIRED dbus-1) # Optional plugin dependencies PKG_CHECK_MODULES(alsa alsa) PKG_CHECK_MODULES(pulseaudio libpulse libpulse-simple) PKG_CHECK_MODULES(librtlsdr librtlsdr>=0.5.0) +PKG_CHECK_MODULES(gupnp gupnp-1.0 gupnp-av-1.0 gssdp-1.0 gobject-2.0 gio-2.0) IF(alsa_FOUND) MESSAGE(STATUS "ALSA found ; will compile Audio plugin... (PLUGIN)") @@ -55,11 +77,45 @@ IF(librtlsdr_FOUND) MESSAGE(STATUS "librtlsdr found ; will compile Radio plugin... (PLUGIN)") ENDIF(librtlsdr_FOUND) +IF(gupnp_FOUND) + MESSAGE(STATUS "gupnp found ; will compile Media plugin... (PLUGIN)") +ENDIF(gupnp_FOUND) + INCLUDE(FindThreads) FIND_PACKAGE(Threads) -SET(include_dirs ${INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/include ${json-c_INCLUDE_DIRS} ${libmicrohttpd_INCLUDE_DIRS} ${uuid_INCLUDE_DIRS} ${dbus_INCLUDE_DIRS} ${alsa_INCLUDE_DIRS} ${pulseaudio_INCLUDE_DIRS} ${librtlsdr_INCLUDE_DIRS}) -SET(link_libraries ${json-c_LIBRARIES} ${libmicrohttpd_LIBRARIES} ${uuid_LIBRARIES} ${dbus_LIBRARIES} ${alsa_LIBRARIES} ${pulseaudio_LIBRARIES} ${librtlsdr_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${libefence_LIBRARIES} -lmagic -lm -ldl) +SET(include_dirs + ${INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR}/include + ${libsystemd_INCLUDE_DIRS} + ${json-c_INCLUDE_DIRS} + ${libmicrohttpd_INCLUDE_DIRS} + ${uuid_INCLUDE_DIRS} + ${alsa_INCLUDE_DIRS} + ${pulseaudio_INCLUDE_DIRS} + ${librtlsdr_INCLUDE_DIRS} + ${gupnp_INCLUDE_DIRS} + ${openssl_INCLUDE_DIRS} +) + +SET(link_libraries + ${libsystemd_LIBRARIES} + ${json-c_LIBRARIES} + ${libmicrohttpd_LIBRARIES} + ${uuid_LIBRARIES} + ${alsa_LIBRARIES} + ${pulseaudio_LIBRARIES} + ${librtlsdr_LIBRARIES} + ${gupnp_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} +# ${libefence_LIBRARIES} + ${openssl_LIBRARIES} + -lmagic + -lm + -ldl + -lrt +) + SET(plugin_install_dir ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/afb) ADD_DEFINITIONS(-DPLUGIN_INSTALL_DIR="${plugin_install_dir}")