Reverted Jambase to keep jam compatibility
StaticLibraryFromObjects is a copy-paste of LibraryFromObjects without grist on source files git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13199 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -920,9 +920,10 @@ rule StaticLibrary
|
|||||||
SetupIncludes ;
|
SetupIncludes ;
|
||||||
SetupObjectsDir ;
|
SetupObjectsDir ;
|
||||||
MakeLocateObjects $(2) ;
|
MakeLocateObjects $(2) ;
|
||||||
Library $(lib) : $(2) ;
|
StaticLibraryFromObjects $(lib) : [ FGristFiles $(2:S=$(SUFOBJ)) ] ;
|
||||||
|
Objects $(2) ;
|
||||||
if $(4) {
|
if $(4) {
|
||||||
LibraryFromObjects $(lib) : $(4) ;
|
StaticLibraryFromObjects $(lib) : $(4) ;
|
||||||
}
|
}
|
||||||
local targetDir = $(3) ;
|
local targetDir = $(3) ;
|
||||||
if $(targetDir) {
|
if $(targetDir) {
|
||||||
@@ -942,6 +943,71 @@ rule StaticLibrary
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rule StaticLibraryFromObjects
|
||||||
|
{
|
||||||
|
local _i _l _s ;
|
||||||
|
|
||||||
|
# Add grist to file names
|
||||||
|
|
||||||
|
_s = $(>) ;
|
||||||
|
_l = $(<:S=$(SUFLIB)) ;
|
||||||
|
|
||||||
|
# library depends on its member objects
|
||||||
|
|
||||||
|
if $(KEEPOBJS)
|
||||||
|
{
|
||||||
|
LocalDepends obj : $(_s) ;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
LocalDepends lib : $(_l) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Set LOCATE for the library and its contents. The bound
|
||||||
|
# value shows up as $(NEEDLIBS) on the Link actions.
|
||||||
|
# For compatibility, we only do this if the library doesn't
|
||||||
|
# already have a path.
|
||||||
|
|
||||||
|
if ! $(_l:D)
|
||||||
|
{
|
||||||
|
MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if $(NOARSCAN)
|
||||||
|
{
|
||||||
|
# If we can't scan the library to timestamp its contents,
|
||||||
|
# we have to just make the library depend directly on the
|
||||||
|
# on-disk object files.
|
||||||
|
|
||||||
|
Depends $(_l) : $(_s) ;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
# If we can scan the library, we make the library depend
|
||||||
|
# on its members and each member depend on the on-disk
|
||||||
|
# object file.
|
||||||
|
|
||||||
|
Depends $(_l) : $(_l)($(_s:BS)) ;
|
||||||
|
|
||||||
|
for _i in $(_s)
|
||||||
|
{
|
||||||
|
Depends $(_l)($(_i:BS)) : $(_i) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
LocalClean clean : $(_l) ;
|
||||||
|
|
||||||
|
if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; }
|
||||||
|
|
||||||
|
Archive $(_l) : $(_s) ;
|
||||||
|
|
||||||
|
if $(RANLIB) { Ranlib $(_l) ; }
|
||||||
|
|
||||||
|
# If we can't scan the library, we have to leave the .o's around.
|
||||||
|
|
||||||
|
if ! ( $(NOARSCAN) || $(NOARUPDATE) ) { RmTemps $(_l) : $(_s) ; }
|
||||||
|
}
|
||||||
|
|
||||||
rule R5KernelStaticLibrary
|
rule R5KernelStaticLibrary
|
||||||
{
|
{
|
||||||
# R5KernelStaticLibrary <name> : <sources> ;
|
# R5KernelStaticLibrary <name> : <sources> ;
|
||||||
|
|||||||
@@ -827,7 +827,7 @@ rule Lex
|
|||||||
|
|
||||||
rule Library
|
rule Library
|
||||||
{
|
{
|
||||||
LibraryFromObjects $(<) : [ FGristFiles $(>:S=$(SUFOBJ)) ] ;
|
LibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ;
|
||||||
Objects $(>) ;
|
Objects $(>) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -837,7 +837,7 @@ rule LibraryFromObjects
|
|||||||
|
|
||||||
# Add grist to file names
|
# Add grist to file names
|
||||||
|
|
||||||
_s = $(>) ;
|
_s = [ FGristFiles $(>) ] ;
|
||||||
_l = $(<:S=$(SUFLIB)) ;
|
_l = $(<:S=$(SUFLIB)) ;
|
||||||
|
|
||||||
# library depends on its member objects
|
# library depends on its member objects
|
||||||
|
|||||||
Reference in New Issue
Block a user