LinkDLLUnit.pas 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. unit LinkDLLUnit;
  2. interface
  3. uses
  4. Classes;
  5. const
  6. LinkLibCurInterfaceVersion = 17;
  7. llcdTI92 = $01;
  8. llcdTI89 = $02;
  9. llcdTI92Plus = $04;
  10. llcdV200 = $08;
  11. llcdFlagTitanium = $100;
  12. llffTIOS = 0;
  13. llffTIOSUpgrade = 1;
  14. llffGDBCOFF = 2;
  15. llfrMain = 0;
  16. llfrData = 1;
  17. llfrDebuggingInfo = 2;
  18. llmtError = 0;
  19. llmtWarning = 1;
  20. type
  21. TLinkLibDestFile = packed record
  22. Data: Pointer;
  23. end;
  24. TLinkLibDataVarInfo = packed record
  25. VarName: PChar;
  26. CreateCopy,
  27. CopyOnlyIfArchived: WordBool;
  28. end;
  29. TLinkLibOptimizeInfo = packed record
  30. RemoveUnused,
  31. OptimizeRelocs,
  32. OptimizeNOPs,
  33. OptimizeReturns,
  34. OptimizeBranches,
  35. OptimizeMoves,
  36. OptimizeTests,
  37. OptimizeCalcs,
  38. UseFLineJumps,
  39. Use4ByteFLineJumps,
  40. CutRanges,
  41. ReorderSections,
  42. MergeConstants: WordBool;
  43. ProgramSize,
  44. DataSize,
  45. BSSSize,
  46. RelocCount,
  47. NativeRelocCount,
  48. OptimizeBranchesResult,
  49. OptimizeMovesResult,
  50. OptimizeTestsResult,
  51. OptimizeCalcsResult,
  52. UseFLineJumpsResult,
  53. CutRangesResult,
  54. NearAssemblyResult: LongInt;
  55. end;
  56. PCharArray = array [0..MaxListSize-1] of PChar;
  57. PPChar = ^PCharArray;
  58. TLinkLibGetInterfaceVersion = function: LongInt; cdecl;
  59. TLinkLibGetOutputFile = function (var DestFile: TLinkLibDestFile; FileSize, DestCalc, FileRole, FileFormat, FileType: LongInt; Extension: PChar; Executable: WordBool; var EffectiveSize: LongInt): WordBool; cdecl;
  60. TLinkLibFinalizeOutputFile = procedure (var DestFile: TLinkLibDestFile); cdecl;
  61. TLinkLibError = procedure (FileName, Text: PChar; MessageType: LongInt); cdecl;
  62. TLinkLibLinkFiles = function (ObjectFiles, ArchiveFiles: PPChar; ErrorMessage: TLinkLibError; GetOutputFile: TLinkLibGetOutputFile; FinalizeOutputFile: TLinkLibFinalizeOutputFile; NativeMode, FlashOS, Fargo: WordBool; var DataVarInfo: TLinkLibDataVarInfo; var OptimizeInfo: TLinkLibOptimizeInfo; OmitBSSInitialization: WordBool): ShortInt; cdecl;
  63. TLinkLibCreateArchive = function (DestFile: PChar; ObjectFiles: PPChar; ErrorMessage: TLinkLibError; NoNames: WordBool): ShortInt; cdecl;
  64. implementation
  65. end.