Compilers.inc
上传用户:xjwsee
上传日期:2008-08-02
资源大小:796k
文件大小:9k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. {.$define demo}
  2. //----------------------------------------------------------------------------------------------------------------------
  3. // Include file to determine which compiler is currently being used to build the project/component.
  4. // This file uses ideas from Brad Stowers DFS.inc file (www.delphifreestuff.com).
  5. //
  6. // Portions created by Mike Lischke are Copyright
  7. // (C) 1999-2002 Dipl. Ing. Mike Lischke. All Rights Reserved.
  8. //----------------------------------------------------------------------------------------------------------------------
  9. // The following symbols are defined:
  10. //
  11. // COMPILER_1    : Kylix/Delphi/BCB 1.x is the compiler.
  12. // COMPILER_1_UP : Kylix/Delphi/BCB 1.x or higher is the compiler.
  13. // COMPILER_2    : Kylix/Delphi 2.x or BCB 1.x is the compiler.
  14. // COMPILER_2_UP : Kylix/Delphi 2.x or higher, or BCB 1.x or higher is the compiler.
  15. // COMPILER_3    : Kylix/Delphi/BCB 3.x is the compiler.
  16. // COMPILER_3_UP : Kylix/Delphi/BCB 3.x or higher is the compiler.
  17. // COMPILER_4    : Kylix/Delphi/BCB 4.x is the compiler.
  18. // COMPILER_4_UP : Kylix/Delphi/BCB 4.x or higher is the compiler.
  19. // COMPILER_5    : Kylix/Delphi/BCB 5.x is the compiler.
  20. // COMPILER_5_UP : Kylix/Delphi/BCB 5.x or higher is the compiler.
  21. // COMPILER_6    : Kylix/Delphi/BCB 6.x is the compiler.
  22. // COMPILER_6_UP : Kylix/Delphi/BCB 6.x or higher is the compiler.
  23. // COMPILER_7    : Kylix/Delphi/BCB 7.x is the compiler.
  24. // COMPILER_7_UP : Kylix/Delphi/BCB 7.x or higher is the compiler.
  25. //
  26. // Only defined if Windows is the target:
  27. // CPPB        : Any version of BCB is being used.
  28. // CPPB_1      : BCB v1.x is being used.
  29. // CPPB_3      : BCB v3.x is being used.
  30. // CPPB_3_UP   : BCB v3.x or higher is being used.
  31. // CPPB_4      : BCB v4.x is being used.
  32. // CPPB_4_UP   : BCB v4.x or higher is being used.
  33. // CPPB_5      : BCB v5.x is being used.
  34. // CPPB_5_UP   : BCB v5.x or higher is being used.
  35. // CPPB_6      : BCB v6.x is being used.
  36. // CPPB_6_UP   : BCB v6.x or higher is being used.
  37. //
  38. // Only defined if Windows is the target:
  39. // DELPHI      : Any version of Delphi is being used.
  40. // DELPHI_1    : Delphi v1.x is being used.
  41. // DELPHI_2    : Delphi v2.x is being used.
  42. // DELPHI_2_UP : Delphi v2.x or higher is being used.
  43. // DELPHI_3    : Delphi v3.x is being used.
  44. // DELPHI_3_UP : Delphi v3.x or higher is being used.
  45. // DELPHI_4    : Delphi v4.x is being used.
  46. // DELPHI_4_UP : Delphi v4.x or higher is being used.
  47. // DELPHI_5    : Delphi v5.x is being used.
  48. // DELPHI_5_UP : Delphi v5.x or higher is being used.
  49. // DELPHI_6    : Delphi v6.x is being used.
  50. // DELPHI_6_UP : Delphi v6.x or higher is being used.
  51. // DELPHI_7    : Delphi v7.x is being used.
  52. // DELPHI_7_UP : Delphi v7.x or higher is being used.
  53. //
  54. // Only defined if Linux is the target:
  55. // KYLIX       : Any version of Kylix is being used.
  56. // KYLIX_1     : Kylix 1.x is being used.
  57. // KYLIX_1_UP  : Kylix 1.x or higher is being used.
  58. // KYLIX_2     : Kylix 2.x is being used.
  59. // KYLIX_2_UP  : Kylix 2.x or higher is being used.
  60. // KYLIX_3     : Kylix 3.x is being used.
  61. // KYLIX_3_UP  : Kylix 3.x or higher is being used.
  62. //
  63. // Only defined if Linux is the target:
  64. // QT_CLX      : Trolltech's QT library is being used.
  65. //----------------------------------------------------------------------------------------------------------------------
  66. {$ifdef Win32}
  67.   {$IFDEF VER220}         // Delphi 14
  68.     {$define COMPILER_14}
  69.     {$ifdef BCB}
  70.       {$define CPPB}
  71.       {$define CPPB_6}
  72.     {$else}
  73.       {$define DELPHI}
  74.       {$define DELPHI_14}
  75.       {$define DELPHI_6_UP}
  76.     {$endif}
  77.   {$endif}
  78.   {$IFDEF VER210}         // Delphi 13
  79.     {$define COMPILER_13}
  80.     {$ifdef BCB}
  81.       {$define CPPB}
  82.       {$define CPPB_6}
  83.     {$else}
  84.       {$define DELPHI}
  85.       {$define DELPHI_13}
  86.       {$define DELPHI_6_UP}
  87.     {$endif}
  88.   {$endif}
  89.   {$IFDEF VER200}         // Delphi 12
  90.     {$define COMPILER_12}
  91.     {$ifdef BCB}
  92.       {$define CPPB}
  93.       {$define CPPB_6}
  94.     {$else}
  95.       {$define DELPHI}
  96.       {$define DELPHI_12}
  97.       {$define DELPHI_6_UP}
  98.     {$endif}
  99.   {$endif}
  100.   {$IFDEF VER190}         // Delphi 11
  101.     {$define COMPILER_11}
  102.     {$ifdef BCB}
  103.       {$define CPPB}
  104.       {$define CPPB_6}
  105.     {$else}
  106.       {$define DELPHI}
  107.       {$define DELPHI_11}
  108.       {$define DELPHI_6_UP}
  109.     {$endif}
  110.   {$endif}
  111.   {$IFDEF VER180}         // Delphi 10
  112.     {$define COMPILER_10}
  113.     {$ifdef BCB}
  114.       {$define CPPB}
  115.       {$define CPPB_6}
  116.     {$else}
  117.       {$define DELPHI}
  118.       {$define DELPHI_10}
  119.     {$endif}
  120.   {$endif}
  121.   {$IFDEF VER170}         // Delphi 9
  122.     {$define COMPILER_9}
  123.     {$define DELPHI}
  124.     {$define DELPHI_9}
  125.   {$endif}
  126.   {$ifdef VER150}
  127.     {$define COMPILER_7}
  128.     {$define DELPHI}
  129.     {$define DELPHI_7}
  130.   {$endif}
  131.   {$ifdef VER140}
  132.     {$define COMPILER_6}
  133.     {$ifdef BCB}
  134.       {$define CPPB}
  135.       {$define CPPB_6}
  136.     {$else}
  137.       {$define DELPHI}
  138.       {$define DELPHI_6}
  139.     {$endif}
  140.   {$endif}
  141.   {$ifdef VER130}
  142.     {$define COMPILER_5}
  143.     {$ifdef BCB}
  144.       {$define CPPB}
  145.       {$define CPPB_5}
  146.     {$else}
  147.       {$define DELPHI}
  148.       {$define DELPHI_5}
  149.     {$endif}
  150.   {$endif}
  151.   {$ifdef VER125}
  152.     {$define COMPILER_4}
  153.     {$define CPPB}
  154.     {$define CPPB_4}
  155.   {$endif}
  156.   {$ifdef VER120}
  157.     {$define COMPILER_4}
  158.     {$define DELPHI}
  159.     {$define DELPHI_4}
  160.   {$endif}
  161.   {$ifdef VER110}
  162.     {$define COMPILER_3}
  163.     {$define CPPB}
  164.     {$define CPPB_3}
  165.   {$endif}
  166.   {$ifdef VER100}
  167.     {$define COMPILER_3}
  168.     {$define DELPHI}
  169.     {$define DELPHI_3}
  170.   {$endif}
  171.   {$ifdef VER93}
  172.     {$define COMPILER_2} // BCB v1 compiler is really v2
  173.     {$define CPPB}
  174.     {$define CPPB_1}
  175.   {$endif}
  176.   {$ifdef VER90}
  177.     {$define COMPILER_2}
  178.     {$define DELPHI}
  179.     {$define DELPHI_2}
  180.   {$endif}
  181.   {$ifdef VER80}
  182.     {$define COMPILER_1}
  183.     {$define DELPHI}
  184.     {$define DELPHI_1}
  185.   {$endif}
  186. {$else (not Windows)}
  187.   // Linux is the target
  188.   {$define QT_CLX}
  189.   {$ifdef VER150}
  190.     {$define COMPILER_7}
  191.     {$ifdef BCB}
  192.       please tell milan_va@seznam.cz it works, then delete this line
  193.       {$define KYLIXC}
  194.       {$define KYLIXC_2}
  195.     {$else}
  196.       {$define KYLIX}
  197.       {$define KYLIX_2}
  198.     {$endif}
  199.   {$endif}
  200.   {$ifdef VER140}
  201.     {$define COMPILER_6}
  202.     {$ifdef BCB}
  203.       please tell milan_va@seznam.cz it works, then delete this line
  204.       {$define KYLIXC}
  205.       {$define KYLIXC_1}
  206.     {$else}
  207.       {$define KYLIX}
  208.       {$define KYLIX_1}
  209.     {$endif}
  210.   {$endif}
  211. {$endif (Win32)}
  212. {$ifdef COMPILER_1}
  213.   {$define COMPILER_1_UP}
  214. {$endif}
  215. {$ifdef COMPILER_2}
  216.   {$define COMPILER_1_UP}
  217.   {$define COMPILER_2_UP}
  218. {$endif}
  219. {$ifdef COMPILER_3}
  220.   {$define COMPILER_1_UP}
  221.   {$define COMPILER_2_UP}
  222.   {$define COMPILER_3_UP}
  223. {$endif}
  224. {$ifdef COMPILER_4}
  225.   {$define COMPILER_1_UP}
  226.   {$define COMPILER_2_UP}
  227.   {$define COMPILER_3_UP}
  228.   {$define COMPILER_4_UP}
  229. {$endif}
  230. {$ifdef COMPILER_5}
  231.   {$define COMPILER_1_UP}
  232.   {$define COMPILER_2_UP}
  233.   {$define COMPILER_3_UP}
  234.   {$define COMPILER_4_UP}
  235.   {$define COMPILER_5_UP}
  236. {$endif}
  237. {$ifdef COMPILER_6}
  238.   {$define COMPILER_1_UP}
  239.   {$define COMPILER_2_UP}
  240.   {$define COMPILER_3_UP}
  241.   {$define COMPILER_4_UP}
  242.   {$define COMPILER_5_UP}
  243.   {$define COMPILER_6_UP}
  244. {$endif}
  245. {$ifdef COMPILER_7}
  246.   {$define COMPILER_1_UP}
  247.   {$define COMPILER_2_UP}
  248.   {$define COMPILER_3_UP}
  249.   {$define COMPILER_4_UP}
  250.   {$define COMPILER_5_UP}
  251.   {$define COMPILER_6_UP}
  252.   {$define COMPILER_7_UP}
  253. {$endif}
  254. {$ifdef DELPHI_2}
  255.   {$define DELPHI_2_UP}
  256. {$endif}
  257. {$ifdef DELPHI_3}
  258.   {$define DELPHI_2_UP}
  259.   {$define DELPHI_3_UP}
  260. {$endif}
  261. {$ifdef DELPHI_4}
  262.   {$define DELPHI_2_UP}
  263.   {$define DELPHI_3_UP}
  264.   {$define DELPHI_4_UP}
  265. {$endif}
  266. {$ifdef DELPHI_5}
  267.   {$define DELPHI_2_UP}
  268.   {$define DELPHI_3_UP}
  269.   {$define DELPHI_4_UP}
  270.   {$define DELPHI_5_UP}
  271. {$endif}
  272. {$ifdef DELPHI_6}
  273.   {$define DELPHI_2_UP}
  274.   {$define DELPHI_3_UP}
  275.   {$define DELPHI_4_UP}
  276.   {$define DELPHI_5_UP}
  277.   {$define DELPHI_6_UP}
  278. {$endif}
  279. {$ifdef DELPHI_7}
  280.   {$define DELPHI_2_UP}
  281.   {$define DELPHI_3_UP}
  282.   {$define DELPHI_4_UP}
  283.   {$define DELPHI_5_UP}
  284.   {$define DELPHI_6_UP}
  285.   {$define DELPHI_7_UP}
  286. {$endif}
  287. {$ifdef DELPHI_9}
  288.   {$define DELPHI_2_UP}
  289.   {$define DELPHI_3_UP}
  290.   {$define DELPHI_4_UP}
  291.   {$define DELPHI_5_UP}
  292.   {$define DELPHI_6_UP}
  293.   {$define DELPHI_7_UP}
  294. {$endif}
  295. {$ifdef DELPHI_10}
  296.   {$define DELPHI_2_UP}
  297.   {$define DELPHI_3_UP}
  298.   {$define DELPHI_4_UP}
  299.   {$define DELPHI_5_UP}
  300.   {$define DELPHI_6_UP}
  301.   {$define DELPHI_7_UP}
  302. {$endif}
  303. {$ifdef CPPB_3}
  304.   {$define CPPB_3_UP}
  305. {$endif}
  306. {$ifdef CPPB_4}
  307.   {$define CPPB_3_UP}
  308.   {$define CPPB_4_UP}
  309. {$endif}
  310. {$ifdef CPPB_5}
  311.   {$define CPPB_3_UP}
  312.   {$define CPPB_4_UP}
  313.   {$define CPPB_5_UP}
  314. {$endif}
  315. {$ifdef CPPB_6}
  316.   {$define CPPB_3_UP}
  317.   {$define CPPB_4_UP}
  318.   {$define CPPB_5_UP}
  319.   {$define CPPB_6_UP}
  320. {$endif}
  321. {$ifdef KYLIX_1}
  322.   {$define KYLIX_1_UP}
  323. {$endif}
  324. {$ifdef KYLIX_2}
  325.   {$define KYLIX_1_UP}
  326.   {$define KYLIX_2_UP}
  327. {$endif}
  328. {$ifdef KYLIXC_1}
  329.   {$define KYLIXC_1_UP}
  330. {$endif}
  331. {$ifdef KYLIXC_2}
  332.   {$define KYLIXC_1_UP}
  333.   {$define KYLIXC_2_UP}
  334. {$endif}
  335. {$ifdef CPPB_3_UP}
  336.   // C++ Builder requires this if you use Delphi components in run-time packages.
  337.   {$ObjExportAll On}
  338. {$endif}
  339. //----------------------------------------------------------------------------------------------------------------------