-----------------------------------------------------------------------
Pre Make Kit shared library support specifications file

Document revision:
$Id: sl_specs.txt,v 1.4 2004/02/12 14:59:42 mipsator Exp $
-----------------------------------------------------------------------

pmkcomp data:

ADD_SYSTEM {
	NAME = "MySystem"
	SL_EXT = "shared library extension"
	SL_VERSION = "$SL_MAJOR.$SL_MINOR"
	SL_LIBNAME = "lib$SL_NAME$SL_EXT"
	SL_LIBNAME_VMAJ = "$SL_LIBNAME.$SL_MAJOR"
	SL_LIBNAME_VFULL = "$SL_LIBNAME.$SL_VERSION"
}

pmkfile command:

BUILD_SHLIB_NAME(?) {
	NAME = "library name"
	MAJOR = "major version"
	MINOR = "minor version"
	VERSION_NONE = "storage variable"
}


example:

(pmkcomp.dat)
ADD_SYSTEM {
	NAME = "Darwin"
	SL_EXT = ".dylib"
	SL_VERSION = "$SL_MAJOR.$SL_MINOR"
	SL_LIBNAME = "lib$SL_NAME$SL_EXT"
	SL_LIBNAME_VMAJ = "lib$SL_NAME.$SL_MAJOR$SL_EXT"
	SL_LIBNAME_VFULL = "lib$SL_NAME.$SL_VERSION$SL_EXT"
	SLLDFLAGS_gcc = "-dynamiclib"
}

ADD_SYSTEM {
	NAME = "OpenBSD"
	SL_EXT = ".so"
	SL_VERSION = "$SL_MAJOR.$SL_MINOR"
	SL_LIBNAME = "lib$SL_NAME$SL_EXT"
	SL_LIBNAME_VMAJ = "$SL_LIBNAME.$SL_MAJOR"
	SL_LIBNAME_VFULL = "$SL_LIBNAME.$SL_VERSION"
}

(pmkfile)
DEFINE {
	LIBPMK_NAME = "pmk"
	LIBPMK_MAJ = "1"
	LIBPMK_MIN = "2"
}
[...]
BUILD_SHLIB_NAME(?) {
	NAME = "$LIBPMK_NAME"
	MAJOR = "$LIBPMK_MAJ"
	MINOR = "$LIBPMK_MIN"
	VERSION_NONE = "LIBNAME"
	VERSION_FULL = "LIBNAMEV"
}

(makefile template)
LIBNAME=	@LIBNAME@
LIBNAMEV=	@LIBNAMEV@

(created makefile)
LIBNAME=	libpmk.so
LIBNAMEV=	libpmk.so.1.2

