Commit Graph

114 Commits

Author SHA1 Message Date
Jonas Maebe
76045bfc04 * merged macOS/AArch64 support + revisions these changes depended on
git-svn-id: branches/fixes_3_2@46866 -
2020-09-15 19:40:36 +00:00
pierre
660a061030 Merge of commit 44311 and 44314 from trunk branch
------------------------------------------------------------------------
r44311 | pierre | 2020-03-19 13:30:36 +0000 (Thu, 19 Mar 2020) | 1 line

Restore usage of revision.inc file, but do not print date and revision information into generated Makefile's
------------------------------------------------------------------------
--- Merging r44311 into '.':
U    utils/fpcm/fpcmmain.pp
U    utils/fpcm/fpcmwr.pp
--- Recording mergeinfo for merge of r44311 into '.':
 U   .
------------------------------------------------------------------------
r44314 | pierre | 2020-03-20 07:51:17 +0000 (Fri, 20 Mar 2020) | 1 line

 Commit generated change to revision.inc file following commit #44311
------------------------------------------------------------------------
--- Merging r44314 into '.':
U    utils/fpcm/revision.inc
--- Recording mergeinfo for merge of r44314 into '.':
 G   .

git-svn-id: branches/fixes_3_2@44315 -
2020-03-20 08:48:50 +00:00
pierre
17d0f31119 + Enabling of x86_64-hziku target in fixes_3_2 compiler branch by merging of commits #40753 and 40756.
------------------------------------------------------------------------
r40753 | karoly | 2019-01-04 02:16:24 +0000 (Fri, 04 Jan 2019) | 1 line

haiku-x86_64: add target to the compiler and ppudump, enable it in fpmake and fpcmake
------------------------------------------------------------------------
--- Merging r40753 into '.':
U    compiler/options.pas
U    compiler/systems/i_haiku.pas
U    compiler/systems/t_haiku.pas
U    compiler/systems.inc
U    compiler/utils/ppuutils/ppudump.pp
U    compiler/x86/agx86att.pas
U    compiler/x86_64/cpuelf.pas
U    compiler/x86_64/cputarg.pas
U    utils/fpcm/fpcmmain.pp
--- Recording mergeinfo for merge of r40753 into '.':
 U   .
------------------------------------------------------------------------
r40756 | karoly | 2019-01-04 03:00:03 +0000 (Fri, 04 Jan 2019) | 1 line

haiku: linker support code for internal sysinit and make the x86_64 port use it
------------------------------------------------------------------------
--- Merging r40756 into '.':
G    compiler/systems/t_haiku.pas
U    compiler/systems.pas
--- Recording mergeinfo for merge of r40756 into '.':
 G   .

git-svn-id: branches/fixes_3_2@42133 -
2019-05-28 21:50:18 +00:00
yury
0654857ce1 Merged aarch64-android, x86_64-android targets and fixes for the Android target.
Revision(s) 39739, 39749, 39860, 39862, 39865, 39869, 39871, 39903, 39905, 39917, 39956, 39959-39960, 39969, 39971, 39980, 39987, 40198-40201, 40472, 40532, 40535-40536 from trunk:
* Android: The list of supported syscalls has been auto-generated directly from android sources for each CPU.
* Minor adjustments to make all compilable with the proper list of Android syscalls.
........
* Re-generated lists of android syscalls by a new script. The lists are more correct now. The script's location: https://svn.freepascal.org/svn/fpcbuild/scripts/android
........
* Fixed UnhookSignal when RTL_SIGDEFAULT is passed. The bug have caused crash on aarch64-android due to out of bounds read of the rtlsig2ossig[] array.
........
+ Added support for the aarch64-android target.
........
* Set ICU data dir if it is not set by the system. It fixes issues on newer Android versions.
* Added more predefined ICU versions.
........
* android: Use the current dir as temp.
........
* Corrected TUContext record for aarch64-linux and aarch64-android. It fixes obtaining of an address of the instruction where a signal has thrown.
........
* Enabled safecall support for aarch64 to be on par with other cpus.
........
* Android: Reworked the startup code to use no assembly instructions. Generic assembler startup files contains only section data and are compiled for each CPU.
* Android: argc and argv are correct for shared libraries.
........
* Use syscall_nr_renameat for android.
........
+ added support for x86_64-android target.
........
+ Added the auto-generated list syscalls for mips64-android. It will be needed when mips64 is supported.
........
* x86_64-android requires sigreturn for proper signal handling.
........
* Register external gas assembler for aarch64-android and x86_64-android.
........
* Enabled compilation of the cpu unit for arm-android and x86_64-android.
........
* ucnv_open() must be called with some SSE exception masked on x86_64-android.
* Call u_init() during initialization.
........
* Create the ".note.gnu.build-id" section for android. It fixes debugging of shared libs in Android Studio.
........
* android: Removed cwstring from the uses clause of the unix unit. Use cwstring indirectly. It allows to avoid using cwstring if needed.
........
* ICU v3.8 on Android 1.5-2.1 is buggy and can't be unloaded properly.
........
* Fixed locale detection on new Android versions.
........
* Fixed obtaining a time zone information for 64-bit android.
........
* Since Android 8 the net.dnsX properties can't be read. Use Google Public DNS servers.

........
* android: Use libc for sockets since the "accept" syscall is blocked by SECCOMP, but the "accept4" alternative is not available on old Android versions (2.3 and older). 
........
* android: Regenerated syscalls.
........
* android: Disabled usage of the "pselect6" and "ppoll" syscalls for arm-android. These syscalls are not available on old Android versions (2.3 or older).
........

git-svn-id: branches/fixes_3_2@40540 -
2018-12-13 18:08:42 +00:00
marco
57b73f7022 * don't include date/rev info of fpcmake. complicates merging.
git-svn-id: trunk@39631 -
2018-08-18 15:06:58 +00:00
marco
64d8f26b38 * more compiler suffix fixes, mantis #33606, Aarch64 and m68k
git-svn-id: trunk@38866 -
2018-04-29 14:08:00 +00:00
marco
8d67230b2d * fix for bug #33606, ppc<x> suffix (x86_64->x64)
git-svn-id: trunk@38773 -
2018-04-15 17:10:51 +00:00
Károly Balogh
dbb91b5ef0 arm-netbsd: added platform define and dummy rtl files so the build passes for this platform. port not functional yet
git-svn-id: trunk@38412 -
2018-03-05 15:38:46 +00:00
Károly Balogh
b179ceefd4 fpcmake: enabled m68k-macos, disabled i386-qnx. there's now cross-binutils for the former, the later was recently obsoleted in the compiler, as no one worked on it since 1.x times
git-svn-id: trunk@37024 -
2017-08-22 08:28:59 +00:00
Károly Balogh
e3ffeed1b2 m68k: removed traces of the never obsolete/ancient openbsd-m68k and never existed freebsd-m68k ports
git-svn-id: trunk@36877 -
2017-08-12 08:52:44 +00:00
florian
a5b3576577 + sparc64 support for fpcmake
git-svn-id: trunk@36373 -
2017-05-30 20:40:48 +00:00
Károly Balogh
ca9e2f5e5d wasm: added target to fpcmake
git-svn-id: trunk@35592 -
2017-03-15 14:53:04 +00:00
pierre
bd45a4ecfa Remove obsolete packages/base and packages/extra in PACKAGESDIR variable
git-svn-id: trunk@35529 -
2017-03-06 10:29:58 +00:00
marcus
86940dfb32 AROS: added arm-aros target to compiler and fpcmake
git-svn-id: trunk@34805 -
2016-11-06 10:51:45 +00:00
nickysn
2dc530dfe3 + enable the i8086-embedded cpu/os combination in fpcmake
git-svn-id: trunk@34000 -
2016-06-17 20:24:55 +00:00
nickysn
b8b90f96a1 + added the win16 target to fpcmake
git-svn-id: trunk@31523 -
2015-09-05 10:15:10 +00:00
joost
a67a35c498 * Added the ability to add fpmake as a target in a Makefile.fpc file. This way
there is no special need anymore for complete scripts in the Makefile.fpc
   to call fpmake. And it is now possible to combine other targets with a
   fpmake-target.

git-svn-id: trunk@31240 -
2015-07-28 09:52:19 +00:00
Károly Balogh
4eaf1ffa48 FPCMake: enable AROS on x86_64
git-svn-id: trunk@31167 -
2015-06-28 15:58:23 +00:00
Jonas Maebe
7d16df9bea + Linux/AArch64 support in fpmkunit/fpcmake (patch by Edmund Grimley Evans)
git-svn-id: trunk@30890 -
2015-05-20 20:14:42 +00:00
marco
9255bc0fe5 * added _ before avr in cpusuffix. All other targets have.
Due to remark of "ghieber" on forum.

git-svn-id: trunk@30250 -
2015-03-17 09:09:14 +00:00
Jonas Maebe
83e20b5a5b + x86_64/iphonesim support in fpcmake/fpmkunit
git-svn-id: trunk@29972 -
2015-02-23 22:56:21 +00:00
Jonas Maebe
19f458787f + Darwin/AArch64 support to fpcmake
git-svn-id: trunk@29902 -
2015-02-23 22:52:01 +00:00
marco
2578514853 * first dragonfly patch (existing most). Mantis #27091
git-svn-id: trunk@29213 -
2014-12-07 20:27:02 +00:00
Károly Balogh
4431ba2c08 merged/updated AROS/i386 target to trunk from AROS branch, to support Marcus Sackrow's work on AROS support which will hopefully benefit all Amiga-like targets (classic, MorphOS) on the long run. Compiler only, RTL comes in the next run.
git-svn-id: trunk@28432 -
2014-08-17 18:18:07 +00:00
florian
b2b26f84cf * partially merged the mips-embedded branch of Michael Ring:
- startup code/controller units are not merged yet
  - assembler call does not pass the needed CPU type yet

git-svn-id: trunk@27188 -
2014-03-19 21:25:38 +00:00
yury
3eaecd07a6 * mipsel-android: Support in fpcmake.
git-svn-id: trunk@26692 -
2014-02-06 19:46:28 +00:00
florian
0e41df598e * merge i8086 branch by Nikolay Nikolov
git-svn-id: trunk@24324 -
2013-04-25 20:23:51 +00:00
pierre
057ebc1b2b Use revision.inc include file if REVINC conditional is set
git-svn-id: trunk@23953 -
2013-03-22 14:49:20 +00:00
florian
2fccd4be13 + msdos
+ i8086

git-svn-id: branches/i8086@23778 -
2013-03-10 17:30:35 +00:00
tom_at_work
4150f0a2fb Rebase with r21814
git-svn-id: branches/targetandroid@21815 -
2012-07-07 23:09:20 +00:00
tom_at_work
77a85b7448 * basic android/x86 support
git-svn-id: branches/targetandroid@21296 -
2012-05-14 21:14:12 +00:00
Jonas Maebe
6d628a794b * fixed merge error in r21069: netbsd/x86-64 is supported, not haiku/x86-64
(fortunately, the makefiles were generated using a correct fpcmake)

git-svn-id: trunk@21074 -
2012-04-27 09:16:20 +00:00
Jonas Maebe
834026bfb5 * synchronised with trunk up to r21067
git-svn-id: branches/jvmbackend@21068 -
2012-04-26 21:24:20 +00:00
tom_at_work
acbc94e0fd - initial support for the android/arm target in the compiler; resulting .so's can be used for Android/ARM app development.
- basic rtl support using system calls
- fp(c)make/fppkg/makefile support

todo:
- revisit systems/t_android.pas: mostly duplicate with t_linux.pas, containing
lots of unnecessary code
- revisit rtl changes
- android ndk header translation import
- better app build/packaging support
- android/x86 support

git-svn-id: branches/targetandroid@21061 -
2012-04-26 09:36:42 +00:00
pierre
1b6c45455e + Add x86_64 netbsd target
git-svn-id: trunk@21030 -
2012-04-24 23:12:30 +00:00
Jonas Maebe
aee5380ae0 * merged trunk up to r20882
o support for the new codepage-aware ansistrings in the jvm branch
   o empty ansistrings are now always represented by a nil pointer rather than
     by an empty string, because an empty string also has a code page which
     can confuse code (although this will make ansistrings harder to use
     in Java code)
   o more string helpers code shared between the general and jvm rtl
   o support for indexbyte/word in the jvm rtl (warning: first parameter
     is an open array rather than an untyped parameter there, so
     indexchar(pcharvar^,10,0) will be equivalent to
     indexchar[pcharvar^],10,0) there, which is different from what is
     intended; changing it to an untyped parameter wouldn't help though)
   o default() support is not yet complete
   o calling fpcres is currently broken due to limitations in
     sysutils.executeprocess() regarding handling unix quoting and
     the compiler using the same command lines for scripts and directly
     calling external programs
   o compiling the Java compiler currently requires adding ALLOW_WARNINGS=1
     to the make command line

git-svn-id: branches/jvmbackend@20887 -
2012-04-15 15:54:10 +00:00
Jonas Maebe
b0e4263fee + aix support in fpcmake and fpmake
git-svn-id: trunk@20787 -
2012-04-11 17:59:59 +00:00
pierre
763edfcbef + Add x86_64 cpu support for openbsd target
git-svn-id: trunk@20719 -
2012-04-05 21:12:30 +00:00
florian
722980519a + enable mips-linux in fpcmake (mips-linux is big endian, mipsel-linux is the little endian port)
git-svn-id: trunk@20243 -
2012-02-04 09:43:58 +00:00
Jonas Maebe
0d5b2b84a8 + Android/JVM target, including a translation of the Android r14 SDK
(= Android 4.0) java headers: java.*, javax.*, org.*, junit.*, android.*).
    The RTL can also be used to target earlier versions of the Android
    platform, but you manually have to take care of not using APIs that
    weren't available yet. Adding separate units for separate platform
    versions would only partly solve the problem, because some of the
    classes used inside the system unit have also changed across
    versions.

    Use -Tandroid while compiling to select the Android OS as target
    platform.

git-svn-id: branches/jvmbackend@19830 -
2011-12-12 02:34:34 +00:00
Jonas Maebe
94ed2ac649 + jvm/java target support
git-svn-id: branches/jvmbackend@18311 -
2011-08-20 07:37:42 +00:00
Legolas
23d4e04c5c * Added Wii support to fpcmake
git-svn-id: trunk@17036 -
2011-02-27 19:28:42 +00:00
Jonas Maebe
8b0301409a + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and
later: the same as i386/darwin, except
      a) uses the non-fragile Objective-C ABI/runtime
      b) does not require stubs for direct calls/jumps (not required for
         i386/darwin under 10.6 and later either, but still generated
         there for backwards compatibility)
      c) only the same packages are enabled as for ARM/Darwin
      d) MacOSAll is compiled specifically for the iPhoneSimulator SDK
    This target also defines the symbol "darwin" apart from the target
    name "iphonesim" for source code compatibility reasons.

git-svn-id: trunk@16065 -
2010-09-29 21:56:47 +00:00
florian
34227e811d + patch by Sven Barth to add native NT rtl support to the compiler, resolves #14886
git-svn-id: trunk@14565 -
2010-01-07 17:42:11 +00:00
florian
c7f7ce2cdd + mips*
+ armel
- unused variables removed

git-svn-id: trunk@14276 -
2009-11-26 19:39:23 +00:00
pierre
98dfe776e8 + enable x86_64-solaris
git-svn-id: trunk@14236 -
2009-11-21 00:27:16 +00:00
florian
35c0f78642 + Haiku support by Olivier Coursière based on old BeOS support
git-svn-id: trunk@11014 -
2008-05-19 17:33:35 +00:00
florian
2838dbb35a + enabled arm-darwin in fpcmake
git-svn-id: trunk@10576 -
2008-03-28 18:22:57 +00:00
micha
b0838b13d7 * add armeb target to compiler/Makefiles
git-svn-id: trunk@10552 -
2008-03-24 17:48:11 +00:00
florian
0df73836a2 + avr as cpu
git-svn-id: trunk@10308 -
2008-02-11 22:25:19 +00:00