[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Porting libreoffice to riscv64 arch



Hi,
On Thu, May 12, 2022 at 08:28:26PM +0200, Rene Engelhard wrote:
Hi,

Besides that I don't see an error here.

I think the dependences of libreoffice had been met but need reduce or exclude some build-deps such others arch. But I am not sure how to deal with it. Could you have a look? I have real riscv64 hardware by hand so I can do more
tests.

What happens in the further build?

You should definitely get a failure at bridges I guess ;-):

You definitely have porting work before you. See e.g. https://cgit.freedesktop.org/libreoffice/core/tree/bridges/source/cpp_uno/gcc3_linux_aarch64 for arm64. You need to know the ABI and calling conventions

This time we arrive at *bridge* part. I will try it follow your help
about:)

Bo

(And no, unfortunately I can't help you in that, only to get it to apply and (maybe) build system issues)


Regards,


Rene

add support for riscv64 arch

--- a/configure.ac
+++ b/configure.ac
@@ -5112,6 +5112,12 @@
         RTL_ARCH=PowerPC_64_LE
         PLATFORMID=linux_powerpc64_le
         ;;
+    riscv64)
+        CPUNAME=RISCV64
+        PLATFORMID=linux_riscv64
+        RTL_ARCH=RISCV64
+        EPM_FLAGS="-a riscv64"
+        ;;
     sparc)
         CPUNAME=SPARC
         RTL_ARCH=SPARC
@@ -8413,7 +8419,7 @@
         JAVAINTERPRETER=`win_short_path_for_make "$JAVAINTERPRETER"`
     elif test "$cross_compiling" != "yes"; then
         case $CPUNAME in
-            AARCH64|AXP|X86_64|IA64|POWERPC64|S390X|SPARC64|GODSON64)
+            AARCH64|AXP|X86_64|IA64|POWERPC64|S390X|SPARC64|GODSON64|RISCV64)
                 if test -f "$JAVAINTERPRETER" -a "`$JAVAINTERPRETER -version 2>&1 | $GREP -i 64-bit`" = "" >/dev/null; then
                     AC_MSG_WARN([You are building 64-bit binaries but the JDK $JAVAINTERPRETER is 32-bit])
                     AC_MSG_ERROR([You should pass the --with-jdk-home option pointing to a 64-bit JDK])
@@ -12875,7 +12881,7 @@
 # platforms there.
 supports_multilib=
 case "$host_cpu" in
-x86_64 | powerpc64 | powerpc64le | s390x | aarch64 | mips64 | mips64el)
+x86_64 | powerpc64 | powerpc64le | s390x | aarch64 | mips64 | mips64el | riscv64)
     if test "$SAL_TYPES_SIZEOFLONG" = "8"; then
         supports_multilib="yes"
     fi
--- /dev/null
+++ b/solenv/gbuild/platform/LINUX_RISCV64_GCC.mk
@@ -0,0 +1,14 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+gb_COMPILEROPTFLAGS := -Os
+
+include $(GBUILDDIR)/platform/linux.mk
+
+# vim: set noet sw=4:

Attachment: signature.asc
Description: PGP signature


Reply to: