summaryrefslogtreecommitdiff
path: root/packages/ptc/fpmake.pp
blob: 8ab52275c6c957c017e8ecb3befd534e4a62e419 (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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
{$ifndef ALLPACKAGES}
{$mode objfpc}{$H+}
program fpmake;

uses fpmkunit;

Var
  P : TPackage;
  T : TTarget;
begin
  With Installer do
    begin
{$endif ALLPACKAGES}

    P:=AddPackage('ptc');
{$ifdef ALLPACKAGES}
    P.Directory:=ADirectory;
{$endif ALLPACKAGES}
    P.Version:='3.0.5';

    P.Author := 'Nikolay Nikolov, Glenn Fiedler, Christian Nentwich';
    P.License := 'LGPL with modification, ';
    P.HomepageURL := 'http://ptcpas.sourceforge.net/';
    P.Description := 'A free, portable framebuffer library.';
    p.OSes:=[linux,win32,win64,go32v2];

    P.SourcePath.Add('src');
    P.SourcePath.Add('src/ptcwrapper');
    P.SourcePath.Add('src/win32/directx', [win32, win64]);
    P.SourcePath.Add('src/dos/base',[go32v2]);
    P.SourcePath.Add('src/dos/cga',[go32v2]);
    P.SourcePath.Add('src/dos/textfx2',[go32v2]);
    P.SourcePath.Add('src/dos/timeunit',[go32v2]);
    P.SourcePath.Add('src/dos/vesa',[go32v2]);
    P.SourcePath.Add('src/dos/vga',[go32v2]);
    P.IncludePath.Add('src');
    P.IncludePath.Add('src/core');
    P.IncludePath.Add('src/dos',[go32v2]);
    P.IncludePath.Add('src/dos/base',[go32v2]);
    P.IncludePath.Add('src/dos/cga',[go32v2]);
    P.IncludePath.Add('src/dos/textfx2',[go32v2]);
    P.IncludePath.Add('src/dos/timeunit',[go32v2]);
    P.IncludePath.Add('src/dos/vesa',[go32v2]);
    P.IncludePath.Add('src/dos/vga',[go32v2]);
    P.IncludePath.Add('src/win32',[win32,win64]);
    P.IncludePath.Add('src/win32/base', [win32, win64]);
    P.IncludePath.Add('src/win32/directx', [win32, win64]);
    P.IncludePath.Add('src/win32/gdi', [win32, win64]);
    P.IncludePath.Add('src/wince',[wince]);
    P.IncludePath.Add('src/x11',AllUnixOSes);

  P.Dependencies.Add('hermes');
  P.Dependencies.Add('x11',AllUnixOSes);
  P.Dependencies.Add('opengl',AllUnixOSes + [win32, win64]);
  P.Dependencies.Add('fcl-base');
  p.Dependencies.Add('rtl-console');

  T:=P.Targets.AddUnit('p_ddraw.pp', [win32, win64]);

  T:=P.Targets.AddUnit('mouse33h.pp',[go32v2]);
  T:=P.Targets.AddUnit('textfx2.pp',[go32v2]);
  T:=P.Targets.AddUnit('cga.pp',[go32v2]);
  T:=P.Targets.AddUnit('timeunit.pp',[go32v2]);
  T:=P.Targets.AddUnit('vesa.pp',[go32v2]);
  T:=P.Targets.AddUnit('vga.pp',[go32v2]);

  T:=P.Targets.AddUnit('ptc.pp');
  with T.Dependencies do
    begin
      AddInclude('aread.inc');
      AddInclude('areai.inc');
      AddInclude('baseconsoled.inc');
      AddInclude('baseconsolei.inc');
      AddInclude('basesurfaced.inc');
      AddInclude('basesurfacei.inc');
      AddInclude('cleard.inc');
      AddInclude('cleari.inc');
      AddInclude('clipperd.inc');
      AddInclude('clipperi.inc');
      AddInclude('closeeventd.inc');
      AddInclude('closeeventi.inc');
      AddInclude('colord.inc');
      AddInclude('colori.inc');
      AddInclude('consoled.inc');
      AddInclude('consolei.inc');
      AddInclude('copyd.inc');
      AddInclude('copyi.inc');
      AddInclude('coreimplementation.inc');
      AddInclude('coreinterface.inc');
      AddInclude('errord.inc');
      AddInclude('errori.inc');
      AddInclude('eventd.inc');
      AddInclude('eventi.inc');
      AddInclude('formatd.inc');
      AddInclude('formati.inc');
      AddInclude('keyeventd.inc');
      AddInclude('keyeventi.inc');
      AddInclude('log.inc');
      AddInclude('moded.inc');
      AddInclude('modei.inc');
      AddInclude('mouseeventd.inc');
      AddInclude('mouseeventi.inc');
      AddInclude('openglattributesd.inc');
      AddInclude('openglattributesi.inc');
      AddInclude('paletted.inc');
      AddInclude('palettei.inc');
      AddInclude('resizeeventd.inc');
      AddInclude('resizeeventi.inc');
      AddInclude('surfaced.inc');
      AddInclude('surfacei.inc');
      AddInclude('timerd.inc');
      AddInclude('timeri.inc');
      AddInclude('includes.inc',[WinCE]);
      AddInclude('x11check.inc',allunixoses);
      AddInclude('x11consoled.inc',allunixoses);
      AddInclude('x11consolei.inc',allunixoses);
      AddInclude('x11dga1displayd.inc',allunixoses);
      AddInclude('x11dga1displayi.inc',allunixoses);
      AddInclude('x11dga2displayd.inc',allunixoses);
      AddInclude('x11dga2displayi.inc',allunixoses);
      AddInclude('x11displayd.inc',allunixoses);
      AddInclude('x11displayi.inc',allunixoses);
      AddInclude('x11extensions.inc',allunixoses);
      AddInclude('x11glxfbconfigd.inc',allunixoses);
      AddInclude('x11glxfbconfigi.inc',allunixoses);
      AddInclude('x11imaged.inc',allunixoses);
      AddInclude('x11imagei.inc',allunixoses);
      AddInclude('x11includes.inc',allunixoses);
      AddInclude('x11modesd.inc',allunixoses);
      AddInclude('x11modesi.inc',allunixoses);
      AddInclude('x11unikey.inc',allunixoses);
      AddInclude('x11windowdisplayd.inc',allunixoses);
      AddInclude('x11windowdisplayi.inc',allunixoses);
      AddInclude('win32cursor.inc', [win32, win64]);
      AddInclude('win32cursord.inc', [win32, win64]);
      AddInclude('win32cursormoded.inc', [win32, win64]);
      AddInclude('win32event.inc', [win32, win64]);
      AddInclude('win32eventd.inc', [win32, win64]);
      AddInclude('win32hook.inc', [win32, win64]);
      AddInclude('win32hookd.inc', [win32, win64]);
      AddInclude('win32kbd.inc', [win32, win64]);
      AddInclude('win32kbdd.inc', [win32, win64]);
      AddInclude('win32monitor.inc', [win32, win64]);
      AddInclude('win32monitord.inc', [win32, win64]);
      AddInclude('win32moused.inc', [win32, win64]);
      AddInclude('win32mousei.inc', [win32, win64]);
      AddInclude('win32resized.inc', [win32, win64]);
      AddInclude('win32resizei.inc', [win32, win64]);
      AddInclude('win32window.inc', [win32, win64]);
      AddInclude('win32windowd.inc', [win32, win64]);
      AddInclude('win32directxcheck.inc', [win32, win64]);
      AddInclude('win32directxconsoled.inc', [win32, win64]);
      AddInclude('win32directxconsolei.inc', [win32, win64]);
      AddInclude('win32directxdisplay.inc', [win32, win64]);
      AddInclude('win32directxdisplayd.inc', [win32, win64]);
      AddInclude('win32directxhook.inc', [win32, win64]);
      AddInclude('win32directxhookd.inc', [win32, win64]);
      AddInclude('win32directxlibrary.inc', [win32, win64]);
      AddInclude('win32directxlibraryd.inc', [win32, win64]);
      AddInclude('win32directxprimary.inc', [win32, win64]);
      AddInclude('win32directxprimaryd.inc', [win32, win64]);
      AddInclude('win32directxtranslate.inc', [win32, win64]);
      AddInclude('win32gdiconsoled.inc', [win32, win64]);
      AddInclude('win32gdiconsolei.inc', [win32, win64]);
      AddInclude('win32gdihookd.inc', [win32, win64]);
      AddInclude('win32gdihooki.inc', [win32, win64]);
      AddInclude('win32dibd.inc', [win32, win64]);
      AddInclude('win32dibi.inc', [win32, win64]);
      AddInclude('win32modesetterd.inc', [win32, win64]);
      AddInclude('win32modesetteri.inc', [win32, win64]);
      AddInclude('win32openglwindowd.inc', [win32, win64]);
      AddInclude('win32openglwindowi.inc', [win32, win64]);
      AddUnit('p_ddraw', [win32, win64]);
      AddInclude('includes.inc', [go32v2]);
      AddInclude('kbd.inc', [go32v2]);
      AddInclude('kbdd.inc', [go32v2]);
      AddInclude('moused.inc', [go32v2]);
      AddInclude('mousei.inc', [go32v2]);
      AddInclude('cgaconsoled.inc', [go32v2]);
      AddInclude('cgaconsolei.inc', [go32v2]);
      AddInclude('textfx2consoled.inc', [go32v2]);
      AddInclude('textfx2consolei.inc', [go32v2]);
      AddInclude('vesaconsoled.inc', [go32v2]);
      AddInclude('vesaconsolei.inc', [go32v2]);
      AddInclude('vgaconsoled.inc', [go32v2]);
      AddInclude('vgaconsolei.inc', [go32v2]);
      AddUnit('p_gx',[Wince]);
      AddUnit('mouse33h',[go32v2]);
      AddUnit('textfx2',[go32v2]);
      AddUnit('cga',[go32v2]);
      AddUnit('timeunit',[go32v2]);
      AddUnit('vesa',[go32v2]);
      AddUnit('vga',[go32v2]);
     end;
    T:=P.Targets.AddUnit('ptceventqueue.pp');
    with T.Dependencies do
      begin
        AddUnit('ptc');
      end;
    T:=P.Targets.AddUnit('ptcwrapper.pp');
    with T.Dependencies do
      begin
        AddUnit('ptc');
        AddUnit('ptceventqueue');
      end;

    P.ExamplePath.Add('examples/');
    P.Targets.AddExampleProgram('random.pp');
    P.Targets.AddExampleProgram('palette.pp');
    P.Targets.AddExampleProgram('pixel.pp');
    P.Targets.AddExampleProgram('console.pp');
    P.Targets.AddExampleProgram('image.pp');
    P.Targets.AddExampleProgram('flower.pp');
    P.Targets.AddExampleProgram('save.pp');
    P.Targets.AddExampleProgram('hicolor.pp');
    P.Targets.AddExampleProgram('stretch.pp');
    P.Targets.AddExampleProgram('tunnel.pp');
    P.Targets.AddExampleProgram('modes.pp');
    P.Targets.AddExampleProgram('buffer.pp');
    P.Targets.AddExampleProgram('texwarp.pp');
    P.Targets.AddExampleProgram('keyboard.pp');
    P.Targets.AddExampleProgram('timer.pp');
    P.Targets.AddExampleProgram('clip.pp');
    P.Targets.AddExampleProgram('lights.pp');
    P.Targets.AddExampleProgram('fire.pp');
    P.Targets.AddExampleProgram('mojo.pp');
    P.Targets.AddExampleProgram('land.pp');
    P.Targets.AddExampleProgram('keyboard2.pp');
    P.Targets.AddExampleProgram('keyboard3.pp');
    P.Targets.AddExampleProgram('clear.pp');
    P.Targets.AddExampleProgram('con_info.pp');
    P.Targets.AddExampleProgram('area.pp');
    P.Targets.AddExampleProgram('tunnel3d.pp');
    P.Targets.AddExampleProgram('ptcgl.pp', AllUnixOSes + [win32, win64]);
    P.Targets.AddExampleProgram('ptcgl2.pp', AllUnixOSes + [win32, win64]);
    P.Sources.AddExampleFiles('examples/*',P.Directory,false,'.');

{$ifndef ALLPACKAGES}
    Run;
    end;
end.
{$endif ALLPACKAGES}