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:
Axel Dörfler 2002-11-04 18:52:21 +00:00
parent e729eba84d
commit 807212446d

View File

@ -591,7 +591,7 @@ rule Translator
MakeLocate $(1) : $(targetdir) ;
}
rule MakeLocateObjects
rule MakeLocateObjects
{
# MakeLocateObjects <sources_or_objects> ;
@ -619,6 +619,30 @@ rule StaticLibrary
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
{
# SharedLibraryFromObjects <name> : <objects> ;
@ -1115,7 +1139,7 @@ rule KernelObjects
rule KernelLd
{
# KernelLd <name> : <objs> : <linkerscript> : <args> : <gcc_off> ;
# KernelLd <name> : <objs> : <linkerscript> : <args> : <gcc_off> : <config_section> ;
SetupKernel $(2) ;
LINK on $(1) = ld ;
@ -1150,6 +1174,17 @@ actions KernelLd
$(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
{
# Usage KernelStaticLibrary <name> : <sources> : <extra cc flags> ;