Warning: Source OS Redefined! lazarus / 64-FPC development ---------------------------------------------------------------------- Key-Real · 2024-04-18 08:20 what does this Warning means: Warning: Source OS Redefined! ---------------------------------------------------------------------- Laksen · 2024-04-18 08:28 It would indicate that you have a compiler bug, or some messed up compiler defines while rebuilding the compiler. How did you build the compiler? ---------------------------------------------------------------------- Key-Real · 2024-04-18 08:34 can you provide more info? pls I'm porting it to a new target ---------------------------------------------------------------------- Laksen · 2024-04-18 08:41 The warning is generated in set_source_info set_source_info is called from systems/i*.pas to indicate what the cpu+os compiler was built FROM. It should only be called once For example in i_linux.pas Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i {$ifdef CPUI386}  {$ifdef linux}    { some FreeBSD versions define linux as well }    {$ifndef FreeBSD}      set_source_info(system_i386_linux_info);    {$endif FreeBSD}  {$endif}{$endif CPUI386}...{$ifdef CPUX86_64}  {$ifdef linux}    set_source_info(system_x86_64_linux_info);  {$endif linux}{$endif CPUX86_64}...  linux might be defined, but only one of CPUI386 and CPUX86_64 should be defined. Since you can't build a compiler that runs on both (well it can but it will be built for one ISA or the other) ---------------------------------------------------------------------- Key-Real · 2024-04-18 09:07 Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i unit i_ps1; {$i fpcdefs.inc}   interface     uses       systems;     const        system_mipsel_ps1_info : tsysteminfo =          (          system       : system_mipsel_ps1;            name         : 'PlayStation 1 for MIPSEL';            shortname    : 'ps1';          flags        : [tf_needs_symbol_size,tf_needs_symbol_type,tf_files_case_sensitive,                          tf_requires_proper_alignment,tf_library_needs_pic,                          tf_pic_uses_got,tf_safecall_exceptions,                          tf_smartlink_sections,tf_has_winlike_resources,tf_supports_hidden_s ymbols];            cpu          : cpu_mipsel;            unit_env   : 'LINUXUNITS';            extradefines : 'UNIX;HASUNIX';            exeext       : '';            defext       : '.def';            scriptext    : '.sh';            smartext     : '.sl';            unitext      : '.ppu';            unitlibext   : '.ppl';            asmext       : '.s';            objext       : '.o';            resext       : '.res';            resobjext    : '.or';            sharedlibext : '.so';            staticlibext : '.a';            staticlibprefix : 'libp';            sharedlibprefix : 'lib';          sharedClibext : '.so';            staticClibext : '.a';            staticClibprefix : 'lib';            sharedClibprefix : 'lib';          importlibprefix : 'libimp';            importlibext : '.a';//          p_ext_support : false;            Cprefix      : '';            newline      : #10;            dirsep       : '/';            assem      : as_none;            assemextern  : as_gas;            link       : ld_none;            linkextern   : ld_ps1;            ar         : ar_gnu_ar;            res          : res_elf;            dbg        : dbg_dwarf3;            script       : script_unix;            endian       : endian_little;            alignment    :              (                procalign       : 4;                loopalign       : 4;                jumpalign       : 0;                jumpalignskipmax    : 0;                coalescealign   : 0;                coalescealignskipmax: 0;                constalignmin   : 0;              constalignmax   : 8;                varalignmin     : 0;              varalignmax     : 8;                localalignmin   : 4;              localalignmax   : 8;                recordalignmin  : 0;              recordalignmax  : 8;                maxCrecordalign : 8            );            first_parm_offset : 0;            stacksize    : 32*1024*1024;            stackalign   : 8;            abi : abi_default;            llvmdatalayout : 'e-p:32:32:32-i1:8:8-i8:8:32- i16:16:32-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-n32-S64';          );   implementation initialization     set_source_info(system_mipsel_ps1_info); end.  it's not finished jet, but could You pls take a look? ---------------------------------------------------------------------- Laksen · 2024-04-18 09:32 Just do something like this. "ps1" would have to match the OS define that you create. But if you follow the same conventions otherwise it should be fine as below Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i initialization{$ifdef CPUMIPSEL}  {$ifdef ps1}    set_source_info(system_mipsel_ps1_info);  {$endif ps1}{$endif CPUMIPSEL}