Description: fpmake,fpmkunit and fppkg

This file as text.
(active) Revisions in this set:
a0ed685036ab33651b4ec86569e2e8dbac33f527,b1feaa9458eeb5ddb4b162d273a027503fecf815,db267dcb6335a1c84f3b28e05b250d0abdf59818
ef13f52ba8a7ce3f947faa520389cbe3858dba5c,7ee874fba158020461e2cff0fcc20df6c8760946,81887a2eb3fcc7f8e23a71a70483a175c1c1526e
625e847e56f1cc40973fb0c5d6f5d014d5fb24c2,218ca87a3f71509d27b3f77374046adb87db6a10,79a4409587318b836abf829fc01bcfb2a6364638
ae91ff00b962a9b53ede880aba87de37f70bbae8,72654864ff75a0b1455fdfe2e82a2fd40ec7f2f4,06b1e65864528e48bef61f8adfe47efeedf12da2
208e7fb33721bf96fe9c73abc219aaffd2311eb5,0e72cc94f6669825ac24d96cec22cadf16207041,58a56e38d108e6ec129ccf1ffe1bca4822dc74a6
c06a020c9cd174fd641da587b10283ef56329d04,b0cbff646399f64905cf29fdb82857a1856adf56,ece9c98362c68a9eee6527153e8c36c5cdf424cb
1fa5edd34e6fe5bb45b76893a5a8b3b83f8d03ce,50a13b4df4e2b0016883d14571eb2bc79d15e334,3bfb995a4871cfe088d6753086b13b06a613e4b1
f28629e8e122887b3658de1e061a1b6ed036e5f4,6b9a3bf28333ddf87a1af3182eaebfd5d977f2d9,96acda5ac9d49ca3e574aedf3a3b288e66d7bdbf
dc3bb933ee23dfcd7a4090e043d39c2afbf96e35,445ca8b995c14e9143c771836813cb8d0a4a17be,432cd5bdd36b3057283b1907fbe7dc4f0170b99f
c970c17ecab522488e125c6541c1368a43d1295f,1bd9d4173e21a73f4b2fefd1b7daa2207e17d7d4,43910756170672062ac57847b98c16a4096f7f78
fad6b0e4896cc1bcb805051237a9ca6557322b60,dabc59977d06fb86974e0cef52cf88109858b5e9,ca186440ebe63429d8642f770cd6f900a57ce60f
5203c3e84962c29670f4e0a87fd23cd6737ad882,7cde8df8c78c3e7f7af2758c53e57e2867680baa,4b5c7ab0f571f3c2b4b6d1d63fb3f767bf038fb7
3eab1c1c028360576a6d928fe7d35afbba66e512,ea68c97f5048973b8ba9eed354be828fe14a42f9,7d31e25ba646791c200e1365b2578bdc8c21c551
5fe8fbd43aa5edd3fe4f1c67c3bf587528a5f4b8,4ed8182c753a5bb0e10190fddc1c45627e059f1d

Clicking a revision will expand files
 


* Fixed the assignment of licenses of packages
Commit consists out of
  • M packages/fppkg/src/fprepos.pp


* Allow to get/set config items
Commit consists out of
  • M utils/fppkg/fppkg.pp


* Parse the keywords in fppkg-repositories
Commit consists out of
  • M packages/fppkg/src/fpxmlrep.pp


+ add FreeRTOS as new OS target
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp
  • M utils/fpcm/fpcmmain.pp


* Missing include-file added to fpmake-archive
Commit consists out of
  • M packages/x11/fpmake.pp


* Debug-writeln removed
Commit consists out of
  • M packages/fppkg/src/pkgfpmake.pp


* Do not try to resolve dependencies for packages that not meet the target
Commit consists out of
  • M packages/fppkg/src/pkgcommands.pp
  • M packages/fppkg/src/pkgmessages.pp


* always add the libgcc search directory under Linux, as it is required for
both the LLVM code generator and SEH support (it does _not_ force linking
libgcc, just adds the search directory so it can be found in case it's
required)
Commit consists out of
  • M packages/fpmkunit/Makefile.fpc
  • M packages/fpmkunit/src/fpmkunit.pp
  • M utils/fpcm/fpcmake.inc
  • M utils/fpcm/fpcmake.ini
  • M utils/fpcm/fpcmmain.pp


* enable AArch64 for Win64 in fpmkunit and fpcmake
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp
  • M utils/fpcm/fpcmmain.pp


