xref: /haiku/src/kits/package/Jamfile (revision 7457ccb4b2f4786525d3b7bda42598487d57ab7d)
1SubDir HAIKU_TOP src kits package ;
2
3UsePrivateHeaders
4	app
5	kernel
6	shared
7	libroot
8	storage
9	support
10	;
11UsePrivateSystemHeaders ;
12
13HPKG_SOURCES =
14	AttributeDataReader.cpp
15	BlockBufferPool.cpp
16	BlockBufferPoolImpl.cpp
17	BlockBufferPoolNoLock.cpp
18	BufferPool.cpp
19	CommitTransactionResult.cpp
20	DataReader.cpp
21	ErrorOutput.cpp
22	FDDataReader.cpp
23	GlobalWritableFileInfo.cpp
24	HPKGDefs.cpp
25	PackageContentHandler.cpp
26	PackageData.cpp
27	PackageDataReader.cpp
28	PackageEntry.cpp
29	PackageEntryAttribute.cpp
30	PackageFileHeapAccessorBase.cpp
31	PackageFileHeapReader.cpp
32	PackageFileHeapWriter.cpp
33	PackageReader.cpp
34	PackageReaderImpl.cpp
35	PackageWriter.cpp
36	PackageWriterImpl.cpp
37	PoolBuffer.cpp
38	ReaderImplBase.cpp
39	RepositoryContentHandler.cpp
40	RepositoryReader.cpp
41	RepositoryReaderImpl.cpp
42	RepositoryWriter.cpp
43	RepositoryWriterImpl.cpp
44	Strings.cpp
45	UserSettingsFileInfo.cpp
46	WriterImplBase.cpp
47
48	# V1 support
49	HPKGDefsV1.cpp
50	PackageContentHandlerV1.cpp
51	PackageDataReaderV1.cpp
52	PackageDataV1.cpp
53	PackageEntryAttributeV1.cpp
54	PackageEntryV1.cpp
55	PackageInfoContentHandlerV1.cpp
56	PackageReaderImplV1.cpp
57	PackageReaderV1.cpp
58	ReaderImplBaseV1.cpp
59	;
60
61local architectureObject ;
62for architectureObject in [ MultiArchSubDirSetup ] {
63	on $(architectureObject) {
64		UseBuildFeatureHeaders curl ;
65		if [ FIsBuildFeatureEnabled zstd ] {
66			SubDirC++Flags -DZSTD_ENABLED ;
67		}
68		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg ] ;
69		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg v1 ] ;
70		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package manager ] ;
71		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package solver ] ;
72
73		Includes [ FGristFiles FetchFileJob.cpp ]
74			: [ BuildFeatureAttribute curl : headers ] ;
75		Includes [ FGristFiles InitTerminateLibPackage.cpp ]
76			: [ BuildFeatureAttribute curl : headers ] ;
77
78		AddResources $(libsolv) :
79			LibsolvSolver.rdef
80			;
81
82		SharedLibrary [ MultiArchDefaultGristFiles libpackage.so ]
83			:
84			ActivateRepositoryCacheJob.cpp
85			ActivateRepositoryConfigJob.cpp
86			ActivationTransaction.cpp
87			AddRepositoryRequest.cpp
88			Attributes.cpp
89			ChecksumAccessors.cpp
90			Context.cpp
91			DaemonClient.cpp
92			DownloadFileRequest.cpp
93			DropRepositoryRequest.cpp
94			FetchFileJob.cpp
95			InitTerminateLibPackage.cpp
96			InstallationLocationInfo.cpp
97			Job.cpp
98			PackageInfo.cpp
99			PackageInfoContentHandler.cpp
100			PackageInfoParser.cpp
101			PackageInfoSet.cpp
102			PackageResolvable.cpp
103			PackageResolvableExpression.cpp
104			PackageRoster.cpp
105			PackageVersion.cpp
106			PathFinder.cpp
107			RefreshRepositoryRequest.cpp
108			RemoveRepositoryJob.cpp
109			RepositoryCache.cpp
110			RepositoryConfig.cpp
111			RepositoryInfo.cpp
112			Request.cpp
113			TempfileManager.cpp
114			User.cpp
115			ValidateChecksumJob.cpp
116
117			$(HPKG_SOURCES)
118
119			# hpkg, but only libpackage
120			NoErrorOutput.cpp
121			StandardErrorOutput.cpp
122
123			# manager
124			Exceptions.cpp
125			PackageManager.cpp
126			RepositoryBuilder.cpp
127
128			# solver
129			Solver.cpp
130			SolverPackage.cpp
131			SolverPackageSpecifier.cpp
132			SolverPackageSpecifierList.cpp
133			SolverProblem.cpp
134			SolverProblemSolution.cpp
135			SolverRepository.cpp
136			SolverResult.cpp
137			:
138			shared
139			bnetapi
140			be localestub
141			[ BuildFeatureAttribute curl : library ]
142			[ TargetLibstdc++ ]
143			$(TARGET_NETWORK_LIBS)
144			;
145	}
146}
147
148
149SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package manager ] ;
150
151DoCatalogs libpackage.so :
152	x-vnd.Haiku-libpackage
153	:
154	PackageManager.cpp
155;
156
157HaikuSubInclude solver ;
158