* added support for library (API-)versioning and private system libraries to
build system * declared ICU-libs as private system libraries, which causes them to no longer be available for building software (they no longer are linked from the development lib folder, so the linker won't find them) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35323 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
d18eaf4c53
commit
291785f88f
@ -99,7 +99,10 @@ SYSTEM_LIBS =
|
||||
libscreensaver.so
|
||||
libtextencoding.so libtracker.so libtranslation.so
|
||||
libz.so
|
||||
$(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++) $(ICU_LIBS)
|
||||
$(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++)
|
||||
;
|
||||
PRIVATE_SYSTEM_LIBS =
|
||||
$(ICU_LIBS)
|
||||
;
|
||||
SYSTEM_SERVERS = app_server cddb_daemon debug_server input_server mail_daemon
|
||||
media_addon_server media_server midi_server mount_server net_server
|
||||
@ -251,7 +254,8 @@ AddDriversToHaikuImage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
|
||||
AddFilesToHaikuImage system : <revisioned>kernel_$(TARGET_ARCH) ;
|
||||
|
||||
# libs
|
||||
AddFilesToHaikuHybridImage system lib : $(SYSTEM_LIBS) : : true ;
|
||||
AddLibrariesToHaikuHybridImage system lib
|
||||
: $(SYSTEM_LIBS) $(PRIVATE_SYSTEM_LIBS) ;
|
||||
|
||||
# libnetwork.so replaces quite a few libraries
|
||||
SYSTEM_LIBS_LIBNETWORK_ALIASES
|
||||
|
@ -1127,6 +1127,28 @@ rule AddSymlinkToHaikuHybridImage directoryTokens : linkTarget : linkName
|
||||
: $(alternativeLinkTarget) : $(linkName) ;
|
||||
}
|
||||
|
||||
rule AddLibrariesToHaikuHybridImage directory : libs
|
||||
{
|
||||
# AddLibraryToHaikuHybridImage <directory> : <libs>
|
||||
#
|
||||
# Installs libraries with the appropriate links onto the image.
|
||||
#
|
||||
|
||||
local lib ;
|
||||
for lib in $(libs) {
|
||||
local apiVersion = [ on $(lib) return $(HAIKU_LIB_API_VERSION) ] ;
|
||||
if $(apiVersion) {
|
||||
local apiLib = $(lib).$(apiVersion) ;
|
||||
AddFilesToHaikuHybridImage $(directory)
|
||||
: $(lib) : $(apiLib) : true ;
|
||||
AddSymlinkToHaikuHybridImage $(directory)
|
||||
: $(apiLib) : $(lib) : : true ;
|
||||
} else {
|
||||
AddFilesToHaikuHybridImage $(directory) : $(lib) : : true ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Floppy Boot Archive rules
|
||||
|
||||
|
@ -429,11 +429,17 @@ rule SharedLibrary
|
||||
local sources = [ FGristFiles $(2) ] ;
|
||||
local objects = $(sources:S=$(SUFOBJ)) ;
|
||||
local libs = $(3) ;
|
||||
local apiVersion = $(4) ;
|
||||
|
||||
if ! [ IsPlatformSupportedForTarget $(1) ] {
|
||||
return ;
|
||||
}
|
||||
|
||||
if $(apiVersion) {
|
||||
HAIKU_SONAME on $(lib) = $(lib:BS).$(apiVersion) ;
|
||||
HAIKU_LIB_API_VERSION on $(lib) = $(apiVersion) ;
|
||||
}
|
||||
|
||||
InheritPlatform $(objects) : $(lib) ;
|
||||
Objects $(sources) ;
|
||||
SharedLibraryFromObjects $(lib) : $(objects) : $(libs) ;
|
||||
|
Loading…
x
Reference in New Issue
Block a user