1SubDir HAIKU_TOP src build libpackage ; 2 3UsePrivateBuildHeaders kernel package shared libroot storage support ; 4 5UseHeaders [ FDirName $(HAIKU_TOP) headers os net ] : true ; 6 7SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package ] ; 8SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg ] ; 9SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg v1 ] ; 10SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package manager ] ; 11SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package solver ] ; 12 13USES_BE_API on libpackage_build.so = true ; 14LINKFLAGS on libpackage_build.so += $(HOST_PTHREAD_LINKFLAGS) ; 15 16 17{ 18 # The package writer needs to know where the license files are located. 19 local dataDir = [ FDirName $(HAIKU_TOP) data system data ] ; 20 # The directory path we compile in must be absolute. If it isn't prepend 21 # pwd. 22 local defines ; 23 if ! [ Match "(^/.*)" : $(dataDir) ] { 24 dataDir = `pwd`/$(dataDir) ; 25 } 26 local defines = [ FDefines 27 \"HAIKU_BUILD_SYSTEM_DATA_DIRECTORY="\\\"$(dataDir)\\\""\" 28 ] ; 29 ObjectC++Flags PackageWriterImpl.cpp : $(defines) ; 30} 31 32 33HPKG_SOURCES = 34 AttributeDataReader.cpp 35 BlockBufferPool.cpp 36 BlockBufferPoolImpl.cpp 37 BlockBufferPoolNoLock.cpp 38 BufferPool.cpp 39 PoolBuffer.cpp 40 DataReader.cpp 41 ErrorOutput.cpp 42 FDDataReader.cpp 43 FetchUtils.cpp 44 GlobalWritableFileInfo.cpp 45 HPKGDefs.cpp 46 PackageContentHandler.cpp 47 PackageData.cpp 48 PackageDataReader.cpp 49 PackageEntry.cpp 50 PackageEntryAttribute.cpp 51 PackageFileHeapAccessorBase.cpp 52 PackageFileHeapReader.cpp 53 PackageFileHeapWriter.cpp 54 PackageReader.cpp 55 PackageReaderImpl.cpp 56 PackageWriter.cpp 57 PackageWriterImpl.cpp 58 ReaderImplBase.cpp 59 RepositoryContentHandler.cpp 60 RepositoryReader.cpp 61 RepositoryReaderImpl.cpp 62 RepositoryWriter.cpp 63 RepositoryWriterImpl.cpp 64 Strings.cpp 65 UserSettingsFileInfo.cpp 66 WriterImplBase.cpp 67 68 # V1 support 69 HPKGDefsV1.cpp 70 PackageContentHandlerV1.cpp 71 PackageDataReaderV1.cpp 72 PackageDataV1.cpp 73 PackageEntryAttributeV1.cpp 74 PackageEntryV1.cpp 75 PackageInfoContentHandlerV1.cpp 76 PackageReaderImplV1.cpp 77 PackageReaderV1.cpp 78 ReaderImplBaseV1.cpp 79; 80 81# locate the library 82MakeLocate libpackage_build.so : $(HOST_BUILD_COMPATIBILITY_LIB_DIR) ; 83 84BuildPlatformSharedLibrary libpackage_build.so 85 : 86 ActivateRepositoryCacheJob.cpp 87 ActivateRepositoryConfigJob.cpp 88 ActivationTransaction.cpp 89 AddRepositoryRequest.cpp 90 Attributes.cpp 91 ChecksumAccessors.cpp 92 CommitTransactionResult.cpp 93 Context.cpp 94 DownloadFileRequest.cpp 95 DropRepositoryRequest.cpp 96 FetchFileJob.cpp 97 InstallationLocationInfo.cpp 98 Job.cpp 99 PackageInfo.cpp 100 PackageInfoContentHandler.cpp 101 PackageInfoParser.cpp 102 PackageInfoSet.cpp 103 PackageResolvable.cpp 104 PackageResolvableExpression.cpp 105 PackageRoster.cpp 106 PackageVersion.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 RepositoryBuilder.cpp 126 127 # solver 128 Solver.cpp 129 SolverPackage.cpp 130 SolverPackageSpecifier.cpp 131 SolverPackageSpecifierList.cpp 132 SolverProblem.cpp 133 SolverProblemSolution.cpp 134 SolverRepository.cpp 135 SolverResult.cpp 136 : 137 libshared_build.a $(HOST_LIBBE) $(HOST_LIBSTDC++) 138; 139 140HaikuSubInclude solver ; 141