Author: damjan
Date: Wed Sep 26 05:21:59 2018
New Revision: 1841998

URL: http://svn.apache.org/viewvc?rev=1841998&view=rev
Log:
Add a gbuild API for building assembly language source files.

This will be needed by basic, bridges and possibly other modules.

Patch by: me


Modified:
    openoffice/trunk/main/solenv/gbuild/LinkTarget.mk
    openoffice/trunk/main/solenv/gbuild/TargetLocations.mk
    openoffice/trunk/main/solenv/gbuild/platform/freebsd.mk
    openoffice/trunk/main/solenv/gbuild/platform/linux.mk
    openoffice/trunk/main/solenv/gbuild/platform/macosx.mk
    openoffice/trunk/main/solenv/gbuild/platform/os2.mk
    openoffice/trunk/main/solenv/gbuild/platform/solaris.mk
    openoffice/trunk/main/solenv/gbuild/platform/windows.mk
    openoffice/trunk/main/solenv/gbuild/platform/winmingw.mk

Modified: openoffice/trunk/main/solenv/gbuild/LinkTarget.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/LinkTarget.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/LinkTarget.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/LinkTarget.mk Wed Sep 26 05:21:59 2018
@@ -62,6 +62,23 @@ gb_Object__command_dep = \
 endif
 
 
+# AsmObject class
+
+gb_AsmObject_REPOS := $(gb_REPOS)
+
+gb_AsmObject_get_source = $(1)/$(2)$(gb_AsmObject_EXT)
+
+define gb_AsmObject__rules
+$$(call gb_AsmObject_get_target,%) : $$(call gb_AsmObject_get_source,$(1),%)
+       $$(call gb_AsmObject__command,$$@,$$*,$$<))
+
+endef
+
+$(foreach repo,$(gb_AsmObject_REPOS),$(eval $(call 
gb_AsmObject__rules,$(repo))))
+
+gb_AsmObject_AsmObject =
+
+
 # CObject class
 
 gb_CObject_REPOS := $(gb_REPOS)
