From: Ɓukasz Stelmach Date: Thu, 8 Dec 2016 11:48:21 +0000 (+0100) Subject: crash-stack: link against libebl conditionally X-Git-Tag: submit/tizen_3.0/20161213.021549~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=579bd447c1391ebca4924c733e3a183ab0dff8f1;p=platform%2Fcore%2Fsystem%2Fcrash-worker.git crash-stack: link against libebl conditionally Link against libebl only if crash-stack is built with support for core dump files. Rewrite conditional building of sys_assert to use %bcond_with. Change-Id: I50edbd417a5426a43da3b9c0e912933a7db95f4b --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 4eaaec1..7bd6432 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,9 +6,9 @@ SET(PREFIX ${CMAKE_INSTALL_PREFIX}) # Sub modules ADD_SUBDIRECTORY(src/crash-manager) -IF("${SYS_ASSERT}" STREQUAL "on") +IF("${SYS_ASSERT}" STREQUAL "ON") ADD_SUBDIRECTORY(src/sys-assert) -ENDIF("${SYS_ASSERT}" STREQUAL "on") +ENDIF("${SYS_ASSERT}" STREQUAL "ON") ADD_SUBDIRECTORY(src/crash-pipe) ADD_SUBDIRECTORY(src/crash-stack) diff --git a/packaging/crash-worker.spec b/packaging/crash-worker.spec index 131412e..7d058b7 100644 --- a/packaging/crash-worker.spec +++ b/packaging/crash-worker.spec @@ -1,5 +1,10 @@ -%define sys_assert on +# "on_off foo" wil turn into "ON" or "OFF" +%define on_off() %{expand:%%{?with_%{1}:ON}%%{!?with_%{1}:OFF}} + +%define _with_sys_assert on %bcond_with doc +%bcond_with core_dump +%bcond_with sys_assert Name: crash-worker Summary: Crash-manager @@ -16,7 +21,7 @@ BuildRequires: pkgconfig(iniparser) BuildRequires: pkgconfig(capi-system-info) BuildRequires: pkgconfig(glib-2.0) BuildRequires: cmake -%if "%{?sys_assert}" == "on" +%if %{with sys_assert} BuildRequires: pkgconfig(libunwind) %endif BuildRequires: libelf-devel libelf @@ -99,13 +104,9 @@ export CFLAGS+=" -Werror" -DCRASH_TEMP=%{crash_temp} \ -DCRASH_PIPE_PATH=%{_libexecdir}/crash-pipe \ -DCRASH_STACK_PATH=%{_libexecdir}/crash-stack \ -%if "%{?sys_assert}" == "on" - -DSYS_ASSERT=%{sys_assert} \ -%endif - -DUPGRADE_SCRIPT_PATH=%{upgrade_script_path} -# to add support for core dump files add backslash at the end of above line -# and uncomment below line: -# -DWITH_CORE_DUMP=ON + -DSYS_ASSERT=%{on_off sys_assert} \ + -DUPGRADE_SCRIPT_PATH=%{upgrade_script_path} \ + -DWITH_CORE_DUMP=%{on_off core_dump} make %{?jobs:-j%jobs} %if %{with doc} @@ -130,7 +131,7 @@ install -m 644 src/crash-manager/debugmode %{buildroot}%{eng_mode_path}/.debugmo %endif %post -%if "%{?sys_assert}" == "on" +%if %{with sys_assert} if [ ! -d /.build ]; then orig="%{_libdir}/libsys-assert.so" pattern=$(echo $orig | sed -e 's|/|\\/|g') @@ -151,7 +152,7 @@ fi /usr/bin/chsmack -a "_" %{crash_dump_gen}/module.d/* %postun -%if "%{?sys_assert}" == "on" +%if %{with sys_assert} orig="%{_libdir}/libsys-assert.so" pattern=$(echo $orig | sed -e 's|/|\\/|g') sed -i "/${pattern}/D" %{_sysconfdir}/ld.so.preload @@ -174,7 +175,7 @@ sed -i "/${pattern}/D" %{_sysconfdir}/ld.so.preload %{_prefix}/lib/sysctl.d/99-crash-manager.conf %{_datadir}/dbus-1/system-services/org.tizen.system.crash.service -%if "%{?sys_assert}" == "on" +%if %{with sys_assert} %{_libdir}/libsys-assert.so %{_sysconfdir}/tmpfiles.d/sys-assert.conf %endif diff --git a/src/crash-stack/CMakeLists.txt b/src/crash-stack/CMakeLists.txt index 90ec07e..ebe8121 100644 --- a/src/crash-stack/CMakeLists.txt +++ b/src/crash-stack/CMakeLists.txt @@ -30,10 +30,11 @@ endif() # Set compilation options for core dump support if (${WITH_CORE_DUMP} STREQUAL "ON") set_property(TARGET ${CRASH_STACK_BIN} APPEND_STRING PROPERTY COMPILE_FLAGS " -DWITH_CORE_DUMP") + find_library(EBL_LIBRARY NAMES ebl) endif() # Linking -target_link_libraries(${CRASH_STACK_BIN} dw elf ebl dl stdc++) +target_link_libraries(${CRASH_STACK_BIN} ${EBL_LIBRARY} dw elf dl stdc++) # Installing install(TARGETS ${CRASH_STACK_BIN} DESTINATION libexec)