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,10b66491ba6f9d90d9414d46aa5261125e324c69
9a9484b26d89b8344cc6c492889378bee063fb15,7d31e25ba646791c200e1365b2578bdc8c21c551,5fe8fbd43aa5edd3fe4f1c67c3bf587528a5f4b8
4ed8182c753a5bb0e10190fddc1c45627e059f1d,b2f2c5671cb74fe64f68423d0835129eb0c3ed69,20884fdc1b60d678999bc55452accb0e914fd137
dc6728c8798097fba399e8fd37f24d530585cd65,b83673ecf9ff225de2197bb6824e73ba37d6b3e3,fef4ae489abfea94bbda5818bdf7f668066951d3
02b45aa6e4b5267c162d560fa3242a9ea59b2ccb,a6b508b09464d31e8fbc1a81f2a97b82cb5273a1,f73456a9d92f7453e80e4fb751343c0c2e145f9c
76becd36b7c0e19af8860b0d13d74ce8d3cf43e7,9fe395018a371ff4f0a47dff05120e779da01f48,55e72fc0f1505c75f60af706736d32ceca9815a4
e3d3fe654cff6287f97ecac55de2507f521b42d4,9fe4e1247f19a4865ef38479fc588a3b8a1dd63c,b3883557506f6f61da10b3e4fc1015a6977b263e
5205ce30f4fd31e56701aa9bc09ae2b56a79dede,8d211f17b4715c3987f429bc5124fe823167390d,f7d6201946c569274544c37adbd84d3f5913bbb2
008dc98c338fc54478d2e8565fb78146bfc84e53,598fbb23a19f9e36cb654b4da07217f2af03f1ec,995a5431c3f4ac89744634ad0ea2cc00b269f852
1f965d262dc09aa2de789e20fa23163280a5b9c7,92de1a6fbed74d0f06cb7d1739dd341f60c4c976,cf0f3374472a21aac94daeee98d1fa7ef1d77028
890512cae2c6362d8c7bb3465c07a0932d087341,a150115ed2bd5fc2f1c6d3f913ef42a233117496,39a3f5a67817cbb4e1d267775cfc752b21158b7a
2ee0138591fd6498d78377291da7a91d79c5861f,d18812b32f1a3035ef0531a75a9b2287b427f605,e5a648817fbde5966e62b6a086badd4b0ca077b6
ab9b6781305d0717169301cffcfc98f31827ee2a,fea22868c01269d2c262b28da840b2f668930578,d87bfdcb9fc79b41dba76bb8536018be4da9c3df
9b984980d537ec9920dda3e024e314ff8e8e40a7,92c0e0ab7f6a986eab4b26e2b437f55a918f69a4,b2b36b4d307a7e08ad3c77afa16169ab68b4bdbb
669ef2a7bec52b5e35b51a19d5ee4e34466c872c,a43b95a6b3b1e7508c83c2f7d52cd16fda50565c,fd2deaac870ed642a6fe7595a2972b7b4bad79cd
050ea38de0c61b191b0b53fb1bb020af0c1d3f3a

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


* Allow to work with unicodertl
Commit consists out of
  • M packages/fpmake.pp
  • M packages/fpmkunit/fpmake.pp
  • M packages/fpmkunit/src/fpmkunit.pp


* ApplyNamespaces
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.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


* Make sure it compiles with previous release
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* search for i386-linux-gcc also by trying i686-linux- as prefix as
apparently for newer gcc -m32 does not return the proper libgcc path anymore
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp
  • M utils/fpcm/revision.inc


* Remove dependency on cthreads, that should always be in program/library uses clause
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Fix getlibraryfilename: do not add .so if output already contains it, do not add lib prefix if output already contains it. Take care of -o option
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Some corrections after remarks by Alexey Torgashin
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* fpmkunit package fixes
Commit consists out of
  • M packages/fpmkunit/Makefile
  • M packages/fpmkunit/src/fpmkunit.pp


Add aarch64 embedded, freebsd and iphonesim systems
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* FileNewer should return true if the dest file does not exist.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add new TUnsortedCompilerOptionsStringList class
which sets Duplicates to dupAccept explicitly in constructor.
Use new TUnsortedCompilerOptionsStringList class to instanciate
all TStrings containing list of complier options.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Remove TStringList descendents
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Undo last change.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Do not quote twice in maybequoted. Fix issue gitlab 0040494
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Fix syntax error
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Quotes not needed.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Clean up OSCPUSupported array values
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


human68k: add support to fpmkunit
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Do not search for files in directories that do not exist when doing distclean
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Fixed bug in "fpmkunit" where CompileReason wasn't set in "TBuildEngine.NeedsCompile" due to oversight
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Create build unit inside Unit sub-directory to allow parallel build of different targets using bmBuildUnit
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* wasi renamed wasip1 in fpcmake
Commit consists out of
  • M utils/fpcm/fpcmake.ini
  • M utils/fpcm/fpcmmain.pp


* wasi renamed wasip1 in fpmkunit
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


+ for consistency, added ps1 to the commented enum in fpcmmain.pp
Commit consists out of
  • M utils/fpcm/fpcmmain.pp


+ support wasip1threads in fpcmake
Commit consists out of
  • M utils/fpcm/fpcmake.ini
  • M utils/fpcm/fpcmmain.pp


+ added wasip1threads to fpmkunit
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


+ added wasip2 to fpmake
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Handle executable extension for WASI OSes
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add WasiSharedLibExt
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add the source directory of all units into UnitPath of APackage for build unit compilation
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Do not call SysCopyFile if List[i] is empty in TBuildEngine.CmdCopyFiles
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Fix check before calling AfterCleanProc
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Correctly remove build unit inside units sub-directory
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Remove debug writeln
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add -sp option to skip compilation of programs even for native compilation
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Fix for constant key names 'KeySkip*Prodrams' -> 'KeySkip*Programs'
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Rename new option -sap for skip all programs to avoid collision with already existing -sp=PATH option to set search path
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


Add GetExecuteCommandOutput TBuildEngine method
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Add some convenience calls.
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Fix case of TInstallMode
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp


* Private fields
Commit consists out of
  • M packages/fpmkunit/src/fpmkunit.pp