Skip to content

Commit b395c87

Browse files
committed
build(release): prepare v1.6
Use Delphi 13 for project builds while pinning Linux64 to the Ubuntu 20.04 SDK so release binaries retain broad glibc compatibility. Make Win64 the implicit platform, update version resources and release documentation, and keep TASKS.md as local-only project state.
1 parent bca7dcb commit b395c87

9 files changed

Lines changed: 24 additions & 279 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ __recovery/
8282
modules/
8383
.aider*
8484
.agents/
85+
/TASKS.md
8586
/bin/*.cmds
8687
/bin/Linux64/
8788
/src/dcu/

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
## [Unreleased]
3+
## [v1.6] - 2026-07-12
44

55
### Added
66

@@ -11,6 +11,7 @@
1111
- Changed `EncodingFixTool.sh` to launch the native Linux64 executable directly instead of invoking the Windows EXE through WSL interoperability.
1212
- Made Git execution, shell quoting, user config discovery, and path containment platform-correct; Linux avoids treating its UTF-8 default encoding as a legacy ANSI candidate while Windows retains active-code-page compatibility.
1313
- Updated the agent skill with the native Linux runtime layout, optional WSL `PATH` setup, and fresh-shell verification.
14+
- Changed release builds to Delphi 13 while pinning Linux64 to the Ubuntu 20.04 SDK, keeping the native binary compatible with glibc 2.17 and newer instead of requiring glibc 2.34.
1415

1516
### Fixed
1617

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ From Linux or WSL, use the thin launcher so arguments remain native Linux paths:
5454

5555
The launcher executes the Linux64 ELF binary directly. It does not start a Windows process and does not require WSL Windows interoperability or `wslpath`.
5656

57+
The official Linux64 binary is built with Delphi 13 against the Ubuntu 20.04 SDK. It requires x86-64 Linux with glibc 2.17 or newer and is tested with Ubuntu 20.04-compatible libraries and Ubuntu 22.04. Building Linux64 from source requires the Delphi SDK profile `ubuntu20.04.sdk`; the project pins that profile to avoid accidentally raising the minimum Linux version.
58+
5759
---
5860

5961
## Parameters

TASKS.md

Lines changed: 0 additions & 262 deletions
This file was deleted.

agent-skill/encodingfix-delphi-cleanup/SKILL.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ bin/Linux64/EncodingFixTool
2626
```
2727

2828
The wrapper launches the native Linux64 binary directly. It does not use `EncodingFixTool.exe`, `wslpath`, or WSL Windows interoperability. Keep the wrapper executable and the `Linux64` directory next to it.
29+
The shipped binary requires x86-64 Linux with glibc 2.17 or newer.
2930

3031
Adding `bin` to `PATH` is optional. It is needed only to invoke `EncodingFixTool.sh` by name from any directory; repo-local `./bin/EncodingFixTool.sh` works without it. For Bash login shells, add the native Linux path to `~/.profile`:
3132

agent-skill/encodingfix-delphi-cleanup/references/encodingfix-tool.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ bin/Linux64/EncodingFixTool
1414
```
1515

1616
`PATH` is optional. Add the absolute native `bin` path to `~/.profile` for login shells and to `~/.bashrc` for direct non-login interactive Bash shells. Non-interactive automation should receive an explicit `PATH` or use the absolute/repo-local wrapper path. Verify configured shells with `command -v EncodingFixTool.sh` followed by `EncodingFixTool.sh help`.
17+
The native executable requires x86-64 Linux with glibc 2.17 or newer.
1718

1819
## Delphi AI Preset
1920

dak.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[Build]
2+
DelphiVersion=37.0

src/EncodingFixTool.dproj

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@
44
<MainSource>EncodingFixTool.dpr</MainSource>
55
<Base>True</Base>
66
<Config Condition="'$(Config)'==''">Release</Config>
7-
<ProjectName Condition="'$(ProjectName)'==''">EncodingFixTool</ProjectName>
87
<TargetedPlatforms>131</TargetedPlatforms>
98
<AppType>Console</AppType>
109
<FrameworkType>None</FrameworkType>
11-
<ProjectVersion>20.2</ProjectVersion>
12-
<Platform Condition="'$(Platform)'==''">Win32</Platform>
10+
<ProjectVersion>20.4</ProjectVersion>
11+
<Platform Condition="'$(Platform)'==''">Win64</Platform>
1312
</PropertyGroup>
1413
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
1514
<Base>true</Base>
@@ -94,15 +93,16 @@
9493
<DCC_ImageBase>00400000</DCC_ImageBase>
9594
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
9695
<VerInfo_MajorVer>1</VerInfo_MajorVer>
97-
<VerInfo_MinorVer>5</VerInfo_MinorVer>
96+
<VerInfo_MinorVer>6</VerInfo_MinorVer>
9897
<VerInfo_Release>0</VerInfo_Release>
9998
<VerInfo_Build>0</VerInfo_Build>
10099
<VerInfo_Locale>1045</VerInfo_Locale>
101-
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.5.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.5.0.0;Comments=;CFBundleName=</VerInfo_Keys>
100+
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.6.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.6.0.0;Comments=;CFBundleName=</VerInfo_Keys>
102101
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
103102
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
104103
<Icns_MainIcns>$(BDS)\bin\delphi_PROJECTICNS.icns</Icns_MainIcns>
105104
<DCC_ExeOutput>..\bin</DCC_ExeOutput>
105+
<SanitizedProjectName>EncodingFixTool</SanitizedProjectName>
106106
<CfgDependentOn>..\..\MaxLogicFoundation\MaxLogicDefault.optset</CfgDependentOn>
107107
</PropertyGroup>
108108
<PropertyGroup Condition="'$(Base_Android)'!=''">
@@ -142,26 +142,25 @@
142142
<PropertyGroup Condition="'$(Base_iOSDevice64)'!=''">
143143
<iOS_AppStore1024>$(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_1024x1024.png</iOS_AppStore1024>
144144
</PropertyGroup>
145+
<PropertyGroup Condition="'$(Base_Linux64)'!=''">
146+
<BRCC_OutputDir>.\dcu\Linux64\$(Config)</BRCC_OutputDir>
147+
<DCC_ExeOutput>..\bin\Linux64</DCC_ExeOutput>
148+
<DCC_Namespace>Posix;System.Posix;$(DCC_Namespace)</DCC_Namespace>
149+
<PlatformSDK>ubuntu20.04.sdk</PlatformSDK>
150+
<VerInfo_IncludeVerInfo>false</VerInfo_IncludeVerInfo>
151+
</PropertyGroup>
145152
<PropertyGroup Condition="'$(Base_Win32)'!=''">
146153
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
147154
<BT_BuildType>Debug</BT_BuildType>
148-
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.5.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.5.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
155+
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.6.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.6.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
149156
<VerInfo_Locale>1033</VerInfo_Locale>
150157
</PropertyGroup>
151158
<PropertyGroup Condition="'$(Base_Win64)'!=''">
152159
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
153160
<BT_BuildType>Debug</BT_BuildType>
154-
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.5.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.5.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
161+
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.6.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.6.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
155162
<VerInfo_Locale>1033</VerInfo_Locale>
156163
</PropertyGroup>
157-
<PropertyGroup Condition="'$(Base_Linux64)'!=''">
158-
<BRCC_OutputDir>.\dcu\Linux64\$(Config)</BRCC_OutputDir>
159-
<DCC_ExeOutput>..\bin\Linux64</DCC_ExeOutput>
160-
<DCC_Namespace>Posix;System.Posix;$(DCC_Namespace)</DCC_Namespace>
161-
<Icon_MainIcon></Icon_MainIcon>
162-
<Icns_MainIcns></Icns_MainIcns>
163-
<VerInfo_IncludeVerInfo>false</VerInfo_IncludeVerInfo>
164-
</PropertyGroup>
165164
<PropertyGroup Condition="'$(Cfg_1)'!=''">
166165
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
167166
<DCC_DebugInformation>0</DCC_DebugInformation>
@@ -189,7 +188,7 @@
189188
</PropertyGroup>
190189
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
191190
<VerInfo_Locale>1033</VerInfo_Locale>
192-
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.5.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.5.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
191+
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.6.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.6.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
193192
<Manifest_File>(None)</Manifest_File>
194193
<AppDPIAwarenessMode>none</AppDPIAwarenessMode>
195194
</PropertyGroup>

src/EncodingFixTool.res

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)