Do not add -Fl$GCCLIBDIR to FPCMAKEOPT as this is now handled by fpcmake
Commit consists out of
  • M packages/fpmkunit/Makefile.fpc


Add missing CPUs for linux libgcc directory retrieval
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


+ Add a new parameter to GetCompilerInfo function,
called EmptyIfStdErr, which resets the returned string to
an empty string if the call generated output to stderr stream.

* Adapt calls to GetCompilerInfo to change above.
+ Add support for other CPUs for linux OS target.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add -marm option to gcc call fot arm target to be sure that aarch64 version of gcc complains to stderr if it does not support 32-bit
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Set FBuildEngine.Verbose also for -d option
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add m68k specific option to gcc call to be sure to generate an error if the gcc does not target m68k CPU
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* fixed the packages build after 0047376
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Try all OS/CPU combinations
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Avoid using volatile if NO_THREADING is defined
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Try to avoid use of native libgcc directory when cross-compiling.

Add FSourceCPU, FSourceOS, FCompilerDate FFullCompilerVersion fields to TCustomDefaults class.
Set these new fields by also parsing FPC -iDWSPSO output.
Use these fields to try to correctly guess if native gcc should be used to
try to find libgcc directory, or only $BINUTILSPREFIX prepended gcc.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Function GetDefaultLibGCCDir adapted to case of Defaults not assigned (required for fpcmkcfg utility) reported by Andrew Kurushin
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add sleep inside loop to find package that can be compiled, if none is ready in ProcessThreadResult
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Only set FNotifyMainThreadEvent at start of Execute method and after finishing the compilation of a package
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


+ new RiscV32 SUBARCH rv32i
Commit consists out of
  • M rtl/embedded/Makefile
  • M rtl/embedded/Makefile.fpc


Add special gcc options for riscv32/riscv64 gcc calls
Commit consists out of
  • M utils/fpcm/fpcmake.inc
  • M utils/fpcm/fpcmake.ini


Update revision after commit 0048929
Commit consists out of
  • M utils/fpcm/Makefile
  • M utils/fpcm/revision.inc


* update revision.inc
Commit consists out of
  • M utils/fpcm/revision.inc


Update after commit 49123
Commit consists out of
  • M utils/fpcm/revision.inc


* updated revision.inc
Commit consists out of
  • M utils/fpcm/revision.inc


* never ignore BINUTILSPREFIX environment variable in fpmake
+ search also $(BINUTILSPREFIX)-gnu-gcc for a usable gcc to get the libgcc directory
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Use FGeneralCriticalSection for LogIndent and LogUnindent.
Add FIndentCount integer field.
Add FWorkerPrefix string field.
Use try/finally block to keep track of LogLevel
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Fixed build with NO_THREADING on Windows.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Avoid having uninitialized UseBinutilsPrefix local variable in GetDefaultLibGCCDir function
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Avoid repeated warnings about libgcc directory
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add dumping of backtrace in case of unhandled exception inside TCustomInstaller.Run method
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add loongarch64 packages support
Commit consists out of
  • M packages/fcl-res/src/elfconsts.pp
  • M packages/fcl-res/src/elfreader.pp
  • M packages/fcl-res/src/elfsubwriter.inc
  • M packages/fcl-res/src/elfwriter.pp
  • M packages/fpmkunit/src/fpmkunit.pp
  • M packages/gtk2/src/glib/glib2.pas
  • M packages/ide/fpmake.pp
  • M packages/libffi/src/ffi.pp
  • M packages/rtl-extra/src/linux/unixsock.inc
  • M packages/rtl-extra/src/unix/ipc.pp
  • M packages/rtl-generics/src/generics.hashes.pas
  • M packages/rtl-objpas/src/inc/rtti.pp
  • M utils/fpcres/fpcres.pas
  • M utils/fpcres/target.pas


* Fix compiler warnings: switch to TStrings for external command options
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp
  • M packages/gdbint/fpmake.pp


* Fix loglevel for ListMode
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Remove convert.inc from fpmake include list as it was removed in commit 15ff16d85218ad77941878493af4b120cb11da47
Commit consists out of
  • M packages/rtl-console/fpmake.pp


Fix messages about not found gcc

Code actually looks for the gcc executable inside $PATH, not for libgcc.
fpc works without the libgcc.so devel symlink.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp
  • M packages/fppkg/src/fpmkunitsrc.inc


* take care of mips64* when calling gcc for the libgcc path
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Fix interactive information log error
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp