summaryrefslogtreecommitdiff
path: root/utils/fpcres
diff options
context:
space:
mode:
authorflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-09-26 19:49:08 +0000
committerflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-09-26 19:49:08 +0000
commit844935a6ffbca5d7ae4758de3aa4ef8496543f3a (patch)
tree4cc43a6480f3e1a1702fda012b2da986a015a0b3 /utils/fpcres
parentacb2f648fb97fdc281287b6cdb3d0ca2a537ae7a (diff)
downloadfpc-844935a6ffbca5d7ae4758de3aa4ef8496543f3a.tar.gz
Merged riscv_new branch
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@39813 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'utils/fpcres')
-rw-r--r--utils/fpcres/Makefile38
-rw-r--r--utils/fpcres/fpcres.pas3
-rw-r--r--utils/fpcres/target.pas13
3 files changed, 50 insertions, 4 deletions
diff --git a/utils/fpcres/Makefile b/utils/fpcres/Makefile
index 2ad135c365..f319d2e044 100644
--- a/utils/fpcres/Makefile
+++ b/utils/fpcres/Makefile
@@ -1,8 +1,8 @@
#
-# Don't edit, this file is generated by FPCMake Version 2.0.0
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2018-07-20 rev 39474]
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -332,7 +332,7 @@ FPCFPMAKE=$(FPC)
endif
endif
override PACKAGE_NAME=fpcres
-override PACKAGE_VERSION=3.3.1
+override PACKAGE_VERSION=3.1.1
FPMAKE_BIN_CLEAN=$(wildcard ./fpmake$(SRCEXEEXT))
ifdef OS_TARGET
FPC_TARGETOPT+=--os=$(OS_TARGET)
@@ -1687,6 +1687,38 @@ REQUIRE_PACKAGES_HASH=1
REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/utils/fpcres/fpcres.pas b/utils/fpcres/fpcres.pas
index 034d9f0a66..7788c47233 100644
--- a/utils/fpcres/fpcres.pas
+++ b/utils/fpcres/fpcres.pas
@@ -72,6 +72,7 @@ begin
writeln(' --arch, -a <name> Set object file architecture. Supported architectures:');
writeln(' i386, x86_64, arm (coff)');
writeln(' i386, x86_64, powerpc, powerpc64, arm, armeb, m68k,');
+ writeln(' riscv32, riscv64,');
writeln(' sparc, alpha, ia64, mips, mipsel (elf)');
writeln(' i386, x86_64, powerpc, powerpc64, arm, aarch64 (mach-o)');
writeln(' bigendian, littleendian (external)');
@@ -254,6 +255,8 @@ begin
mtmipsel : Result.MachineType:=emtmipsel;
mtppc64le : Result.MachineType:=emtppc64le;
mtaarch64 : Result.MachineType:=emtaarch64;
+ mtriscv32 : Result.MachineType:=emtriscv32;
+ mtriscv64 : Result.MachineType:=emtriscv64;
end;
end;
diff --git a/utils/fpcres/target.pas b/utils/fpcres/target.pas
index 587d5a2418..39039618fa 100644
--- a/utils/fpcres/target.pas
+++ b/utils/fpcres/target.pas
@@ -23,6 +23,7 @@ interface
type
TMachineType = (mtnone, mti386,mtx86_64,mtppc,mtppc64,mtarm,mtarmeb,mtm68k,
mtsparc,mtalpha,mtia64,mtmips,mtmipsel,mtaarch64,mtppc64le,
+ mtriscv32,mtriscv64,
mtBigEndian,mtLittleEndian);
TMachineTypes = set of TMachineType;
@@ -35,6 +36,7 @@ type
(subarm: TSubMachineTypeArm);
mtnone, mti386,mtx86_64,mtppc,mtppc64,mtm68k,
mtsparc,mtalpha,mtia64,mtmips,mtmipsel,mtaarch64,mtppc64le,
+ mtriscv32,mtriscv64,
mtBigEndian,mtLittleEndian:
(subgen: TSubMachineTypeGeneric);
end;
@@ -85,6 +87,8 @@ var
(name : 'mipsel'; formats : [ofElf]), //mtmipsel
(name : 'aarch64'; formats : [ofElf, ofMachO]), //mtaarch64
(name : 'powerpc64le'; formats : [ofElf]), //mtppc64le
+ (name : 'riscv32'; formats : [ofElf]), //mtriscv32
+ (name : 'riscv64'; formats : [ofElf]), //mtriscv64
(name : 'bigendian'; formats : [ofExt]), //mtBigEndian
(name : 'littleendian'; formats : [ofExt]) //mtLittleEndian
);
@@ -102,7 +106,8 @@ var
mtppc64,mtarm,mtarmeb,
mtm68k,mtsparc,mtalpha,
mtia64,mtmips,mtmipsel,
- mtppc64le,mtaarch64]),
+ mtppc64le,mtaarch64,
+ mtriscv32,mtriscv64]),
(name : 'coff'; ext : '.o'; machines : [mti386,mtx86_64,mtarm,
mtppc,mtppc64]),
(name : 'xcoff'; ext : '.o'; machines : [mtppc{,mtppc64}]),
@@ -159,6 +164,12 @@ var
{$elseif defined(CPUAARCH64)}
machine : mtaarch64;
submachine : (subgen: smtgen_all);
+ {$elseif defined(CPURISCV32)}
+ machine : mtriscv32;
+ submachine : (subgen: smtgen_all);
+ {$elseif defined(CPURISCV64)}
+ machine : mtriscv64;
+ submachine : (subgen: smtgen_all);
{$else}
machine : mti386; //default i386
submachine : (subgen: smtgen_all);