Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: add basic arm64 support #1028

Merged
merged 1 commit into from
Mar 2, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 12 additions & 3 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,8 @@ parser.add_option('--debug',
parser.add_option('--dest-cpu',
action='store',
dest='dest_cpu',
help='CPU architecture to build for. Valid values are: arm, ia32, x32, x64')
help='CPU architecture to build for. '
'Valid values are: arm, arm64, ia32, x32, x64')

parser.add_option('--dest-os',
action='store',
Expand Down Expand Up @@ -436,10 +437,11 @@ def host_arch_cc():
k = cc_macros()

matchup = {
'__x86_64__' : 'x64',
'__i386__' : 'ia32',
'__aarch64__' : 'arm64',
'__arm__' : 'arm',
'__i386__' : 'ia32',
'__mips__' : 'mips',
'__x86_64__' : 'x64',
}

rtn = 'ia32' # default
Expand Down Expand Up @@ -510,6 +512,13 @@ def configure_node(o):

if target_arch == 'arm':
configure_arm(o)
elif (target_arch == 'arm64' and
not options.shared_openssl and
not options.without_ssl)
# FIXME(bnoordhuis) It's not possible to build the bundled openssl due to
# deps/openssl/asm/arm-elf-gas/modes/ghash-armv4.S, which is 32 bits only.
warn('not building openssl, arm64 not yet supported')
options.without_ssl = True

if flavor in ('solaris', 'mac', 'linux', 'freebsd'):
use_dtrace = not options.without_dtrace
Expand Down
4 changes: 2 additions & 2 deletions deps/openssl/config/opensslconf.h
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@
* boundary. See crypto/rc4/rc4_enc.c for further details.
*/
# undef RC4_CHUNK
# if defined(_M_X64) || defined(__x86_64__)
# if defined(_M_X64) || defined(__aarch64__) || defined(__x86_64__)
# define RC4_CHUNK unsigned long long
# elif defined(__arm__)
# define RC4_CHUNK unsigned long
Expand Down Expand Up @@ -220,7 +220,7 @@
# undef THIRTY_TWO_BIT
# undef SIXTEEN_BIT
# undef EIGHT_BIT
# if defined(_M_X64) || defined(__x86_64__)
# if defined(_M_X64) || defined(__aarch64__) || defined(__x86_64__)
# if defined(_LP64)
# define SIXTY_FOUR_BIT_LONG
# else
Expand Down