From: Michael Andres Date: Tue, 14 Jul 2009 15:58:48 +0000 (+0200) Subject: Enable examples directory X-Git-Tag: 6.11.0~19 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fupstream%2Flibzypp.git;a=commitdiff_plain;h=8fd10cc4dd7709a73a2ba7df7d1f759c5ab38e00 Enable examples directory --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 8563bf4..2e4b1d0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -173,7 +173,7 @@ ADD_SUBDIRECTORY( zypp ) # do not build devel by default ADD_SUBDIRECTORY( devel EXCLUDE_FROM_ALL ) ADD_SUBDIRECTORY( tools ) -#ADD_SUBDIRECTORY( examples ) +ADD_SUBDIRECTORY( examples ) ADD_SUBDIRECTORY( po EXCLUDE_FROM_ALL ) ADD_SUBDIRECTORY( doc ) ADD_SUBDIRECTORY( vendor ) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 2beb5d3..e7ca22a 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,10 +1,14 @@ -INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ) - - -########### next target ############### - -SET(read_plaindir_source_SRCS -read_plaindir_source.cc -) - -ADD_EXECUTABLE(read_plaindir_source ${read_plaindir_source_SRCS}) +## ############################################################ + +FILE( GLOB ALLCC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.cc" ) +STRING( REPLACE ".cc" ";" APLLPROG ${ALLCC} ) +FOREACH( loop_var ${APLLPROG} ) + ADD_EXECUTABLE( ${loop_var} + ${loop_var}.cc + ) + TARGET_LINK_LIBRARIES( ${loop_var} + zypp + ) +ENDFOREACH( loop_var ) + +## ############################################################ diff --git a/examples/whatprovides.cc b/examples/whatprovides.cc new file mode 100644 index 0000000..e8e55fc --- /dev/null +++ b/examples/whatprovides.cc @@ -0,0 +1,31 @@ +#include + +#include +#include +#include +#include +#include +#include + +int main(int argc, char **argv) { + zypp::ZYpp::Ptr zyppPtr = zypp::ZYppFactory::instance().getZYpp(); + + zypp::Pathname sysRoot( "/" ); + + zyppPtr->initializeTarget( sysRoot, false ); + zyppPtr->target()->load(); + + std::cout << "Looking for packages which provide " << argv[1] << std::endl; + zypp::Capability cap(argv[1]); + zypp::sat::WhatProvides wp(cap); + + if (wp.empty()) { + std::cout << "No providers of " << argv[1] << " found" << std::endl; + } else { + zypp::sat::Solvable package(*wp.begin()); + std::cout << "Provided by " << package.name() << " version " << package.edition().version() + << std::endl; + } + + return EXIT_SUCCESS; +}