PkgGen.dpr 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. { $HDR$}
  2. {**********************************************************************}
  3. { Unit archived using Team Coherence }
  4. { Team Coherence is Copyright 2002 by Quality Software Components }
  5. { }
  6. { For further information / comments, visit our WEB site at }
  7. { http://www.TeamCoherence.com }
  8. {**********************************************************************}
  9. {}
  10. { $Log: 55378: PkgGen.dpr
  11. {
  12. { Rev 1.17 3/28/2005 5:53:16 AM JPMugaas
  13. { New security package.
  14. }
  15. {
  16. { Rev 1.16 3/3/2005 7:46:22 PM JPMugaas
  17. { Backdoors for BDS assembly version information.
  18. }
  19. {
  20. { Rev 1.15 25/11/2004 8:10:22 AM czhower
  21. { Removed D4, D8, D10, D11
  22. }
  23. {
  24. { Rev 1.14 2004.11.14 10:35:34 AM czhower
  25. { Update
  26. }
  27. {
  28. { Rev 1.13 12/10/2004 15:39:38 HHariri
  29. { Fixes for VS
  30. }
  31. {
  32. { Rev 1.12 9/7/2004 3:50:46 PM JPMugaas
  33. { Updates.
  34. }
  35. {
  36. { Rev 1.11 04/09/2004 12:45:18 ANeillans
  37. { Moved the databasename and output paths into a globally accessible variable
  38. { -- makes it a lot easier to override if you need to (as I did for my local
  39. { file structure).
  40. }
  41. {
  42. { Rev 1.10 2004.08.30 11:27:54 czhower
  43. { Updates
  44. }
  45. {
  46. { Rev 1.9 2004.06.13 8:06:10 PM czhower
  47. { Update for D8
  48. }
  49. {
  50. { Rev 1.8 6/10/2004 6:55:36 PM JPMugaas
  51. { Bug fix, filtered was not true when it should've been causing units to be
  52. { added to the wrong packages. This was a bug I introduced. Sorry.
  53. }
  54. {
  55. { Rev 1.7 09/06/2004 12:06:54 CCostelloe
  56. { Added Kylix 3
  57. }
  58. {
  59. { Rev 1.6 6/8/2004 3:52:54 PM JPMugaas
  60. { FTP List generation should work.
  61. }
  62. {
  63. { Rev 1.5 6/8/2004 2:16:36 PM JPMugaas
  64. { Now does the FTP List parser listing unit.
  65. }
  66. {
  67. { Rev 1.4 02/06/2004 17:00:44 HHariri
  68. { design-time added
  69. }
  70. {
  71. { Rev 1.3 2004.05.19 10:01:54 AM czhower
  72. { Updates
  73. }
  74. {
  75. { Rev 1.2 2004.01.22 8:17:58 PM czhower
  76. { Updates
  77. }
  78. program PkgGen;
  79. {$APPTYPE CONSOLE}
  80. uses
  81. Classes,
  82. {$IFDEF WIN32}
  83. Windows,
  84. {$ENDIF}
  85. DB,
  86. SysUtils,
  87. Package in 'Package.pas',
  88. PackageVisualStudio in 'PackageVisualStudio.pas',
  89. PackageD8Master in 'PackageD8Master.pas',
  90. PackageSystem in 'PackageSystem.pas',
  91. PackageSuperCore in 'PackageSuperCore.pas',
  92. PackageCore in 'PackageCore.pas',
  93. PackageProtocols in 'PackageProtocols.pas',
  94. PackageFTPParsers in 'PackageFTPParsers.pas',
  95. PackageSecurity in 'PackageSecurity.pas',
  96. DModule in 'DModule.pas';
  97. procedure Main;
  98. begin
  99. DM := TDM.Create(nil); try
  100. with DM do begin
  101. WriteLn('Path: '+ Ini.FileName );
  102. if FindCmdLineSwitch('checkini') then begin
  103. CheckForMissingFiles;
  104. Exit;
  105. end;
  106. with TPackageVisualStudio.Create do try
  107. Load('DotNet=True, DesignUnit=False', True);
  108. Generate(ctDotNet);
  109. finally Free; end;
  110. // Debug version
  111. with TPackageVisualStudio.Create do try
  112. Debug := True;
  113. Load('DotNet=True, DesignUnit=False', True);
  114. Generate(ctDotNet);
  115. finally Free; end;
  116. with TPackageD8Master.Create do try
  117. Load('DelphiDotNet=True, DesignUnit=False', True);
  118. Generate(DelphiNet);
  119. finally Free; end;
  120. with TPackageSystem.Create do try
  121. Load('VCL=True, Pkg=System, DesignUnit=False');
  122. Generate(DelphiNative);
  123. //
  124. Load('DelphiDotNet=True, DotNet2_0OrAboveOnly=False, Pkg=System, DesignUnit=False');
  125. Generate(DelphiNet1_1);
  126. //
  127. Load('DelphiDotNet=True, Pkg=System, DesignUnit=False');
  128. Generate(DelphiNet2OrLater);
  129. //
  130. Load('Kylix=True, Pkg=System');
  131. Generate(ctKylix3);
  132. finally Free; end;
  133. with TPackageCore.Create do try
  134. Load('VCL=True, Pkg=Core, DesignUnit=False');
  135. Generate(DelphiNative);
  136. //
  137. Load('DelphiDotNet=True, DotNet2_0OrAboveOnly=False, Pkg=Core, DesignUnit=False');
  138. Generate(DelphiNet1_1);
  139. //
  140. Load('DelphiDotNet=True, Pkg=Core, DesignUnit=False');
  141. Generate(DelphiNet2OrLater);
  142. //
  143. Load('Kylix=True, Pkg=Core, DesignUnit=False');
  144. Generate(ctKylix3);
  145. //
  146. Load('VCL=True, Pkg=Core, DesignUnit=True');
  147. GenerateDT(DelphiNative);
  148. //
  149. Load('DelphiDotNet=True, Pkg=Core, DesignUnit=True');
  150. GenerateDT(DelphiNet);
  151. //
  152. Load('Kylix=True, Pkg=Core, DesignUnit=True');
  153. GenerateDT(ctKylix3);
  154. finally Free; end;
  155. with TPackageProtocols.Create do try
  156. Load('VCL=True, Pkg=Protocols, DesignUnit=False');
  157. Generate(DelphiNative);
  158. //
  159. Load('DelphiDotNet=True, DotNet2_0OrAboveOnly=False, Pkg=Protocols, DesignUnit=False');
  160. Generate(DelphiNet1_1);
  161. //
  162. Load('DelphiDotNet=True, Pkg=Protocols, DesignUnit=False');
  163. Generate(DelphiNet2OrLater);
  164. //
  165. Load('Kylix=True, Pkg=Protocols, DesignUnit=False');
  166. Generate(ctKylix3);
  167. //
  168. Load('VCL=True, Pkg=Protocols, DesignUnit=True');
  169. GenerateDT(DelphiNative);
  170. //
  171. Load('DelphiDotNet=True, DotNet2_0OrAboveOnly=False, Pkg=Protocols, DesignUnit=True');
  172. GenerateDT(DelphiNet1_1);
  173. //
  174. Load('DelphiDotNet=True, Pkg=Protocols, DesignUnit=True');
  175. GenerateDT(DelphiNet2OrLater);
  176. //
  177. Load('Kylix=True, Pkg=Protocols, DesignUnit=True');
  178. GenerateDT(ctKylix3);
  179. finally Free; end;
  180. with TPackageSecurity.Create do try
  181. //We are not going to support the Security package in NET 2.0.
  182. Load('DelphiDotNet=True, Pkg=Security, DesignUnit=False');
  183. Generate(DelphiNet1_1);
  184. //
  185. Load('DelphiDotNet=True, Pkg=Security, DesignUnit=True');
  186. GenerateDT(DelphiNet1_1);
  187. finally Free; end;
  188. with TPackageSuperCore.Create do try
  189. Load('VCL=True, Pkg=SuperCore');
  190. Generate(ctDelphi7);
  191. finally Free; end;
  192. // FTP Parsers
  193. with TFTPParsers.Create do try
  194. Load('VCL=True, Pkg=Protocols, FTPParser=True, DesignUnit=False');
  195. Generate(ctDelphi7);
  196. finally Free; end;
  197. end;
  198. finally
  199. FreeAndNil(DM);
  200. end;
  201. end;
  202. begin
  203. try
  204. Main;
  205. except
  206. on E: Exception do begin
  207. WriteLn(E.Message);
  208. // raise;
  209. end;
  210. end;
  211. WriteLn('Done! Press ENTER to exit...');
  212. ReadLn;
  213. end.