blob: cebeb2c0f3692d9fc64dcf65720a1b8d8643198d [file] [log] [blame]
Adam Langleyd9e397b2015-01-22 14:27:53 -08001# Note that some host libraries have the same module name as the target
2# libraries. This is currently needed to build, for example, adb. But it's
3# probably something that should be changed.
4
5LOCAL_PATH := $(call my-dir)
6
7## libcrypto
8
9# Target static library
10include $(CLEAR_VARS)
11LOCAL_MODULE_TAGS := optional
12LOCAL_MODULE := libcrypto_static
13LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
14LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
Adam Langley07f07a82015-02-13 14:47:24 -080015LOCAL_SDK_VERSION := 9
Adam Langleyaae4cd22015-05-12 19:17:37 -070016# sha256-armv4.S does not compile with clang.
17LOCAL_CLANG_ASFLAGS_arm += -no-integrated-as
Adam Langleyeef60be2015-04-18 19:07:35 -070018ifeq ($(TARGET_ARCH),arm64)
19ifeq ($(USE_CLANG_PLATFORM_BUILD),true)
20LOCAL_ASFLAGS += -march=armv8-a+crypto
21endif
22endif
Adam Langleyd9e397b2015-01-22 14:27:53 -080023include $(LOCAL_PATH)/crypto-sources.mk
24include $(BUILD_STATIC_LIBRARY)
25
26# Target shared library
27include $(CLEAR_VARS)
28LOCAL_MODULE_TAGS := optional
29LOCAL_MODULE := libcrypto
30LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
31LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
32LOCAL_CFLAGS += -fvisibility=hidden -DBORINGSSL_SHARED_LIBRARY -DBORINGSSL_IMPLEMENTATION
Adam Langley07f07a82015-02-13 14:47:24 -080033LOCAL_SDK_VERSION := 9
Adam Langleyaae4cd22015-05-12 19:17:37 -070034# sha256-armv4.S does not compile with clang.
35LOCAL_CLANG_ASFLAGS_arm += -no-integrated-as
Adam Langleyeef60be2015-04-18 19:07:35 -070036ifeq ($(TARGET_ARCH),arm64)
37ifeq ($(USE_CLANG_PLATFORM_BUILD),true)
38LOCAL_ASFLAGS += -march=armv8-a+crypto
39endif
40endif
Adam Langleyd9e397b2015-01-22 14:27:53 -080041include $(LOCAL_PATH)/crypto-sources.mk
42include $(BUILD_SHARED_LIBRARY)
43
44# Target static tool
45include $(CLEAR_VARS)
46LOCAL_CFLAGS += -Wall -Werror -std=c++0x
47LOCAL_CPP_EXTENSION := cc
48LOCAL_MODULE := bssl
49LOCAL_MODULE_TAGS := optional
50LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/sources.mk
51LOCAL_SHARED_LIBRARIES=libcrypto libssl
52include $(LOCAL_PATH)/sources.mk
53LOCAL_SRC_FILES = $(tool_sources)
54include $(BUILD_EXECUTABLE)
55
56# Host static library
57include $(CLEAR_VARS)
58LOCAL_MODULE_TAGS := optional
59LOCAL_MODULE := libcrypto_static
60LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
61LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
Kenny Root7086cfc2015-03-04 16:00:41 -080062# Windows and Macs both have problems with assembly files
63ifneq ($(HOST_OS),linux)
64LOCAL_CFLAGS += -DOPENSSL_NO_ASM
65endif
Adam Langleyd9e397b2015-01-22 14:27:53 -080066include $(LOCAL_PATH)/crypto-sources.mk
67include $(BUILD_HOST_STATIC_LIBRARY)
68
69# Host shared library
70include $(CLEAR_VARS)
71LOCAL_MODULE_TAGS := optional
72LOCAL_MODULE := libcrypto-host
73LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include
74LOCAL_MULTILIB := both
75LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/crypto-sources.mk
76LOCAL_CFLAGS += -fvisibility=hidden -DBORINGSSL_SHARED_LIBRARY -DBORINGSSL_IMPLEMENTATION
Kenny Root7086cfc2015-03-04 16:00:41 -080077# Windows and Macs both have problems with assembly files
78ifneq ($(HOST_OS),linux)
79LOCAL_CFLAGS += -DOPENSSL_NO_ASM
80endif
Adam Langleyd9e397b2015-01-22 14:27:53 -080081include $(LOCAL_PATH)/crypto-sources.mk
82include $(BUILD_HOST_SHARED_LIBRARY)
83
84
85## libssl
86
87# Target static library
88include $(CLEAR_VARS)
89LOCAL_MODULE_TAGS := optional
90LOCAL_MODULE := libssl_static
91LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
92LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/ssl-sources.mk
Adam Langley07f07a82015-02-13 14:47:24 -080093LOCAL_SDK_VERSION := 9
Adam Langleyd9e397b2015-01-22 14:27:53 -080094include $(LOCAL_PATH)/ssl-sources.mk
95include $(BUILD_STATIC_LIBRARY)
96
97# Target shared library
98include $(CLEAR_VARS)
99LOCAL_MODULE_TAGS := optional
100LOCAL_MODULE := libssl
101LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
102LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/ssl-sources.mk
103LOCAL_CFLAGS += -fvisibility=hidden -DBORINGSSL_SHARED_LIBRARY -DBORINGSSL_IMPLEMENTATION
104LOCAL_SHARED_LIBRARIES=libcrypto
Adam Langley07f07a82015-02-13 14:47:24 -0800105LOCAL_SDK_VERSION := 9
Adam Langleyd9e397b2015-01-22 14:27:53 -0800106include $(LOCAL_PATH)/ssl-sources.mk
107include $(BUILD_SHARED_LIBRARY)
108
109# Host static library
110include $(CLEAR_VARS)
111LOCAL_MODULE_TAGS := optional
112LOCAL_MODULE := libssl_static-host
113LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
114LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/ssl-sources.mk
115include $(LOCAL_PATH)/ssl-sources.mk
116include $(BUILD_HOST_STATIC_LIBRARY)
117
118# Host shared library
119include $(CLEAR_VARS)
120LOCAL_MODULE_TAGS := optional
121LOCAL_MODULE := libssl-host
122LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/src/include
123LOCAL_MULTILIB := both
124LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk $(LOCAL_PATH)/ssl-sources.mk
125LOCAL_CFLAGS += -fvisibility=hidden -DBORINGSSL_SHARED_LIBRARY -DBORINGSSL_IMPLEMENTATION
126LOCAL_SHARED_LIBRARIES += libcrypto-host
127include $(LOCAL_PATH)/ssl-sources.mk
128include $(BUILD_HOST_SHARED_LIBRARY)