Overview of binary source code
Some of our customers need to convert the SmartComponent Library source code to a different code page like UTF-8. Our source code is typically deployed in ISO8859-1. A possible solution for converting our source code to UTF-8 is the ANT copy task (https://ant.apache.org/manual/Tasks/copy.html).
However, some of our source files are deployed in encrypted form. Attempting to convert those files to a different code page typically damages those files and causes compile errors.
List of encrypted files
File Name | Description |
|---|---|
Consultingwerk/BusinessEntityDesigner/create-erm-license.p | Deploys the license file for the Crainiate .NET Control used for the design canvas of the Business Entity Designer |
src/adecomm/_pweditor.i | Binary file deployed by Progress Software, encapsulates access to the ADE Procedure Editor Active X Control |
src/adecomm/editsrc.i | Binary file deployed by Progress Software, encapsulates access to the ADE Procedure Editor Active X Control |
src/adecomm/peditor.i | Binary file deployed by Progress Software, encapsulates access to the ADE Procedure Editor Active X Control |
src/protools/abhack/EnableSourceEditor.i | Binary file, part of ABhack Procedure Editor integration |
Sample ANT script to copy source code
The following sample ANT script creates a copy of the SmartComponent Library source code and converts all files except of the encrypted files to UTF-8.
<project name="Copy Source" default="copy" basedir=".">
<description>Copy Source Code to a parallel directory and convert to UTF-8</description>
<target name="copy">
<mkdir dir="../converted" />
<!-- copy source code and convert code page from ISO8859-1 to UTF-8 -->
<copy todir="../converted" overwrite="true"
encoding="ISO-8859-1" outputencoding="UTF-8">
<fileset dir=".">
<include name="**/*.cls" />
<include name="**/*.p" />
<include name="**/*.i" />
<include name="**/*.w" />
<exclude name="Consultingwerk/BusinessEntityDesigner/create-erm-license.p" />
<exclude name="src/adecomm/_pweditor.i" />
<exclude name="src/adecomm/editsrc.i" />
<exclude name="src/adecomm/peditor.i" />
<exclude name="src/protools/abhack/EnableSourceEditor.i" />
</fileset>
</copy>
<!-- now copy 4 files with no code page convert -->
<copy todir="../converted" overwrite="true">
<fileset dir=".">
<include name="Consultingwerk/BusinessEntityDesigner/create-erm-license.p" />
<include name="src/adecomm/_pweditor.i" />
<include name="src/adecomm/editsrc.i" />
<include name="src/adecomm/peditor.i" />
<include name="src/protools/abhack/EnableSourceEditor.i" />
</fileset>
</copy>
</target>
</project>