NetWare Loadable Module Programming HOWTO: NLM Header file

Next Previous Contents

## 4. NLM Header file

The NLM header file contains information for nlmconv(1). Each line contains one option or directive; everything after "#" is comment. This chapter describes all options and directives.

This chapter is not yet finished, sorry.

## 4.1 AUTOUNLOAD

Syntax:

AUTOUNLOAD

## 4.2 CHECK

Syntax:

CHECK <check procedure name>

This directive specifies the function to be executed when the NLM is unloaded using the UNLOAD Server console command. If this function returns zero, the NLM can be unloaded, else the NLM is not ready to be unloaded.

Example:

    CHECK CheckUnload

## 4.3 CODESTART

Syntax:

CODESTART <map file code start offset>

Map file start offset may be decimal or Xhex.

## 4.4 COPYRIGHT

Syntax:

COPYRIGHT ["Copyright string"]

The copyright string is displayed on the server console screen when the NLM is loaded. If this option is not used, no copyright information is displayed.

Example:

    COPYRIGHT "Copyright (c) 1998 ABC Inc."

## 4.5 CUSTOM

Syntax:

CUSTOM <custom data file path>

## 4.6 DATASTART

Syntax:

DATASTART <map file data start offset>

Map file data start offset may be decimal or Xhex.

## 4.7 DATE

Syntax:

DATE <month, day, year>

## 4.8 DEBUG

Syntax:

DEBUG

This directive tells the nlmconv(1) to include debugging information in the NLM file.

Example:

    DEBUG

## 4.9 DESCRIPTION

Syntax:

DESCRIPTION "NLM Description String"

## 4.10 EXIT

Syntax:

EXIT <exit procedure name>

## 4.11 EXPORT

Syntax:

EXPORT <symbol list>

EXPORT @<symbol list file>

## 4.12 FLAG_OFF

Syntax:

FLAG_OFF <decimal number>

## 4.13 FLAG_ON

Syntax:

FLAG_ON <decimal number>

## 4.14 HELP

Syntax:

HELP <help file path>

## 4.15 IMPORT

Syntax:

IMPORT <symbol list>

IMPORT @<symbol list file>

## 4.16 INPUT

Syntax:

INPUT <object file> [, <object file> [, ...] ]

INPUT @<object list file>

This directive lists the input ELF (.o) object files that are to be linked. You can also list the object files in the list file, each object file on one line.

Example:

    INPUT @objectfiles.txt
    INPUT main.o
    INPUT /usr/nwsdk/lib/prelude.o

## 4.17 MAP

Syntax:

MAP [map file name]

## 4.18 MESSAGES

Syntax:

MESSAGES <message file path>

## 4.19 MODULE

Syntax:

MODULE <autoload NLM list>

## 4.20 MULTIPLE

Syntax:

MULTIPLE

## 4.21 NAMELEN

Syntax:

NAMELEN <decimal number>

Default is 31. Zero is no limit.

## 4.22 OS_DOMAIN

Syntax:

OS_DOMAIN

## 4.23 OUTPUT

Syntax:

OUTPUT <target file name>

## 4.24 PATH

Syntax:

PATH [search path;...]

for following CUSTOM, HELP, INPUT, MESSAGES, SHARELIB, STAMPEDDATA and XDCDATA.

## 4.25 PSEUDOPREEMPTION

Syntax:

PSEUDOPREEMPTION

## 4.26 REENTRANT

Syntax:

REENTRANT

## 4.27 SCREENNAME

Syntax:

SCREENNAME "Initial Screen Name (CLIB)"

## 4.28 SHARELIB

Syntax:

SHARELIB <shared library path>

## 4.29 STACK

Syntax:

STACK <stack size>

## 4.30 STACKSIZE

Syntax:

STACKSIZE <stack size>

## 4.31 STAMPEDDATA

Syntax:

STAMPEDDATA "Stamp" <data file path>

Stamp is 8 char max.

## 4.32 START

Syntax:

START <start procedure name>

Default is _Prelude.

## 4.33 SYNCHRONIZE

Syntax:

SYNCHRONIZE

## 4.34 THREADNAME

Syntax:

THREADNAME "Initial Process Name (CLIB)"

## 4.35 TYPE

Syntax:

TYPE <version>

This directive specifies the format (NLM, LAN, DSK, NAM) of the NLM file to be generated. Valid values are:

- 0 - NLM
- 1 - LAN
- 2 - DSK
- 3 - NAM

Example:

    TYPE 0

## 4.36 VERSION

Syntax:

VERSION <major version>, <minor version> [, <revision>]

The version information is displayed on the server system console when the NLM loads. The major and minor version numbers can be 0 - 99. The revision can be 0 - 26 ("a" - "z") and is optional. The version directive is required.

Example:

    VERSION 1,5

## 4.37 XDCDATA

Syntax:

XDCDATA <XDC data file path>

Next Previous Contents