diff options
author | Theo Buehler <tb@openbsd.org> | 2025-04-12 15:02:41 +0200 |
---|---|---|
committer | Theo Buehler <tb@openbsd.org> | 2025-04-12 15:02:41 +0200 |
commit | 34480a7eba9b3af01bf5ccbd844dc749147c9341 (patch) | |
tree | ae7680622519077af36d2fa49696b8d120f35b69 | |
parent | f625098f8b64b917b239afd72d1317139bef1e3b (diff) | |
parent | 031c2f1722f9af10299de3d22ff3c1467d541241 (diff) | |
download | portable-34480a7eba9b3af01bf5ccbd844dc749147c9341.tar.gz portable-34480a7eba9b3af01bf5ccbd844dc749147c9341.tar.bz2 portable-34480a7eba9b3af01bf5ccbd844dc749147c9341.zip |
Land #1146 - Basic longarch64 support
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | configure.ac | 21 | ||||
-rw-r--r-- | crypto/CMakeLists.txt | 3 | ||||
-rw-r--r-- | crypto/Makefile.am | 7 | ||||
-rw-r--r-- | crypto/arch/loongarch64/crypto_arch.h | 21 | ||||
-rw-r--r-- | crypto/bn/arch/loongarch64/bn_arch.h | 23 | ||||
-rw-r--r-- | include/CMakeLists.txt | 2 | ||||
-rw-r--r-- | include/arch/loongarch64/opensslconf.h | 154 | ||||
-rw-r--r-- | include/openssl/Makefile.am.tpl | 3 | ||||
-rw-r--r-- | ssl/CMakeLists.txt | 2 | ||||
-rw-r--r-- | ssl/Makefile.am | 5 | ||||
-rw-r--r-- | tests/CMakeLists.txt | 2 | ||||
-rw-r--r-- | tests/Makefile.am | 4 |
13 files changed, 239 insertions, 10 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 437570b..3673922 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
@@ -389,6 +389,8 @@ elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64|amd64|AMD64)") | |||
389 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "(i[3-6]86|[xX]86)") | 389 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "(i[3-6]86|[xX]86)") |
390 | set(ENABLE_ASM false) | 390 | set(ENABLE_ASM false) |
391 | set(HOST_I386 true) | 391 | set(HOST_I386 true) |
392 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "loongarch64") | ||
393 | set(HOST_LOONGARCH64 true) | ||
392 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "mips64") | 394 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "mips64") |
393 | set(HOST_MIPS64 true) | 395 | set(HOST_MIPS64 true) |
394 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "mips") | 396 | elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "mips") |
diff --git a/configure.ac b/configure.ac index 864a4ad..7a88f27 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -86,16 +86,17 @@ AS_CASE([$host_cpu], | |||
86 | ) | 86 | ) |
87 | AM_CONDITIONAL([HOST_CPU_IS_INTEL], [test "x$HOSTARCH" = "xintel"]) | 87 | AM_CONDITIONAL([HOST_CPU_IS_INTEL], [test "x$HOSTARCH" = "xintel"]) |
88 | 88 | ||
89 | AM_CONDITIONAL([HOST_AARCH64], [test "$host_cpu" = "aarch64"]) | 89 | AM_CONDITIONAL([HOST_AARCH64], [test "$host_cpu" = "aarch64"]) |
90 | AM_CONDITIONAL([HOST_ARM], [test "$host_cpu" = "arm"]) | 90 | AM_CONDITIONAL([HOST_ARM], [test "$host_cpu" = "arm"]) |
91 | AM_CONDITIONAL([HOST_I386], [test "$host_cpu" = "i386"]) | 91 | AM_CONDITIONAL([HOST_I386], [test "$host_cpu" = "i386"]) |
92 | AM_CONDITIONAL([HOST_MIPS], [test "$host_cpu" = "mips"]) | 92 | AM_CONDITIONAL([HOST_LOONGARCH64], [test "$host_cpu" = "loongarch64"]) |
93 | AM_CONDITIONAL([HOST_MIPS64], [test "$host_cpu" = "mips64"]) | 93 | AM_CONDITIONAL([HOST_MIPS], [test "$host_cpu" = "mips"]) |
94 | AM_CONDITIONAL([HOST_POWERPC], [test "$host_cpu" = "powerpc"]) | 94 | AM_CONDITIONAL([HOST_MIPS64], [test "$host_cpu" = "mips64"]) |
95 | AM_CONDITIONAL([HOST_POWERPC64], [test "$host_cpu" = "ppc64"]) | 95 | AM_CONDITIONAL([HOST_POWERPC], [test "$host_cpu" = "powerpc"]) |
96 | AM_CONDITIONAL([HOST_RISCV64], [test "$host_cpu" = "riscv64"]) | 96 | AM_CONDITIONAL([HOST_POWERPC64], [test "$host_cpu" = "ppc64"]) |
97 | AM_CONDITIONAL([HOST_SPARC64], [test "$host_cpu" = "sparc64"]) | 97 | AM_CONDITIONAL([HOST_RISCV64], [test "$host_cpu" = "riscv64"]) |
98 | AM_CONDITIONAL([HOST_X86_64], [test "$host_cpu" = "x86_64"]) | 98 | AM_CONDITIONAL([HOST_SPARC64], [test "$host_cpu" = "sparc64"]) |
99 | AM_CONDITIONAL([HOST_X86_64], [test "$host_cpu" = "x86_64"]) | ||
99 | 100 | ||
100 | AC_MSG_CHECKING([if .gnu.warning accepts long strings]) | 101 | AC_MSG_CHECKING([if .gnu.warning accepts long strings]) |
101 | AC_LINK_IFELSE([AC_LANG_SOURCE([[ | 102 | AC_LINK_IFELSE([AC_LANG_SOURCE([[ |
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index e642b01..a714059 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt | |||
@@ -774,6 +774,9 @@ elseif(HOST_ARM) | |||
774 | elseif(HOST_I386) | 774 | elseif(HOST_I386) |
775 | target_include_directories(crypto_obj PRIVATE arch/i386/) | 775 | target_include_directories(crypto_obj PRIVATE arch/i386/) |
776 | target_include_directories(crypto_obj PRIVATE bn/arch/i386/) | 776 | target_include_directories(crypto_obj PRIVATE bn/arch/i386/) |
777 | elseif(HOST_LOONGARCH64) | ||
778 | target_include_directories(crypto_obj PRIVATE arch/loongarch64) | ||
779 | target_include_directories(crypto_obj PRIVATE bn/arch/loongarch64) | ||
777 | elseif(HOST_MIPS64) | 780 | elseif(HOST_MIPS64) |
778 | target_include_directories(crypto_obj PRIVATE arch/mips64) | 781 | target_include_directories(crypto_obj PRIVATE arch/mips64) |
779 | target_include_directories(crypto_obj PRIVATE bn/arch/mips64) | 782 | target_include_directories(crypto_obj PRIVATE bn/arch/mips64) |
diff --git a/crypto/Makefile.am b/crypto/Makefile.am index 438da8b..0952494 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am | |||
@@ -396,6 +396,13 @@ endif | |||
396 | noinst_HEADERS += arch/i386/crypto_arch.h | 396 | noinst_HEADERS += arch/i386/crypto_arch.h |
397 | noinst_HEADERS += bn/arch/i386/bn_arch.h | 397 | noinst_HEADERS += bn/arch/i386/bn_arch.h |
398 | 398 | ||
399 | if HOST_LOONGARCH64 | ||
400 | libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/arch/loongarch64/ | ||
401 | libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/loongarch64/ | ||
402 | endif | ||
403 | noinst_HEADERS += arch/loongarch64/crypto_arch.h | ||
404 | noinst_HEADERS += bn/arch/loongarch64/bn_arch.h | ||
405 | |||
399 | # XXX - do we still need this? | 406 | # XXX - do we still need this? |
400 | if HOST_MIPS | 407 | if HOST_MIPS |
401 | libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/mips/ | 408 | libcrypto_la_CPPFLAGS += -I$(top_srcdir)/crypto/bn/arch/mips/ |
diff --git a/crypto/arch/loongarch64/crypto_arch.h b/crypto/arch/loongarch64/crypto_arch.h new file mode 100644 index 0000000..a3dd98d --- /dev/null +++ b/crypto/arch/loongarch64/crypto_arch.h | |||
@@ -0,0 +1,21 @@ | |||
1 | /* $OpenBSD: crypto_arch.h,v 1.1 2024/08/11 13:02:39 jsing Exp $ */ | ||
2 | /* | ||
3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | ||
4 | * | ||
5 | * Permission to use, copy, modify, and distribute this software for any | ||
6 | * purpose with or without fee is hereby granted, provided that the above | ||
7 | * copyright notice and this permission notice appear in all copies. | ||
8 | * | ||
9 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
10 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
11 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
12 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
13 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
14 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
16 | */ | ||
17 | |||
18 | #ifndef HEADER_CRYPTO_ARCH_H | ||
19 | #define HEADER_CRYPTO_ARCH_H | ||
20 | |||
21 | #endif | ||
diff --git a/crypto/bn/arch/loongarch64/bn_arch.h b/crypto/bn/arch/loongarch64/bn_arch.h new file mode 100644 index 0000000..672ac12 --- /dev/null +++ b/crypto/bn/arch/loongarch64/bn_arch.h | |||
@@ -0,0 +1,23 @@ | |||
1 | /* $OpenBSD: bn_arch.h,v 1.7 2023/07/09 10:37:32 jsing Exp $ */ | ||
2 | /* | ||
3 | * Copyright (c) 2023 Joel Sing <jsing@openbsd.org> | ||
4 | * | ||
5 | * Permission to use, copy, modify, and distribute this software for any | ||
6 | * purpose with or without fee is hereby granted, provided that the above | ||
7 | * copyright notice and this permission notice appear in all copies. | ||
8 | * | ||
9 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
10 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
11 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
12 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
13 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
14 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
16 | */ | ||
17 | |||
18 | #include <openssl/bn.h> | ||
19 | |||
20 | #ifndef HEADER_BN_ARCH_H | ||
21 | #define HEADER_BN_ARCH_H | ||
22 | |||
23 | #endif | ||
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt index 59f5b62..11ab7c2 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt | |||
@@ -24,6 +24,8 @@ elseif(HOST_ARM) | |||
24 | file(READ arch/arm/opensslconf.h OPENSSLCONF) | 24 | file(READ arch/arm/opensslconf.h OPENSSLCONF) |
25 | elseif(HOST_I386) | 25 | elseif(HOST_I386) |
26 | file(READ arch/i386/opensslconf.h OPENSSLCONF) | 26 | file(READ arch/i386/opensslconf.h OPENSSLCONF) |
27 | elseif(HOST_LOONGARCH64) | ||
28 | file(READ arch/loongarch64/opensslconf.h OPENSSLCONF) | ||
27 | elseif(HOST_MIPS) | 29 | elseif(HOST_MIPS) |
28 | file(READ arch/mips/opensslconf.h OPENSSLCONF) | 30 | file(READ arch/mips/opensslconf.h OPENSSLCONF) |
29 | elseif(HOST_MIPS64) | 31 | elseif(HOST_MIPS64) |
diff --git a/include/arch/loongarch64/opensslconf.h b/include/arch/loongarch64/opensslconf.h new file mode 100644 index 0000000..731b06a --- /dev/null +++ b/include/arch/loongarch64/opensslconf.h | |||
@@ -0,0 +1,154 @@ | |||
1 | #include <openssl/opensslfeatures.h> | ||
2 | /* crypto/opensslconf.h.in */ | ||
3 | |||
4 | #if defined(HEADER_CRYPTO_LOCAL_H) && !defined(OPENSSLDIR) | ||
5 | #define OPENSSLDIR "/etc/ssl" | ||
6 | #endif | ||
7 | |||
8 | #undef OPENSSL_EXPORT_VAR_AS_FUNCTION | ||
9 | |||
10 | #ifndef OPENSSL_FILE | ||
11 | #ifdef OPENSSL_NO_FILENAMES | ||
12 | #define OPENSSL_FILE "" | ||
13 | #define OPENSSL_LINE 0 | ||
14 | #else | ||
15 | #define OPENSSL_FILE __FILE__ | ||
16 | #define OPENSSL_LINE __LINE__ | ||
17 | #endif | ||
18 | #endif | ||
19 | |||
20 | #if defined(HEADER_IDEA_H) && !defined(IDEA_INT) | ||
21 | #define IDEA_INT unsigned int | ||
22 | #endif | ||
23 | |||
24 | #if defined(HEADER_MD2_H) && !defined(MD2_INT) | ||
25 | #define MD2_INT unsigned int | ||
26 | #endif | ||
27 | |||
28 | #if defined(HEADER_RC2_H) && !defined(RC2_INT) | ||
29 | /* I need to put in a mod for the alpha - eay */ | ||
30 | #define RC2_INT unsigned int | ||
31 | #endif | ||
32 | |||
33 | #if defined(HEADER_RC4_H) | ||
34 | #if !defined(RC4_INT) | ||
35 | /* using int types make the structure larger but make the code faster | ||
36 | * on most boxes I have tested - up to %20 faster. */ | ||
37 | /* | ||
38 | * I don't know what does "most" mean, but declaring "int" is a must on: | ||
39 | * - Intel P6 because partial register stalls are very expensive; | ||
40 | * - elder Alpha because it lacks byte load/store instructions; | ||
41 | */ | ||
42 | #define RC4_INT unsigned int | ||
43 | #endif | ||
44 | #if !defined(RC4_CHUNK) | ||
45 | /* | ||
46 | * This enables code handling data aligned at natural CPU word | ||
47 | * boundary. See crypto/rc4/rc4_enc.c for further details. | ||
48 | */ | ||
49 | #define RC4_CHUNK unsigned long | ||
50 | #endif | ||
51 | #endif | ||
52 | |||
53 | #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) | ||
54 | /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a | ||
55 | * %20 speed up (longs are 8 bytes, int's are 4). */ | ||
56 | #ifndef DES_LONG | ||
57 | #define DES_LONG unsigned int | ||
58 | #endif | ||
59 | #endif | ||
60 | |||
61 | #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) | ||
62 | #define CONFIG_HEADER_BN_H | ||
63 | #undef BN_LLONG | ||
64 | |||
65 | /* Should we define BN_DIV2W here? */ | ||
66 | |||
67 | /* Only one for the following should be defined */ | ||
68 | /* The prime number generation stuff may not work when | ||
69 | * EIGHT_BIT but I don't care since I've only used this mode | ||
70 | * for debugging the bignum libraries */ | ||
71 | #define SIXTY_FOUR_BIT_LONG | ||
72 | #undef SIXTY_FOUR_BIT | ||
73 | #undef THIRTY_TWO_BIT | ||
74 | #undef SIXTEEN_BIT | ||
75 | #undef EIGHT_BIT | ||
76 | #endif | ||
77 | |||
78 | #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) | ||
79 | #define CONFIG_HEADER_BF_LOCL_H | ||
80 | #undef BF_PTR | ||
81 | #endif /* HEADER_BF_LOCL_H */ | ||
82 | |||
83 | #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) | ||
84 | #define CONFIG_HEADER_DES_LOCL_H | ||
85 | #ifndef DES_DEFAULT_OPTIONS | ||
86 | /* the following is tweaked from a config script, that is why it is a | ||
87 | * protected undef/define */ | ||
88 | #ifndef DES_PTR | ||
89 | #undef DES_PTR | ||
90 | #endif | ||
91 | |||
92 | /* This helps C compiler generate the correct code for multiple functional | ||
93 | * units. It reduces register dependencies at the expense of 2 more | ||
94 | * registers */ | ||
95 | #ifndef DES_RISC1 | ||
96 | #undef DES_RISC1 | ||
97 | #endif | ||
98 | |||
99 | #ifndef DES_RISC2 | ||
100 | #undef DES_RISC2 | ||
101 | #endif | ||
102 | |||
103 | #if defined(DES_RISC1) && defined(DES_RISC2) | ||
104 | YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! | ||
105 | #endif | ||
106 | |||
107 | /* Unroll the inner loop, this sometimes helps, sometimes hinders. | ||
108 | * Very much CPU dependent */ | ||
109 | #ifndef DES_UNROLL | ||
110 | #define DES_UNROLL | ||
111 | #endif | ||
112 | |||
113 | /* These default values were supplied by | ||
114 | * Peter Gutman <pgut001@cs.auckland.ac.nz> | ||
115 | * They are only used if nothing else has been defined */ | ||
116 | #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) | ||
117 | /* Special defines which change the way the code is built depending on the | ||
118 | CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find | ||
119 | even newer MIPS CPU's, but at the moment one size fits all for | ||
120 | optimization options. Older Sparc's work better with only UNROLL, but | ||
121 | there's no way to tell at compile time what it is you're running on */ | ||
122 | |||
123 | #if defined( sun ) /* Newer Sparc's */ | ||
124 | # define DES_PTR | ||
125 | # define DES_RISC1 | ||
126 | # define DES_UNROLL | ||
127 | #elif defined( __ultrix ) /* Older MIPS */ | ||
128 | # define DES_PTR | ||
129 | # define DES_RISC2 | ||
130 | # define DES_UNROLL | ||
131 | #elif defined( __osf1__ ) /* Alpha */ | ||
132 | # define DES_PTR | ||
133 | # define DES_RISC2 | ||
134 | #elif defined ( _AIX ) /* RS6000 */ | ||
135 | /* Unknown */ | ||
136 | #elif defined( __hpux ) /* HP-PA */ | ||
137 | /* Unknown */ | ||
138 | #elif defined( __aux ) /* 68K */ | ||
139 | /* Unknown */ | ||
140 | #elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ | ||
141 | # define DES_UNROLL | ||
142 | #elif defined( __sgi ) /* Newer MIPS */ | ||
143 | # define DES_PTR | ||
144 | # define DES_RISC2 | ||
145 | # define DES_UNROLL | ||
146 | #elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ | ||
147 | # define DES_PTR | ||
148 | # define DES_RISC1 | ||
149 | # define DES_UNROLL | ||
150 | #endif /* Systems-specific speed defines */ | ||
151 | #endif | ||
152 | |||
153 | #endif /* DES_DEFAULT_OPTIONS */ | ||
154 | #endif /* HEADER_DES_LOCL_H */ | ||
diff --git a/include/openssl/Makefile.am.tpl b/include/openssl/Makefile.am.tpl index 303d0b9..4bbbd60 100644 --- a/include/openssl/Makefile.am.tpl +++ b/include/openssl/Makefile.am.tpl | |||
@@ -17,6 +17,9 @@ endif | |||
17 | if HOST_I386 | 17 | if HOST_I386 |
18 | -cp $(top_srcdir)/include/arch/i386/opensslconf.h opensslconf.h | 18 | -cp $(top_srcdir)/include/arch/i386/opensslconf.h opensslconf.h |
19 | endif | 19 | endif |
20 | if HOST_LOONGARCH64 | ||
21 | -cp $(top_srcdir)/include/arch/loongarch64/opensslconf.h opensslconf.h | ||
22 | endif | ||
20 | if HOST_MIPS | 23 | if HOST_MIPS |
21 | -cp $(top_srcdir)/include/arch/mips/opensslconf.h opensslconf.h | 24 | -cp $(top_srcdir)/include/arch/mips/opensslconf.h opensslconf.h |
22 | endif | 25 | endif |
diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt index bdcfbb2..5baa5bc 100644 --- a/ssl/CMakeLists.txt +++ b/ssl/CMakeLists.txt | |||
@@ -117,6 +117,8 @@ elseif(HOST_ARM) | |||
117 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/arm/) | 117 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/arm/) |
118 | elseif(HOST_I386) | 118 | elseif(HOST_I386) |
119 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/i386/) | 119 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/i386/) |
120 | elseif(HOST_LOONGARCH64) | ||
121 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/loongarch64) | ||
120 | elseif(HOST_MIPS64) | 122 | elseif(HOST_MIPS64) |
121 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/mips64) | 123 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/mips64) |
122 | elseif(HOST_MIPS) | 124 | elseif(HOST_MIPS) |
diff --git a/ssl/Makefile.am b/ssl/Makefile.am index f9a66a3..8beb65a 100644 --- a/ssl/Makefile.am +++ b/ssl/Makefile.am | |||
@@ -131,6 +131,11 @@ libssl_la_CPPFLAGS += -I$(top_srcdir)/crypto/arch/i386/ | |||
131 | endif | 131 | endif |
132 | noinst_HEADERS += $(top_srcdir)/crypto/arch/i386/crypto_arch.h | 132 | noinst_HEADERS += $(top_srcdir)/crypto/arch/i386/crypto_arch.h |
133 | 133 | ||
134 | if HOST_LOONGARCH64 | ||
135 | libssl_la_CPPFLAGS += -I$(top_srcdir)/crypto/arch/loongarch64/ | ||
136 | endif | ||
137 | noinst_HEADERS += $(top_srcdir)/crypto/arch/loongarch64/crypto_arch.h | ||
138 | |||
134 | # XXX - do we still need this? | 139 | # XXX - do we still need this? |
135 | if HOST_MIPS | 140 | if HOST_MIPS |
136 | endif | 141 | endif |
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 8d6fa9d..f38486c 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt | |||
@@ -30,6 +30,8 @@ elseif(HOST_I386) | |||
30 | include_directories(../crypto/arch/i386/) | 30 | include_directories(../crypto/arch/i386/) |
31 | elseif(HOST_MIPS64) | 31 | elseif(HOST_MIPS64) |
32 | include_directories(../crypto/arch/mips64) | 32 | include_directories(../crypto/arch/mips64) |
33 | elseif(HOST_LOONGARCH64) | ||
34 | include_directories(../crypto/arch/loongarch64) | ||
33 | elseif(HOST_MIPS) | 35 | elseif(HOST_MIPS) |
34 | # XXX - can this go away? the directory doesn't exist... | 36 | # XXX - can this go away? the directory doesn't exist... |
35 | elseif(HOST_POWERPC) | 37 | elseif(HOST_POWERPC) |
diff --git a/tests/Makefile.am b/tests/Makefile.am index 8153fc9..217f445 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am | |||
@@ -36,6 +36,10 @@ if HOST_I386 | |||
36 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/i386/ | 36 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/i386/ |
37 | endif | 37 | endif |
38 | 38 | ||
39 | if HOST_LOONGARCH64 | ||
40 | AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/loongarch64/ | ||
41 | endif | ||
42 | |||
39 | # XXX - do we still need this? | 43 | # XXX - do we still need this? |
40 | if HOST_MIPS | 44 | if HOST_MIPS |
41 | endif | 45 | endif |