Environment variables

The AIX build environment relies heavily on pathname and option environment variables.

Pathname environment variables contain pathnames that are specific to each user. All the build tools and makefiles refer to the standard locations through environment variables, which allows you to define the location of your working directories. $TaligentRoot, set by Setenv, is the basis for all other pathname variables. For example, here are two pathnames as set by Setenv:

      
    setenv TaligentIncludes ${TaligentRoot}/PinkIncludes
      setenv TaligentExports ${TaligentRoot}/Exports
Variable Path to
LIBPATH Taligent shared libraries used during run time.
TaligentBATRoot Root of the area where all BAT scripts, data, and results reside. BAT libraries, and servers go in the nontest (standard library, server, program) areas.
TaligentBinaries Taligent runtime binaries.
TaligentDefaultHomePlace Repository for the current user's home place. (Only one user currently for the system.) The Workspace group will provide a better object API for getting access to the current user and storage areas related to that user in future releases.
TaligentExports Taligent shared library interface files that developers link with to access Taligent
shared libraries.
TaligentExtensionIncludes Directory containing interfaces to system extension developers.
TaligentIncludes Main #include-file directories used in Taligent builds.
TaligentIncludesDir Base parent directory of all Taligent #include files (this is the parent of $TaligentIncludes, $TaligentExtensionIncludes, and $TaligentObsoleteIncludes).
TaligentLibs Directory for certain nonshared libraries.
TaligentMakeitUserHook The path to CommonPoint. Makeit calls CommonPoint -stop before updating shared libraries with a global namespace change or a new interface to an object. A typical path might be: TaligentMakeitUserHook=cd /home/Taligent/TaligentBinaries; ./CommonPoint However, setting this variable has a big impact on the build time. If you are not making global namespace changes or adding a new interface to an object, unset this variable.
TaligentObsoleteIncludes Directory containing interfaces that should not exist in the SDK release but cannot, or that have not had their dependencies successfully removed. This directory will go away by SDK2.
TaligentPlacesRoot Repository where the Places for the machine reside.
TaligentPrivateIncludes Private #includes used internally.
TaligentRoot The base of everything in the build and runtime system.
TaligentSCMRoot The repository for Pink source.
TaligentSharedLibs Taligent runtime shared libraries.
TaligentSource The root of the source tree. TaligentSource is not used by the build, but is used by some tools that the Build room uses. TaligentSource is the root of the native and layer source tree; eventually there will be settings for Hoops, CompTech, and possibly more.
TaligentSystemDataRoot Repository for system data files. These are typically configuration files, not first-class user data such as movies, images, or sounds.
TaligentStartPinkUserHook Points to UpdateSOL so that CommonPoint can update the shared libraries when it launches. If you are not making global namespace changes or adding a new interface to an object, unset this variable. A typical setting might be: TaligentStartPinkUserHook=UpdateSOL
TaligentSourceRoot Root of the Taligent source tree hierarchy.
TaligentSystemLibraries Repository for system software shared libraries.
TaligentSystemPrograms Repository for system software shared libraries.
TaligentSystemRoot Root of the Taligent system software area.
TaligentSystemServers Repository for system software servers.
TaligentTemporaries Repository for temporary files until the File System interface supports temporaryfiles.
TaligentTestLibraries Repository for system test shared libraries.
TaligentTestPrograms Repository for system software shared libraries.
TaligentTestServers Repository for the test servers.
TaligentTools Internal tools.
TaligentToolsEtc Additional internal tools, scripts, etc.
TaligentUniversalMake Universal.Make file used in build system.

Option environment variables contain the standard options to the standard tools that the build uses. Having the options in an environment variable allows you to change and experiment with certain options (such as debugging options) without disturbing other options. Never add options to the compiler (or to any build tools) in the makefile; use the environment variables instead.

Variable Options to
CompileOptions Used on the xlC command-line during builds as the options
for building Taligent code and default search paths to
Taligent #includes.
MakeSharedAppOptions MakeSharedApp as default options for building a Taligent
shared library.
LinkOptions xlC link command line during builds.

NOTE Occasionally a project requires a special option (such as working around a compiler bug). For special cases when the project cannot build or will not work unless it has a particular option, add the option to the makefile description file (*.PinkMake). To add a compiler option, add the following line to the *.PinkMake file:

    compileoptions: -NewOptions

[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker