fpmake.pp 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses {$ifdef unix}cthreads,{$endif} fpmkunit;
  5. Var
  6. P : TPackage;
  7. T : TTarget;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('pastojs');
  13. P.ShortName := 'p2js';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.OSes:=AllUnixOSes+AllBSDOSes+AllWindowsOSes-[WinCE]+[wasip1,wasip1threads];
  19. if Defaults.CPU=jvm then
  20. P.OSes := P.OSes - [java,android];
  21. P.Dependencies.Add('paszlib');
  22. P.Dependencies.Add('fcl-js');
  23. P.Dependencies.Add('fcl-json');
  24. P.Dependencies.Add('fcl-passrc');
  25. P.Dependencies.Add('fcl-process',AllUnixOSes+AllBSDOSes+AllWindowsOSes-[WinCE]);
  26. Defaults.Options.Add('-Sc');
  27. P.Author := 'Free Pascal development team';
  28. P.License := 'LGPL with modification, ';
  29. P.HomepageURL := 'www.freepascal.org';
  30. P.SourcePath.Add('src');
  31. P.IncludePath.Add('src');
  32. P.SupportBuildModes := [bmOneByOne];
  33. P.Options.Add('-S2h');
  34. T:=P.Targets.AddUnit('pas2jsfiler.pp');
  35. T:=P.Targets.AddUnit('fppas2js.pp');
  36. T.ResourceStrings:=true;
  37. T:=P.Targets.AddUnit('fppjssrcmap.pp');
  38. T:=P.Targets.AddUnit('pas2jsfs.pp');
  39. T:=P.Targets.AddUnit('pas2jsutils.pp');
  40. T:=P.Targets.AddUnit('pas2jsfilecache.pp');
  41. T.Dependencies.AddUnit('pas2jsfs');
  42. T.Dependencies.AddUnit('pas2jsutils');
  43. T:=P.Targets.AddUnit('pas2jsfileutils.pp');
  44. T.Dependencies.AddInclude('pas2js_defines.inc');
  45. T.Dependencies.AddInclude('pas2jsfileutilsunix.inc',AllUnixOSes);
  46. T.Dependencies.AddInclude('pas2jsfileutilswin.inc',AllWindowsOSes);
  47. T:=P.Targets.AddUnit('pas2jslogger.pp');
  48. T:=P.Targets.AddUnit('pas2jspparser.pp');
  49. T:=P.Targets.AddUnit('pas2jsuseanalyzer.pp');
  50. T:=P.Targets.AddUnit('pas2jscompiler.pp');
  51. T:=P.Targets.AddUnit('pas2jsresstrfile.pp');
  52. T.ResourceStrings := True;
  53. T:=P.Targets.AddUnit('pas2jsresources.pp');
  54. T:=P.Targets.AddUnit('pas2jshtmlresources.pp');
  55. T:=P.Targets.AddUnit('pas2jsjsresources.pp');
  56. T:=P.Targets.AddUnit('pas2jsfscompiler.pp');
  57. T.Dependencies.AddUnit('pas2jscompiler');
  58. T:=P.Targets.AddUnit('pas2jspcucompiler.pp');
  59. T.Dependencies.AddUnit('pas2jsfscompiler');
  60. T:=P.Targets.AddUnit('pas2jscompilercfg.pp');
  61. T.Dependencies.AddUnit('pas2jscompiler');
  62. T:=P.Targets.AddUnit('pas2jscompilerpp.pp');
  63. T.Dependencies.AddUnit('pas2jscompiler');
  64. T:=P.Targets.AddUnit('pas2jslibcompiler.pp');
  65. T.Dependencies.AddUnit('pas2jspcucompiler');
  66. T.Dependencies.AddUnit('pas2jscompilercfg');
  67. T.Dependencies.AddUnit('pas2jscompilerpp');
  68. P.NamespaceMap:='namespaces.lst';
  69. {$ifndef ALLPACKAGES}
  70. Run;
  71. end;
  72. end.
  73. {$endif ALLPACKAGES}