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

Fix build failures on AIX #19865

Closed
wants to merge 4 commits into from
Closed

Fix build failures on AIX #19865

wants to merge 4 commits into from

Conversation

t8m
Copy link
Member

@t8m t8m commented Dec 8, 2022

Fixes #18145

@t8m t8m added branch: master Merge to master branch approval: review pending This pull request needs review by a committer approval: otc review pending This pull request needs review by an OTC member triaged: bug The issue/pr is/fixes a bug severity: regression The issue/pr is a regression from previous released version branch: 3.1 Merge to openssl-3.1 tests: exempted The PR is exempt from requirements for testing labels Dec 8, 2022
@t8m t8m added this to the 3.1.0 milestone Dec 8, 2022
@paulidale paulidale removed the approval: otc review pending This pull request needs review by an OTC member label Dec 8, 2022
@github-actions github-actions bot added the severity: fips change The pull request changes FIPS provider sources label Dec 9, 2022
@t8m t8m changed the title Do not build P10-specific Chacha20 assembler on AIX Do not build P10-specific assembler on AIX Dec 9, 2022
@t8m
Copy link
Member Author

t8m commented Dec 9, 2022

@paulidale still OK?

@jon-oracle Does it fix the build for you now?

@jon-oracle
Copy link
Contributor

Tried another build, seems like the main compile is OK now. It's getting stuck later in the test code:

gcc  -Iinclude  -maix64 -pthread -O -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF test/timing_load_creds-bin-timing_load_creds.d.tmp -MT test/timing_load_creds-bin-timing_load_creds.o -c -o test/timing_load_creds-bin-timing_load_creds.o test/timing_load_creds.c
test/timing_load_creds.c: In function 'main':
test/timing_load_creds.c:198: error: expected ';' before ')' token
test/timing_load_creds.c:198: error: expected statement before ')' token
test/timing_load_creds.c:198: error: expected ';' before ')' token
test/timing_load_creds.c:198: error: expected statement before ')' token
test/timing_load_creds.c:199: error: expected ';' before ')' token
test/timing_load_creds.c:199: error: expected statement before ')' token
test/timing_load_creds.c:199: error: expected ';' before ')' token
test/timing_load_creds.c:199: error: expected statement before ')' token
test/timing_load_creds.c:200: error: expected ';' before ')' token
test/timing_load_creds.c:200: error: expected statement before ')' token
test/timing_load_creds.c:200: error: expected ';' before ')' token
test/timing_load_creds.c:200: error: expected statement before ')' token
make: The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 2.

Stop.

Could be the timersub macro. The compiler is notoriously picky with macros.

@t8m
Copy link
Member Author

t8m commented Dec 12, 2022

Tried another build, seems like the main compile is OK now. It's getting stuck later in the test code:

gcc  -Iinclude  -maix64 -pthread -O -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF test/timing_load_creds-bin-timing_load_creds.d.tmp -MT test/timing_load_creds-bin-timing_load_creds.o -c -o test/timing_load_creds-bin-timing_load_creds.o test/timing_load_creds.c
test/timing_load_creds.c: In function 'main':
test/timing_load_creds.c:198: error: expected ';' before ')' token
test/timing_load_creds.c:198: error: expected statement before ')' token
test/timing_load_creds.c:198: error: expected ';' before ')' token
test/timing_load_creds.c:198: error: expected statement before ')' token
test/timing_load_creds.c:199: error: expected ';' before ')' token
test/timing_load_creds.c:199: error: expected statement before ')' token
test/timing_load_creds.c:199: error: expected ';' before ')' token
test/timing_load_creds.c:199: error: expected statement before ')' token
test/timing_load_creds.c:200: error: expected ';' before ')' token
test/timing_load_creds.c:200: error: expected statement before ')' token
test/timing_load_creds.c:200: error: expected ';' before ')' token
test/timing_load_creds.c:200: error: expected statement before ')' token
make: The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 2.

Stop.

Could be the timersub macro. The compiler is notoriously picky with macros.

Could you please do some experiments to see what is needed to fix it? Otherwise we might want to just skip building this for AIX.

@t8m
Copy link
Member Author

t8m commented Dec 12, 2022

Hmm, I actually see what's wrong with it.

@t8m t8m changed the title Do not build P10-specific assembler on AIX Fix build failures on AIX Dec 12, 2022
@t8m t8m requested a review from paulidale December 12, 2022 10:50
@t8m
Copy link
Member Author

t8m commented Dec 12, 2022

@paulidale please reconfirm.

Ping for second review.

@jon-oracle
Copy link
Contributor

jon-oracle commented Dec 12, 2022

Compile is good now.

Edit: Tests all pass

@mattcaswell mattcaswell added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels Dec 13, 2022
@openssl-machine openssl-machine removed the approval: done This pull request has the required number of approvals label Dec 14, 2022
@openssl-machine
Copy link
Collaborator

This pull request is ready to merge

@openssl-machine openssl-machine added the approval: ready to merge The 24 hour grace period has passed, ready to merge label Dec 14, 2022
@t8m
Copy link
Member Author

t8m commented Dec 14, 2022

Merged to 3.1 and master branches. Thank you for the reviews and testing.

@t8m t8m closed this Dec 14, 2022
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Fixes #18145

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Fixes #18145

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)

(cherry picked from commit cdcc439)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)

(cherry picked from commit 5c92ac5)
openssl-machine pushed a commit that referenced this pull request Dec 14, 2022
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #19865)

(cherry picked from commit f1b1049)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approval: ready to merge The 24 hour grace period has passed, ready to merge branch: master Merge to master branch branch: 3.1 Merge to openssl-3.1 severity: fips change The pull request changes FIPS provider sources severity: regression The issue/pr is a regression from previous released version tests: exempted The PR is exempt from requirements for testing triaged: bug The issue/pr is/fixes a bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants