fpmake.pp 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. {$mode objfpc}{$H+}
  2. {$define allpackages}
  3. program fpmake;
  4. {$IFDEF OS2}
  5. {$DEFINE NO_UNIT_PROCESS}
  6. {$ENDIF OS2}
  7. {$IFDEF GO32V2}
  8. {$DEFINE NO_UNIT_PROCESS}
  9. {$ENDIF GO32V2}
  10. {$ifndef NO_UNIT_PROCESS}
  11. {$define HAS_UNIT_PROCESS}
  12. {$endif NO_UNIT_PROCESS}
  13. uses
  14. fpmkunit,
  15. {$IFDEF HAS_UNIT_PROCESS}
  16. process,
  17. {$ENDIF HAS_UNIT_PROCESS}
  18. sysutils;
  19. procedure add_utils;
  20. Var
  21. P : TPackage;
  22. T : TTarget;
  23. begin
  24. With Installer do
  25. begin
  26. P:=AddPackage('utils');
  27. P.Author := '<various>';
  28. P.License := 'LGPL with modification';
  29. P.HomepageURL := 'www.freepascal.org';
  30. P.Email := '';
  31. P.Description := 'Various Free Pascal utilities.';
  32. P.NeedLibC:= false;
  33. P.Dependencies.Add('fcl-base');
  34. P.Dependencies.Add('paszlib');
  35. P.Dependencies.Add('hash');
  36. P.Dependencies.Add('univint',[darwin,iphonesim]);
  37. P.Version:='2.7.1';
  38. T:=P.Targets.AddProgram('ptop.pp');
  39. T.Dependencies.AddUnit('ptopu');
  40. T.ResourceStrings:=true;
  41. P.Targets.AddProgram('ppdep.pp');
  42. P.Targets.AddProgram('rstconv.pp').ResourceStrings:=true;
  43. P.Targets.AddProgram('data2inc.pp');
  44. P.Targets.AddProgram('delp.pp');
  45. P.Targets.AddProgram('bin2obj.pp');
  46. P.Targets.AddProgram('postw32.pp');
  47. P.Targets.AddProgram('rmcvsdir.pp');
  48. P.Targets.AddProgram('grab_vcsa.pp',[linux]);
  49. P.Targets.AddUnit('ptopu.pp').install:=false;
  50. end;
  51. end;
  52. (*
  53. The include files are generated with the following commands:
  54. rm fpmake_proc.inc fpmake_add.inc ; /bin/ls -1 */fpmake.pp| while read file; do cleanedname=`dirname $file | sed -e 's+-+_+g'` ; if ! `grep -i "^procedure add_$cleanedname" $file >/dev/null` ; then printf 'procedure add_%s;\nbegin\n with Installer do\n{$include %s}\nend;\n\n' $cleanedname $file >> fpmake_proc.inc; else printf '{$include %s}\n\n' $file >> fpmake_proc.inc; fi; echo " add_$cleanedname;" >> fpmake_add.inc; done
  55. *)
  56. {$include fpmake_proc.inc}
  57. begin
  58. {$include fpmake_add.inc}
  59. add_utils;
  60. Installer.Run;
  61. end.