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 GlobalWritableFileInfo.cpp 44 HPKGDefs.cpp 45 PackageContentHandler.cpp 46 PackageData.cpp 47 PackageDataReader.cpp 48 PackageEntry.cpp 49 PackageEntryAttribute.cpp 50 PackageFileHeapAccessorBase.cpp 51 PackageFileHeapReader.cpp 52 PackageFileHeapWriter.cpp 53 PackageReader.cpp 54 PackageReaderImpl.cpp 55 PackageWriter.cpp 56 PackageWriterImpl.cpp 57 ReaderImplBase.cpp 58 RepositoryContentHandler.cpp 59 RepositoryReader.cpp 60 RepositoryReaderImpl.cpp 61 RepositoryWriter.cpp 62 RepositoryWriterImpl.cpp 63 Strings.cpp 64 UserSettingsFileInfo.cpp 65 WriterImplBase.cpp 66 67 # V1 support 68 HPKGDefsV1.cpp 69 PackageContentHandlerV1.cpp 70 PackageDataReaderV1.cpp 71 PackageDataV1.cpp 72 PackageEntryAttributeV1.cpp 73 PackageEntryV1.cpp 74 PackageInfoContentHandlerV1.cpp 75 PackageReaderImplV1.cpp 76 PackageReaderV1.cpp 77 ReaderImplBaseV1.cpp 78; 79 80# locate the library 81MakeLocate libpackage_build.so : $(HOST_BUILD_COMPATIBILITY_LIB_DIR) ; 82 83BuildPlatformSharedLibrary libpackage_build.so 84 : 85 ActivateRepositoryCacheJob.cpp 86 ActivateRepositoryConfigJob.cpp 87 ActivationTransaction.cpp 88 AddRepositoryRequest.cpp 89 Attributes.cpp 90 ChecksumAccessors.cpp 91 CommitTransactionResult.cpp 92 Context.cpp 93 DownloadFileRequest.cpp 94 DropRepositoryRequest.cpp 95 FetchFileJob.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 RefreshRepositoryRequest.cpp 107 RemoveRepositoryJob.cpp 108 RepositoryCache.cpp 109 RepositoryConfig.cpp 110 RepositoryInfo.cpp 111 Request.cpp 112 TempfileManager.cpp 113 User.cpp 114 ValidateChecksumJob.cpp 115 116 $(HPKG_SOURCES) 117 118 # hpkg, but only libpackage 119 NoErrorOutput.cpp 120 StandardErrorOutput.cpp 121 122 # manager 123 Exceptions.cpp 124 RepositoryBuilder.cpp 125 126 # solver 127 Solver.cpp 128 SolverPackage.cpp 129 SolverPackageSpecifier.cpp 130 SolverPackageSpecifierList.cpp 131 SolverProblem.cpp 132 SolverProblemSolution.cpp 133 SolverRepository.cpp 134 SolverResult.cpp 135 : 136 libshared_build.a $(HOST_LIBBE) $(HOST_LIBSTDC++) 137; 138 139HaikuSubInclude solver ; 140