Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7b913ce6 authored by Ying Wang's avatar Ying Wang
Browse files

Support .asm being compiled by yasm targeted for x86.

Change-Id: Icd6626a082facf920b0e49e2fbe8861e94400552
parent e564c0cb
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -744,6 +744,19 @@ endif
asm_objects := $(asm_objects_S) $(asm_objects_s)


# .asm for x86 needs to be compiled with yasm.
ifeq (x86,$($(my_prefix)$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH))
asm_sources_asm := $(filter %.asm,$(my_src_files))
ifneq ($(strip $(asm_sources_asm)),)
asm_objects_asm := $(addprefix $(intermediates)/,$(asm_sources_asm:.asm=.o))
$(asm_objects_asm): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.asm \
    $(LOCAL_ADDITIONAL_DEPENDENCIES)
	$(transform-asm-to-o)

asm_objects += $(asm_objects_asm)
endif
endif

####################################################
## Import includes
####################################################
+2 −0
Original line number Diff line number Diff line
@@ -367,6 +367,8 @@ BISON_PKGDATADIR := $(PWD)/external/bison/data
BISON := prebuilts/misc/$(BUILD_OS)-$(HOST_PREBUILT_ARCH)/bison/bison
YACC := $(BISON) -d

YASM := prebuilts/misc/$(BUILD_OS)-$(HOST_PREBUILT_ARCH)/yasm/yasm

DOXYGEN:= doxygen
AAPT := $(HOST_OUT_EXECUTABLES)/aapt$(HOST_EXECUTABLE_SUFFIX)
AIDL := $(HOST_OUT_EXECUTABLES)/aidl$(HOST_EXECUTABLE_SUFFIX)
+10 −0
Original line number Diff line number Diff line
@@ -1039,6 +1039,16 @@ $(transform-s-to-o-no-deps)
$(transform-d-to-p)
endef

# YASM compilation
define transform-asm-to-o
@mkdir -p $(dir $@)
$(hide) $(YASM) \
    $(addprefix -I , $(PRIVATE_C_INCLUDES)) \
    -f elf32 -m x86 \
    $(PRIVATE_ASFLAGS) \
    -o $@ $<
endef

###########################################################
## Commands for running gcc to compile an Objective-C file
## This should never happen for target builds but this