/*
 * nx_ver.h
 *
 * rcsid = "$Header: /home/globdev/CVS/globus-packages/nexus/source/nexus/nx_ver.h,v 1.15 2002/04/18 17:30:12 bresnaha Exp $"
 */

#ifndef _NEXUS_INCLUDE_NX_VERSION_H
#define _NEXUS_INCLUDE_NX_VERSION_H

#ifndef EXTERN_C_BEGIN
#    ifdef __cplusplus
#        define EXTERN_C_BEGIN extern "C" {
#        define EXTERN_C_END }
#    else
#        define EXTERN_C_BEGIN
#        define EXTERN_C_END
#    endif
#endif

EXTERN_C_BEGIN



#ifdef NEXUS_LINK_TEST

#ifdef BUILD_PROFILE
extern int _nexus_linked_profile;
static int _nexus_defined_profile(void) { return _nexus_linked_profile; }
#else
extern int _nexus_linked_no_profile;
static int _nexus_defined_profile(void) { return _nexus_linked_no_profile; }
#endif

#ifdef BUILD_DEBUG
extern int _nexus_linked_debug;
static int _nexus_defined_debug(void) { return _nexus_linked_debug; }
#else
extern int _nexus_linked_no_debug;
static int _nexus_defined_debug(void) { return _nexus_linked_no_debug; }
#endif

/* two levels of static function calls are needed in order to fool
   the IBM AIX 3.2 compilers and/or linker into not optimizing away
   the linkguards (jwg).
*/
/* REFERENCED */
static int _nexus_force_resolution(void)
{
	return _nexus_defined_profile() + _nexus_defined_debug();
}

#endif

EXTERN_C_END

#endif /* _NEXUS_INCLUDE_NX_VERSION_H */
