-
Notifications
You must be signed in to change notification settings - Fork 366
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
Tpm2-tss build with VS2019 + Windows ARM64 #2182
base: master
Are you sure you want to change the base?
Tpm2-tss build with VS2019 + Windows ARM64 #2182
Conversation
First of all: Our .gitignore file is autogenerated. We don't want to add it just for Windows env. IMHO windows should be able to know which files it generates by itself quite nicely without need for a .gitignore, or am I wrong ? Then: Are you still working on this (since this was a "draft") or have you given up ? |
Hi @AndreasFuchsTPM you are right; gitignore was required for our dev setup. |
I guess we could take the changes to the project files. For the gitignore you can add it to |
Sure let me fix the changes and publish the pull request. |
91cd03e
to
3fc020a
Compare
@achal1012 I took the liberty of fixing the merge conflicts since we took so long to review this again. Could you sign off your commits though to make the DCO bot happy? |
IMHO we should squash the two commits into a single one. @achal1012 Could you provide some reference to the target platform you are using so we could setup our own testing env for this ? |
Hi @williamcroberts: I am unable to approve this PR as github is not letting me. And I apologize for no updates on this PR, I changed employers and lost my setup and test bench. @AndreasFuchsTPM I tested this on Ampere platform with internal windows ARM564 build, and unfortunately I don't have access to that now. |
You don't need to approve anything, You can still sign off your commits. In the Tests section for your PR you'll see a DCO thing that shows as failed, follow it's steps:
We'll as long as it didn't break the normal x86-64 builds so I am fine with pulling it as is as experimental ARM64 support. |
Signed-off-by: Achal Velani <achal.velani@gmail.com>
Signed-off-by: Achal Velani <achal.velani@gmail.com>
3fc020a
to
05fe8c6
Compare
I followed the steps and pushed the change. Can you check if its okay now? |
DCO bot happy, lets let CI spin and I can pull this in for 4.0 release. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AppVeyor complains that
esys_crypto_ossl.c(11,10): fatal error : 'openssl/rand.h' file not found [C:\projects\tpm2-tss\src\tss2-esys\tss2-esys.vcxproj]
I see that include-paths were changed for OpenSSL.
I don't know though, how to nicely handle this.
</ClCompile> | ||
<Link> | ||
<TargetMachine>MachineX86</TargetMachine> | ||
<GenerateDebugInformation>true</GenerateDebugInformation> | ||
<SubSystem>Windows</SubSystem> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL-v11-Win32\lib\libcrypto.lib;C:\OpenSSL-v11-Win32\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL.1.1.1506.73\$(Platform)\$(Configuration)\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change apparently breaks our Appveyor-CI
</ClCompile> | ||
<Link> | ||
<TargetMachine>MachineX86</TargetMachine> | ||
<GenerateDebugInformation>true</GenerateDebugInformation> | ||
<SubSystem>Windows</SubSystem> | ||
<EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
<OptimizeReferences>true</OptimizeReferences> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL-v11-Win32\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL.1.1.1506.73\$(Platform)\$(Configuration)\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here
<ModuleDefinitionFile>$(SolutionDir)\lib\tss2-esys.def</ModuleDefinitionFile> | ||
</Link> | ||
</ItemDefinitionGroup> | ||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
<ClCompile> | ||
<AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)\src;$(SolutionDir)\include\tss2;$(SolutionDir)\src\tss2-mu;$(SolutionDir)\src\tss2-sys;$(SolutionDir)\src\tss2-esys;C:\OpenSSL-v11-Win64\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
<AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)\src;$(SolutionDir)\include\tss2;$(SolutionDir)\src\tss2-mu;$(SolutionDir)\src\tss2-sys;$(SolutionDir)\src\tss2-esys;C:\OpenSSL.1.1.1506.73\$(Platform)\$(Configuration)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And here
<PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;TSS2ESYS_EXPORTS;MAXLOGLEVEL=6;strtok_r=strtok_s;OSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
</ClCompile> | ||
<Link> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL-v11-Win64\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
<AdditionalDependencies>$(OutDir)\tss2-mu.lib;$(OutDir)\tss2-sys.lib;$(OutDir)\tss2-tctildr.lib;C:\OpenSSL.1.1.1506.73\$(Platform)\$(Configuration)\lib\libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
and here
If it breaks appveyor we don't pull, @achal1012 if you can add your arm64 support and AppVeyor is happy thats good enough for me, but otherwise we won't be able to take this PR. I thought AppVeyor was happy at one point.... |
Yes, I think here we have to use a build of OpenSSL that has the ARM64 libs as well. |
Can we keep this PR in draft till I can find some time to work on this? Or do we need to abandon it? |
We can just leave it open |
No description provided.