summaryrefslogtreecommitdiff
path: root/packages/fppkg/tests/packages/base/packagevarianta/fpmake.pp
blob: 2721298809110ca08ed1b7ba6fa22ff4dee322d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{$mode objfpc}{$H+}
program fpmake;

uses fpmkunit;

var
  P : TPackage;
  T : TTarget;
  ProcVersionVariant: TPackageVariants;
  ProcVersionA,
  ProcVersionB : TPackageVariant;

begin
  with Installer do
    begin
    P:=AddPackage('packagevarianta');
    P.Version:='3.2.0-beta';

    P.Author := 'Joost van der Sluis';
    P.License := 'GPL';
    P.HomepageURL := 'www.freepascal.org';
    P.Description := 'Package which comes in two flavours: VersionA and VersionB.';

    P.SourcePath.Add('src');

    // Definition of Widgetsets
    ProcVersionVariant := AddPackageVariant('ProcVersion', true);
    p.AddPackageVariant(ProcVersionVariant);

    ProcVersionA := ProcVersionVariant.Add('versiona');
    ProcVersionB := ProcVersionVariant.Add('versionb');

    ProcVersionVariant.DefaultPackageVariantName:='versiona';

    // Not used, but for example:
    // P.IncludePath.Add('$(ProcVersion)');
    // P.SourcePath.Add('$(ProcVersion)');

    P.Options.Add('-d$(ProcVersion)');
    P.TransmitOptions.Add('-dPROC$(ProcVersion)');

    // ProcVersion-specific options
    ProcVersionA.Options.Add('-dHello');

    T:=P.Targets.AddUnit('packagevariantbaseunit.pp');

    ProcVersionB.Targets.AddUnit('packagevariantversionbonly.pp');

    Run;
    end;
end.