* added support for minor ABI versions to the SharedLibrary rule, as otherwise updating libz.so
could prove to be a major PITA (because of all the dependencies that would need to be rebuilt) * when adding a library to the image, its optional minor abi version is taken care of, too (i. e. a corresponding link is created). * the ABI-related links in /system/lib are now replicated in /boot/develop/lib/<arch> git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35362 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -424,20 +424,24 @@ rule SharedLibraryFromObjects
|
||||
|
||||
rule SharedLibrary
|
||||
{
|
||||
# SharedLibrary <lib> : <sources> : <libraries> ;
|
||||
# SharedLibrary <lib> : <sources> : <libraries> : <abiMajor> : <abiMinor>;
|
||||
local lib = $(1) ;
|
||||
local sources = [ FGristFiles $(2) ] ;
|
||||
local objects = $(sources:S=$(SUFOBJ)) ;
|
||||
local libs = $(3) ;
|
||||
local apiVersion = $(4) ;
|
||||
local abiMajor = $(4) ; # major ABI (soname) version for lib (if any)
|
||||
local abiMinor = $(5) ; # additional minor suffix (optional)
|
||||
|
||||
if ! [ IsPlatformSupportedForTarget $(1) ] {
|
||||
return ;
|
||||
}
|
||||
|
||||
if $(apiVersion) {
|
||||
HAIKU_SONAME on $(lib) = $(lib:BS).$(apiVersion) ;
|
||||
HAIKU_LIB_API_VERSION on $(lib) = $(apiVersion) ;
|
||||
if $(abiMajor) {
|
||||
HAIKU_SONAME on $(lib) = $(lib:BS).$(abiMajor) ;
|
||||
HAIKU_LIB_ABI_MAJOR on $(lib) = $(abiMajor) ;
|
||||
if $(abiMinor) {
|
||||
HAIKU_LIB_ABI_MINOR on $(lib) = $(abiMinor) ;
|
||||
}
|
||||
}
|
||||
|
||||
InheritPlatform $(objects) : $(lib) ;
|
||||
|
||||
Reference in New Issue
Block a user