fpmake.pp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  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_fprcp(const ADirectory: string);
  11. Var
  12. P : TPackage;
  13. T : TTarget;
  14. begin
  15. With Installer do
  16. begin
  17. P:=AddPackage('utils-fprcp');
  18. P.ShortName:='fprc';
  19. { java and jvm-android do not support
  20. getmem/freemem and new/dispose used in
  21. these sources }
  22. if Defaults.CPU=jvm then
  23. P.OSes := P.OSes - [java,android];
  24. { palmos does not have classes }
  25. P.OSes := P.OSes - [palmos];
  26. { Program does not fit in 16-bit memory constraints }
  27. P.OSes := P.OSes - [msdos,win16,zxspectrum,msxdos,amstradcpc,sinclairql,human68k];
  28. { avr-embedded and i8086-embedded have not floating point support by default }
  29. if Defaults.CPU in [avr,i8086,z80] then
  30. P.OSes := P.OSes - [embedded];
  31. P.Author := '<various>';
  32. P.License := 'LGPL with modification';
  33. P.HomepageURL := 'www.freepascal.org';
  34. P.Email := '';
  35. P.Description := 'fprcp.exe extracts from C header and Pascal files included into resource '+
  36. 'scripts numerical constants and replaces these constants to its values '+
  37. 'in resource script.';
  38. P.NeedLibC:= false;
  39. P.Directory:=ADirectory;
  40. P.Version:='3.3.1';
  41. T:=P.Targets.AddProgram('fprcp.pp');
  42. T.Dependencies.AddUnit('comments');
  43. T.Dependencies.AddUnit('expr');
  44. T.Dependencies.AddUnit('pasprep');
  45. P.Targets.AddUnit('comments.pp').install:=false;
  46. P.Targets.AddUnit('expr.pp').install:=false;
  47. P.Targets.AddUnit('pasprep.pp').install:=false;
  48. end;
  49. end;
  50. {$ifndef ALLPACKAGES}
  51. begin
  52. add_fprcp('');
  53. Installer.Run;
  54. end.
  55. {$endif ALLPACKAGES}