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

openssl: add asm support for windows-x86_x64/windows-x86 #1679

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
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
60 changes: 13 additions & 47 deletions subprojects/packagefiles/openssl/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -125,53 +125,19 @@ if gas_or_nasm
asm = 'no-asm'
endif
elif is_windows
if is_x86
warning('x86 + windows combo does not support ASM yet, please contribute')
asm = 'no-asm'
# TODO: Port this for Windows and uncomment
# arch_subdir = 'VC-WIN32'
# asm = 'asm'
#'rules': [
# {
# 'rule_name': 'Assemble',
# 'extension': 'asm',
# 'inputs': [],
# 'outputs': [
# '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
# ],
# 'action': [
# 'nasm.exe',
# '-f win32',
# '-o', '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
# '<(RULE_INPUT_PATH)',
# ],
# }
#],
elif is_x86_64
warning('x86_64 + windows combo does not support ASM yet, please contribute')
asm = 'no-asm'
# TODO: Port this for Windows and uncomment
# arch_subdir = 'VC-WIN64A'
# asm = 'asm'
#'rules': [
# {
# 'rule_name': 'Assemble',
# 'extension': 'asm',
# 'inputs': [],
# 'outputs': [
# '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
# ],
# 'action': [
# 'nasm.exe',
# '-f win64',
# '-DNEAR',
# '-Ox',
# '-g',
# '-o', '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).obj',
# '<(RULE_INPUT_PATH)',
# ],
# }
#],
has_win_asm = add_languages('as', native: false, required: false)
if not has_win_asm
has_win_asm = add_languages(meson.version().version_compare('>=0.64') ? 'nasm' : '', native: false, required: false)
endif

if has_win_asm
if is_x86
arch_subdir = 'VC-WIN32'
elif is_x86_64
arch_subdir = 'VC-WIN64A'
else
asm = 'no-asm'
endif
Comment on lines +133 to +140
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should probably keep warning(…) if ASM support is disabled on x86 / x86_64.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure? Another arch/os combos doesn't have such warning

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know… There's no summary(…) call at the end, but there's a message, not a warning, in case of no-asm… ¯\(ツ)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If someone disables a feature via an option we don't need to warn them:

  • that the build system is incapable of offering that feature for their configuration
  • that the build system is capable, but they have turned it off (they know they turned it off)

If something is optional and auto detected at configure time, then is the right time to warn people that functionality which they might have assumed would be built, is not being built.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A summary might be apropos. Those don't abort when using --fatal-meson-warnings.

else
asm = 'no-asm'
endif
Expand Down
Loading