{ %target=win32,win64,wince,darwin,linux,freebsd,solaris,beos,aix,android,haiku }
{ %norun }
{ %needlibrary }

library tw9089b;

{$mode objfpc}{$H+}

const
{$ifdef windows}
  libname='tw9089a.dll';
{$else}
  libname='tw9089a';
  {$linklib tw9089a}
{$endif}

var
  myvar: longint; cvar; external {$ifdef windows}libname{$endif windows};

function Test: Integer; cdecl; export;
begin
  Result := 0;

  Writeln('Test');
end;

exports
  Test;

var
  t: text;

initialization
  Writeln('INIT2');
  if (myvar<>-1) then
    halt(3);

finalization
  Writeln('FINI2');
  myvar:=1;
  { so tw9089d can check whether the finalization has run at all }
  assign(t,'tw9089b.txt');
  rewrite(t);
  close(t);
end.
