1 # Collect all files that may contain translatable texts
2 FILE( GLOB_RECURSE POT_FILE_DEPENDS RELATIVE ${LIBZYPP_SOURCE_DIR} "*.h" "*.cc" )
3 SET( POT_FILE_DEPENDS ${POT_FILE_DEPENDS} PARENT_SCOPE )
6 ADD_DEFINITIONS(-DLOCALEDIR="${CMAKE_INSTALL_PREFIX}/share/locale" -DTEXTDOMAIN="zypp" -DZYPP_DLL )
7 INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} )
9 IF (ENABLE_ZCHUNK_COMPRESSION)
10 INCLUDE_DIRECTORIES( ${ZCHUNK_INCLUDEDIR} )
11 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
12 #FILE(WRITE filename "message to write"... )
31 PluginFrameException.cc
33 PluginScriptException.cc
86 VendorSupportOptions.cc
101 ${CMAKE_CURRENT_BINARY_DIR}/APIConfig.h
125 PluginFrameException.h
127 PluginScriptException.h
198 VendorSupportOptions.h
208 INSTALL( FILES ${zypp_HEADERS} DESTINATION "${INCLUDE_INSTALL_DIR}/zypp" )
212 base/CleanerThread.cc
213 base/DrunkenBishop.cc
221 base/ReferenceCounted.cc
222 base/SetRelationMixin.cc
228 base/ExternalDataSource.cc
230 base/UserRequestException.cc
232 base/ProfilingFormater.cc
237 SET( zypp_base_HEADERS
250 base/DefaultIntegral.h
253 base/UserRequestException.h
255 base/ExternalDataSource.h
274 base/ProfilingFormater.h
275 base/ProvideNumericId.h
277 base/ReferenceCounted.h
278 base/SetRelationMixin.h
281 base/SimpleStreambuf.h
288 base/ValueTransform.h
293 IF (ENABLE_ZCHUNK_COMPRESSION)
295 list( APPEND zypp_base_SRCS
299 list( APPEND zypp_base_HEADERS
303 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
307 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/base
312 media/MediaException.cc
314 media/MediaHandler.cc
323 media/MediaMultiCurl.cc
327 media/MediaManager.cc
328 media/MediaUserAuth.cc
329 media/CredentialFileReader.cc
330 media/CredentialManager.cc
332 media/TransferSettings.cc
333 media/MediaPriority.cc
334 media/MetaLinkParser.cc
336 media/MediaBlockList.cc
337 media/UrlResolverPlugin.cc
340 SET( zypp_media_HEADERS
345 media/MediaMultiCurl.h
348 media/MediaException.h
355 media/MediaUserAuth.h
358 media/CredentialFileReader.h
359 media/CredentialManager.h
361 media/TransferSettings.h
362 media/MediaPriority.h
363 media/MetaLinkParser.h
365 media/MediaBlockList.h
366 media/UrlResolverPlugin.h
370 ${zypp_media_HEADERS}
371 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media
374 IF ( LIBPROXY_FOUND )
375 SET(zypp_media_proxyinfo_libproxy_SRCS media/proxyinfo/ProxyInfoLibproxy.cc)
376 SET(zypp_media_proxyinfo_libproxy_HEADERS media/proxyinfo/ProxyInfoLibproxy.h)
377 ENDIF( LIBPROXY_FOUND )
379 SET( zypp_media_proxyinfo_SRCS
380 media/proxyinfo/ProxyInfoSysconfig.cc
381 ${zypp_media_proxyinfo_libproxy_SRCS}
384 SET( zypp_media_proxyinfo_HEADERS
385 media/proxyinfo/ProxyInfoImpl.h
386 media/proxyinfo/ProxyInfoSysconfig.h
387 ${zypp_media_proxyinfo_libproxy_HEADERS}
388 media/proxyinfo/ProxyInfos.h
392 ${zypp_media_proxyinfo_HEADERS}
393 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media/proxyinfo
396 SET( zypp_parser_SRCS
397 parser/ParseException.cc
400 parser/HistoryLogReader.cc
401 parser/RepoFileReader.cc
402 parser/RepoindexFileReader.cc
403 parser/ServiceFileReader.cc
404 parser/ProductFileReader.cc
407 SET( zypp_parser_HEADERS
408 parser/ParseException.h
411 parser/HistoryLogReader.h
412 parser/ParserProgress.h
413 parser/RepoFileReader.h
414 parser/RepoindexFileReader.h
415 parser/ServiceFileReader.h
416 parser/ProductFileReader.h
420 ${zypp_parser_HEADERS}
421 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser
424 SET( zypp_parser_susetags_SRCS
425 parser/susetags/RepoIndex.cc
426 parser/susetags/ContentFileReader.cc
429 SET( zypp_parser_susetags_HEADERS
430 parser/susetags/RepoIndex.h
431 parser/susetags/ContentFileReader.h
435 ${zypp_parser_susetags_HEADERS}
436 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/susetags
439 SET( zypp_parser_xml_SRCS
441 parser/xml/ParseDef.cc
442 parser/xml/ParseDefConsume.cc
443 parser/xml/ParseDefException.cc
445 parser/xml/XmlEscape.cc
446 parser/xml/XmlString.cc
447 parser/xml/libxmlfwd.cc
450 SET( zypp_parser_xml_HEADERS
453 parser/xml/ParseDef.h
454 parser/xml/ParseDefConsume.h
455 parser/xml/ParseDefException.h
456 parser/xml/ParseDefTraits.h
458 parser/xml/XmlEscape.h
459 parser/xml/XmlString.h
460 parser/xml/libxmlfwd.h
464 ${zypp_parser_xml_HEADERS}
465 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/xml
468 SET( zypp_parser_yum_SRCS
469 parser/yum/RepomdFileReader.cc
472 SET( zypp_parser_yum_HEADERS
473 parser/yum/RepomdFileReader.h
477 ${zypp_parser_yum_HEADERS}
478 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/yum
486 SET( zypp_pool_HEADERS
495 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/pool
498 # SET( zypp_solver_detail_SRCS )
500 SET( zypp_solver_HEADERS
505 ${zypp_solver_HEADERS}
506 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver
509 SET( zypp_solver_detail_SRCS
510 solver/detail/ProblemSolutionIgnore.cc
511 solver/detail/ProblemSolutionCombi.cc
512 solver/detail/Resolver.cc
513 solver/detail/SolutionAction.cc
514 solver/detail/Testcase.cc
515 solver/detail/SolverQueueItem.cc
516 solver/detail/SolverQueueItemInstall.cc
517 solver/detail/SolverQueueItemDelete.cc
518 solver/detail/SolverQueueItemUpdate.cc
519 solver/detail/SolverQueueItemInstallOneOf.cc
520 solver/detail/SolverQueueItemLock.cc
521 solver/detail/SATResolver.cc
522 solver/detail/SystemCheck.cc
525 SET( zypp_solver_detail_HEADERS
526 solver/detail/ProblemSolutionIgnore.h
527 solver/detail/ProblemSolutionCombi.h
528 solver/detail/Resolver.h
529 solver/detail/SolutionAction.h
530 solver/detail/Testcase.h
531 solver/detail/Types.h
532 solver/detail/SolverQueueItem.h
533 solver/detail/SolverQueueItemInstall.h
534 solver/detail/SolverQueueItemDelete.h
535 solver/detail/SolverQueueItemUpdate.h
536 solver/detail/SolverQueueItemInstallOneOf.h
537 solver/detail/SolverQueueItemLock.h
538 solver/detail/ItemCapKind.h
539 solver/detail/SATResolver.h
540 solver/detail/SystemCheck.h
544 ${zypp_solver_detail_HEADERS}
545 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver/detail
565 SET( zypp_sat_HEADERS
580 sat/LookupAttrTools.h
586 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat
589 SET( zypp_sat_detail_SRCS
590 sat/detail/PoolImpl.cc
593 SET( zypp_sat_detail_HEADERS
594 sat/detail/PoolMember.h
595 sat/detail/PoolImpl.h
599 ${zypp_sat_detail_HEADERS}
600 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat/detail
604 SET( zypp_target_SRCS
605 target/RpmPostTransCollector.cc
606 target/RequestedLocalesFile.cc
607 target/SolvIdentFile.cc
608 target/HardLocksFile.cc
609 target/CommitPackageCache.cc
610 target/CommitPackageCacheImpl.cc
611 target/CommitPackageCacheReadAhead.cc
612 target/TargetCallbackReceiver.cc
613 target/TargetException.cc
615 target/TargetImpl.commitFindFileConflicts.cc
619 SET( zypp_target_HEADERS
620 target/RpmPostTransCollector.h
621 target/RequestedLocalesFile.h
622 target/SolvIdentFile.h
623 target/HardLocksFile.h
624 target/CommitPackageCache.h
625 target/CommitPackageCacheImpl.h
626 target/CommitPackageCacheReadAhead.h
627 target/TargetCallbackReceiver.h
628 target/TargetException.h
633 ${zypp_target_HEADERS}
634 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target
637 SET( zypp_target_modalias_SRCS
638 target/modalias/Modalias.cc
641 SET( zypp_target_modalias_HEADERS
642 target/modalias/Modalias.h
646 ${zypp_target_modalias_HEADERS}
647 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/modalias
650 SET( zypp_target_rpm_SRCS
651 target/rpm/BinHeader.cc
652 target/rpm/RpmCallbacks.cc
654 target/rpm/RpmException.cc
655 target/rpm/RpmHeader.cc
656 target/rpm/librpmDb.cc
659 SET( zypp_target_rpm_HEADERS
660 target/rpm/BinHeader.h
661 target/rpm/RpmCallbacks.h
662 target/rpm/RpmFlags.h
664 target/rpm/RpmException.h
665 target/rpm/RpmHeader.h
667 target/rpm/librpmDb.h
671 ${zypp_target_rpm_HEADERS}
672 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/rpm
679 ui/UserWantedPackages.cc
686 ui/SelectableTraits.h
688 ui/UserWantedPackages.h
693 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/ui
701 SET( zypp_url_HEADERS
709 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/url
712 SET( zypp_zypp_detail_SRCS
713 zypp_detail/ZYppImpl.cc
716 SET( zypp_zypp_detail_HEADERS
717 zypp_detail/ZYppImpl.h
718 zypp_detail/ZYppReadOnlyHack.h
722 ${zypp_zypp_detail_HEADERS}
723 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/zypp_detail
727 repo/RepoException.cc
728 repo/RepoMirrorList.cc
731 repo/PackageProvider.cc
732 repo/SrcPackageProvider.cc
733 repo/RepoProvideFile.cc
734 repo/DeltaCandidates.cc
735 repo/Applydeltarpm.cc
737 repo/SUSEMediaVerifier.cc
738 repo/MediaInfoDownloader.cc
740 repo/RepoVariables.cc
742 repo/PluginServices.cc
746 SET( zypp_repo_HEADERS
748 repo/RepoMirrorList.h
751 repo/PackageProvider.h
752 repo/SrcPackageProvider.h
753 repo/RepoProvideFile.h
754 repo/DeltaCandidates.h
757 repo/SUSEMediaVerifier.h
758 repo/MediaInfoDownloader.h
762 repo/PluginServices.h
768 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/repo
771 SET( zypp_repo_yum_SRCS
772 repo/yum/Downloader.cc
775 SET( zypp_repo_yum_HEADERS
776 repo/yum/Downloader.h
779 SET( zypp_repo_susetags_SRCS
780 repo/susetags/Downloader.cc
783 SET( zypp_repo_susetags_HEADERS
784 repo/susetags/Downloader.h
787 ####################################################################
789 SET( zypp_misc_HEADERS
791 misc/DefaultLoadSystem.h
792 misc/CheckAccessDeleted.h
796 misc/DefaultLoadSystem.cc
797 misc/CheckAccessDeleted.cc
802 DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/misc
805 ####################################################################
807 add_subdirectory( zyppng )
812 ${zypp_parser_susetags_SRCS}
813 ${zypp_parser_xml_SRCS}
814 ${zypp_parser_yum_SRCS}
816 ${zypp_media_proxyinfo_SRCS}
820 ${zypp_repo_yum_SRCS}
821 ${zypp_repo_susetags_SRCS}
822 ${zypp_repo_data_SRCS}
823 ${zypp_target_rpm_SRCS}
824 ${zypp_target_hal_SRCS}
825 ${zypp_target_modalias_SRCS}
827 ${zypp_solver_detail_SRCS}
830 ${zypp_zypp_detail_SRCS}
832 ${zypp_sat_detail_SRCS}
838 SET( zypp_lib_HEADERS
839 ${zypp_target_rpm_HEADERS}
840 ${zypp_parser_tagfile_HEADERS}
841 ${zypp_parser_susetags_HEADERS}
842 ${zypp_parser_yum_HEADERS}
843 ${zypp_parser_xml_HEADERS}
844 ${zypp_parser_HEADERS}
846 ${zypp_media_HEADERS}
847 ${zypp_media_proxyinfo_HEADERS}
849 ${zypp_solver_HEADERS}
850 ${zypp_solver_detail_HEADERS}
852 ${zypp_sat_detail_HEADERS}
855 ${zypp_zypp_detail_HEADERS}
857 ${zypp_source_susetags_HEADERS}
858 ${zypp_target_modalias_HEADERS}
859 ${zypp_target_HEADERS}
866 # Macro to set the log group for a list of files
868 MACRO( SET_LOGGROUP _group _files )
869 SET_SOURCE_FILES_PROPERTIES( ${_files} COMPILE_FLAGS -DZYPP_BASE_LOGGER_LOGGROUP=\\"${_group}\\" )
870 FOREACH (_currentFile ${ARGN})
871 #MESSAGE( STATUS "setting loggroup to \"${_group}\" for ${_currentFile}" )
872 SET_SOURCE_FILES_PROPERTIES( ${_currentFile} COMPILE_FLAGS -DZYPP_BASE_LOGGER_LOGGROUP=\\"${_group}\\" )
873 ENDFOREACH (_currentFile ${ARGN})
874 ENDMACRO( SET_LOGGROUP )
876 # Default loggroup for all files
877 SET_LOGGROUP( "zypp" ${zypp_lib_SRCS} )
879 # override some defaults
880 SET_LOGGROUP( "libsolv" ${zypp_sat_SRCS} )
881 #SET_LOGGROUP( "group" ${zypp_target_rpm_SRCS} )
882 #SET_LOGGROUP( "group" ${zypp_parser_yum2_SRCS} )
883 #SET_LOGGROUP( "group" ${zypp_capability_SRCS} )
884 #SET_LOGGROUP( "group" ${zypp_ui_SRCS} )
885 #SET_LOGGROUP( "group" ${zypp_media_SRCS} )
886 #SET_LOGGROUP( "group" ${zypp_parser_xml_SRCS} )
887 #SET_LOGGROUP( "group" ${zypp_media_proxyinfo_SRCS} )
888 #SET_LOGGROUP( "group" ${zypp_source_yum_SRCS} )
889 #SET_LOGGROUP( "group" ${zypp_base_SRCS} )
890 #SET_LOGGROUP( "group" ${zypp_solver_detail_SRCS} )
891 #SET_LOGGROUP( "group" ${zypp_sat_SRCS} )
892 #SET_LOGGROUP( "group" ${zypp_url_SRCS} )
893 #SET_LOGGROUP( "group" ${zypp_source_SRCS} )
894 #SET_LOGGROUP( "group" ${zypp_parser_SRCS} )
895 #SET_LOGGROUP( "group" ${zypp_SRCS} )
896 #SET_LOGGROUP( "group" ${zypp_zypp_detail_SRCS} )
897 #SET_LOGGROUP( "group" ${zypp_source_susetags_SRCS} )
898 #SET_LOGGROUP( "group" ${zypp_target_modalias_SRCS} )
899 #SET_LOGGROUP( "group" ${zypp_target_SRCS} )
900 #SET_LOGGROUP( "group" ${zypp_parser_yum_SRCS} )
901 #SET_LOGGROUP( "group" ${zypp_pool_SRCS} )
903 ADD_LIBRARY( zypp-objlib OBJECT ${zypp_lib_SRCS} ${zypp_lib_HEADERS} )
905 macro( ADDZYPPLIB LIBNAME )
906 message( "ADDING lib ${LIBNAME} to project" )
907 ADD_LIBRARY(${LIBNAME} SHARED $<TARGET_OBJECTS:zypp-objlib> )
908 SET_TARGET_PROPERTIES( ${LIBNAME} PROPERTIES VERSION "${LIBZYPP_VERSION_INFO}" )
909 SET_TARGET_PROPERTIES( ${LIBNAME} PROPERTIES SOVERSION "${LIBZYPP_SOVERSION_INFO}" )
911 SET(UTIL_LIBRARY util)
912 TARGET_LINK_LIBRARIES(${LIBNAME} ${UTIL_LIBRARY} )
913 TARGET_LINK_LIBRARIES(${LIBNAME} ${RPM_LIBRARY} )
914 TARGET_LINK_LIBRARIES(${LIBNAME} ${GETTEXT_LIBRARIES} )
915 TARGET_LINK_LIBRARIES(${LIBNAME} ${CURL_LIBRARIES} )
916 TARGET_LINK_LIBRARIES(${LIBNAME} ${LIBXML2_LIBRARIES} )
917 TARGET_LINK_LIBRARIES(${LIBNAME} ${ZLIB_LIBRARY} )
918 TARGET_LINK_LIBRARIES(${LIBNAME} ${LibSolv_LIBRARIES} )
919 TARGET_LINK_LIBRARIES(${LIBNAME} ${OPENSSL_LIBRARIES} )
920 TARGET_LINK_LIBRARIES(${LIBNAME} ${CRYPTO_LIBRARIES} )
921 TARGET_LINK_LIBRARIES(${LIBNAME} ${SIGNALS_LIBRARY})
922 TARGET_LINK_LIBRARIES(${LIBNAME} ${Boost_THREAD_LIBRARY})
923 TARGET_LINK_LIBRARIES(${LIBNAME} ${GPGME_PTHREAD_LIBRARIES})
924 target_link_libraries(${LIBNAME} ${SIGCPP_LIBRARIES})
925 target_link_libraries(${LIBNAME} ${LIBGLIB_LIBRARIES})
927 IF (ENABLE_ZCHUNK_COMPRESSION)
928 TARGET_LINK_LIBRARIES(${LIBNAME} ${ZCHUNK_LDFLAGS})
929 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
932 TARGET_LINK_LIBRARIES(${LIBNAME} ${UDEV_LIBRARY} )
935 TARGET_LINK_LIBRARIES(${LIBNAME} ${HAL_LIBRARY} ${HAL_STORAGE_LIBRARY} ${DBUS_LIBRARY} )
939 TARGET_LINK_LIBRARIES( ${LIBNAME} ${LIBPROXY_LIBRARIES} )
943 #Release library stripped from most symbols, thats what we release to the packages
945 set_target_properties ( zypp PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libzypp.map" )
947 INSTALL(TARGETS zypp LIBRARY DESTINATION ${LIB_INSTALL_DIR} )
949 #library build just for using it in tests, contains all symbols
950 ADDZYPPLIB(zypp-allsym)
952 #this part does nothing yet, only when switching away from using a map file to
953 #a approach where symbols are exported explicitely it would make a difference
954 #ZYPPNG symbols need to be added to the map file to be exported
956 ADD_DEFINITIONS(-DEXPORT_EXPERIMENTAL_API)
957 INCLUDE(GenerateExportHeader)
958 message("Exporting experimental libzypp-ng API")
959 GENERATE_EXPORT_HEADER(
964 ENDIF ( EXPORT_NG_API )
966 # install XML schemas
967 FILE( GLOB YUM_SCHEMA_FILES ${LIBZYPP_SOURCE_DIR}/zypp/parser/yum/schema/*.rng )
968 INSTALL(FILES ${YUM_SCHEMA_FILES} DESTINATION "${CMAKE_INSTALL_PREFIX}/share/zypp/schema/yum" )
970 ADD_CUSTOM_TARGET ( buildmon
971 COMMAND test ! -x ./buildmon || ./buildmon
975 TARGET zypp POST_BUILD
976 COMMAND test ! -x ./buildmon || ./buildmon