for example...my application use image acquisition from scanners.
So if you are under
Windows in the project file (lpi) there is:
<RequiredPackages Count="7">
<Item1>
<PackageName Value="WIAPascal_pkg"/>
</Item1>
<Item2>
<PackageName Value="DelphiTwain_pkg"/>
</Item2>
<Item3>
<PackageName Value="MaxM_Commons"/>
</Item3>
<Item4>
<PackageName Value="LazControls"/>
</Item4>
<Item5>
<PackageName Value="BGRABitmapPack"/>
</Item5>
<Item6>
<PackageName Value="bgracontrols"/>
</Item6>
<Item7>
<PackageName Value="LCL"/>
</Item7>
As you can see the first 2 items are strictly platform dependent because they use Windows DLLs and ActiveX.
If in the near future i want to port the application to
Linux what should i do?
I should make another lpi project file where there would be something like:
<RequiredPackages Count="7">
<Item1>
<PackageName Value="Sane_pkg"/>
</Item1>
..commons Items
My opinion is that it would be useful to add something to filter the required packages by platform and include only those of the platform being compiled.
example :
<RequiredPackages Count="7">
<Item1 platform="linux">
<PackageName Value="Sane_pkg"/>
</Item1>
<Item2 platform="windows">
<PackageName Value="WIAPascal_pkg"/>
</Item2>
<Item3>
<PackageName Value="LCL"/>
</Item3>