Added new rules MergeObject, MergeObjectFromObjects, and KernelMergeObject.
Fixed the syntax comment in KernelLd. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1840 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -591,7 +591,7 @@ rule Translator
|
|||||||
MakeLocate $(1) : $(targetdir) ;
|
MakeLocate $(1) : $(targetdir) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
rule MakeLocateObjects
|
rule MakeLocateObjects
|
||||||
{
|
{
|
||||||
# MakeLocateObjects <sources_or_objects> ;
|
# MakeLocateObjects <sources_or_objects> ;
|
||||||
|
|
||||||
@@ -619,6 +619,30 @@ rule StaticLibrary
|
|||||||
MakeLocate lib$(<).a : $(OBOS_STLIB_DIR) ;
|
MakeLocate lib$(<).a : $(OBOS_STLIB_DIR) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rule MergeObjectFromObjects
|
||||||
|
{
|
||||||
|
# MergeObjectFromObjects <name> : <objects> ;
|
||||||
|
MakeLocate $(1) : $(LOCATE_TARGET) ;
|
||||||
|
MakeLocateObjects $(2) ;
|
||||||
|
Depends $(<) : $(>) ;
|
||||||
|
LINK on $(1) = ld ;
|
||||||
|
}
|
||||||
|
|
||||||
|
actions MergeObjectFromObjects
|
||||||
|
{
|
||||||
|
$(LINK) -r $(2) -o $(1) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
rule MergeObject
|
||||||
|
{
|
||||||
|
# MergeObject <name> : <sources> ;
|
||||||
|
SetupIncludes ;
|
||||||
|
SetupObjectsDir ;
|
||||||
|
MakeLocateObjects $(2) ;
|
||||||
|
Objects $(2) ;
|
||||||
|
MergeObjectFromObjects $(1) : $(2:S=$(SUFOBJ)) ;
|
||||||
|
}
|
||||||
|
|
||||||
rule SharedLibraryFromObjects
|
rule SharedLibraryFromObjects
|
||||||
{
|
{
|
||||||
# SharedLibraryFromObjects <name> : <objects> ;
|
# SharedLibraryFromObjects <name> : <objects> ;
|
||||||
@@ -1115,7 +1139,7 @@ rule KernelObjects
|
|||||||
|
|
||||||
rule KernelLd
|
rule KernelLd
|
||||||
{
|
{
|
||||||
# KernelLd <name> : <objs> : <linkerscript> : <args> : <gcc_off> ;
|
# KernelLd <name> : <objs> : <linkerscript> : <args> : <gcc_off> : <config_section> ;
|
||||||
|
|
||||||
SetupKernel $(2) ;
|
SetupKernel $(2) ;
|
||||||
LINK on $(1) = ld ;
|
LINK on $(1) = ld ;
|
||||||
@@ -1150,6 +1174,17 @@ actions KernelLd
|
|||||||
$(LINK) $(LINKFLAGS) -o "$(1)" "$(2)" $(LINKLIBS) ;
|
$(LINK) $(LINKFLAGS) -o "$(1)" "$(2)" $(LINKLIBS) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rule KernelMergeObject
|
||||||
|
{
|
||||||
|
# KernelMergeObject <name> : <sources> : <extra CFLAGS> ;
|
||||||
|
|
||||||
|
SetupKernel $(2) : $(3) ;
|
||||||
|
|
||||||
|
MakeLocateObjects $(2) ;
|
||||||
|
Objects $(2) ;
|
||||||
|
MergeObjectFromObjects $(1) : $(2:S=$(SUFOBJ)) ;
|
||||||
|
}
|
||||||
|
|
||||||
rule KernelStaticLibrary
|
rule KernelStaticLibrary
|
||||||
{
|
{
|
||||||
# Usage KernelStaticLibrary <name> : <sources> : <extra cc flags> ;
|
# Usage KernelStaticLibrary <name> : <sources> : <extra cc flags> ;
|
||||||
|
|||||||
Reference in New Issue
Block a user