Imported Upstream version 17.25.4
[platform/upstream/libzypp.git] / zypp / CMakeLists.txt
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 )
4
5
6 ADD_DEFINITIONS(-DLOCALEDIR="${CMAKE_INSTALL_PREFIX}/share/locale" -DTEXTDOMAIN="zypp" -DZYPP_DLL )
7 INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} )
8
9 IF (ENABLE_ZCHUNK_COMPRESSION)
10   INCLUDE_DIRECTORIES( ${ZCHUNK_INCLUDEDIR} )
11 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
12 #FILE(WRITE filename "message to write"... )
13
14 SET( zypp_SRCS
15   Application.cc
16   ByteCount.cc
17   Capabilities.cc
18   Capability.cc
19   CapMatch.cc
20   Changelog.cc
21   CheckSum.cc
22   CpeId.cc
23   Date.cc
24   Dep.cc
25   Digest.cc
26   DiskUsageCounter.cc
27   DownloadMode.cc
28   Edition.cc
29   ExternalProgram.cc
30   PluginFrame.cc
31   PluginFrameException.cc
32   PluginScript.cc
33   PluginScriptException.cc
34   PluginExecutor.cc
35   Fetcher.cc
36   FileChecker.cc
37   Glob.cc
38   HistoryLog.cc
39   HistoryLogData.cc
40   IdString.cc
41   InstanceId.cc
42   KeyManager.cc
43   KeyRing.cc
44   Locks.cc
45   MediaSetAccess.cc
46   OnMediaLocation.cc
47   Package.cc
48   Patch.cc
49   PathInfo.cc
50   Pathname.cc
51   Pattern.cc
52   PoolItem.cc
53   PoolItemBest.cc
54   PoolQuery.cc
55   PoolQueryResult.cc
56   ProblemSolution.cc
57   Product.cc
58   ProgressData.cc
59   ProvideFilePolicy.cc
60   PublicKey.cc
61   PurgeKernels.cc
62   Range.cc
63   Rel.cc
64   RepoInfo.cc
65   RepoManager.cc
66   Repository.cc
67   RepoStatus.cc
68   ResKind.cc
69   ResObject.cc
70   Resolvable.cc
71   Resolver.cc
72   ResolverFocus.cc
73   ResolverProblem.cc
74   ResPool.cc
75   ResPoolProxy.cc
76   ResStatus.cc
77   ServiceInfo.cc
78   Signature.cc
79   SrcPackage.cc
80   ShutdownLock.cc
81   SysContent.cc
82   Target.cc
83   TmpPath.cc
84   Url.cc
85   VendorAttr.cc
86   VendorSupportOptions.cc
87   ZYpp.cc
88   ZYppCommitPolicy.cc
89   ZYppCommitResult.cc
90   ZYppFactory.cc
91 )
92 SET( zypp_EARLY_SRCS
93   ZConfig.cc
94   Arch.cc
95   Locale.cc
96   CountryCode.cc
97   LanguageCode.cc
98 )
99
100 SET( zypp_HEADERS
101   ${CMAKE_CURRENT_BINARY_DIR}/APIConfig.h
102   Application.h
103   Arch.h
104   AutoDispose.h
105   Bit.h
106   Bitmap.h
107   ByteCount.h
108   Callback.h
109   Capabilities.h
110   Capability.h
111   CapMatch.h
112   Changelog.h
113   CheckSum.h
114   ContentType.h
115   CountryCode.h
116   CpeId.h
117   Date.h
118   Dep.h
119   Digest.h
120   DiskUsageCounter.h
121   DownloadMode.h
122   Edition.h
123   ExternalProgram.h
124   PluginFrame.h
125   PluginFrameException.h
126   PluginScript.h
127   PluginScriptException.h
128   PluginExecutor.h
129   Fetcher.h
130   FileChecker.h
131   Glob.h
132   HistoryLog.h
133   HistoryLogData.h
134   IdString.h
135   IdStringType.h
136   InstanceId.h
137   KeyContext.h
138   KeyManager.h
139   KeyRing.h
140   KVMap.h
141   LanguageCode.h
142   Locale.h
143   Locks.h
144   ManagedFile.h
145   MediaProducts.h
146   MediaSetAccess.h
147   Vendor.h
148   OnMediaLocation.h
149   Package.h
150   PackageKeyword.h
151   Patch.h
152   PathInfo.h
153   Pathname.h
154   Pattern.h
155   PoolItem.h
156   PoolItemBest.h
157   PoolQuery.h
158   PoolQueryUtil.tcc
159   PoolQueryResult.h
160   ProblemSolution.h
161   ProblemTypes.h
162   Product.h
163   ProgressData.h
164   ProvideFilePolicy.h
165   PublicKey.h
166   PurgeKernels.h
167   Range.h
168   RelCompare.h
169   Rel.h
170   RepoInfo.h
171   RepoManager.h
172   Repository.h
173   RepoStatus.h
174   Filter.h
175   ResFilters.h
176   ResKind.h
177   ResObject.h
178   ResObjects.h
179   Resolvable.h
180   Resolver.h
181   ResolverFocus.h
182   ResolverNamespace.h
183   ResolverProblem.h
184   ResPool.h
185   ResPoolProxy.h
186   ResStatus.h
187   ResTraits.h
188   ServiceInfo.h
189   Signature.h
190   SrcPackage.h
191   SysContent.h
192   Target.h
193   TmpPath.h
194   TriBool.h
195   Url.h
196   UserData.h
197   VendorAttr.h
198   VendorSupportOptions.h
199   ZConfig.h
200   ZYppCallbacks.h
201   ZYppCommit.h
202   ZYppCommitPolicy.h
203   ZYppCommitResult.h
204   ZYppFactory.h
205   ZYpp.h
206 )
207
208 INSTALL(  FILES ${zypp_HEADERS} DESTINATION "${INCLUDE_INSTALL_DIR}/zypp" )
209
210 SET( zypp_base_SRCS
211   base/Backtrace.cc
212   base/CleanerThread.cc
213   base/DrunkenBishop.cc
214   base/SerialNumber.cc
215   base/Random.cc
216   base/Measure.cc
217   base/Gettext.cc
218   base/GzStream.cc
219   base/IOStream.cc
220   base/IOTools.cc
221   base/InputStream.cc
222   base/ReferenceCounted.cc
223   base/SetRelationMixin.cc
224   base/String.cc
225   base/StringV.cc
226   base/StrMatcher.h
227   base/StrMatcher.cc
228   base/Regex.cc
229   base/Unit.cc
230   base/ExternalDataSource.cc
231   base/Exception.cc
232   base/UserRequestException.cc
233   base/Sysconfig.cc
234   base/ProfilingFormater.cc
235   base/LogControl.cc
236   base/Xml.cc
237 )
238
239 SET( zypp_base_HEADERS
240   base/Backtrace.h
241   base/Collector.h
242   base/DrunkenBishop.h
243   base/SerialNumber.h
244   base/Easy.h
245   base/Env.h
246   base/Errno.h
247   base/fXstream.h
248   base/Random.h
249   base/Algorithm.h
250   base/Counter.h
251   base/Debug.h
252   base/DefaultIntegral.h
253   base/DtorReset.h
254   base/Exception.h
255   base/UserRequestException.h
256   base/EnumClass.h
257   base/ExternalDataSource.h
258   base/Flags.h
259   base/Function.h
260   base/Functional.h
261   base/Gettext.h
262   base/GzStream.h
263   base/Hash.h
264   base/IOStream.h
265   base/IOTools.h
266   base/InputStream.h
267   base/Iterable.h
268   base/Iterator.h
269   base/Json.h
270   base/LocaleGuard.h
271   base/LogControl.h
272   base/LogTools.h
273   base/Logger.h
274   base/Measure.h
275   base/NamedValue.h
276   base/NonCopyable.h
277   base/ProfilingFormater.h
278   base/ProvideNumericId.h
279   base/PtrTypes.h
280   base/ReferenceCounted.h
281   base/SetRelationMixin.h
282   base/SetTracker.h
283   base/Signal.h
284   base/SimpleStreambuf.h
285   base/String.h
286   base/StringV.h
287   base/StrMatcher.h
288   base/Regex.h
289   base/Sysconfig.h
290   base/TypeTraits.h
291   base/Unit.h
292   base/ValueTransform.h
293   base/WatchFile.h
294   base/Xml.h
295 )
296
297 IF (ENABLE_ZCHUNK_COMPRESSION)
298
299   list( APPEND zypp_base_SRCS
300     base/ZckStream.cc
301   )
302
303   list( APPEND zypp_base_HEADERS
304     base/ZckStream.h
305   )
306
307 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
308
309 INSTALL(  FILES
310   ${zypp_base_HEADERS}
311   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/base
312 )
313
314 SET( zypp_media_SRCS
315   media/CurlHelper.cc
316   media/MediaException.cc
317   media/MediaAccess.cc
318   media/MediaHandler.cc
319   media/Mount.cc
320   media/MediaNFS.cc
321   media/MediaCD.cc
322   media/MediaDIR.cc
323   media/MediaDISK.cc
324   media/MediaCIFS.cc
325   media/ProxyInfo.cc
326   media/MediaCurl.cc
327   media/MediaMultiCurl.cc
328   media/MediaISO.cc
329   media/MediaPlugin.cc
330   media/MediaSource.cc
331   media/MediaManager.cc
332   media/MediaUserAuth.cc
333   media/CredentialFileReader.cc
334   media/CredentialManager.cc
335   media/CurlConfig.cc
336   media/TransferSettings.cc
337   media/MediaPriority.cc
338   media/MetaLinkParser.cc
339   media/ZsyncParser.cc
340   media/MediaBlockList.cc
341   media/UrlResolverPlugin.cc
342 )
343
344 SET( zypp_media_HEADERS
345   media/MediaAccess.h
346   media/MediaCD.h
347   media/MediaCIFS.h
348   media/MediaCurl.h
349   media/MediaMultiCurl.h
350   media/MediaDIR.h
351   media/MediaDISK.h
352   media/MediaException.h
353   media/MediaHandler.h
354   media/MediaISO.h
355   media/MediaPlugin.h
356   media/MediaManager.h
357   media/MediaNFS.h
358   media/MediaSource.h
359   media/MediaUserAuth.h
360   media/Mount.h
361   media/ProxyInfo.h
362   media/CredentialFileReader.h
363   media/CredentialManager.h
364   media/CurlConfig.h
365   media/TransferSettings.h
366   media/MediaPriority.h
367   media/MetaLinkParser.h
368   media/ZsyncParser.h
369   media/MediaBlockList.h
370   media/UrlResolverPlugin.h
371 )
372
373 INSTALL(  FILES
374   ${zypp_media_HEADERS}
375   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media
376 )
377
378 IF ( LIBPROXY_FOUND )
379   SET(zypp_media_proxyinfo_libproxy_SRCS media/proxyinfo/ProxyInfoLibproxy.cc)
380   SET(zypp_media_proxyinfo_libproxy_HEADERS media/proxyinfo/ProxyInfoLibproxy.h)
381 ENDIF( LIBPROXY_FOUND )
382
383 SET( zypp_media_proxyinfo_SRCS
384   media/proxyinfo/ProxyInfoSysconfig.cc
385   ${zypp_media_proxyinfo_libproxy_SRCS}
386 )
387
388 SET( zypp_media_proxyinfo_HEADERS
389   media/proxyinfo/ProxyInfoImpl.h
390   media/proxyinfo/ProxyInfoSysconfig.h
391   ${zypp_media_proxyinfo_libproxy_HEADERS}
392   media/proxyinfo/ProxyInfos.h
393 )
394
395 INSTALL(  FILES
396   ${zypp_media_proxyinfo_HEADERS}
397   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media/proxyinfo
398 )
399
400 SET( zypp_parser_SRCS
401   parser/ParseException.cc
402   parser/IniParser.cc
403   parser/IniDict.cc
404   parser/HistoryLogReader.cc
405   parser/RepoFileReader.cc
406   parser/RepoindexFileReader.cc
407   parser/ServiceFileReader.cc
408   parser/ProductFileReader.cc
409 )
410
411 SET( zypp_parser_HEADERS
412   parser/ParseException.h
413   parser/IniParser.h
414   parser/IniDict.h
415   parser/HistoryLogReader.h
416   parser/ParserProgress.h
417   parser/RepoFileReader.h
418   parser/RepoindexFileReader.h
419   parser/ServiceFileReader.h
420   parser/ProductFileReader.h
421 )
422
423 INSTALL(  FILES
424   ${zypp_parser_HEADERS}
425   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser
426 )
427
428 SET( zypp_parser_susetags_SRCS
429   parser/susetags/RepoIndex.cc
430   parser/susetags/ContentFileReader.cc
431 )
432
433 SET( zypp_parser_susetags_HEADERS
434   parser/susetags/RepoIndex.h
435   parser/susetags/ContentFileReader.h
436 )
437
438 INSTALL(  FILES
439   ${zypp_parser_susetags_HEADERS}
440   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/susetags
441 )
442
443 SET( zypp_parser_xml_SRCS
444   parser/xml/Node.cc
445   parser/xml/ParseDef.cc
446   parser/xml/ParseDefConsume.cc
447   parser/xml/ParseDefException.cc
448   parser/xml/Reader.cc
449   parser/xml/XmlEscape.cc
450   parser/xml/XmlString.cc
451   parser/xml/libxmlfwd.cc
452 )
453
454 SET( zypp_parser_xml_HEADERS
455   parser/xml/Parse.h
456   parser/xml/Node.h
457   parser/xml/ParseDef.h
458   parser/xml/ParseDefConsume.h
459   parser/xml/ParseDefException.h
460   parser/xml/ParseDefTraits.h
461   parser/xml/Reader.h
462   parser/xml/XmlEscape.h
463   parser/xml/XmlString.h
464   parser/xml/libxmlfwd.h
465 )
466
467 INSTALL(  FILES
468   ${zypp_parser_xml_HEADERS}
469   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/xml
470 )
471
472 SET( zypp_parser_yum_SRCS
473   parser/yum/RepomdFileReader.cc
474 )
475
476 SET( zypp_parser_yum_HEADERS
477   parser/yum/RepomdFileReader.h
478 )
479
480 INSTALL(  FILES
481   ${zypp_parser_yum_HEADERS}
482   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/yum
483 )
484
485 SET( zypp_pool_SRCS
486   pool/PoolImpl.cc
487   pool/PoolStats.cc
488 )
489
490 SET( zypp_pool_HEADERS
491   pool/PoolImpl.h
492   pool/PoolStats.h
493   pool/PoolTraits.h
494   pool/ByIdent.h
495 )
496
497 INSTALL(  FILES
498   ${zypp_pool_HEADERS}
499   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/pool
500 )
501
502 # SET( zypp_solver_detail_SRCS )
503
504 SET( zypp_solver_HEADERS
505   solver/Types.h
506 )
507
508 INSTALL(  FILES
509   ${zypp_solver_HEADERS}
510   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver
511 )
512
513 SET( zypp_solver_detail_SRCS
514   solver/detail/ProblemSolutionIgnore.cc
515   solver/detail/ProblemSolutionCombi.cc
516   solver/detail/Resolver.cc
517   solver/detail/SolutionAction.cc
518   solver/detail/Testcase.cc
519   solver/detail/SolverQueueItem.cc
520   solver/detail/SolverQueueItemInstall.cc
521   solver/detail/SolverQueueItemDelete.cc
522   solver/detail/SolverQueueItemUpdate.cc
523   solver/detail/SolverQueueItemInstallOneOf.cc
524   solver/detail/SolverQueueItemLock.cc
525   solver/detail/SATResolver.cc
526   solver/detail/SystemCheck.cc
527 )
528
529 SET( zypp_solver_detail_HEADERS
530   solver/detail/ProblemSolutionIgnore.h
531   solver/detail/ProblemSolutionCombi.h
532   solver/detail/Resolver.h
533   solver/detail/SolutionAction.h
534   solver/detail/Testcase.h
535   solver/detail/Types.h
536   solver/detail/SolverQueueItem.h
537   solver/detail/SolverQueueItemInstall.h
538   solver/detail/SolverQueueItemDelete.h
539   solver/detail/SolverQueueItemUpdate.h
540   solver/detail/SolverQueueItemInstallOneOf.h
541   solver/detail/SolverQueueItemLock.h
542   solver/detail/ItemCapKind.h
543   solver/detail/SATResolver.h
544   solver/detail/SystemCheck.h
545 )
546
547 INSTALL(  FILES
548   ${zypp_solver_detail_HEADERS}
549   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver/detail
550 )
551
552 SET( zypp_sat_SRCS
553   sat/Pool.cc
554   sat/Solvable.cc
555   sat/SolvableSet.cc
556   sat/SolvableSpec.cc
557   sat/SolvIterMixin.cc
558   sat/Map.cc
559   sat/Queue.cc
560   sat/FileConflicts.cc
561   sat/Transaction.cc
562   sat/WhatProvides.cc
563   sat/WhatObsoletes.cc
564   sat/LocaleSupport.cc
565   sat/LookupAttr.cc
566   sat/SolvAttr.cc
567 )
568
569 SET( zypp_sat_HEADERS
570   sat/Pool.h
571   sat/Solvable.h
572   sat/SolvableSet.h
573   sat/SolvableType.h
574   sat/SolvableSpec.h
575   sat/SolvIterMixin.h
576   sat/Map.h
577   sat/Queue.h
578   sat/FileConflicts.h
579   sat/Transaction.h
580   sat/WhatProvides.h
581   sat/WhatObsoletes.h
582   sat/LocaleSupport.h
583   sat/LookupAttr.h
584   sat/LookupAttrTools.h
585   sat/SolvAttr.h
586 )
587
588 INSTALL(  FILES
589   ${zypp_sat_HEADERS}
590   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat
591 )
592
593 SET( zypp_sat_detail_SRCS
594   sat/detail/PoolImpl.cc
595 )
596
597 SET( zypp_sat_detail_HEADERS
598   sat/detail/PoolMember.h
599   sat/detail/PoolImpl.h
600 )
601
602 INSTALL(  FILES
603   ${zypp_sat_detail_HEADERS}
604   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat/detail
605 )
606
607
608 SET( zypp_target_SRCS
609   target/RpmPostTransCollector.cc
610   target/RequestedLocalesFile.cc
611   target/SolvIdentFile.cc
612   target/HardLocksFile.cc
613   target/CommitPackageCache.cc
614   target/CommitPackageCacheImpl.cc
615   target/CommitPackageCacheReadAhead.cc
616   target/TargetCallbackReceiver.cc
617   target/TargetException.cc
618   target/TargetImpl.cc
619   target/TargetImpl.commitFindFileConflicts.cc
620
621 )
622
623 SET( zypp_target_HEADERS
624   target/RpmPostTransCollector.h
625   target/RequestedLocalesFile.h
626   target/SolvIdentFile.h
627   target/HardLocksFile.h
628   target/CommitPackageCache.h
629   target/CommitPackageCacheImpl.h
630   target/CommitPackageCacheReadAhead.h
631   target/TargetCallbackReceiver.h
632   target/TargetException.h
633   target/TargetImpl.h
634 )
635
636 INSTALL(  FILES
637   ${zypp_target_HEADERS}
638   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target
639 )
640
641 SET( zypp_target_modalias_SRCS
642   target/modalias/Modalias.cc
643 )
644
645 SET( zypp_target_modalias_HEADERS
646   target/modalias/Modalias.h
647 )
648
649 INSTALL(  FILES
650   ${zypp_target_modalias_HEADERS}
651   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/modalias
652 )
653
654 SET( zypp_target_rpm_SRCS
655   target/rpm/BinHeader.cc
656   target/rpm/RpmCallbacks.cc
657   target/rpm/RpmDb.cc
658   target/rpm/RpmException.cc
659   target/rpm/RpmHeader.cc
660   target/rpm/librpmDb.cc
661 )
662
663 SET( zypp_target_rpm_HEADERS
664   target/rpm/BinHeader.h
665   target/rpm/RpmCallbacks.h
666   target/rpm/RpmFlags.h
667   target/rpm/RpmDb.h
668   target/rpm/RpmException.h
669   target/rpm/RpmHeader.h
670   target/rpm/librpm.h
671   target/rpm/librpmDb.h
672 )
673
674 INSTALL(  FILES
675   ${zypp_target_rpm_HEADERS}
676   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/rpm
677 )
678
679 SET( zypp_ui_SRCS
680   ui/Selectable.cc
681   ui/SelectableImpl.cc
682   ui/Status.cc
683   ui/UserWantedPackages.cc
684 )
685
686 SET( zypp_ui_HEADERS
687   ui/SelFilters.h
688   ui/Selectable.h
689   ui/SelectableImpl.h
690   ui/SelectableTraits.h
691   ui/Status.h
692   ui/UserWantedPackages.h
693 )
694
695 INSTALL(  FILES
696   ${zypp_ui_HEADERS}
697   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/ui
698 )
699
700 SET( zypp_url_SRCS
701   url/UrlUtils.cc
702   url/UrlBase.cc
703 )
704
705 SET( zypp_url_HEADERS
706   url/UrlBase.h
707   url/UrlException.h
708   url/UrlUtils.h
709 )
710
711 INSTALL(  FILES
712   ${zypp_url_HEADERS}
713   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/url
714 )
715
716 SET( zypp_zypp_detail_SRCS
717   zypp_detail/ZYppImpl.cc
718 )
719
720 SET( zypp_zypp_detail_HEADERS
721   zypp_detail/ZYppImpl.h
722   zypp_detail/ZYppReadOnlyHack.h
723 )
724
725 INSTALL(  FILES
726   ${zypp_zypp_detail_HEADERS}
727   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/zypp_detail
728 )
729
730 SET( zypp_repo_SRCS
731   repo/RepoException.cc
732   repo/RepoMirrorList.cc
733   repo/RepoType.cc
734   repo/ServiceType.cc
735   repo/PackageProvider.cc
736   repo/SrcPackageProvider.cc
737   repo/RepoProvideFile.cc
738   repo/DeltaCandidates.cc
739   repo/Applydeltarpm.cc
740   repo/PackageDelta.cc
741   repo/SUSEMediaVerifier.cc
742   repo/MediaInfoDownloader.cc
743   repo/Downloader.cc
744   repo/RepoVariables.cc
745   repo/RepoInfoBase.cc
746   repo/PluginServices.cc
747   repo/ServiceRepos.cc
748 )
749
750 SET( zypp_repo_HEADERS
751   repo/RepoException.h
752   repo/RepoMirrorList.h
753   repo/RepoType.h
754   repo/ServiceType.h
755   repo/PackageProvider.h
756   repo/SrcPackageProvider.h
757   repo/RepoProvideFile.h
758   repo/DeltaCandidates.h
759   repo/Applydeltarpm.h
760   repo/PackageDelta.h
761   repo/SUSEMediaVerifier.h
762   repo/MediaInfoDownloader.h
763   repo/Downloader.h
764   repo/RepoVariables.h
765   repo/RepoInfoBase.h
766   repo/PluginServices.h
767   repo/ServiceRepos.h
768 )
769
770 INSTALL( FILES
771   ${zypp_repo_HEADERS}
772   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/repo
773 )
774
775 SET( zypp_repo_yum_SRCS
776   repo/yum/Downloader.cc
777 )
778
779 SET( zypp_repo_yum_HEADERS
780   repo/yum/Downloader.h
781 )
782
783 SET( zypp_repo_susetags_SRCS
784   repo/susetags/Downloader.cc
785 )
786
787 SET( zypp_repo_susetags_HEADERS
788   repo/susetags/Downloader.h
789 )
790
791 ####################################################################
792
793 SET( zypp_misc_HEADERS
794   Misc.h
795   misc/DefaultLoadSystem.h
796   misc/CheckAccessDeleted.h
797   misc/TestcaseSetup.h
798   misc/LoadTestcase.h
799 )
800
801 SET( zypp_misc_SRCS
802   misc/DefaultLoadSystem.cc
803   misc/CheckAccessDeleted.cc
804   misc/TestcaseSetup.cc
805   misc/LoadTestcase.cc
806 )
807
808 INSTALL( FILES
809   ${zypp_misc_HEADERS}
810   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/misc
811 )
812
813 ####################################################################
814
815 add_subdirectory( zyppng )
816
817 SET( zypp_lib_SRCS
818 ${zypp_misc_SRCS}
819 ${zypp_pool_SRCS}
820 ${zypp_parser_susetags_SRCS}
821 ${zypp_parser_xml_SRCS}
822 ${zypp_parser_yum_SRCS}
823 ${zypp_parser_SRCS}
824 ${zypp_media_proxyinfo_SRCS}
825 ${zypp_media_SRCS}
826 ${zypp_url_SRCS}
827 ${zypp_repo_SRCS}
828 ${zypp_repo_yum_SRCS}
829 ${zypp_repo_susetags_SRCS}
830 ${zypp_repo_data_SRCS}
831 ${zypp_target_rpm_SRCS}
832 ${zypp_target_hal_SRCS}
833 ${zypp_target_modalias_SRCS}
834 ${zypp_target_SRCS}
835 ${zypp_solver_detail_SRCS}
836 ${zypp_ui_SRCS}
837 ${zypp_SRCS}
838 ${zypp_zypp_detail_SRCS}
839 ${zypp_sat_SRCS}
840 ${zypp_sat_detail_SRCS}
841 ${zypp_EARLY_SRCS}
842 ${zypp_base_SRCS}
843 ${zyppng_SRCS}
844 )
845
846 SET( zypp_lib_HEADERS
847 ${zypp_target_rpm_HEADERS}
848 ${zypp_parser_tagfile_HEADERS}
849 ${zypp_parser_susetags_HEADERS}
850 ${zypp_parser_yum_HEADERS}
851 ${zypp_parser_xml_HEADERS}
852 ${zypp_parser_HEADERS}
853 ${zypp_ui_HEADERS}
854 ${zypp_media_HEADERS}
855 ${zypp_media_proxyinfo_HEADERS}
856 ${zypp_base_HEADERS}
857 ${zypp_solver_HEADERS}
858 ${zypp_solver_detail_HEADERS}
859 ${zypp_sat_HEADERS}
860 ${zypp_sat_detail_HEADERS}
861 ${zypp_url_HEADERS}
862 ${zypp_HEADERS}
863 ${zypp_zypp_detail_HEADERS}
864 ${zypp_repo_HEADERS}
865 ${zypp_source_susetags_HEADERS}
866 ${zypp_target_modalias_HEADERS}
867 ${zypp_target_HEADERS}
868 ${zypp_pool_HEADERS}
869 ${zypp_misc_HEADERS}
870 ${zyppng_HEADERS}
871 )
872
873 #
874 # Macro to set the log group for a list of files
875 #
876 MACRO( SET_LOGGROUP _group _files  )
877   SET_SOURCE_FILES_PROPERTIES( ${_files} COMPILE_FLAGS -DZYPP_BASE_LOGGER_LOGGROUP=\\"${_group}\\" )
878   FOREACH (_currentFile ${ARGN})
879 #MESSAGE( STATUS "setting loggroup to \"${_group}\" for ${_currentFile}" )
880     SET_SOURCE_FILES_PROPERTIES( ${_currentFile} COMPILE_FLAGS -DZYPP_BASE_LOGGER_LOGGROUP=\\"${_group}\\" )
881   ENDFOREACH (_currentFile ${ARGN})
882 ENDMACRO( SET_LOGGROUP )
883
884 # Default loggroup for all files
885 SET_LOGGROUP( "zypp" ${zypp_lib_SRCS} )
886
887 # override some defaults
888 SET_LOGGROUP( "libsolv" ${zypp_sat_SRCS} )
889 #SET_LOGGROUP( "group" ${zypp_target_rpm_SRCS} )
890 #SET_LOGGROUP( "group" ${zypp_parser_yum2_SRCS} )
891 #SET_LOGGROUP( "group" ${zypp_capability_SRCS} )
892 #SET_LOGGROUP( "group" ${zypp_ui_SRCS} )
893 #SET_LOGGROUP( "group" ${zypp_media_SRCS} )
894 #SET_LOGGROUP( "group" ${zypp_parser_xml_SRCS} )
895 #SET_LOGGROUP( "group" ${zypp_media_proxyinfo_SRCS} )
896 #SET_LOGGROUP( "group" ${zypp_source_yum_SRCS} )
897 #SET_LOGGROUP( "group" ${zypp_base_SRCS} )
898 #SET_LOGGROUP( "group" ${zypp_solver_detail_SRCS} )
899 #SET_LOGGROUP( "group" ${zypp_sat_SRCS} )
900 #SET_LOGGROUP( "group" ${zypp_url_SRCS} )
901 #SET_LOGGROUP( "group" ${zypp_source_SRCS} )
902 #SET_LOGGROUP( "group" ${zypp_parser_SRCS} )
903 #SET_LOGGROUP( "group" ${zypp_SRCS} )
904 #SET_LOGGROUP( "group" ${zypp_zypp_detail_SRCS} )
905 #SET_LOGGROUP( "group" ${zypp_source_susetags_SRCS} )
906 #SET_LOGGROUP( "group" ${zypp_target_modalias_SRCS} )
907 #SET_LOGGROUP( "group" ${zypp_target_SRCS} )
908 #SET_LOGGROUP( "group" ${zypp_parser_yum_SRCS} )
909 #SET_LOGGROUP( "group" ${zypp_pool_SRCS} )
910
911 ADD_LIBRARY( zypp-objlib OBJECT ${zypp_lib_SRCS} ${zypp_lib_HEADERS} )
912
913 macro( ADDZYPPLIB LIBNAME )
914   message( "ADDING lib ${LIBNAME} to project" )
915   ADD_LIBRARY(${LIBNAME} SHARED $<TARGET_OBJECTS:zypp-objlib> )
916   SET_TARGET_PROPERTIES( ${LIBNAME} PROPERTIES VERSION "${LIBZYPP_VERSION_INFO}" )
917   SET_TARGET_PROPERTIES( ${LIBNAME} PROPERTIES SOVERSION "${LIBZYPP_SOVERSION_INFO}" )
918   # System libraries
919   SET(UTIL_LIBRARY util)
920   TARGET_LINK_LIBRARIES(${LIBNAME} ${UTIL_LIBRARY} )
921   TARGET_LINK_LIBRARIES(${LIBNAME} ${RPM_LIBRARY} )
922   TARGET_LINK_LIBRARIES(${LIBNAME} ${GETTEXT_LIBRARIES} )
923   TARGET_LINK_LIBRARIES(${LIBNAME} ${CURL_LIBRARIES} )
924   TARGET_LINK_LIBRARIES(${LIBNAME} ${LIBXML2_LIBRARIES} )
925   TARGET_LINK_LIBRARIES(${LIBNAME} ${ZLIB_LIBRARY} )
926   TARGET_LINK_LIBRARIES(${LIBNAME} ${LibSolv_LIBRARIES} )
927   TARGET_LINK_LIBRARIES(${LIBNAME} ${OPENSSL_LIBRARIES} )
928   TARGET_LINK_LIBRARIES(${LIBNAME} ${CRYPTO_LIBRARIES} )
929   TARGET_LINK_LIBRARIES(${LIBNAME} ${SIGNALS_LIBRARY})
930   TARGET_LINK_LIBRARIES(${LIBNAME} ${Boost_THREAD_LIBRARY})
931   TARGET_LINK_LIBRARIES(${LIBNAME} ${GPGME_PTHREAD_LIBRARIES})
932   target_link_libraries(${LIBNAME} ${SIGCPP_LIBRARIES})
933   target_link_libraries(${LIBNAME} ${LIBGLIB_LIBRARIES})
934   target_link_libraries(${LIBNAME} ${YAML_CPP_LIBRARIES})
935
936   IF (ENABLE_ZSTD_COMPRESSION)
937     TARGET_LINK_LIBRARIES(${LIBNAME} ${ZSTD_LIBRARY})
938   ENDIF (ENABLE_ZSTD_COMPRESSION)
939
940   IF (ENABLE_ZCHUNK_COMPRESSION)
941     TARGET_LINK_LIBRARIES(${LIBNAME} ${ZCHUNK_LDFLAGS})
942   ENDIF(ENABLE_ZCHUNK_COMPRESSION)
943
944   IF ( UDEV_FOUND )
945     TARGET_LINK_LIBRARIES(${LIBNAME} ${UDEV_LIBRARY} )
946   ELSE ( UDEV_FOUND )
947     IF ( HAL_FOUND )
948       TARGET_LINK_LIBRARIES(${LIBNAME} ${HAL_LIBRARY} ${HAL_STORAGE_LIBRARY} ${DBUS_LIBRARY} )
949     ENDIF ( HAL_FOUND )
950   ENDIF ( UDEV_FOUND )
951
952   TARGET_LINK_LIBRARIES( ${LIBNAME} ${LIBPROXY_LIBRARIES} )
953
954 endmacro()
955
956 #Release library stripped from most symbols, thats what we release to the packages
957 ADDZYPPLIB(zypp)
958 set_target_properties ( zypp PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libzypp.map" )
959
960 INSTALL(TARGETS zypp LIBRARY DESTINATION ${LIB_INSTALL_DIR} )
961
962 #library build just for using it in tests, contains all symbols
963 ADDZYPPLIB(zypp-allsym)
964 ADD_DEPENDENCIES( zypp-allsym zypp )
965
966 #this part does nothing yet, only when switching away from using a map file to
967 #a approach where symbols are exported explicitely it would make a difference
968 #ZYPPNG symbols need to be added to the map file to be exported
969 IF( EXPORT_NG_API )
970 ADD_DEFINITIONS(-DEXPORT_EXPERIMENTAL_API)
971 INCLUDE(GenerateExportHeader)
972 message("Exporting experimental libzypp-ng API")
973 GENERATE_EXPORT_HEADER(
974   zypp
975   BASE_NAME zypp-ng
976   PREFIX_NAME LIB
977 )
978 ENDIF ( EXPORT_NG_API )
979
980 # install XML schemas
981 FILE( GLOB YUM_SCHEMA_FILES ${LIBZYPP_SOURCE_DIR}/zypp/parser/yum/schema/*.rng )
982 INSTALL(FILES ${YUM_SCHEMA_FILES} DESTINATION "${CMAKE_INSTALL_PREFIX}/share/zypp/schema/yum" )
983
984 ADD_CUSTOM_TARGET ( buildmon
985   COMMAND test ! -x ./buildmon || ./buildmon
986 )
987
988 ADD_CUSTOM_COMMAND (
989   TARGET zypp POST_BUILD
990   COMMAND test ! -x ./buildmon || ./buildmon
991 )