Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .github/workflows/make.pas
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,10 @@ function ResolveDependency(const ADep: TDependency): string;
// Project classification helpers
// ---------------------------------------------------------------------------

// ---------------------------------------------------------------------------
// Determine whether an .lpi project is GUI
// ---------------------------------------------------------------------------

// A project is considered GUI if its .lpi lists LCL as a required package.
// GUI projects cannot run headless in CI, so we skip them entirely.
function IsGUIProject(const ALpiPath: string): Boolean;
Expand All @@ -455,6 +459,10 @@ function IsGUIProject(const ALpiPath: string): Boolean;
end;
end;

// ---------------------------------------------------------------------------
// Determine whether an .lpi project is a test runner
// ---------------------------------------------------------------------------

// A console project is a test runner if its .lpr uses consoletestrunner.
function IsTestProject(const ALpiPath: string): Boolean;
var
Expand Down Expand Up @@ -528,6 +536,19 @@ procedure Main;
// Install and register dependencies (safe when array is empty)
if Length(Dependencies) > 0 then
begin
// FPC 3.2.2 hardcodes OpenSSL 1.1 DLL names on Windows, but
// modern CI runners ship OpenSSL 3.x. Override so FPC can find
// the libraries. This hack can be removed once we move to
// FPC 3.2.4+ which natively includes OpenSSL 3.x DLL names.
{$IFDEF MSWINDOWS}
{$IFDEF WIN64}
DLLSSLName := 'libssl-3-x64.dll';
DLLUtilName := 'libcrypto-3-x64.dll';
{$ELSE}
DLLSSLName := 'libssl-3.dll';
DLLUtilName := 'libcrypto-3.dll';
{$ENDIF}
{$ENDIF}
InitSSLInterface;
for I := 0 to High(Dependencies) do
RegisterAllPackages(ResolveDependency(Dependencies[I]));
Expand Down
Loading
Loading