@@ -213,6 +230,7 @@ gb_LinkTarget_DEFAULTDEFS := $(gb_GLOBAL
 $(call gb_LinkTarget_get_clean_target,%) :
        $(call gb_Output_announce,$*,$(false),LNK,4)
        RESPONSEFILE=$(call var2file,$(shell $(gb_MKTEMP)),200,\
+               $(foreach object,$(ASMOBJECTS),$(call 
gb_AsmObject_get_target,$(object))) \
                $(foreach object,$(COBJECTS),$(call 
gb_CObject_get_target,$(object))) \
                $(foreach object,$(COBJECTS),$(call 
gb_CObject_get_dep_target,$(object))) \
                $(foreach object,$(CXXOBJECTS),$(call 
gb_CxxObject_get_target,$(object))) \
@@ -325,6 +343,8 @@ $(call gb_LinkTarget_get_clean_target,$(
 $(call gb_LinkTarget_get_external_headers_target,$(1)) : SELF := $(1)
 $(call gb_LinkTarget_get_target,$(1)) : DLLTARGET := 
 $(call gb_LinkTarget_get_clean_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : ASMOBJECTS :=
+$(call gb_LinkTarget_get_clean_target,$(1)) \
 $(call gb_LinkTarget_get_target,$(1)) : COBJECTS := 
 $(call gb_LinkTarget_get_clean_target,$(1)) \
 $(call gb_LinkTarget_get_target,$(1)) : CXXOBJECTS := 
@@ -693,6 +713,14 @@ $$(foreach lib,$(2),$$(call gb_Library_g
 endef
 
 
+define gb_LinkTarget_add_asmobject
+$(call gb_LinkTarget_get_target,$(1)) : ASMOBJECTS += $(2)
+$(call gb_LinkTarget_get_clean_target,$(1)) : ASMOBJECTS += $(2)
+
+$(call gb_LinkTarget_get_target,$(1)) : $(call gb_AsmObject_get_target,$(2))
+
+endef
+
 define gb_LinkTarget_add_cobject
 $(call gb_LinkTarget_get_target,$(1)) : COBJECTS += $(2)
 $(call gb_LinkTarget_get_clean_target,$(1)) : COBJECTS += $(2)
@@ -761,6 +789,10 @@ define gb_LinkTarget_add_exception_objec
 $(call gb_LinkTarget_add_cxxobject,$(1),$(2),$(gb_LinkTarget_EXCEPTIONFLAGS))
 endef
 
+define gb_LinkTarget_add_asmbojects
+$(foreach obj,$(2),$(call gb_LinkTarget_add_asmobject,$(1),$(obj),$(3)))
+endef
+
 define gb_LinkTarget_add_cobjects
 $(foreach obj,$(2),$(call gb_LinkTarget_add_cobject,$(1),$(obj),$(3)))
 endef

Modified: openoffice/trunk/main/solenv/gbuild/TargetLocations.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/TargetLocations.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/TargetLocations.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/TargetLocations.mk Wed Sep 26 05:21:59 
2018
@@ -46,6 +46,7 @@ endef
 
 gb_AllLangResTarget_get_target = $(WORKDIR)/AllLangRes/$(1)
 gb_Ant_get_target = $(WORKDIR)/Ant/$(1).jar
+gb_AsmObject_get_target = $(WORKDIR)/AsmObject/$(1).o
 gb_BisonTarget_get_target = $(WORKDIR)/Bison/$(1)/$(2).cxx
 gb_CObject_get_target = $(WORKDIR)/CObject/$(1).o
 gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component

Modified: openoffice/trunk/main/solenv/gbuild/platform/freebsd.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/freebsd.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/freebsd.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/freebsd.mk Wed Sep 26 05:21:59 
2018
@@ -178,6 +178,25 @@ define gb_Helper_convert_native
 $(1)
 endef
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -MT $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 # $(call gb_CObject__command,object,relative-source,source,dep-file)

Modified: openoffice/trunk/main/solenv/gbuild/platform/linux.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/linux.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/linux.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/linux.mk Wed Sep 26 05:21:59 
2018
@@ -171,6 +171,25 @@ define gb_Helper_convert_native
 $(1)
 endef
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -MT $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 # $(call gb_CObject__command,object,relative-source,source,dep-file)

Modified: openoffice/trunk/main/solenv/gbuild/platform/macosx.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/macosx.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/macosx.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/macosx.mk Wed Sep 26 05:21:59 
2018
@@ -173,6 +173,25 @@ $(1)
 endef
 
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -MT $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 define gb_CObject__command

Modified: openoffice/trunk/main/solenv/gbuild/platform/os2.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/os2.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/os2.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/os2.mk Wed Sep 26 05:21:59 2018
@@ -159,6 +159,25 @@ $(1)
 endef
 
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -MT $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 # $(call gb_CObject__command,object,relative-source,source,dep-file)

Modified: openoffice/trunk/main/solenv/gbuild/platform/solaris.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/solaris.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/solaris.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/solaris.mk Wed Sep 26 05:21:59 
2018
@@ -145,6 +145,24 @@ $(1)
 endef
 
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 define gb_CObject__command

Modified: openoffice/trunk/main/solenv/gbuild/platform/windows.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/windows.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/windows.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/windows.mk Wed Sep 26 05:21:59 
2018
@@ -263,6 +263,26 @@ $(1)))))
 endef
 
 
+# AsmObject class
+
+gb_AsmObject_EXT := .asm
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs_native,\
+       mkdir -p $(dir $(1)) && \
+       unset INCLUDE && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               -FD$(PDBFILE) \
+               $(CFLAGS) \
+               -I$(dir $(3)) \
+               $(INCLUDE) \
+               -c $(3) \
+               -Fo$(1))
+endef
+
 # CObject class
 
 ifeq ($(gb_FULLDEPS),$(true))

Modified: openoffice/trunk/main/solenv/gbuild/platform/winmingw.mk
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/gbuild/platform/winmingw.mk?rev=1841998&r1=1841997&r2=1841998&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/gbuild/platform/winmingw.mk (original)
+++ openoffice/trunk/main/solenv/gbuild/platform/winmingw.mk Wed Sep 26 
05:21:59 2018
@@ -218,6 +218,25 @@ $(patsubst $(SRCDIR)%,$(gb_Helper_SRCDIR
 $(1)))))
 endef
 
+# AsmObject class
+
+gb_AsmObject_EXT := .s
+
+define gb_AsmObject__command
+$(call gb_Output_announce,$(2),$(true),ASM,3)
+$(call gb_Helper_abbreviate_dirs,\
+       mkdir -p $(dir $(1)) && \
+       $(gb_CC) \
+               $(DEFS) \
+               $(T_CFLAGS) \
+               $(CFLAGS) \
+               -c $(3) \
+               -o $(1) \
+               -MT $(1) \
+               -I$(dir $(3)) \
+               $(INCLUDE))
+endef
+
 # CObject class
 
 ifeq ($(gb_FULLDEPS),$(true))


Reply via email to