fpmake.pp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses
  5. {$ifdef unix}
  6. cthreads,
  7. {$endif}
  8. fpmkunit;
  9. {$endif ALLPACKAGES}
  10. procedure add_pas2js(const ADirectory: string);
  11. Const
  12. DefaultOSes = AllUnixOSes+AllBSDOSes+AllWindowsOSes-[WinCE];
  13. AllPas2JSOses = DefaultOSes+[wasi];
  14. Var
  15. P : TPackage;
  16. PT,T : TTarget;
  17. begin
  18. With Installer do
  19. begin
  20. P:=AddPackage('utils-pas2js');
  21. P.Author := 'Free Pascal Team';
  22. P.License := 'LGPL with modification';
  23. P.HomepageURL := 'www.freepascal.org';
  24. P.Description := 'Convert pascal sources to javascript.';
  25. P.Email := '[email protected]';
  26. P.NeedLibC:= false;
  27. P.ShortName:='p2js';
  28. P.Directory:=ADirectory;
  29. P.Version:='3.3.1';
  30. P.OSes:=AllPas2JSOses;
  31. if Defaults.CPU=jvm then
  32. P.OSes := P.OSes - [java,android];
  33. P.Dependencies.Add('fcl-json');
  34. P.Dependencies.Add('fcl-js');
  35. P.Dependencies.Add('fcl-passrc');
  36. P.Dependencies.Add('pastojs');
  37. P.Dependencies.Add('fcl-web',DefaultOSes);
  38. P.Dependencies.Add('webidl');
  39. PT:=P.Targets.AddProgram('pas2js.pp');
  40. PT:=P.Targets.AddLibrary('pas2jslib.pp');
  41. PT:=P.Targets.AddUnit('dirwatch.pp',DefaultOSes);
  42. PT:=P.Targets.AddUnit('httpcompiler.pp',DefaultOSes);
  43. PT.Dependencies.AddUnit('dirwatch');
  44. PT:=P.Targets.AddProgram('compileserver.pp',DefaultOSes);
  45. PT.Dependencies.AddUnit('httpcompiler');
  46. PT:=P.Targets.AddProgram('webidl2pas.pp');
  47. PT:=P.Targets.AddProgram('dts2pas.pp');
  48. end;
  49. end;
  50. {$ifndef ALLPACKAGES}
  51. begin
  52. add_pas2js('');
  53. Installer.Run;
  54. end.
  55. {$endif ALLPACKAGES}