fixup Fix to build with libxml 2.12.x (fixes #505)
[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/InputStream.cc
221   base/ReferenceCounted.cc
222   base/SetRelationMixin.cc
223   base/String.cc
224   base/StrMatcher.h
225   base/StrMatcher.cc
226   base/Regex.cc
227   base/Unit.cc
228   base/ExternalDataSource.cc
229   base/Exception.cc
230   base/UserRequestException.cc
231   base/Sysconfig.cc
232   base/ProfilingFormater.cc
233   base/LogControl.cc
234   base/Xml.cc
235 )
236
237 SET( zypp_base_HEADERS
238   base/Backtrace.h
239   base/Collector.h
240   base/DrunkenBishop.h
241   base/SerialNumber.h
242   base/Easy.h
243   base/Env.h
244   base/Errno.h
245   base/fXstream.h
246   base/Random.h
247   base/Algorithm.h
248   base/Counter.h
249   base/Debug.h
250   base/DefaultIntegral.h
251   base/DtorReset.h
252   base/Exception.h
253   base/UserRequestException.h
254   base/EnumClass.h
255   base/ExternalDataSource.h
256   base/Flags.h
257   base/Function.h
258   base/Functional.h
259   base/Gettext.h
260   base/GzStream.h
261   base/Hash.h
262   base/IOStream.h
263   base/InputStream.h
264   base/Iterable.h
265   base/Iterator.h
266   base/Json.h
267   base/LocaleGuard.h
268   base/LogControl.h
269   base/LogTools.h
270   base/Logger.h
271   base/Measure.h
272   base/NamedValue.h
273   base/NonCopyable.h
274   base/ProfilingFormater.h
275   base/ProvideNumericId.h
276   base/PtrTypes.h
277   base/ReferenceCounted.h
278   base/SetRelationMixin.h
279   base/SetTracker.h
280   base/Signal.h
281   base/SimpleStreambuf.h
282   base/String.h
283   base/StrMatcher.h
284   base/Regex.h
285   base/Sysconfig.h
286   base/TypeTraits.h
287   base/Unit.h
288   base/ValueTransform.h
289   base/WatchFile.h
290   base/Xml.h
291 )
292
293 IF (ENABLE_ZCHUNK_COMPRESSION)
294
295   list( APPEND zypp_base_SRCS
296     base/ZckStream.cc
297   )
298
299   list( APPEND zypp_base_HEADERS
300     base/ZckStream.h
301   )
302
303 ENDIF(ENABLE_ZCHUNK_COMPRESSION)
304
305 INSTALL(  FILES
306   ${zypp_base_HEADERS}
307   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/base
308 )
309
310 SET( zypp_media_SRCS
311   media/CurlHelper.cc
312   media/MediaException.cc
313   media/MediaAccess.cc
314   media/MediaHandler.cc
315   media/Mount.cc
316   media/MediaNFS.cc
317   media/MediaCD.cc
318   media/MediaDIR.cc
319   media/MediaDISK.cc
320   media/MediaCIFS.cc
321   media/ProxyInfo.cc
322   media/MediaCurl.cc
323   media/MediaMultiCurl.cc
324   media/MediaISO.cc
325   media/MediaPlugin.cc
326   media/MediaSource.cc
327   media/MediaManager.cc
328   media/MediaUserAuth.cc
329   media/CredentialFileReader.cc
330   media/CredentialManager.cc
331   media/CurlConfig.cc
332   media/TransferSettings.cc
333   media/MediaPriority.cc
334   media/MetaLinkParser.cc
335   media/ZsyncParser.cc
336   media/MediaBlockList.cc
337   media/UrlResolverPlugin.cc
338 )
339
340 SET( zypp_media_HEADERS
341   media/MediaAccess.h
342   media/MediaCD.h
343   media/MediaCIFS.h
344   media/MediaCurl.h
345   media/MediaMultiCurl.h
346   media/MediaDIR.h
347   media/MediaDISK.h
348   media/MediaException.h
349   media/MediaHandler.h
350   media/MediaISO.h
351   media/MediaPlugin.h
352   media/MediaManager.h
353   media/MediaNFS.h
354   media/MediaSource.h
355   media/MediaUserAuth.h
356   media/Mount.h
357   media/ProxyInfo.h
358   media/CredentialFileReader.h
359   media/CredentialManager.h
360   media/CurlConfig.h
361   media/TransferSettings.h
362   media/MediaPriority.h
363   media/MetaLinkParser.h
364   media/ZsyncParser.h
365   media/MediaBlockList.h
366   media/UrlResolverPlugin.h
367 )
368
369 INSTALL(  FILES
370   ${zypp_media_HEADERS}
371   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media
372 )
373
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 )
378
379 SET( zypp_media_proxyinfo_SRCS
380   media/proxyinfo/ProxyInfoSysconfig.cc
381   ${zypp_media_proxyinfo_libproxy_SRCS}
382 )
383
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
389 )
390
391 INSTALL(  FILES
392   ${zypp_media_proxyinfo_HEADERS}
393   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/media/proxyinfo
394 )
395
396 SET( zypp_parser_SRCS
397   parser/ParseException.cc
398   parser/IniParser.cc
399   parser/IniDict.cc
400   parser/HistoryLogReader.cc
401   parser/RepoFileReader.cc
402   parser/RepoindexFileReader.cc
403   parser/ServiceFileReader.cc
404   parser/ProductFileReader.cc
405 )
406
407 SET( zypp_parser_HEADERS
408   parser/ParseException.h
409   parser/IniParser.h
410   parser/IniDict.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
417 )
418
419 INSTALL(  FILES
420   ${zypp_parser_HEADERS}
421   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser
422 )
423
424 SET( zypp_parser_susetags_SRCS
425   parser/susetags/RepoIndex.cc
426   parser/susetags/ContentFileReader.cc
427 )
428
429 SET( zypp_parser_susetags_HEADERS
430   parser/susetags/RepoIndex.h
431   parser/susetags/ContentFileReader.h
432 )
433
434 INSTALL(  FILES
435   ${zypp_parser_susetags_HEADERS}
436   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/susetags
437 )
438
439 SET( zypp_parser_xml_SRCS
440   parser/xml/Node.cc
441   parser/xml/ParseDef.cc
442   parser/xml/ParseDefConsume.cc
443   parser/xml/ParseDefException.cc
444   parser/xml/Reader.cc
445   parser/xml/XmlEscape.cc
446   parser/xml/XmlString.cc
447   parser/xml/libxmlfwd.cc
448 )
449
450 SET( zypp_parser_xml_HEADERS
451   parser/xml/Parse.h
452   parser/xml/Node.h
453   parser/xml/ParseDef.h
454   parser/xml/ParseDefConsume.h
455   parser/xml/ParseDefException.h
456   parser/xml/ParseDefTraits.h
457   parser/xml/Reader.h
458   parser/xml/XmlEscape.h
459   parser/xml/XmlString.h
460   parser/xml/libxmlfwd.h
461 )
462
463 INSTALL(  FILES
464   ${zypp_parser_xml_HEADERS}
465   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/xml
466 )
467
468 SET( zypp_parser_yum_SRCS
469   parser/yum/RepomdFileReader.cc
470 )
471
472 SET( zypp_parser_yum_HEADERS
473   parser/yum/RepomdFileReader.h
474 )
475
476 INSTALL(  FILES
477   ${zypp_parser_yum_HEADERS}
478   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/parser/yum
479 )
480
481 SET( zypp_pool_SRCS
482   pool/PoolImpl.cc
483   pool/PoolStats.cc
484 )
485
486 SET( zypp_pool_HEADERS
487   pool/PoolImpl.h
488   pool/PoolStats.h
489   pool/PoolTraits.h
490   pool/ByIdent.h
491 )
492
493 INSTALL(  FILES
494   ${zypp_pool_HEADERS}
495   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/pool
496 )
497
498 # SET( zypp_solver_detail_SRCS )
499
500 SET( zypp_solver_HEADERS
501   solver/Types.h
502 )
503
504 INSTALL(  FILES
505   ${zypp_solver_HEADERS}
506   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver
507 )
508
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
523 )
524
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
541 )
542
543 INSTALL(  FILES
544   ${zypp_solver_detail_HEADERS}
545   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/solver/detail
546 )
547
548 SET( zypp_sat_SRCS
549   sat/Pool.cc
550   sat/Solvable.cc
551   sat/SolvableSet.cc
552   sat/SolvableSpec.cc
553   sat/SolvIterMixin.cc
554   sat/Map.cc
555   sat/Queue.cc
556   sat/FileConflicts.cc
557   sat/Transaction.cc
558   sat/WhatProvides.cc
559   sat/WhatObsoletes.cc
560   sat/LocaleSupport.cc
561   sat/LookupAttr.cc
562   sat/SolvAttr.cc
563 )
564
565 SET( zypp_sat_HEADERS
566   sat/Pool.h
567   sat/Solvable.h
568   sat/SolvableSet.h
569   sat/SolvableType.h
570   sat/SolvableSpec.h
571   sat/SolvIterMixin.h
572   sat/Map.h
573   sat/Queue.h
574   sat/FileConflicts.h
575   sat/Transaction.h
576   sat/WhatProvides.h
577   sat/WhatObsoletes.h
578   sat/LocaleSupport.h
579   sat/LookupAttr.h
580   sat/LookupAttrTools.h
581   sat/SolvAttr.h
582 )
583
584 INSTALL(  FILES
585   ${zypp_sat_HEADERS}
586   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat
587 )
588
589 SET( zypp_sat_detail_SRCS
590   sat/detail/PoolImpl.cc
591 )
592
593 SET( zypp_sat_detail_HEADERS
594   sat/detail/PoolMember.h
595   sat/detail/PoolImpl.h
596 )
597
598 INSTALL(  FILES
599   ${zypp_sat_detail_HEADERS}
600   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/sat/detail
601 )
602
603
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
614   target/TargetImpl.cc
615   target/TargetImpl.commitFindFileConflicts.cc
616
617 )
618
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
629   target/TargetImpl.h
630 )
631
632 INSTALL(  FILES
633   ${zypp_target_HEADERS}
634   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target
635 )
636
637 SET( zypp_target_modalias_SRCS
638   target/modalias/Modalias.cc
639 )
640
641 SET( zypp_target_modalias_HEADERS
642   target/modalias/Modalias.h
643 )
644
645 INSTALL(  FILES
646   ${zypp_target_modalias_HEADERS}
647   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/modalias
648 )
649
650 SET( zypp_target_rpm_SRCS
651   target/rpm/BinHeader.cc
652   target/rpm/RpmCallbacks.cc
653   target/rpm/RpmDb.cc
654   target/rpm/RpmException.cc
655   target/rpm/RpmHeader.cc
656   target/rpm/librpmDb.cc
657 )
658
659 SET( zypp_target_rpm_HEADERS
660   target/rpm/BinHeader.h
661   target/rpm/RpmCallbacks.h
662   target/rpm/RpmFlags.h
663   target/rpm/RpmDb.h
664   target/rpm/RpmException.h
665   target/rpm/RpmHeader.h
666   target/rpm/librpm.h
667   target/rpm/librpmDb.h
668 )
669
670 INSTALL(  FILES
671   ${zypp_target_rpm_HEADERS}
672   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/target/rpm
673 )
674
675 SET( zypp_ui_SRCS
676   ui/Selectable.cc
677   ui/SelectableImpl.cc
678   ui/Status.cc
679   ui/UserWantedPackages.cc
680 )
681
682 SET( zypp_ui_HEADERS
683   ui/SelFilters.h
684   ui/Selectable.h
685   ui/SelectableImpl.h
686   ui/SelectableTraits.h
687   ui/Status.h
688   ui/UserWantedPackages.h
689 )
690
691 INSTALL(  FILES
692   ${zypp_ui_HEADERS}
693   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/ui
694 )
695
696 SET( zypp_url_SRCS
697   url/UrlUtils.cc
698   url/UrlBase.cc
699 )
700
701 SET( zypp_url_HEADERS
702   url/UrlBase.h
703   url/UrlException.h
704   url/UrlUtils.h
705 )
706
707 INSTALL(  FILES
708   ${zypp_url_HEADERS}
709   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/url
710 )
711
712 SET( zypp_zypp_detail_SRCS
713   zypp_detail/ZYppImpl.cc
714 )
715
716 SET( zypp_zypp_detail_HEADERS
717   zypp_detail/ZYppImpl.h
718   zypp_detail/ZYppReadOnlyHack.h
719 )
720
721 INSTALL(  FILES
722   ${zypp_zypp_detail_HEADERS}
723   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/zypp_detail
724 )
725
726 SET( zypp_repo_SRCS
727   repo/RepoException.cc
728   repo/RepoMirrorList.cc
729   repo/RepoType.cc
730   repo/ServiceType.cc
731   repo/PackageProvider.cc
732   repo/SrcPackageProvider.cc
733   repo/RepoProvideFile.cc
734   repo/DeltaCandidates.cc
735   repo/Applydeltarpm.cc
736   repo/PackageDelta.cc
737   repo/SUSEMediaVerifier.cc
738   repo/MediaInfoDownloader.cc
739   repo/Downloader.cc
740   repo/RepoVariables.cc
741   repo/RepoInfoBase.cc
742   repo/PluginServices.cc
743   repo/ServiceRepos.cc
744 )
745
746 SET( zypp_repo_HEADERS
747   repo/RepoException.h
748   repo/RepoMirrorList.h
749   repo/RepoType.h
750   repo/ServiceType.h
751   repo/PackageProvider.h
752   repo/SrcPackageProvider.h
753   repo/RepoProvideFile.h
754   repo/DeltaCandidates.h
755   repo/Applydeltarpm.h
756   repo/PackageDelta.h
757   repo/SUSEMediaVerifier.h
758   repo/MediaInfoDownloader.h
759   repo/Downloader.h
760   repo/RepoVariables.h
761   repo/RepoInfoBase.h
762   repo/PluginServices.h
763   repo/ServiceRepos.h
764 )
765
766 INSTALL( FILES
767   ${zypp_repo_HEADERS}
768   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/repo
769 )
770
771 SET( zypp_repo_yum_SRCS
772   repo/yum/Downloader.cc
773 )
774
775 SET( zypp_repo_yum_HEADERS
776   repo/yum/Downloader.h
777 )
778
779 SET( zypp_repo_susetags_SRCS
780   repo/susetags/Downloader.cc
781 )
782
783 SET( zypp_repo_susetags_HEADERS
784   repo/susetags/Downloader.h
785 )
786
787 ####################################################################
788
789 SET( zypp_misc_HEADERS
790   Misc.h
791   misc/DefaultLoadSystem.h
792   misc/CheckAccessDeleted.h
793 )
794
795 SET( zypp_misc_SRCS
796   misc/DefaultLoadSystem.cc
797   misc/CheckAccessDeleted.cc
798 )
799
800 INSTALL( FILES
801   ${zypp_misc_HEADERS}
802   DESTINATION ${INCLUDE_INSTALL_DIR}/zypp/misc
803 )
804
805 ####################################################################
806
807 add_subdirectory( zyppng )
808
809 SET( zypp_lib_SRCS
810 ${zypp_misc_SRCS}
811 ${zypp_pool_SRCS}
812 ${zypp_parser_susetags_SRCS}
813 ${zypp_parser_xml_SRCS}
814 ${zypp_parser_yum_SRCS}
815 ${zypp_parser_SRCS}
816 ${zypp_media_proxyinfo_SRCS}
817 ${zypp_media_SRCS}
818 ${zypp_url_SRCS}
819 ${zypp_repo_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}
826 ${zypp_target_SRCS}
827 ${zypp_solver_detail_SRCS}
828 ${zypp_ui_SRCS}
829 ${zypp_SRCS}
830 ${zypp_zypp_detail_SRCS}
831 ${zypp_sat_SRCS}
832 ${zypp_sat_detail_SRCS}
833 ${zypp_EARLY_SRCS}
834 ${zypp_base_SRCS}
835 ${zyppng_SRCS}
836 )
837
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}
845 ${zypp_ui_HEADERS}
846 ${zypp_media_HEADERS}
847 ${zypp_media_proxyinfo_HEADERS}
848 ${zypp_base_HEADERS}
849 ${zypp_solver_HEADERS}
850 ${zypp_solver_detail_HEADERS}
851 ${zypp_sat_HEADERS}
852 ${zypp_sat_detail_HEADERS}
853 ${zypp_url_HEADERS}
854 ${zypp_HEADERS}
855 ${zypp_zypp_detail_HEADERS}
856 ${zypp_repo_HEADERS}
857 ${zypp_source_susetags_HEADERS}
858 ${zypp_target_modalias_HEADERS}
859 ${zypp_target_HEADERS}
860 ${zypp_pool_HEADERS}
861 ${zypp_misc_HEADERS}
862 ${zyppng_HEADERS}
863 )
864
865 #
866 # Macro to set the log group for a list of files
867 #
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 )
875
876 # Default loggroup for all files
877 SET_LOGGROUP( "zypp" ${zypp_lib_SRCS} )
878
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} )
902
903 ADD_LIBRARY( zypp-objlib OBJECT ${zypp_lib_SRCS} ${zypp_lib_HEADERS} )
904
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}" )
910   # System libraries
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})
926
927   IF (ENABLE_ZCHUNK_COMPRESSION)
928           TARGET_LINK_LIBRARIES(${LIBNAME} ${ZCHUNK_LDFLAGS})
929   ENDIF(ENABLE_ZCHUNK_COMPRESSION)
930
931   IF ( UDEV_FOUND )
932     TARGET_LINK_LIBRARIES(${LIBNAME} ${UDEV_LIBRARY} )
933   ELSE ( UDEV_FOUND )
934     IF ( HAL_FOUND )
935       TARGET_LINK_LIBRARIES(${LIBNAME} ${HAL_LIBRARY} ${HAL_STORAGE_LIBRARY} ${DBUS_LIBRARY} )
936     ENDIF ( HAL_FOUND )
937   ENDIF ( UDEV_FOUND )
938
939   TARGET_LINK_LIBRARIES( ${LIBNAME} ${LIBPROXY_LIBRARIES} )
940
941 endmacro()
942
943 #Release library stripped from most symbols, thats what we release to the packages
944 ADDZYPPLIB(zypp)
945 set_target_properties ( zypp PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libzypp.map" )
946
947 INSTALL(TARGETS zypp LIBRARY DESTINATION ${LIB_INSTALL_DIR} )
948
949 #library build just for using it in tests, contains all symbols
950 ADDZYPPLIB(zypp-allsym)
951
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
955 IF( EXPORT_NG_API )
956 ADD_DEFINITIONS(-DEXPORT_EXPERIMENTAL_API)
957 INCLUDE(GenerateExportHeader)
958 message("Exporting experimental libzypp-ng API")
959 GENERATE_EXPORT_HEADER(
960   zypp
961   BASE_NAME zypp-ng
962   PREFIX_NAME LIB
963 )
964 ENDIF ( EXPORT_NG_API )
965
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" )
969
970 ADD_CUSTOM_TARGET ( buildmon
971   COMMAND test ! -x ./buildmon || ./buildmon
972 )
973
974 ADD_CUSTOM_COMMAND (
975   TARGET zypp POST_BUILD
976   COMMAND test ! -x ./buildmon || ./buildmon
977 )