summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Android.mk8
-rw-r--r--crypto-sources.mk3
2 files changed, 11 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk
index fcb569a..3fbff63 100644
--- a/Android.mk
+++ b/Android.mk
@@ -45,6 +45,10 @@ LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := libcrypto_static
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
+# Windows and Macs both have problems with assembly files
+ifneq ($(HOST_OS),linux)
+LOCAL_CFLAGS += -DOPENSSL_NO_ASM
+endif
include $(LOCAL_PATH)/crypto-sources.mk
include $(BUILD_HOST_STATIC_LIBRARY)
@@ -56,6 +60,10 @@ LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include
LOCAL_MULTILIB := both
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
LOCAL_CFLAGS += -fvisibility=hidden -DBORINGSSL_SHARED_LIBRARY -DBORINGSSL_IMPLEMENTATION
+# Windows and Macs both have problems with assembly files
+ifneq ($(HOST_OS),linux)
+LOCAL_CFLAGS += -DOPENSSL_NO_ASM
+endif
include $(LOCAL_PATH)/crypto-sources.mk
include $(BUILD_HOST_SHARED_LIBRARY)
diff --git a/crypto-sources.mk b/crypto-sources.mk
index a575406..78194f2 100644
--- a/crypto-sources.mk
+++ b/crypto-sources.mk
@@ -2,8 +2,11 @@ LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/sources.mk
include $(LOCAL_PATH)/sources.mk
LOCAL_CFLAGS += -I$(LOCAL_PATH)/src/include -I$(LOCAL_PATH)/src/crypto -Wno-unused-parameter
+# Do not add in the architecture-specific files if we don't want to build assembly
+ifeq (,$(filter -DOPENSSL_NO_ASM,$(LOCAL_CFLAGS)))
LOCAL_SRC_FILES_x86 = $(linux_x86_sources)
LOCAL_SRC_FILES_x86_64 = $(linux_x86_64_sources)
LOCAL_SRC_FILES_arm = $(linux_arm_sources)
LOCAL_SRC_FILES_arm64 = $(linux_aarch64_sources)
+endif
LOCAL_SRC_FILES += $(crypto_sources)