fpc/packages/fcl-base/fpmake.pp

231 lines
8.2 KiB
ObjectPascal

{$ifndef ALLPACKAGES}
{$mode objfpc}{$H+}
program fpmake;
uses {$ifdef unix}cthreads,{$endif} fpmkunit;
Var
T : TTarget;
P : TPackage;
begin
With Installer do
begin
{$endif ALLPACKAGES}
P:=AddPackage('fcl-base');
P.ShortName:='fclb';
{$ifdef ALLPACKAGES}
P.Directory:=ADirectory;
{$endif ALLPACKAGES}
P.Version:='3.3.1';
P.Dependencies.Add('univint',[Darwin,iPhoneSim,ios]);
p.Dependencies.Add('rtl-objpas');
P.Dependencies.Add('pthreads',AllUnixOSes);
P.Author := '<various>';
P.License := 'LGPL with modification, ';
P.Email := '';
P.Description := 'Base library of Free Component Libraries (FCL), FPC''s OOP library.';
P.NeedLibC:= false;
P.OSes:=AllOSes-[embedded,msdos,win16,macosclassic,palmos,zxspectrum,msxdos,amstradcpc,sinclairql,human68k,ps1,wasip2];
if Defaults.CPU=jvm then
P.OSes := P.OSes - [java,android];
P.SourcePath.Add('src');
P.SourcePath.Add('src/$(OS)');
P.SourcePath.Add('src/unix',AllUnixOSes);
P.SourcePath.Add('src/win',AllWindowsOSes);
P.IncludePath.Add('src');
P.IncludePath.Add('src/$(OS)');
P.IncludePath.Add('src/unix',AllUnixOSes);
P.IncludePath.Add('src/win',AllWindowsOSes-[WinCE]);
P.IncludePath.Add('src/dummy',AllOSes);
T:=P.Targets.AddUnit('ascii85.pp');
T:=P.Targets.AddUnit('avl_tree.pp');
T:=P.Targets.AddUnit('base64.pp');
T:=P.Targets.AddUnit('pascodegen.pp');
T:=P.Targets.AddUnit('fpobserver.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('blowfish.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('blowfish2.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('bufstream.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('cachecls.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('contnrs.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('singleinstance.pp');
T:=P.Targets.AddUnit('custapp.pp');
T.ResourceStrings:=true;
with T.Dependencies do
AddUnit('singleinstance');
T:=P.Targets.AddUnit('eventlog.pp');
T.ResourceStrings:=true;
with T.Dependencies do
begin
AddInclude('eventlog.inc');
end;
T:=P.Targets.AddUnit('fptimer.pp',AllWindowsOSes+AllUnixOSes);
T:=P.Targets.AddUnit('gettext.pp');
T:=P.Targets.AddUnit('idea.pp');
T:=P.Targets.AddUnit('inicol.pp');
T.ResourceStrings:=true;
with T.Dependencies do
begin
AddUnit('inifiles');
end;
T:=P.Targets.AddUnit('inifiles.pp');
T.ResourceStrings:=true;
with T.Dependencies do
begin
AddUnit('contnrs');
end;
T:=P.Targets.AddUnit('iostream.pp');
T:=P.Targets.AddUnit('chainstream.pp');
T:=P.Targets.AddUnit('lzwstream.pp');
T:=P.Targets.AddUnit('nullstream.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('maskutils.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('pooledmm.pp');
T:=P.Targets.AddUnit('rtfpars.pp');
with T.Dependencies do
begin
AddInclude('rtfdata.inc');
end;
T:=P.Targets.AddUnit('rttiutils.pp');
T:=P.Targets.AddUnit('streamcoll.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('streamex.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('streamio.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('fptemplate.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('syncobjs.pp',AllOSes-[go32v2,nativent,atari]);
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('uriparser.pp');
T:=P.Targets.AddUnit('wformat.pp');
T:=P.Targets.AddUnit('whtml.pp');
with T.Dependencies do
begin
AddUnit('wformat');
end;
T:=P.Targets.AddUnit('wtex.pp');
with T.Dependencies do
begin
AddUnit('wformat');
end;
T:=P.Targets.AddUnit('fpexprpars.pp');
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('csvreadwrite.pp');
T:=P.Targets.addUnit('csvdocument.pp');
With T.Dependencies do
begin
AddUnit('csvreadwrite');
AddUnit('contnrs');
end;
T:=P.Targets.addUnit('advancedipc.pp',AllOSes-[atari]);
T.ResourceStrings:=true;
T:=P.Targets.addUnit('advancedsingleinstance.pas',AllOSes-[atari]);
T.ResourceStrings:=true;
T:=P.Targets.AddUnit('fpthreadpool.pp',AllOSes-[go32v2,nativent,atari]);
T.Dependencies.AddUnit('syncobjs');
T.ResourceStrings:=true;
// Additional sources
P.Sources.AddSrcFiles('src/win/fclel.*', P.Directory);
// Install windows resources
P.InstallFiles.Add('src/win/fclel.res',AllWindowsOSes,'$(unitinstalldir)');
T:=P.Targets.addUnit('basenenc.pp');
T:=P.Targets.addUnit('dirwatch.pp');
// Examples
P.ExamplePath.Add('examples');
T:=P.Targets.AddExampleProgram('asiotest.pp');
T:=P.Targets.AddExampleProgram('b64dec.pp');
T:=P.Targets.AddExampleProgram('b64enc.pp');
T:=P.Targets.AddExampleProgram('b64.pp');
T:=P.Targets.AddExampleProgram('b64test2.pp');
T:=P.Targets.AddExampleProgram('b64test.pp');
T:=P.Targets.AddExampleProgram('base64decodingtestcase.pas');
T:=P.Targets.AddExampleProgram('cachetest.pp');
T:=P.Targets.AddExampleProgram('cfgtest.pp');
T:=P.Targets.AddExampleProgram('debugtest.pp');
T:=P.Targets.AddExampleProgram('doecho.pp');
T:=P.Targets.AddExampleProgram('dparser.pp');
T:=P.Targets.AddExampleProgram('dsockcli.pp');
T:=P.Targets.AddExampleProgram('dsocksvr.pp');
T:=P.Targets.AddExampleProgram('fpdoc.dtd');
T:=P.Targets.AddExampleProgram('fstream.pp');
T:=P.Targets.AddExampleProgram('htdump.pp');
T:=P.Targets.AddExampleProgram('isockcli.pp');
T:=P.Targets.AddExampleProgram('isocksvr.pp');
T:=P.Targets.AddExampleProgram('istream.pp');
T:=P.Targets.AddExampleProgram('list.pp');
T:=P.Targets.AddExampleProgram('mstream.pp');
T:=P.Targets.AddExampleProgram('poolmm1.pp');
T:=P.Targets.AddExampleProgram('poolmm2.pp');
T:=P.Targets.AddExampleProgram('restest.pp');
T:=P.Targets.AddExampleProgram('sockcli.pp');
T:=P.Targets.AddExampleProgram('socksvr.pp');
T:=P.Targets.AddExampleProgram('sstream.pp');
T:=P.Targets.AddExampleProgram('stringl.pp');
T:=P.Targets.AddExampleProgram('tarmakerconsgzip.pas');
T:=P.Targets.AddExampleProgram('tarmakercons.pas');
T:=P.Targets.AddExampleProgram('testapp.pp');
T:=P.Targets.AddExampleProgram('testbf.pp');
T:=P.Targets.AddExampleProgram('testbs.pp');
T:=P.Targets.AddExampleProgram('testcgi.pp');
T:=P.Targets.AddExampleProgram('testcont.pp');
T:=P.Targets.AddExampleProgram('testez.pp');
T:=P.Targets.AddExampleProgram('testhres.pp');
T:=P.Targets.AddExampleProgram('testnres.pp');
T:=P.Targets.AddExampleProgram('testol.pp');
T:=P.Targets.AddExampleProgram('testproc.pp');
T:=P.Targets.AddExampleProgram('testreg.pp');
T:=P.Targets.AddExampleProgram('testrhre.pp');
T:=P.Targets.AddExampleProgram('testrnre.pp');
T:=P.Targets.AddExampleProgram('testrsre.pp');
T:=P.Targets.AddExampleProgram('testrtf.pp');
T:=P.Targets.AddExampleProgram('testser.pp');
T:=P.Targets.AddExampleProgram('testsres.pp');
T:=P.Targets.AddExampleProgram('testtimer.pp');
T:=P.Targets.AddExampleProgram('testunzip.pp');
T:=P.Targets.AddExampleProgram('testur.pp');
T:=P.Targets.AddExampleProgram('testweb.pp');
T:=P.Targets.AddExampleProgram('testz2.pp');
T:=P.Targets.AddExampleProgram('testzip.pp');
T:=P.Targets.AddExampleProgram('testz.pp');
T:=P.Targets.AddExampleProgram('threads.pp');
T:=P.Targets.AddExampleProgram('tidea.pp');
T:=P.Targets.AddExampleProgram('tstelcmd.pp');
T:=P.Targets.AddExampleProgram('tstelgtk.pp');
T:=P.Targets.AddExampleProgram('txmlreg.pp');
T:=P.Targets.AddExampleProgram('xmldump.pp');
T:=P.Targets.AddExampleProgram('testthreadpool.pp');
// example data files.
// README
// kword.xml
// overview.rtf
// simple.xml
// parser.dat
// testcgi.html
P.NamespaceMap:='namespaces.lst';
{$ifndef ALLPACKAGES}
Run;
end;
end.
{$endif ALLPACKAGES}