fpmake.pp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit, sysutils;
  5. {$endif ALLPACKAGES}
  6. procedure add_fpmc;
  7. Var
  8. P : TPackage;
  9. T : TTarget;
  10. gtkOSes: TOSes;
  11. gtkdll: string;
  12. begin
  13. With Installer do
  14. begin
  15. P:=AddPackage('fpmc');
  16. P.Author := '<various>';
  17. P.License := 'LGPL with modification';
  18. P.HomepageURL := 'www.freepascal.org';
  19. P.Email := '';
  20. P.Description := 'Free Pascal Message Compiler.';
  21. P.NeedLibC:= false;
  22. {$ifdef ALLPACKAGES}
  23. P.Directory:='fpmc';
  24. {$endif ALLPACKAGES}
  25. P.Version:='2.7.1';
  26. P.OSes := [win32, win64, os2, emx];
  27. gtkOSes:=[linux];
  28. // Only compile fpmcgtk on win32 when the gtk-library is found in the path
  29. gtkdll:=FileSearch('libgtk-0.dll',GetEnvironmentVariable('PATH'),[sfoImplicitCurrentDir, sfoStripQuotes]);
  30. if gtkdll<>'' then
  31. include(gtkOSes,win32);
  32. P.Dependencies.Add('fcl-base');
  33. P.Dependencies.Add('fpgtk',gtkOSes);
  34. T:=P.Targets.AddProgram('fpmc.pp');
  35. T.Dependencies.AddUnit('msgcomp');
  36. T:=P.Targets.AddProgram('fpmcgtk.pp',gtkOSes);
  37. T.Dependencies.AddUnit('msgcomp');
  38. T.Dependencies.AddUnit('frmmain');
  39. T.Dependencies.AddUnit('frmabout');
  40. T.Dependencies.AddUnit('frmoptions');
  41. T:=P.Targets.AddUnit('frmmain.pp');
  42. T.install:=false;
  43. T.ResourceStrings:=true;
  44. T:=P.Targets.AddUnit('frmabout.pp');
  45. T.install:=false;
  46. T.ResourceStrings:=true;
  47. T:=P.Targets.AddUnit('frmoptions.pp');
  48. T.install:=false;
  49. T.ResourceStrings:=true;
  50. T:=P.Targets.AddUnit('msgcomp.pp');
  51. T.install:=false;
  52. T.ResourceStrings:=true;
  53. end;
  54. end;
  55. {$ifndef ALLPACKAGES}
  56. begin
  57. add_fpmc;
  58. Installer.Run;
  59. end.
  60. {$endif ALLPACKAGES}