Section 4.1. Preliminary Tasks


4.1. Preliminary Tasks

Before the porting work can begin, we need to prepare the environment that we will be working in. Among other things, we need to set up the port, build, and code change systems. Here is a checklist that includes the detailed tasks for each.

4.1.1. Set Up the Porting System

The porting system is used by porting engineers to do the porting work. It includes the porting server running the Linux version the application to be ported is expected to run on. In some instances, the server can be used to run small unit tests that will not affect overall server performance. Here is a list of tasks to set up the porting system:

1.

Install the server with the Linux distribution the application to be ported is expected to run on. Set up all necessary home directories and build environment directories.

2.

Check for any known patches that need to be installed on the server.

3.

Make sure the installation includes the compiler and debugger.

4.

Install third-party products and licenses that the application needs. Install any prerequisites or patches needed by these products.

5.

Set up access for users and system administrators on the build server.

6.

Set up policies using the porting environment as a test machine. These polices must include what can and cannot be tested on the porting server.

Depending on how work is divided among different groups involved in the porting project, the responsibility of doing these tasks may fall on the porting engineer. Even in instances where a separate group in the IT organization sets up the server, the porting engineer still needs to provide the specifications of the environment to the person performing the installation and setup.

4.1.2. Set Up the Code Change Management System

The code change management system consists of a tool that manages code changes to the application. The tool most frequently used is CVS, but other tools such as Subversion[1] and Arch[2] are gaining popularity. Here are the tasks associated with setting up the change management system:

[1] http://subversion.tigris.org

[2] www.gnu.org/software/gnu-arch/

1.

Install the code change management tool.

2.

Install the scripts that can make using the tool more convenient for the porting engineers.

3.

Make sure the HOWTO and FAQs on using the tool and scripts exist and are readily accessible. These documents should include examples of how to use the tool and scripts.

4.

Check the application into the code management system.

After the snapshot of the application source code has been checked into the code management system, that code should only be used for porting changes. No outside development changes should be added to this code base during the porting period.

4.1.3. Set Up the Build System

The build system is where automated nightly builds of the ported application take place. Although it may not be needed to begin any porting work, it is good practice to set it up before porting application makefiles. This system needs to be able to check out the source code and start an overnight build of the application. Building the application nightly after the code is stable enough to build with minimum build errors is good practice to make sure all checked-in code that day did not cause anything to break in the build. If something does break, it will be easier to find who and what caused the break. Here are the tasks associated with setting the build system:

1.

Develop scripts that can check out the application code and start a nightly build.

2.

After the makefiles have been ported, test these scripts. Expect errors, because the porting work may be just getting under way.

3.

Add the script to a crontab file to schedule the overnight builds.

4.

Write a script that can parse the errors produced so that an automated reporting system can notify responsible parties of any build breaks.

When the port, build, and code change system tasks are complete, the real porting work can begin.




UNIX to Linux Porting. A Comprehensive Reference
UNIX to Linux Porting: A Comprehensive Reference
ISBN: 0131871099
EAN: 2147483647
Year: 2004
Pages: 175

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net