Skip to content

Commit

Permalink
XE10 support
Browse files Browse the repository at this point in the history
  • Loading branch information
obones committed Aug 31, 2015
1 parent 55f17db commit 31a0f6a
Show file tree
Hide file tree
Showing 14 changed files with 86 additions and 25 deletions.
3 changes: 2 additions & 1 deletion jcl/Install.txt
Expand Up @@ -2,6 +2,7 @@ JEDI Code Library v 2.7 Installation

Supported development tools versions:

- Delphi XE10 (Win32 and Win64) and C++Builder XE10 (Win32 and Win64)
- Delphi XE8 (Win32 and Win64) and C++Builder XE8 (Win32 and Win64)
- Delphi XE7 (Win32 and Win64) and C++Builder XE7 (Win32 and Win64)
- Delphi XE6 (Win32 and Win64) and C++Builder XE6 (Win32 and Win64)
Expand Down Expand Up @@ -69,4 +70,4 @@ To execute for
>install d6

--------------------------------
Document last updated 2012-08-31
Document last updated 2015-08-31
2 changes: 2 additions & 0 deletions jcl/devtools/included_files.bat
Expand Up @@ -25,6 +25,8 @@ copy ..\source\include\jcl.template.inc ..\source\include\jcld21win32.inc
copy ..\source\include\jcl.template.inc ..\source\include\jcld21win64.inc
copy ..\source\include\jcl.template.inc ..\source\include\jcld22win32.inc
copy ..\source\include\jcl.template.inc ..\source\include\jcld22win64.inc
copy ..\source\include\jcl.template.inc ..\source\include\jcld23win32.inc
copy ..\source\include\jcl.template.inc ..\source\include\jcld23win64.inc


copy ..\source\include\jcl.template.inc ..\source\include\jclfpc.inc
2 changes: 2 additions & 0 deletions jcl/devtools/included_files.sh
Expand Up @@ -27,6 +27,8 @@ cp ../source/include/jcl.template.inc ../source/include/jcld21win32.inc
cp ../source/include/jcl.template.inc ../source/include/jcld21win64.inc
cp ../source/include/jcl.template.inc ../source/include/jcld22win32.inc
cp ../source/include/jcl.template.inc ../source/include/jcld22win64.inc
cp ../source/include/jcl.template.inc ../source/include/jcld23win32.inc
cp ../source/include/jcl.template.inc ../source/include/jcld23win64.inc


cp ../source/include/jcl.template.inc ../source/include/jclfpc.inc
25 changes: 13 additions & 12 deletions jcl/devtools/pgEdit.xml
Expand Up @@ -81,28 +81,29 @@
<target name="d20" defines="BCB" IsBds="1"/>
<target name="d21" defines="BCB" IsBds="1"/>
<target name="d22" defines="BCB" IsBds="1"/>
<target name="d23" defines="BCB" IsBds="1"/>
</targets>
<aliases>
<!-- language aliases -->
<alias name="Delphi" value="d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="Bcb" value="c6,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="Pascal" value="fpc,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="Delphi" value="d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="Bcb" value="c6,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="Pascal" value="fpc,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<!-- platform aliases -->
<alias name="Windows" value="help,fpc,c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="Windows" value="help,fpc,c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="Linux" value="help,fpc"/>
<!-- package aliases -->
<alias name="allv11up" value="d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="allv14up" value="d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="allv15up" value="d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="allv11up" value="d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="allv14up" value="d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="allv15up" value="d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<!-- GUI aliases -->
<alias name="Clx" value="help,c6,d6,d7"/>
<alias name="Vcl" value="help,c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="Vcl" value="help,c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<!-- IDE aliases -->
<alias name="BDS" value="cs1,d8,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="runtimeBDS" value="d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="BDS" value="cs1,d8,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="runtimeBDS" value="d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="OldStyleIDE" value="c6,d6,d7"/>
<alias name="runtimeIDE" value="c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="designtimeIDE" value="c6,d6,d7,d8,d9,d10,cs1,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22"/>
<alias name="runtimeIDE" value="c6,d6,d7,d9,d10,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
<alias name="designtimeIDE" value="c6,d6,d7,d8,d9,d10,cs1,d11,d12,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23"/>
</aliases>
<ProjectProperties>
<ProjectProperty name="VersionMajorNumber" value="2"/>
Expand Down
8 changes: 7 additions & 1 deletion jcl/docs/Readme.html
Expand Up @@ -109,7 +109,7 @@ <h3><a name="about">About this release</a></h3>
can be linked into binaries to become JCL debug data or be converted to .jdbg files.
Once linked MAP files could be deleted. These options are subnodes of the "Packages" node.</p>

