diff options
author | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2021-04-11 17:30:21 +0000 |
---|---|---|
committer | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2021-04-11 17:30:21 +0000 |
commit | a664cd401bf21259c7481a7a9af31ca3c206c1ac (patch) | |
tree | a9f835e0f91538da8dc7f28fc6abc2800d697339 | |
parent | c3d1ecce6a7657f64490d9ed0723f8ee06a689b0 (diff) | |
download | fpc-a664cd401bf21259c7481a7a9af31ca3c206c1ac.tar.gz |
* never ignore BINUTILSPREFIX environment variable in fpmake
+ search also $(BINUTILSPREFIX)-gnu-gcc for a usable gcc to get the libgcc directory
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49181 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | packages/fpmkunit/src/fpmkunit.pp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/packages/fpmkunit/src/fpmkunit.pp b/packages/fpmkunit/src/fpmkunit.pp index acc0070beb..9572af4ea4 100644 --- a/packages/fpmkunit/src/fpmkunit.pp +++ b/packages/fpmkunit/src/fpmkunit.pp @@ -2890,7 +2890,9 @@ var GccExecutable: string; begin result := ''; - GccExecutable := ExeSearch(AddProgramExtension(CrossPrefix+'gcc', OS),Sysutils.GetEnvironmentVariable('PATH')); + GccExecutable := ExeSearch(AddProgramExtension(CrossPrefix+'gcc', OS),Sysutils.GetEnvironmentVariable('PATH')); + if not(FileExists(GccExecutable)) then + GccExecutable := ExeSearch(AddProgramExtension(CrossPrefix+'gnu-gcc', OS),Sysutils.GetEnvironmentVariable('PATH')); if FileExists(GccExecutable) then begin {$ifdef HAS_UNIT_PROCESS} @@ -2948,12 +2950,12 @@ begin ((CPU=riscv64) and (SourceCPU=riscv32)) or ((CPU=sparc64) and (SourceCPU=sparc)) ) or (SourceOS=openbsd) then - UseBinutilsPrefix:=true; + UseBinutilsPrefix:=true; end; - if not UseBinutilsPrefix then - CrossPrefix:='' - else if Sysutils.GetEnvironmentVariable('BINUTILSPREFIX')<>'' then + if Sysutils.GetEnvironmentVariable('BINUTILSPREFIX')<>'' then CrossPrefix:=Sysutils.GetEnvironmentVariable('BINUTILSPREFIX') + else if not UseBinutilsPrefix then + CrossPrefix:='' else CrossPrefix:=CPUToString(CPU)+'-'+OSToString(OS)+'-'; if OS in [freebsd, openbsd, dragonfly] then @@ -7215,9 +7217,9 @@ begin ReadBarrier; {$ifdef NO_THREADING} Args.Add('-Fl'+FCachedlibcPath); -{$ELSE} +{$ELSE} Args.Add('-Fl'+volatile(FCachedlibcPath)); -{$ENDIF} +{$ENDIF} end; // Custom options which are added by dependencies @@ -8677,7 +8679,7 @@ begin // that a package finished it's task. NotifyThreadWaiting := RTLEventCreate; SetLength(Threads,Defaults.ThreadsAmount); - try + try // Create all worker-threads try for Thr:=0 to Defaults.ThreadsAmount-1 do |