Introduction

Top  Previous  Next

The Project System is integrated into the Clarion Environment. It is a powerful sequential language that combines the functionality of a batch processor, a linker and an intelligent compile-and-link system.

The Project System gives you total control over the compile and link process for the simplest single .EXE project up to the most complicated multiple .DLL project.

The primary benefits of using the Project System are automation, efficiency, and accuracy. With a single command, you can remake your entire project, no matter how complicated, and you can be assured that the correct source and objects are included in the compile and link processes, plus, the components that don’t need it, don’t get reprocessed. In addition, you can make different versions of your project (release version, debug version, evaluation/demo version, etc.) with the flip of a switch.

Here is a simple example of some project system language generated by the Clarion Application Generator:

 

#noedit

#system win

#model clarion dll

#pragma debug(vid=>full)

#compile QWKTU_RD.CLW— GENERATED

#compile QWKTU_RU.CLW— GENERATED

#compile QWKTU_SF.CLW— GENERATED

#compile QWKTUTOR.clw /define(GENERATED=>on)— GENERATED

#compile QWKTU001.clw /define(GENERATED=>on)— GENERATED

#compile QWKTU002.clw /define(GENERATED=>on)— GENERATED

#compile QWKTU003.clw /define(GENERATED=>on)— GENERATED

#pragma link(C%L%TPS%S%.LIB)— GENERATED

#link QWKTUTOR.EXE

 

Language Components

 

Keywords start with a pound sign ( # ). In the example, each keyword begins on a new line for readability. This is not required.

Comments start with a double hyphen ( -- ) and are terminated by a Carriage Return or Line Feed.

Macros are surrounded by percent signs ( % ). You may want to think of macros as variables—a value is substituted whenever the project system encounters a macro name surrounded by percent signs ( % ). See Project System Macros.

Keyword Parameters are everything else you see in the example. Parameters and their syntax are discussed with each keyword.

The Project System recognizes the following keywords:

 

#abort #expand #older

#and #file #or

#autocompile #if #pragma

#compile #ignore #prompt

#declare_compiler #implib #run

#dolink #include #rundll

#else #link #set

#elsif #message #split

#endif #model #system

#error #noedit #then

#exemod #not #to

#exists

 

Files and Editing

With regard to Clarion, the project system commands are generally stored in either a .PRJ file or an .APP file. APP files are maintained strictly through Clarion’s development environment, however, PRJ files are simple ASCII text and may be maintained with the development environment (See the User’s Guide; Using the Project System) or with your favorite text editor.

 

#noedit

The #noedit command can be placed at the top of a project file to prevent menu-editing from the SoftVelocity environment. It has no effect in the Clarion environment.