<p>For BDS 2006, RAD Studio 2007, RAD Studio 2009, RAD Studio 2010, RAD Studio XE, RAD Studio XE2, RAD Studio XE3, RAD Studio XE4, RAD Studio XE5, RAD Studio XE6, RAD Studio XE7, and RAD Studio XE8 the
<p>For BDS 2006, RAD Studio 2007, RAD Studio 2009, RAD Studio 2010, RAD Studio XE, RAD Studio XE2, RAD Studio XE3, RAD Studio XE4, RAD Studio XE5, RAD Studio XE6, RAD Studio XE7, RAD Studio XE8, and RAD Studio XE10 the
compiler introduced a new option to make the same packages available in C++,
by checking the "Dual packages" option of the "Packages" node, you will be able
to call functions of the JCL from C++ code.</p>
Expand Down Expand Up @@ -175,6 +175,8 @@ <h3><a name="targets">Supported Tools</a></h3>

<li>Delphi XE8 and C++Builder XE8.</li>

<li>Delphi XE10 and C++Builder XE10.</li>

</ul>

<hr><br>
Expand Down Expand Up @@ -298,6 +300,10 @@ <h3><a name="manual">Manual Installation</a></h3>

<li>For Delphi XE8 and C++Builder XE8 Win64: source\include\jcld22win64.inc</li>

<li>For Delphi XE10 and C++Builder XE10 Win32: source\include\jcld23win32.inc</li>

<li>For Delphi XE10 and C++Builder XE10 Win64: source\include\jcld23win64.inc</li>

<li>For FreePascal: source\include\jclfpc.inc</li>
</ul>

Expand Down
5 changes: 4 additions & 1 deletion jcl/docs/Readme.txt
Expand Up @@ -64,7 +64,7 @@ The JEDI Code Library packages are required by some 3rd party packages (includin

The installer can generate MAP informations for each package. These informations can be linked into binaries to become JCL debug data or be converted to .jdbg files. Once linked MAP files could be deleted. These options are subnodes of the "Packages" node.

For BDS 2006, RAD Studio 2007, 2009, 2010, XE, XE2, XE3, XE4, XE5, XE6, XE7, and XE8 the compiler introduced a new option to make the same packages available in C++, by checking the "Dual packages" option of the "Packages" node, you will be able to call functions of the JCL from C++ code.
For BDS 2006, RAD Studio 2007, 2009, 2010, XE, XE2, XE3, XE4, XE5, XE6, XE7, XE8, and XE10 the compiler introduced a new option to make the same packages available in C++, by checking the "Dual packages" option of the "Packages" node, you will be able to call functions of the JCL from C++ code.


--------------------------------------------------------------------------------
Expand Down Expand Up @@ -98,6 +98,7 @@ Delphi XE5 and C++Builder XE5.
Delphi XE6 and C++Builder XE6.
Delphi XE7 and C++Builder XE7.
Delphi XE8 and C++Builder XE8.
Delphi XE10 and C++Builder XE10.

--------------------------------------------------------------------------------

Expand Down Expand Up @@ -156,6 +157,8 @@ For Delphi XE7 and C++Builder XE7 Win32: source\include\jcld21win32.inc
For Delphi XE7 and C++Builder XE7 Win64: source\include\jcld21win64.inc
For Delphi XE8 and C++Builder XE8 Win32: source\include\jcld22win32.inc
For Delphi XE8 and C++Builder XE8 Win64: source\include\jcld22win64.inc
For Delphi XE10 and C++Builder XE10 Win32: source\include\jcld23win32.inc
For Delphi XE10 and C++Builder XE10 Win64: source\include\jcld23win64.inc
For FreePascal: source\include\jclfpc.inc
In the IDE, open and compile package Jcl.dpk (or Jcl.bpk for C++Builder) located in a subdirectory of the "packages" directory matching your version of the IDE. This package doesn't have to be installed since it doesn't provide any components.
If you want to install experts, open package JclBaseExpert.dpk and compile it, then you can install all the experts you want (packages are located in the same directory).
Expand Down
4 changes: 2 additions & 2 deletions jcl/install/JclInstall.pas
Expand Up @@ -878,7 +878,7 @@ procedure TJclInstallation.Init;
AddOption(joJCLDefDropObsoleteCode, [goChecked], Parent);
if (Target.RadToolKind <> brBorlandDevStudio) or (Target.IDEVersionNumber <> 3) then
// Delphi 2005 has a compiler internal failure when compiling the JCL with UNITVERSIONING enabled
AddOption(joJCLDefUnitVersioning, [{goChecked}], Parent); // UnitVersioning isn't threadsafe and causes crashes in COM-Servers
AddOption(joJCLDefUnitVersioning, [goChecked], Parent);

AddOption(joJCLDefMath, [goChecked], Parent);
AddOption(joJCLDefMathPrecSingle, [goRadioButton], joJCLDefMath);
Expand Down Expand Up @@ -3297,7 +3297,7 @@ function TJclDistribution.CreateInstall(Target: TJclBorRADToolInstallation): Boo
Result := Target.VersionNumber in [6];
brBorlandDevStudio :
Result := ((Target.VersionNumber in [1, 2]) and (bpDelphi32 in Target.Personalities))
or (Target.VersionNumber in [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16]);
or (Target.VersionNumber in [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17]);
else
Result := False;
end;
Expand Down
6 changes: 3 additions & 3 deletions jcl/install/build/dcc32ex.dpr
Expand Up @@ -1202,7 +1202,7 @@ begin
begin
WriteLn;
WriteLn('Additional options (must be specified before any dcc32 parameter):');
WriteLn(' --delphi-version=d22 Prefer this version, overrides environment variable');
WriteLn(' --delphi-version=d23 Prefer this version, overrides environment variable');
WriteLn(' --verbose Show warnings and errors during the compiler detection');
WriteLn(' --use-search-paths Use the IDE''s search paths');
WriteLn(' --preserve-config Keep the dcc32.cfg file and create a dcc32_command.cmd');
Expand All @@ -1214,8 +1214,8 @@ begin
WriteLn(' --runtime-package-vcl Link the executable against the vcl package');
WriteLn;
WriteLn('Environment variables:');
WriteLn(' DELPHIVERSION = d22 Prefer this Delphi/BCB/BDS version');
WriteLn(' (d6, d7, c6, d9, d10, d11, d12, d14, ..., d22, ...)');
WriteLn(' DELPHIVERSION = d23 Prefer this Delphi/BCB/BDS version');
WriteLn(' (d6, d7, c6, d9, d10, d11, d12, d14, ..., d23, ...)');
end;

ExitCode := Status;
Expand Down
Binary file modified jcl/install/build/dcc32ex.exe
Binary file not shown.
1 change: 1 addition & 0 deletions jcl/make.proj
Expand Up @@ -57,6 +57,7 @@
<EditionDirVersion Condition=" Exists('$(BDS)\bin\dcc32200.dll') ">d20</EditionDirVersion> <!-- XE6 -->
<EditionDirVersion Condition=" Exists('$(BDS)\bin\dcc32210.dll') ">d21</EditionDirVersion> <!-- XE7 -->
<EditionDirVersion Condition=" Exists('$(BDS)\bin\dcc32220.dll') ">d22</EditionDirVersion> <!-- XE8 -->
<EditionDirVersion Condition=" Exists('$(BDS)\bin\dcc32230.dll') ">d23</EditionDirVersion> <!-- XE9 -->

<LibDirVersion>$(EditionDirVersion)\$(Platform)</LibDirVersion>
<LibDirVersion Condition=" '$(EditionDirVersion)' == 'd12' or '$(EditionDirVersion)' == 'd14' or '$(EditionDirVersion)' == 'd15' ">$(EditionDirVersion)</LibDirVersion>
Expand Down
19 changes: 19 additions & 0 deletions jcl/packages/resources.mak
Expand Up @@ -259,6 +259,25 @@ RESFILES = c6\Jcl.res \
d22\JclVcl.res \
d22\JclVersionControlExpert.res \
d22\JclVersionControlExpertDLL.res \
d23\Jcl.res \
d23\JclBaseExpert.res \
d23\JclContainers.res \
d23\JclDebugExpert.res \
d23\JclDebugExpertDLL.res \
d23\JclFavoriteFoldersExpert.res \
d23\JclFavoriteFoldersExpertDLL.res \
d23\JclProjectAnalysisExpert.res \
d23\JclProjectAnalysisExpertDLL.res \
d23\JclRepositoryExpert.res \
d23\JclRepositoryExpertDLL.res \
d23\JclSIMDViewExpert.res \
d23\JclSIMDViewExpertDLL.res \
d23\JclDeveloperTools.res \
d23\JclStackTraceViewerExpert.res \
d23\JclStackTraceViewerExpertDLL.res \
d23\JclVcl.res \
d23\JclVersionControlExpert.res \
d23\JclVersionControlExpertDLL.res \
d6\Jcl.res \
d6\JclBaseExpert.res \
d6\JclContainers.res \
Expand Down
2 changes: 1 addition & 1 deletion jcl/source/common/JclCompression.pas
Expand Up @@ -4285,7 +4285,7 @@ function TJclCompressionItem.UpdateFileTimes: Boolean;
const
FILE_WRITE_ATTRIBUTES = $00000100;
var
FileHandle: THandle;
FileHandle: HFILE;
ACreationTime, ALastAccessTime, ALastWriteTime: PFileTime;
begin
ReleaseStream;
Expand Down
16 changes: 12 additions & 4 deletions jcl/source/common/JclIDEUtils.pas
Expand Up @@ -86,9 +86,9 @@ EJclBorRADException = class(EJclError);
TJclBorRADToolPath = string;

const
SupportedDelphiVersions = [5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22];
SupportedBCBVersions = [5, 6, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22];
SupportedBDSVersions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16];
SupportedDelphiVersions = [5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
SupportedBCBVersions = [5, 6, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
SupportedBDSVersions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17];

// Object Repository
BorRADToolRepositoryPagesSection = 'Repository Pages';
Expand Down Expand Up @@ -804,7 +804,7 @@ TBDSVersionInfo = record
RADStudioDirName = 'RAD Studio';
RADStudio14UpDirName = 'Embarcadero\Studio';

BDSVersions: array [1..16] of TBDSVersionInfo = (
BDSVersions: array [1..17] of TBDSVersionInfo = (
(
Name: @RsCSharpName;
VersionStr: '1.0';
Expand Down Expand Up @@ -932,6 +932,14 @@ TBDSVersionInfo = record
IDEPkgVersion: 22;
PkgVersion: 22;
CoreIdeVersion: '220';
Supported: True),
(
Name: @RsRSName;
VersionStr: 'XE10';
DCCVersion: 30.0;
IDEPkgVersion: 23;
PkgVersion: 23;
CoreIdeVersion: '230';
Supported: True)
);
{$ENDIF MSWINDOWS}
Expand Down
18 changes: 18 additions & 0 deletions jcl/source/include/jcl.inc
Expand Up @@ -317,6 +317,24 @@ ALERT_jedi_inc_incompatible
{$ENDIF MSWINDOWS}
{$ENDIF BDS16}
{----------------------------}
{$IFDEF BDS17}
{$IFDEF MSWINDOWS}
{$IFDEF CPUX86}
// This file should be located in directory jcl/source/include
// It is automatically created by the JCL installer
// For manual installations, copy and adjust jcl/source/include/jcl.template.inc
{$I jcld23win32.inc}
{$ENDIF CPUX86}
{$IFDEF CPUX64}
// This file should be located in directory jcl/source/include
// It is automatically created by the JCL installer
// For manual installations, copy and adjust jcl/source/include/jcl.template.inc
{$I jcld23win64.inc}
{$ENDIF CPUX64}
{$DEFINE JCL_CONFIGURED}
{$ENDIF MSWINDOWS}
{$ENDIF BDS17}
{----------------------------}
{$IFDEF FPC}
// This file should be located in directory jcl/source/include
// It is automatically created by the JCL installer
Expand Down

0 comments on commit 31a0f6a

Please sign in to comment.