<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Is the “no-asm” configuration option still supported?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b>From:</b> openssl-users <openssl-users-bounces@openssl.org>
<b>On Behalf Of </b>Kristin Barber<br>
<b>Sent:</b> Monday, March 9, 2020 12:03 PM<br>
<b>To:</b> Richard Levitte <levitte@openssl.org><br>
<b>Cc:</b> openssl-users@openssl.org<br>
<b>Subject:</b> Re: Compiling for RISC-V<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Hi Richard, thanks for the reply. It was helpful.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">You are correct, I was able to find a configuration that worked by passing the RISC-V compiler via "make variable" assignment, along with some relevant options.  Things start compiling, but the build fails on what seems to be architecture-specific
 assembly files which are selected based on which "platform" has been configured.  It did not seem to me that there were RISC-V assembly-specific files as an option here, and based on your reply, I think that is indeed the issue.  Am I understanding this correctly?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Kristin<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Mon, Mar 9, 2020 at 3:03 AM Richard Levitte <<a href="mailto:levitte@openssl.org">levitte@openssl.org</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">On Mon, 09 Mar 2020 05:18:17 +0100,<br>
Kristin Barber wrote:<br>
> I've looked at the INSTALL docs, and it doesn't seem that RISC-V processors are supported<br>
> currently as a platform. Is this correct?<br>
<br>
That is correct.  No one has implemented that support yet.<br>
<br>
> Is there a branch which enables configuring for a RISC-V machine that hasn't yet made it into a<br>
> stable release?  <br>
<br>
Not that I know of.  Although, this same question has also been raised<br>
on github (I forget the issue number).<br>
<br>
> Any advice on where to look for information or changes to the build process in order to compile<br>
> for RISC-V?<br>
<br>
The first thing to attempt is a generic build with no assembler.<br>
There are some really simply config targets that could be a first<br>
step, one of:<br>
<br>
    ./Configure cc<br>
<br>
    ./Configure gcc<br>
<br>
A (pretty big) step up from that, at least if Linux is your target,<br>
would be one of these:<br>
<br>
    ./Configure linux-generic32<br>
<br>
    ./Configure linux-generic64<br>
<br>
Note that in either case, you may have to add C flags and ld flags,<br>
which you can do in one of two ways:<br>
<br>
1)  directly on the configuration command line, like this (Configure<br>
    makes an educated guess on what flags go where):<br>
<br>
    ./Configure linux-generic64 -m64 -DWHATEVER=value -Wl,-something<br>
<br>
2)  via "make variable" assignment:<br>
<br>
    ./Configure linux-generic64 \<br>
                CPPFLAGS='-DWHATEVER=value' \<br>
                CFLAGS='-m64' \<br>
                LDFLAGS='-Wl,-something'<br>
<br>
At some point, you might find a combination that works for you.  We<br>
would definitely like to know what you figure out, and it may be that<br>
the result makes it into our database of config targets (which, if<br>
you're curious, are the files Configurations/*.conf).<br>
<br>
Now, configuration is the easy bit when it comes to new CPUs,<br>
relatively speaking.  I assume that part of your question is whether<br>
there is assembler support.  This is the hard part in terms of<br>
effort.  We currently have no such thing at all for RISC-V, and I<br>
haven't seen any attempts to start such an effort...  PRs would<br>
certainly be welcome, but anyone who tries this will have to be<br>
prepared for it to take a while to get into the main source.<br>
<br>
Cheers,<br>
Richard<br>
<br>
-- <br>
Richard Levitte         <a href="mailto:levitte@openssl.org" target="_blank">levitte@openssl.org</a><br>
OpenSSL Project         <a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.openssl.org%2f~levitte%2f&c=E,1,X0wuSd-kz2nVhT_NOTOEEEyCfRQ3PVlEpzPg7qMVOE18vBdtM4EJjJ0PDdArARBsvQZdWJpbcy94bbUgzuKmj9jsBIiAzT87yPNJQ_aU-tOjP9VR4huaxBYl6g,,&typo=1" target="_blank">http://www.openssl.org/~levitte/</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</body>
</html>