Commit History

Author SHA1 Message Date
  svenbarth dd4cdca7ab Generate an error if a unit listed as in "contains" is part of a directly or indirectly required package. 9 years ago
  svenbarth 8d99dd6391 Ensure that all implicitely imported units are indeed part of the package. 9 years ago
  svenbarth d4279fac24 Correctly handle export/import generation depending on whether we're compiling for a system that needs indirect imports or not. 9 years ago
  svenbarth 5aa7e5740b Store the modified PPU files directly inside the PCP and thus get finally rid of the .ppl.ppu files. 9 years ago
  svenbarth 84cb8d7b2f Check whether a unit has been implicitely imported in a package. A unit is considered as implicitely imported if it is not part of a required package nor part of the units listed in the contains section. This note is useful (Delphi even provides a dialog in that case) as a package with implicitely imported units /might/ become incompatible with other packages (e.g. if another package includes that unit uses that package and includes that unit explicitely; of course that is the same as if both package included it explicitely, but with the hint one knows where to look). 10 years ago
  svenbarth 1d4b105f01 Do not check whether all units are used as by definition all units of a package are considered as used. 10 years ago
  svenbarth 08329518c9 Respect DenyPackageUnit flag. 10 years ago
  svenbarth 79eb9d6743 Keep track of how many units are used from each required/requested package and only link those from which any units are used. 10 years ago
  svenbarth 0add53bfd3 pkgutil.pas: 10 years ago
  svenbarth 9c7ee0794e pmodules.pas, proc_package: 10 years ago
  svenbarth cbcda8bd59 Generate unit exports only for system that need them. 10 years ago
  svenbarth 3710c86a1f Ensure that the reference to the System unit is correctly set up for packages. Among other things this is needed to compile a package with the -gl option (though debug information doesn't work yet). 10 years ago
  svenbarth 3eacfce4b4 Correctly create import libraries for packages as well. 10 years ago
  svenbarth be6a1c719c Add support for parsing required packages. 10 years ago
  svenbarth 9887293bec When compiling a package, handle only those units that are not yet part of a package. 10 years ago
  svenbarth 60d36f89ae Ensure that the correct name is used for the PCP file. 10 years ago
  svenbarth 8df3f8dcd2 Ensure that unneeded initialization/finalization procedures don't leave assembler symbols. 10 years ago
  svenbarth 18abc831eb Until package PPU are stored inside the PCP we use .ppl.ppu as extension (instead of .ppu) to find the PPU files that were adjusted for usage in a package. 11 years ago
  svenbarth 3d8a43e5f2 Don't link objects files of a unit that is provided by a package. 11 years ago
  svenbarth 2808b38882 Generate the import library for each used package. 11 years ago
  svenbarth c0d577fd69 Add the possibility to load all packages supplied as parameters. 11 years ago
  svenbarth 854cd84921 Generate the PCP file once the package file and the used units were compiled correctly. 11 years ago
  svenbarth 6f15aef215 To correctly generate the import library for a package we need to resolve the dangling external symbols of all units. For this each unit now stores which symbols it exported from another unit and it also stores all global and external assembler symbols it has (maybe this can be streamlined later on, but for now this works). 11 years ago
  svenbarth f4e17dd8c1 Some small fixes for package parsing. 11 years ago
  svenbarth 1ca193885f Extract the code to export the symbols of a unit to its own function in pkgutil so that less functions need to be exported. 11 years ago
  svenbarth 1f4440a866 Move package related functions from pmodules to pkgutil. 11 years ago
  svenbarth 6a1b314ce8 Convert export options from constants to a set and accordingly adjust all usage locations 11 years ago
  svenbarth f359fe4690 Extract reading of the PPU/PCP version into tentryfile. 11 years ago
  svenbarth 5e33294782 Extract functionality that is shared between the metadata files for units (PPU) and for packages (PCP) into a parent class called tentryfile 11 years ago
  svenbarth 09582ceb7e Add a new target flag which determines whether the target supports dynamic packages or not. 11 years ago