barbieri pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=18af6422a07f447de84201fd94b32c24ce80d70d

commit 18af6422a07f447de84201fd94b32c24ce80d70d
Author: Gustavo Sverzut Barbieri <[email protected]>
Date:   Thu Jan 26 13:58:26 2017 -0200

    cmake: auto-detect binaries in src/bin/libname if no CMakeLists.txt
    
    similar to tests, binaries should also follow the same rule and allow
    single-binaries with single-source.
---
 cmake/helpers/EflMacros.cmake | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/cmake/helpers/EflMacros.cmake b/cmake/helpers/EflMacros.cmake
index 098d229..002b06e 100644
--- a/cmake/helpers/EflMacros.cmake
+++ b/cmake/helpers/EflMacros.cmake
@@ -700,6 +700,8 @@ endfunction()
 #
 # Internal function to process bins of current EFL_LIB()
 function(_EFL_LIB_PROCESS_BINS_INTERNAL)
+  unset(${EFL_LIB_CURRENT}_BINS CACHE)
+
   if(EXISTS ${EFL_BIN_SOURCE_DIR}/CMakeLists.txt)
     EFL_BIN(${EFL_LIB_CURRENT})
   else()
@@ -711,6 +713,10 @@ function(_EFL_LIB_PROCESS_BINS_INTERNAL)
     endforeach()
   endif()
 
+  if(NOT ${EFL_LIB_CURRENT}_BINS AND EXISTS ${EFL_BIN_SOURCE_DIR} AND NOT 
EXISTS ${EFL_BIN_SOURCE_DIR}/CMakeLists.txt)
+    EFL_BIN(${EFL_LIB_CURRENT})
+  endif()
+
   if(${EFL_LIB_CURRENT}_BINS)
     add_custom_target(${EFL_LIB_CURRENT}-bins DEPENDS 
${${EFL_LIB_CURRENT}_BINS})
   endif()
@@ -1091,6 +1097,8 @@ function(EFL_BIN _binname)
   if(INSTALL_DIR)
     install(TARGETS ${_bintarget} RUNTIME DESTINATION ${INSTALL_DIR})
   endif()
+
+  LIST_APPEND_GLOBAL(${EFL_LIB_CURRENT}_BINS ${_bintarget})
 endfunction()
 
 # EFL_TEST(Name)

-- 


Reply via email to