diff options
author | Kenny Root <kroot@google.com> | 2015-01-16 19:01:11 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-01-16 19:01:11 +0000 |
commit | 9f360dc836a27d1f2da22042cb2511d237e99fcd (patch) | |
tree | 71dc1f3f0c0710bb4dd723cc0285490ae0cb5063 | |
parent | 21b86b154c3cbb88bca801b07e93db4fc8face8e (diff) | |
parent | decb19d2ac2fdad6c7f18e920073467c751b616c (diff) | |
download | openssl-9f360dc836a27d1f2da22042cb2511d237e99fcd.tar.gz |
am decb19d2: Merge "[MIPS] Add mips64 and mips r6 targets."
* commit 'decb19d2ac2fdad6c7f18e920073467c751b616c':
[MIPS] Add mips64 and mips r6 targets.
-rw-r--r-- | Apps-config-host.mk | 22 | ||||
-rw-r--r-- | Apps-config-target.mk | 26 | ||||
-rw-r--r-- | Crypto-config-host.mk | 24 | ||||
-rw-r--r-- | Crypto-config-target.mk | 28 | ||||
-rw-r--r-- | Crypto-config-trusty.mk | 26 | ||||
-rw-r--r-- | Ssl-config-host.mk | 22 | ||||
-rw-r--r-- | Ssl-config-target.mk | 26 | ||||
-rwxr-xr-x | import_openssl.sh | 18 | ||||
-rw-r--r-- | openssl.config | 24 |
9 files changed, 214 insertions, 2 deletions
diff --git a/Apps-config-host.mk b/Apps-config-host.mk index 3778f7b95f..baf5a6a1cd 100644 --- a/Apps-config-host.mk +++ b/Apps-config-host.mk @@ -114,6 +114,28 @@ mips_src_files := mips_exclude_files := +mips64_clang_asflags := + +mips64_cflags := + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := + +mips32r6_src_files := + +mips32r6_exclude_files := + + +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) $(local_c_includes) diff --git a/Apps-config-target.mk b/Apps-config-target.mk index 3f3aefd635..f2bb032d3a 100644 --- a/Apps-config-target.mk +++ b/Apps-config-target.mk @@ -114,6 +114,28 @@ mips_src_files := mips_exclude_files := +mips64_clang_asflags := + +mips64_cflags := + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := + +mips32r6_src_files := + +mips32r6_exclude_files := + + +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) @@ -137,3 +159,7 @@ LOCAL_CLANG_ASFLAGS_x86_64 += $(x86_64_clang_asflags) LOCAL_SRC_FILES_mips += $(filter-out $(mips_exclude_files),$(common_src_files) $(mips_src_files)) LOCAL_CFLAGS_mips += $(mips_cflags) LOCAL_CLANG_ASFLAGS_mips += $(mips_clang_asflags) + +LOCAL_SRC_FILES_mips64 += $(filter-out $(mips64_exclude_files),$(common_src_files) $(mips64_src_files)) +LOCAL_CFLAGS_mips64 += $(mips64_cflags) +LOCAL_CLANG_ASFLAGS_mips64 += $(mips64_clang_asflags) diff --git a/Crypto-config-host.mk b/Crypto-config-host.mk index 7207c23dc1..6cd5c0b682 100644 --- a/Crypto-config-host.mk +++ b/Crypto-config-host.mk @@ -709,12 +709,36 @@ mips_exclude_files := \ crypto/aes/aes_core.c \ crypto/bn/bn_asm.c \ +mips64_clang_asflags := + +mips64_cflags := \ + -DOPENSSL_NO_ASM \ + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := \ + -DOPENSSL_NO_ASM \ + +mips32r6_src_files := + +mips32r6_exclude_files := + # "Temporary" hack until this can be fixed in openssl.config x86_64_cflags += -DRC4_INT="unsigned int" LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif + LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) $(local_c_includes) diff --git a/Crypto-config-target.mk b/Crypto-config-target.mk index a4bf069a57..7fb86f5fd4 100644 --- a/Crypto-config-target.mk +++ b/Crypto-config-target.mk @@ -709,12 +709,36 @@ mips_exclude_files := \ crypto/aes/aes_core.c \ crypto/bn/bn_asm.c \ +mips64_clang_asflags := + +mips64_cflags := \ + -DOPENSSL_NO_ASM \ + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := \ + -DOPENSSL_NO_ASM \ + +mips32r6_src_files := + +mips32r6_exclude_files := + # "Temporary" hack until this can be fixed in openssl.config x86_64_cflags += -DRC4_INT="unsigned int" LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif + LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) @@ -737,3 +761,7 @@ LOCAL_CLANG_ASFLAGS_x86_64 += $(x86_64_clang_asflags) LOCAL_SRC_FILES_mips += $(filter-out $(mips_exclude_files),$(common_src_files) $(mips_src_files)) LOCAL_CFLAGS_mips += $(mips_cflags) LOCAL_CLANG_ASFLAGS_mips += $(mips_clang_asflags) + +LOCAL_SRC_FILES_mips64 += $(filter-out $(mips64_exclude_files),$(common_src_files) $(mips64_src_files)) +LOCAL_CFLAGS_mips64 += $(mips64_cflags) +LOCAL_CLANG_ASFLAGS_mips64 += $(mips64_clang_asflags) diff --git a/Crypto-config-trusty.mk b/Crypto-config-trusty.mk index 05ec1df96d..cc22723ba0 100644 --- a/Crypto-config-trusty.mk +++ b/Crypto-config-trusty.mk @@ -253,9 +253,31 @@ mips_src_files := mips_exclude_files := +mips64_clang_asflags := + +mips64_cflags := + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := + +mips32r6_src_files := + +mips32r6_exclude_files := + LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif + LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) @@ -278,3 +300,7 @@ LOCAL_CLANG_ASFLAGS_x86_64 += $(x86_64_clang_asflags) LOCAL_SRC_FILES_mips += $(filter-out $(mips_exclude_files),$(common_src_files) $(mips_src_files)) LOCAL_CFLAGS_mips += $(mips_cflags) LOCAL_CLANG_ASFLAGS_mips += $(mips_clang_asflags) + +LOCAL_SRC_FILES_mips64 += $(filter-out $(mips64_exclude_files),$(common_src_files) $(mips64_src_files)) +LOCAL_CFLAGS_mips64 += $(mips64_cflags) +LOCAL_CLANG_ASFLAGS_mips64 += $(mips64_clang_asflags) diff --git a/Ssl-config-host.mk b/Ssl-config-host.mk index ac1b1bba8e..8f3bdce5a1 100644 --- a/Ssl-config-host.mk +++ b/Ssl-config-host.mk @@ -109,9 +109,31 @@ mips_src_files := mips_exclude_files := +mips64_clang_asflags := + +mips64_cflags := + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := + +mips32r6_src_files := + +mips32r6_exclude_files := + LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif + LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) $(local_c_includes) diff --git a/Ssl-config-target.mk b/Ssl-config-target.mk index c3c37492f6..30a2621dcd 100644 --- a/Ssl-config-target.mk +++ b/Ssl-config-target.mk @@ -109,9 +109,31 @@ mips_src_files := mips_exclude_files := +mips64_clang_asflags := + +mips64_cflags := + +mips64_src_files := + +mips64_exclude_files := + +mips32r6_clang_asflags := + +mips32r6_cflags := + +mips32r6_src_files := + +mips32r6_exclude_files := + LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include +ifdef ARCH_MIPS_REV6 +mips_cflags := $(mips32r6_cflags) +mips_src_files := $(mips32r6_src_files) +mips_exclude_files := $(mips32r6_exclude_files) +endif + LOCAL_CFLAGS += $(common_cflags) LOCAL_C_INCLUDES += $(common_c_includes) @@ -134,3 +156,7 @@ LOCAL_CLANG_ASFLAGS_x86_64 += $(x86_64_clang_asflags) LOCAL_SRC_FILES_mips += $(filter-out $(mips_exclude_files),$(common_src_files) $(mips_src_files)) LOCAL_CFLAGS_mips += $(mips_cflags) LOCAL_CLANG_ASFLAGS_mips += $(mips_clang_asflags) + +LOCAL_SRC_FILES_mips64 += $(filter-out $(mips64_exclude_files),$(common_src_files) $(mips64_src_files)) +LOCAL_CFLAGS_mips64 += $(mips64_cflags) +LOCAL_CLANG_ASFLAGS_mips64 += $(mips64_clang_asflags) diff --git a/import_openssl.sh b/import_openssl.sh index c60408899a..b20c25e0c8 100755 --- a/import_openssl.sh +++ b/import_openssl.sh @@ -149,6 +149,8 @@ function gen_asm_mips () { CC=true $PERL_EXE "$1" o32 > "$OUT" } +# TODO: gen_asm_mips64 + function gen_asm_x86 () { local OUT OUT=$(default_asm_file "$@") @@ -409,7 +411,8 @@ print_defines_in_mk() { function generate_config_mk() { declare -r output="$1" declare -r prefix="$2" - declare -r all_archs="arm arm64 x86 x86_64 mips" + declare -r all_archs="arm arm64 x86 x86_64 mips mips64" + declare -r variant_archs="mips32r6" echo "Generating $(basename $output)" ( @@ -441,7 +444,7 @@ LOCAL_ADDITIONAL_DEPENDENCIES += \$(LOCAL_PATH)/$(basename $output) common_includes=$(var_sorted_value OPENSSL_${prefix}_INCLUDES) print_vardef_with_prefix_in_mk common_c_includes external/openssl/ $common_includes - for arch in $all_archs; do + for arch in $all_archs $variant_archs; do arch_clang_asflags=$(var_sorted_value OPENSSL_${prefix}_CLANG_ASFLAGS_${arch}) print_vardef_in_mk ${arch}_clang_asflags $arch_clang_asflags @@ -467,6 +470,13 @@ x86_64_cflags += -DRC4_INT=\"unsigned int\"" LOCAL_EXPORT_C_INCLUDE_DIRS := \$(LOCAL_PATH)/include" fi + echo " +ifdef ARCH_MIPS_REV6 +mips_cflags := \$(mips32r6_cflags) +mips_src_files := \$(mips32r6_src_files) +mips_exclude_files := \$(mips32r6_exclude_files) +endif" + if [ $3 == "target" ]; then echo " LOCAL_CFLAGS += \$(common_cflags) @@ -550,6 +560,10 @@ function import() { gen_asm_mips crypto/sha/asm/sha1-mips.pl gen_asm_mips crypto/sha/asm/sha512-mips.pl crypto/sha/asm/sha256-mips.S + # TODO: Generate mips32r6 asm + + # TODO: Generate mips64 asm + # Generate x86 asm gen_asm_x86 crypto/x86cpuid.pl gen_asm_x86 crypto/aes/asm/aes-586.pl diff --git a/openssl.config b/openssl.config index 9edd51e2cb..c8b3dbde01 100644 --- a/openssl.config +++ b/openssl.config @@ -275,6 +275,16 @@ SHA1_ASM \ SHA256_ASM \ " +# TODO: generate *-mips32r6.S files +OPENSSL_CRYPTO_DEFINES_mips32r6="\ +OPENSSL_NO_ASM \ +" + +# TODO: generate *-mips64.S files +OPENSSL_CRYPTO_DEFINES_mips64="\ +OPENSSL_NO_ASM \ +" + OPENSSL_CRYPTO_DEFINES_x86="\ AES_ASM \ DES_PTR \ @@ -884,6 +894,20 @@ crypto/aes/aes_core.c \ crypto/bn/bn_asm.c \ " +# TODO: generate *-mips32r6.S files +OPENSSL_CRYPTO_SOURCES_mips32r6="\ +" + +OPENSSL_CRYPTO_SOURCES_EXCLUDES_mips32r6="\ +" + +# TODO: generate *-mips64.S files +OPENSSL_CRYPTO_SOURCES_mips64="\ +" + +OPENSSL_CRYPTO_SOURCES_EXCLUDES_mips64="\ +" + OPENSSL_CRYPTO_SOURCES_x86="\ crypto/aes/asm/aes-586.S \ crypto/aes/asm/aesni-x86.S \ |