[opensm+tools] Corrections for WDK build environment.
authorstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 29 Feb 2008 20:26:01 +0000 (20:26 +0000)
committerstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 29 Feb 2008 20:26:01 +0000 (20:26 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@954 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

tools/flint/user/SOURCES
tools/mst/user/SOURCES
tools/mtcr/user/SOURCES
tools/nsc/SOURCES
tools/spark/user/SOURCES
ulp/opensm/user/ibtrapgen/SOURCES
ulp/opensm/user/include/opensm/osm_port_profile.h
ulp/opensm/user/libopensm/SOURCES
ulp/opensm/user/libvendor/SOURCES
ulp/opensm/user/opensm/SOURCES
ulp/opensm/user/osmtest/SOURCES

index 0696bfd..ab59308 100644 (file)
@@ -1,8 +1,7 @@
 TARGETNAME=flint\r
 TARGETTYPE=PROGRAM\r
 UMTYPE=console\r
-USE_CRTDLL=1\r
-USE_NTDLL=1\r
+USE_MSVCRT=1\r
 \r
 \r
 !if !defined(WINIBHOME)\r
@@ -28,11 +27,9 @@ INCLUDES= $(WINIBHOME)\inc;                    \
 \r
 TARGETLIBS= \\r
 !if $(FREEBUILD)\r
-                       $(CRT_LIB_PATH)\msvcrt.lib \\r
                        $(SDK_LIB_PATH)\Ws2_32.lib\\r
                        $(TARGETPATH)\*\mtcr.lib\r
 !else\r
-                       $(CRT_LIB_PATH)\msvcrtd.lib\\r
                        $(SDK_LIB_PATH)\Ws2_32.lib\\r
                        $(TARGETPATH)\*\mtcr.lib\r
 !endif\r
index c6662ba..90387f9 100644 (file)
@@ -1,8 +1,7 @@
 TARGETNAME=mst\r
 TARGETTYPE=PROGRAM\r
 UMTYPE=console\r
-USE_CRTDLL=1\r
-\r
+USE_MSVCRT=1\r
 \r
 !if !defined(WINIBHOME)\r
 WINIBHOME=..\..\..\r
index ba02bca..4bbf299 100644 (file)
@@ -9,7 +9,7 @@ TARGETTYPE=DYNLINK
 TARGETNAME=mtcr\r
 DLLENTRY=_DllMainCRTStartup\r
 DLLDEF=mtcr.def\r
-USE_CRTDLL=1\r
+USE_MSVCRT=1\r
 \r
 !if !defined(WINIBHOME)\r
 WINIBHOME=..\..\..\r
@@ -37,12 +37,10 @@ SOURCES= \
 TARGETLIBS= \\r
 !if $(FREEBUILD)\r
                        $(TARGETPATH)\*\complib.lib \\r
-                       $(CRT_LIB_PATH)\msvcrt.lib \\r
                        $(TARGETPATH)\*\ibal.lib\\r
                        $(SDK_LIB_PATH)\Kernel32.lib\\r
 !else\r
                        $(TARGETPATH)\*\complibd.lib\\r
-                       $(CRT_LIB_PATH)\msvcrt.lib\\r
                        $(TARGETPATH)\*\ibald.lib\\r
                        $(SDK_LIB_PATH)\Ws2_32.lib\\r
                        $(SDK_LIB_PATH)\Kernel32.lib\\r
index d4401bc..54ced72 100644 (file)
@@ -2,7 +2,7 @@ TARGETNAME=nsc
 TARGETPATH=..\..\bin\user\obj$(BUILD_ALT_DIR)\r
 TARGETTYPE=PROGRAM\r
 UMTYPE=console\r
-USE_CRTDLL=1\r
+USE_MSVCRT=1\r
 \r
 SOURCES=nsc.c \\r
         nsc.rc\r
index 06c2949..eef29eb 100644 (file)
@@ -1,9 +1,8 @@
 TARGETNAME=spark\r
 TARGETTYPE=PROGRAM\r
 UMTYPE=console\r
-USE_CRTDLL=1\r
-USE_NTDLL=1\r
-\r
+USE_MSVCRT=1\r
+USE_STL=1\r
 \r
 !if !defined(WINIBHOME)\r
 WINIBHOME=..\..\..\r
@@ -24,11 +23,9 @@ INCLUDES= $(WINIBHOME)\inc;                    \
 \r
 TARGETLIBS= \\r
 !if $(FREEBUILD)\r
-                       $(CRT_LIB_PATH)\msvcprt.lib \\r
                        $(SDK_LIB_PATH)\Ws2_32.lib\\r
                        $(TARGETPATH)\*\mtcr.lib\r
 !else\r
-                       $(CRT_LIB_PATH)\msvcprt.lib\\r
                        $(SDK_LIB_PATH)\Ws2_32.lib\\r
                        $(TARGETPATH)\*\mtcr.lib\r
 !endif\r
index 7e026a9..7942ec7 100644 (file)
@@ -1,67 +1,65 @@
-!if $(FREEBUILD)
-TARGETNAME=ibtrapgen
-!else
-TARGETNAME=ibtrapgend
-!endif
-
-!if !defined(WINIBHOME)
-WINIBHOME=..\..\..\..
-!endif
-
-LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-
-!if defined(OSM_TARGET)
-TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)
-!else
-TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-!endif
-
-TARGETTYPE=PROGRAM
-UMTYPE=console
-USE_MSVCRT=1
-OVR_DIR=..\addon
-
-
-SOURCES=\
-       main.c \
-       ibtrapgen.c
-
-
-
-OSM_HOME=..
-
-TARGETLIBS=\
-!if $(FREEBUILD)
-                       $(LIBPATH)\*\ibal.lib \
-                       $(LIBPATH)\*\complib.lib \
-                       $(TARGETPATH)\*\osmv_ibal.lib \
-                       $(TARGETPATH)\*\opensm_ibal.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-
-!else
-                       $(LIBPATH)\*\ibald.lib \
-                       $(LIBPATH)\*\complibd.lib \
-                       $(TARGETPATH)\*\osmv_ibald.lib \
-                       $(TARGETPATH)\*\opensm_ibald.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-!endif
-
-#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done
-INCLUDES= \
-       $(OSM_HOME)\include; \
-       $(OSM_HOME); \
-       $(WINIBHOME)\inc; \
-       $(WINIBHOME)\inc\user;
-
-# Could be any special flag needed for this project 
-USER_C_FLAGS=$(USER_C_FLAGS) /MD
-#Add preproccessor definitions
-C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL
-!if !$(FREEBUILD)
-#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG
-C_DEFINES=$(C_DEFINES) 
-!endif
-
-LINKER_FLAGS= $(LINKER_FLAGS)
-MSC_WARNING_LEVEL= /W3
-
+!if $(FREEBUILD)\r
+TARGETNAME=ibtrapgen\r
+!else\r
+TARGETNAME=ibtrapgend\r
+!endif\r
+\r
+!if !defined(WINIBHOME)\r
+WINIBHOME=..\..\..\..\r
+!endif\r
+\r
+LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+\r
+!if defined(OSM_TARGET)\r
+TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)\r
+!else\r
+TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+!endif\r
+\r
+TARGETTYPE=PROGRAM\r
+UMTYPE=console\r
+USE_MSVCRT=1\r
+OVR_DIR=..\addon\r
+\r
+\r
+SOURCES=\\r
+       main.c \\r
+       ibtrapgen.c\r
+\r
+\r
+\r
+OSM_HOME=..\r
+\r
+TARGETLIBS=\\r
+!if $(FREEBUILD)\r
+                       $(LIBPATH)\*\ibal.lib \\r
+                       $(LIBPATH)\*\complib.lib \\r
+                       $(TARGETPATH)\*\osmv_ibal.lib \\r
+                       $(TARGETPATH)\*\opensm_ibal.lib\r
+\r
+!else\r
+                       $(LIBPATH)\*\ibald.lib \\r
+                       $(LIBPATH)\*\complibd.lib \\r
+                       $(TARGETPATH)\*\osmv_ibald.lib \\r
+                       $(TARGETPATH)\*\opensm_ibald.lib\r
+!endif\r
+\r
+#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done\r
+INCLUDES= \\r
+       $(OSM_HOME)\include; \\r
+       $(OSM_HOME); \\r
+       $(WINIBHOME)\inc; \\r
+       $(WINIBHOME)\inc\user;\r
+\r
+# Could be any special flag needed for this project \r
+USER_C_FLAGS=$(USER_C_FLAGS) /MD\r
+#Add preproccessor definitions\r
+C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL\r
+!if !$(FREEBUILD)\r
+#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG\r
+C_DEFINES=$(C_DEFINES) \r
+!endif\r
+\r
+LINKER_FLAGS= $(LINKER_FLAGS)\r
+MSC_WARNING_LEVEL= /W3\r
+\r
index cf55b09..032168b 100644 (file)
-/*
- * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.
- * Copyright (c) 2002-2006 Mellanox Technologies LTD. All rights reserved.
- * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
- *
- * This software is available to you under the OpenIB.org BSD license
- * below:
- *
- *     Redistribution and use in source and binary forms, with or
- *     without modification, are permitted provided that the following
- *     conditions are met:
- *
- *      - Redistributions of source code must retain the above
- *        copyright notice, this list of conditions and the following
- *        disclaimer.
- *
- *      - Redistributions in binary form must reproduce the above
- *        copyright notice, this list of conditions and the following
- *        disclaimer in the documentation and/or other materials
- *        provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * $Id$
- */
-
-
-/*
- * Abstract:
- *     Declaration of Switch/osm_port_profile_t.
- *     This object represents a port profile for an IBA switch.
- *     This object is part of the OpenSM family of objects.
- *
- * Environment:
- *     Linux User Mode
- *
- * $Revision: 1.7 $
- */
-
-#ifndef _OSM_PORT_PROFILE_H_
-#define _OSM_PORT_PROFILE_H_
-
-#include <string.h>
-#include <iba/ib_types.h>
-#include <opensm/osm_base.h>
-#include <opensm/osm_madw.h>
-#include <opensm/osm_subnet.h>
-#include <opensm/osm_node.h>
-#include <opensm/osm_port.h>
-#include <opensm/osm_matrix.h>
-#include <opensm/osm_fwd_tbl.h>
-#include <opensm/osm_mcast_tbl.h>
-
-#ifdef __cplusplus
-#  define BEGIN_C_DECLS extern "C" {
-#  define END_C_DECLS   }
-#else /* !__cplusplus */
-#  define BEGIN_C_DECLS
-#  define END_C_DECLS
-#endif /* __cplusplus */
-
-BEGIN_C_DECLS
-
-/****h* OpenSM/Port Profile
-* NAME
-*      Port Profile
-*
-* DESCRIPTION
-*      The Port Profile object contains profiling information for
-*      each Physical Port on a switch.  The profile information
-*      may be used to optimize path selection.
-*
-* AUTHOR
-*      Steve King, Intel
-*
-*********/
-
-/****s* OpenSM: Switch/osm_port_profile_t
-* NAME
-*      osm_port_profile_t
-*
-* DESCRIPTION
-*      The Port Profile object contains profiling information for
-*      each Physical Port on the switch.  The profile information
-*      may be used to optimize path selection.
-*
-*      This object should be treated as opaque and should be
-*      be manipulated only through the provided functions.
-*
-* SYNOPSIS
-*/
-typedef struct _osm_port_profile
-{
-       uint32_t                num_paths;
-} osm_port_profile_t;
-/*
-* FIELDS
-*      num_paths
-*              The number of paths using this port.
-*
-* SEE ALSO
-*********/
-
-/****f* OpenSM: Port Profile/osm_port_prof_construct
-* NAME
-*      osm_port_prof_construct
-*
-* DESCRIPTION
-*      
-*
-* SYNOPSIS
-*/
-static inline void
-osm_port_prof_construct(
-       IN osm_port_profile_t* const p_prof )
-{
-       CL_ASSERT( p_prof );
-       memset( p_prof, 0, sizeof(*p_prof) );
-}
-/*
-* PARAMETERS
-*      p_prof
-*              [in] Pointer to the Port Profile object to construct.
-*
-* RETURN VALUE
-*      None.
-*
-* NOTES
-*
-* SEE ALSO
-*********/
-
-/****f* OpenSM: Port Profile/osm_port_prof_path_count_inc
-* NAME
-*      osm_port_prof_path_count_inc
-*
-* DESCRIPTION
-*      Increments the count of the number of paths going through this port.
-*      
-*
-* SYNOPSIS
-*/
-static inline void
-osm_port_prof_path_count_inc(
-       IN osm_port_profile_t* const p_prof )
-{
-       CL_ASSERT( p_prof );
-       p_prof->num_paths++;
-}
-/*
-* PARAMETERS
-*      p_pro
-*              [in] Pointer to the Port Profile object.
-*
-* RETURN VALUE
-*      None.
-*
-* NOTES
-*
-* SEE ALSO
-*********/
-
-/****f* OpenSM: Port Profile/osm_port_prof_path_count_get
-* NAME
-*      osm_port_prof_path_count_get
-*
-* DESCRIPTION
-*      Returns the count of the number of paths going through this port.
-*
-* SYNOPSIS
-*/
-static inline uint32_t
-osm_port_prof_path_count_get(
-       IN const osm_port_profile_t* const p_prof )
-{
-       return( p_prof->num_paths );
-}
-/*
-* PARAMETERS
-*      p_pro
-*              [in] Pointer to the Port Profile object.
-*
-* RETURN VALUE
-*      None.
-*
-* NOTES
-*
-* SEE ALSO
-*********/
-
-/****f* OpenSM: Port Profile Opt/osm_port_prof_is_ignored_port
-* NAME
-*      osm_port_prof_is_ignored_port
-*
-* DESCRIPTION
-*      Check to see if this port is to be ignored in path counting.
-*  This is done by examining the optional list of port_prof_ignore_guids.
-*
-* SYNOPSIS
-*/
-static inline boolean_t
-osm_port_prof_is_ignored_port(
-       IN const osm_subn_t *p_subn, 
-       IN uint64_t port_guid,
-       IN uint8_t port_num )
-{
-  const cl_map_t *p_map = &(p_subn->opt.port_prof_ignore_guids);
-  const void *p_obj = cl_map_get(p_map, port_guid);
-  size_t res;
-
-  // HACK: we currently support ignoring ports 0 - 31
-  if (p_obj != NULL) {
-        res = (size_t)p_obj & (size_t)(1 << port_num);
-        return (res != 0);
-  }
-  return FALSE;
-}
-/*
-* PARAMETERS
-*      p_subn
-*              [in] Pointer to the OSM Subnet object.
-*
-*  port_guid 
-*     [in] The port guid 
-*
-* RETURN VALUE
-*      None.
-*
-* NOTES
-*
-* SEE ALSO
-*********/
-
-/****f* OpenSM: Port Profile Opt/osm_port_prof_set_ignored_port
-* NAME
-*      osm_port_prof_set_ignored_port
-*
-* DESCRIPTION
-*      Set the ignored property of the port.
-*
-* SYNOPSIS
-*/
-static inline void
-osm_port_prof_set_ignored_port(
-       IN osm_subn_t *p_subn, 
-       IN uint64_t port_guid,
-       IN uint8_t port_num )
-{
-  cl_map_t *p_map = &(p_subn->opt.port_prof_ignore_guids);
-  const void *p_obj = cl_map_get(p_map, port_guid);
-  size_t value = 0;
-
-  // HACK: we currently support ignoring ports 0 - 31
-  CL_ASSERT(port_num < 32);
-  
-  if (p_obj != NULL) {
-        value = (size_t)p_obj;
-  } 
-  
-  value = value | (1 << port_num);
-  cl_map_insert(&(p_subn->opt.port_prof_ignore_guids),
-                                        port_guid,
-                                        (void *)value);
-}
-/*
-* PARAMETERS
-*      p_subn
-*              [in] Pointer to the OSM Subnet object.
-*
-*  port_guid 
-*     [in] The port guid 
-*
-* RETURN VALUE
-*      None.
-*
-* NOTES
-*
-* SEE ALSO
-*********/
-
-END_C_DECLS
-
-#endif         /* _OSM_PORT_PROFILE_H_ */
-
+/*\r
+ * Copyright (c) 2004-2006 Voltaire, Inc. All rights reserved.\r
+ * Copyright (c) 2002-2006 Mellanox Technologies LTD. All rights reserved.\r
+ * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.\r
+ *\r
+ * This software is available to you under the OpenIB.org BSD license\r
+ * below:\r
+ *\r
+ *     Redistribution and use in source and binary forms, with or\r
+ *     without modification, are permitted provided that the following\r
+ *     conditions are met:\r
+ *\r
+ *      - Redistributions of source code must retain the above\r
+ *        copyright notice, this list of conditions and the following\r
+ *        disclaimer.\r
+ *\r
+ *      - Redistributions in binary form must reproduce the above\r
+ *        copyright notice, this list of conditions and the following\r
+ *        disclaimer in the documentation and/or other materials\r
+ *        provided with the distribution.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\r
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\r
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r
+ * SOFTWARE.\r
+ *\r
+ * $Id$\r
+ */\r
+\r
+\r
+/*\r
+ * Abstract:\r
+ *     Declaration of Switch/osm_port_profile_t.\r
+ *     This object represents a port profile for an IBA switch.\r
+ *     This object is part of the OpenSM family of objects.\r
+ *\r
+ * Environment:\r
+ *     Linux User Mode\r
+ *\r
+ * $Revision: 1.7 $\r
+ */\r
+\r
+#ifndef _OSM_PORT_PROFILE_H_\r
+#define _OSM_PORT_PROFILE_H_\r
+\r
+#include <string.h>\r
+#include <iba/ib_types.h>\r
+#include <opensm/osm_base.h>\r
+#include <opensm/osm_madw.h>\r
+#include <opensm/osm_subnet.h>\r
+#include <opensm/osm_node.h>\r
+#include <opensm/osm_port.h>\r
+#include <opensm/osm_matrix.h>\r
+#include <opensm/osm_fwd_tbl.h>\r
+#include <opensm/osm_mcast_tbl.h>\r
+\r
+#ifdef __cplusplus\r
+#  define BEGIN_C_DECLS extern "C" {\r
+#  define END_C_DECLS   }\r
+#else /* !__cplusplus */\r
+#  define BEGIN_C_DECLS\r
+#  define END_C_DECLS\r
+#endif /* __cplusplus */\r
+\r
+BEGIN_C_DECLS\r
+\r
+/****h* OpenSM/Port Profile\r
+* NAME\r
+*      Port Profile\r
+*\r
+* DESCRIPTION\r
+*      The Port Profile object contains profiling information for\r
+*      each Physical Port on a switch.  The profile information\r
+*      may be used to optimize path selection.\r
+*\r
+* AUTHOR\r
+*      Steve King, Intel\r
+*\r
+*********/\r
+\r
+/****s* OpenSM: Switch/osm_port_profile_t\r
+* NAME\r
+*      osm_port_profile_t\r
+*\r
+* DESCRIPTION\r
+*      The Port Profile object contains profiling information for\r
+*      each Physical Port on the switch.  The profile information\r
+*      may be used to optimize path selection.\r
+*\r
+*      This object should be treated as opaque and should be\r
+*      be manipulated only through the provided functions.\r
+*\r
+* SYNOPSIS\r
+*/\r
+typedef struct _osm_port_profile\r
+{\r
+       uint32_t                num_paths;\r
+} osm_port_profile_t;\r
+/*\r
+* FIELDS\r
+*      num_paths\r
+*              The number of paths using this port.\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+/****f* OpenSM: Port Profile/osm_port_prof_construct\r
+* NAME\r
+*      osm_port_prof_construct\r
+*\r
+* DESCRIPTION\r
+*      \r
+*\r
+* SYNOPSIS\r
+*/\r
+static inline void\r
+osm_port_prof_construct(\r
+       IN osm_port_profile_t* const p_prof )\r
+{\r
+       CL_ASSERT( p_prof );\r
+       memset( p_prof, 0, sizeof(*p_prof) );\r
+}\r
+/*\r
+* PARAMETERS\r
+*      p_prof\r
+*              [in] Pointer to the Port Profile object to construct.\r
+*\r
+* RETURN VALUE\r
+*      None.\r
+*\r
+* NOTES\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+/****f* OpenSM: Port Profile/osm_port_prof_path_count_inc\r
+* NAME\r
+*      osm_port_prof_path_count_inc\r
+*\r
+* DESCRIPTION\r
+*      Increments the count of the number of paths going through this port.\r
+*      \r
+*\r
+* SYNOPSIS\r
+*/\r
+static inline void\r
+osm_port_prof_path_count_inc(\r
+       IN osm_port_profile_t* const p_prof )\r
+{\r
+       CL_ASSERT( p_prof );\r
+       p_prof->num_paths++;\r
+}\r
+/*\r
+* PARAMETERS\r
+*      p_pro\r
+*              [in] Pointer to the Port Profile object.\r
+*\r
+* RETURN VALUE\r
+*      None.\r
+*\r
+* NOTES\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+/****f* OpenSM: Port Profile/osm_port_prof_path_count_get\r
+* NAME\r
+*      osm_port_prof_path_count_get\r
+*\r
+* DESCRIPTION\r
+*      Returns the count of the number of paths going through this port.\r
+*\r
+* SYNOPSIS\r
+*/\r
+static inline uint32_t\r
+osm_port_prof_path_count_get(\r
+       IN const osm_port_profile_t* const p_prof )\r
+{\r
+       return( p_prof->num_paths );\r
+}\r
+/*\r
+* PARAMETERS\r
+*      p_pro\r
+*              [in] Pointer to the Port Profile object.\r
+*\r
+* RETURN VALUE\r
+*      None.\r
+*\r
+* NOTES\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+/****f* OpenSM: Port Profile Opt/osm_port_prof_is_ignored_port\r
+* NAME\r
+*      osm_port_prof_is_ignored_port\r
+*\r
+* DESCRIPTION\r
+*      Check to see if this port is to be ignored in path counting.\r
+*  This is done by examining the optional list of port_prof_ignore_guids.\r
+*\r
+* SYNOPSIS\r
+*/\r
+static inline boolean_t\r
+osm_port_prof_is_ignored_port(\r
+       IN const osm_subn_t *p_subn, \r
+       IN uint64_t port_guid,\r
+       IN uint8_t port_num )\r
+{\r
+  const cl_map_t *p_map = &(p_subn->opt.port_prof_ignore_guids);\r
+  const void *p_obj = cl_map_get(p_map, port_guid);\r
+  size_t res;\r
+\r
+  // HACK: we currently support ignoring ports 0 - 31\r
+  if (p_obj != NULL) {\r
+        res = (size_t)p_obj & (size_t)(1 << port_num);\r
+        return (res != 0);\r
+  }\r
+  return FALSE;\r
+}\r
+/*\r
+* PARAMETERS\r
+*      p_subn\r
+*              [in] Pointer to the OSM Subnet object.\r
+*\r
+*  port_guid \r
+*     [in] The port guid \r
+*\r
+* RETURN VALUE\r
+*      None.\r
+*\r
+* NOTES\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+/****f* OpenSM: Port Profile Opt/osm_port_prof_set_ignored_port\r
+* NAME\r
+*      osm_port_prof_set_ignored_port\r
+*\r
+* DESCRIPTION\r
+*      Set the ignored property of the port.\r
+*\r
+* SYNOPSIS\r
+*/\r
+static inline void\r
+osm_port_prof_set_ignored_port(\r
+       IN osm_subn_t *p_subn, \r
+       IN uint64_t port_guid,\r
+       IN uint8_t port_num )\r
+{\r
+  cl_map_t *p_map = &(p_subn->opt.port_prof_ignore_guids);\r
+  const void *p_obj = cl_map_get(p_map, port_guid);\r
+  size_t value = 0;\r
+\r
+  // HACK: we currently support ignoring ports 0 - 31\r
+  CL_ASSERT(port_num < 32);\r
+  \r
+  if (p_obj != NULL) {\r
+        value = (size_t)p_obj;\r
+  } \r
+  \r
+  value = value | ((size_t)1 << port_num);\r
+  cl_map_insert(&(p_subn->opt.port_prof_ignore_guids),\r
+                                        port_guid,\r
+                                        (void *)value);\r
+}\r
+/*\r
+* PARAMETERS\r
+*      p_subn\r
+*              [in] Pointer to the OSM Subnet object.\r
+*\r
+*  port_guid \r
+*     [in] The port guid \r
+*\r
+* RETURN VALUE\r
+*      None.\r
+*\r
+* NOTES\r
+*\r
+* SEE ALSO\r
+*********/\r
+\r
+END_C_DECLS\r
+\r
+#endif         /* _OSM_PORT_PROFILE_H_ */\r
+\r
index 7acd92f..263d48c 100644 (file)
@@ -17,7 +17,7 @@ TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)
 TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
 !endif
 
-USE_NTDLL=1
+USE_MSVCRT=1
 OVR_DIR=..\addon
 
 
@@ -32,14 +32,12 @@ TARGETLIBS=\
 !if $(FREEBUILD)
                        $(LIBPATH)\*\ibal.lib \
                        $(LIBPATH)\*\complib.lib \
-                       $(TARGETPATH)\*\osmv_ibal.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
+                       $(TARGETPATH)\*\osmv_ibal.lib
 
 !else
                        $(LIBPATH)\*\ibald.lib \
                        $(LIBPATH)\*\complibd.lib \
-                       $(TARGETPATH)\*\osmv_ibald.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
+                       $(TARGETPATH)\*\osmv_ibald.lib
 !endif
 
 #DO NOT TOUCH the order of search path , until ib_types.h merging process will be done
index 929dc1a..1d81af6 100644 (file)
@@ -1,62 +1,60 @@
-!if $(FREEBUILD)
-TARGETNAME=osmv_ibal
-!else
-TARGETNAME=osmv_ibald
-!endif
-TARGETTYPE=LIBRARY
-
-!if !defined(WINIBHOME)
-WINIBHOME=..\..\..\..
-!endif
-
-LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-
-!if defined(OSM_TARGET)
-TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)
-!else
-TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-!endif
-
-USE_NTDLL=1
-OVR_DIR=..\addon
-
-
-SOURCES=\
-       osm_vendor_al.c \
-       osm_vendor_mlx_sa.c \
-   winosm_common.c
-
-OSM_HOME=..
-
-TARGETLIBS=\
-!if $(FREEBUILD)
-                       $(LIBPATH)\*\ibal.lib \
-                       $(LIBPATH)\*\complib.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-
-!else
-                       $(LIBPATH)\*\ibald.lib \
-                       $(LIBPATH)\*\complibd.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-!endif
-
-#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done
-INCLUDES= \
-       $(OSM_HOME)\include; \
-       $(OSM_HOME); \
-       $(WINIBHOME)\inc; \
-       $(WINIBHOME)\inc\user;
-
-# Could be any special flag needed for this project 
-USER_C_FLAGS=$(USER_C_FLAGS) /Ze
-#Add preproccessor definitions
-C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL
-C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H
-!if !$(FREEBUILD)
-#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG
-C_DEFINES=$(C_DEFINES)
-!endif
-
-LINKER_FLAGS= $(LINKER_FLAGS)
-MSC_WARNING_LEVEL= /W3
-#MSC_OPTIMIZATION= /O0
+!if $(FREEBUILD)\r
+TARGETNAME=osmv_ibal\r
+!else\r
+TARGETNAME=osmv_ibald\r
+!endif\r
+TARGETTYPE=LIBRARY\r
+\r
+!if !defined(WINIBHOME)\r
+WINIBHOME=..\..\..\..\r
+!endif\r
+\r
+LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+\r
+!if defined(OSM_TARGET)\r
+TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)\r
+!else\r
+TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+!endif\r
+\r
+USE_MSVCRT=1\r
+OVR_DIR=..\addon\r
+\r
+\r
+SOURCES=\\r
+       osm_vendor_al.c \\r
+       osm_vendor_mlx_sa.c \\r
+   winosm_common.c\r
+\r
+OSM_HOME=..\r
+\r
+TARGETLIBS=\\r
+!if $(FREEBUILD)\r
+                       $(LIBPATH)\*\ibal.lib \\r
+                       $(LIBPATH)\*\complib.lib\r
+\r
+!else\r
+                       $(LIBPATH)\*\ibald.lib \\r
+                       $(LIBPATH)\*\complibd.lib\r
+!endif\r
+\r
+#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done\r
+INCLUDES= \\r
+       $(OSM_HOME)\include; \\r
+       $(OSM_HOME); \\r
+       $(WINIBHOME)\inc; \\r
+       $(WINIBHOME)\inc\user;\r
+\r
+# Could be any special flag needed for this project \r
+USER_C_FLAGS=$(USER_C_FLAGS) /Ze\r
+#Add preproccessor definitions\r
+C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL\r
+C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H\r
+!if !$(FREEBUILD)\r
+#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG\r
+C_DEFINES=$(C_DEFINES)\r
+!endif\r
+\r
+LINKER_FLAGS= $(LINKER_FLAGS)\r
+MSC_WARNING_LEVEL= /W3\r
+#MSC_OPTIMIZATION= /O0\r
index 108c7a0..607d9a7 100644 (file)
-TARGETNAME=opensm
-
-!if !defined(WINIBHOME)
-WINIBHOME=..\..\..\..
-!endif
-
-LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-
-!if defined(OSM_TARGET)
-TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)
-!else
-TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-!endif
-
-TARGETTYPE=PROGRAM
-UMTYPE=console
-USE_MSVCRT=1
-SOURCES=\
-        osm.mc \
-        opensm.rc \
-        osm_db_files.c \
-        osm_db_pack.c \
-        osm_drop_mgr.c \
-        osm_fwd_tbl.c \
-        osm_inform.c \
-        osm_lid_mgr.c \
-        osm_lin_fwd_rcv.c \
-        osm_lin_fwd_rcv_ctrl.c \
-        osm_lin_fwd_tbl.c \
-        osm_link_mgr.c \
-        osm_matrix.c \
-        osm_mcast_fwd_rcv.c \
-        osm_mcast_fwd_rcv_ctrl.c \
-        osm_mcast_mgr.c \
-        osm_mcast_tbl.c \
-        osm_mcm_info.c \
-        osm_mcm_port.c \
-        osm_mtree.c \
-        osm_multicast.c \
-        osm_node.c \
-        osm_node_desc_rcv.c \
-        osm_node_desc_rcv_ctrl.c \
-        osm_node_info_rcv.c \
-        osm_node_info_rcv_ctrl.c \
-        osm_opensm.c \
-        osm_pkey.c \
-        osm_pkey_mgr.c \
-        osm_prtn.c \
-        osm_prtn_config.c \
-        osm_pkey_rcv.c \
-        osm_pkey_rcv_ctrl.c \
-        osm_qos.c \
-        osm_port.c \
-        osm_port_info_rcv.c \
-        osm_port_info_rcv_ctrl.c \
-        osm_remote_sm.c \
-        osm_req.c \
-        osm_req_ctrl.c \
-        osm_resp.c \
-        osm_sa.c \
-        osm_router.c \
-        osm_sa_class_port_info.c \
-        osm_sa_class_port_info_ctrl.c \
-        osm_sa_guidinfo_record.c \
-        osm_sa_guidinfo_record_ctrl.c \
-        osm_sa_informinfo.c \
-        osm_sa_informinfo_ctrl.c \
-        osm_sa_lft_record.c \
-        osm_sa_lft_record_ctrl.c \
-        osm_sa_link_record.c \
-        osm_sa_link_record_ctrl.c \
-        osm_sa_mad_ctrl.c \
-        osm_sa_mcmember_record.c \
-        osm_sa_mcmember_record_ctrl.c \
-        osm_sa_mft_record.c \
-        osm_sa_mft_record_ctrl.c \
-        osm_sa_node_record.c \
-        osm_sa_node_record_ctrl.c \
-        osm_sa_path_record.c \
-        osm_sa_path_record_ctrl.c \
-        osm_sa_pkey_record.c \
-        osm_sa_pkey_record_ctrl.c \
-        osm_sa_portinfo_record.c \
-        osm_sa_portinfo_record_ctrl.c \
-        osm_sa_response.c \
-        osm_sa_service_record.c \
-        osm_sa_service_record_ctrl.c \
-        osm_sa_slvl_record.c \
-        osm_sa_slvl_record_ctrl.c \
-        osm_sa_sminfo_record.c \
-        osm_sa_sminfo_record_ctrl.c \
-        osm_sa_sw_info_record.c \
-        osm_sa_sw_info_record_ctrl.c \
-        osm_sa_vlarb_record.c \
-        osm_sa_vlarb_record_ctrl.c \
-        osm_service.c \
-        osm_slvl_map_rcv.c \
-        osm_slvl_map_rcv_ctrl.c \
-        osm_sm.c \
-        osm_sminfo_rcv.c \
-        osm_sminfo_rcv_ctrl.c \
-        osm_sm_mad_ctrl.c \
-        osm_sm_state_mgr.c \
-        osm_state_mgr.c \
-        osm_state_mgr_ctrl.c \
-        osm_subnet.c \
-        osm_sweep_fail_ctrl.c \
-        osm_sw_info_rcv.c \
-        osm_sw_info_rcv_ctrl.c \
-        osm_switch.c \
-        osm_trap_rcv.c \
-        osm_trap_rcv_ctrl.c \
-        osm_ucast_mgr.c \
-        osm_ucast_updn.c \
-        osm_ucast_file.c \
-        osm_ucast_ftree.c \
-        osm_vl15intf.c \
-        osm_vl_arb_rcv.c \
-        osm_vl_arb_rcv_ctrl.c \
-        st.c \
-        main.c \
-        cl_event_wheel.c \
-        cl_dispatcher.c
-
-OSM_HOME=..
-
-TARGETLIBS=\
-!if $(FREEBUILD)
-                       $(LIBPATH)\*\ibal.lib \
-                       $(LIBPATH)\*\complib.lib \
-                       $(TARGETPATH)\*\osmv_ibal.lib \
-                       $(TARGETPATH)\*\opensm_ibal.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-
-!else
-                       $(LIBPATH)\*\ibald.lib \
-                       $(LIBPATH)\*\complibd.lib \
-                       $(TARGETPATH)\*\osmv_ibald.lib \
-                       $(TARGETPATH)\*\opensm_ibald.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-!endif
-
-#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done
-INCLUDES= \
-       $(OSM_HOME)\include; \
-       $(OSM_HOME); \
-       $(WINIBHOME)\inc; \
-       $(WINIBHOME)\inc\user;
-
-# Could be any special flag needed for this project 
-USER_C_FLAGS=$(USER_C_FLAGS) /MD
-#Add preproccessor definitions
-C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL
-C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H
-!if !$(FREEBUILD)
-#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG
-C_DEFINES=$(C_DEFINES) 
-!endif
-
-LINKER_FLAGS= $(LINKER_FLAGS)
-MSC_WARNING_LEVEL= /W3
-#MSC_OPTIMIZATION= /O0
+TARGETNAME=opensm\r
+\r
+!if !defined(WINIBHOME)\r
+WINIBHOME=..\..\..\..\r
+!endif\r
+\r
+LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+\r
+!if defined(OSM_TARGET)\r
+TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)\r
+!else\r
+TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+!endif\r
+\r
+TARGETTYPE=PROGRAM\r
+UMTYPE=console\r
+USE_MSVCRT=1\r
+SOURCES=\\r
+        osm.mc \\r
+        opensm.rc \\r
+        osm_db_files.c \\r
+        osm_db_pack.c \\r
+        osm_drop_mgr.c \\r
+        osm_fwd_tbl.c \\r
+        osm_inform.c \\r
+        osm_lid_mgr.c \\r
+        osm_lin_fwd_rcv.c \\r
+        osm_lin_fwd_rcv_ctrl.c \\r
+        osm_lin_fwd_tbl.c \\r
+        osm_link_mgr.c \\r
+        osm_matrix.c \\r
+        osm_mcast_fwd_rcv.c \\r
+        osm_mcast_fwd_rcv_ctrl.c \\r
+        osm_mcast_mgr.c \\r
+        osm_mcast_tbl.c \\r
+        osm_mcm_info.c \\r
+        osm_mcm_port.c \\r
+        osm_mtree.c \\r
+        osm_multicast.c \\r
+        osm_node.c \\r
+        osm_node_desc_rcv.c \\r
+        osm_node_desc_rcv_ctrl.c \\r
+        osm_node_info_rcv.c \\r
+        osm_node_info_rcv_ctrl.c \\r
+        osm_opensm.c \\r
+        osm_pkey.c \\r
+        osm_pkey_mgr.c \\r
+        osm_prtn.c \\r
+        osm_prtn_config.c \\r
+        osm_pkey_rcv.c \\r
+        osm_pkey_rcv_ctrl.c \\r
+        osm_qos.c \\r
+        osm_port.c \\r
+        osm_port_info_rcv.c \\r
+        osm_port_info_rcv_ctrl.c \\r
+        osm_remote_sm.c \\r
+        osm_req.c \\r
+        osm_req_ctrl.c \\r
+        osm_resp.c \\r
+        osm_sa.c \\r
+        osm_router.c \\r
+        osm_sa_class_port_info.c \\r
+        osm_sa_class_port_info_ctrl.c \\r
+        osm_sa_guidinfo_record.c \\r
+        osm_sa_guidinfo_record_ctrl.c \\r
+        osm_sa_informinfo.c \\r
+        osm_sa_informinfo_ctrl.c \\r
+        osm_sa_lft_record.c \\r
+        osm_sa_lft_record_ctrl.c \\r
+        osm_sa_link_record.c \\r
+        osm_sa_link_record_ctrl.c \\r
+        osm_sa_mad_ctrl.c \\r
+        osm_sa_mcmember_record.c \\r
+        osm_sa_mcmember_record_ctrl.c \\r
+        osm_sa_mft_record.c \\r
+        osm_sa_mft_record_ctrl.c \\r
+        osm_sa_node_record.c \\r
+        osm_sa_node_record_ctrl.c \\r
+        osm_sa_path_record.c \\r
+        osm_sa_path_record_ctrl.c \\r
+        osm_sa_pkey_record.c \\r
+        osm_sa_pkey_record_ctrl.c \\r
+        osm_sa_portinfo_record.c \\r
+        osm_sa_portinfo_record_ctrl.c \\r
+        osm_sa_response.c \\r
+        osm_sa_service_record.c \\r
+        osm_sa_service_record_ctrl.c \\r
+        osm_sa_slvl_record.c \\r
+        osm_sa_slvl_record_ctrl.c \\r
+        osm_sa_sminfo_record.c \\r
+        osm_sa_sminfo_record_ctrl.c \\r
+        osm_sa_sw_info_record.c \\r
+        osm_sa_sw_info_record_ctrl.c \\r
+        osm_sa_vlarb_record.c \\r
+        osm_sa_vlarb_record_ctrl.c \\r
+        osm_service.c \\r
+        osm_slvl_map_rcv.c \\r
+        osm_slvl_map_rcv_ctrl.c \\r
+        osm_sm.c \\r
+        osm_sminfo_rcv.c \\r
+        osm_sminfo_rcv_ctrl.c \\r
+        osm_sm_mad_ctrl.c \\r
+        osm_sm_state_mgr.c \\r
+        osm_state_mgr.c \\r
+        osm_state_mgr_ctrl.c \\r
+        osm_subnet.c \\r
+        osm_sweep_fail_ctrl.c \\r
+        osm_sw_info_rcv.c \\r
+        osm_sw_info_rcv_ctrl.c \\r
+        osm_switch.c \\r
+        osm_trap_rcv.c \\r
+        osm_trap_rcv_ctrl.c \\r
+        osm_ucast_mgr.c \\r
+        osm_ucast_updn.c \\r
+        osm_ucast_file.c \\r
+        osm_ucast_ftree.c \\r
+        osm_vl15intf.c \\r
+        osm_vl_arb_rcv.c \\r
+        osm_vl_arb_rcv_ctrl.c \\r
+        st.c \\r
+        main.c \\r
+        cl_event_wheel.c \\r
+        cl_dispatcher.c\r
+\r
+OSM_HOME=..\r
+\r
+TARGETLIBS=\\r
+!if $(FREEBUILD)\r
+                       $(LIBPATH)\*\ibal.lib \\r
+                       $(LIBPATH)\*\complib.lib \\r
+                       $(TARGETPATH)\*\osmv_ibal.lib \\r
+                       $(TARGETPATH)\*\opensm_ibal.lib\r
+\r
+!else\r
+                       $(LIBPATH)\*\ibald.lib \\r
+                       $(LIBPATH)\*\complibd.lib \\r
+                       $(TARGETPATH)\*\osmv_ibald.lib \\r
+                       $(TARGETPATH)\*\opensm_ibald.lib\r
+!endif\r
+\r
+#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done\r
+INCLUDES= \\r
+       $(OSM_HOME)\include; \\r
+       $(OSM_HOME); \\r
+       $(WINIBHOME)\inc; \\r
+       $(WINIBHOME)\inc\user;\r
+\r
+# Could be any special flag needed for this project \r
+USER_C_FLAGS=$(USER_C_FLAGS) /MD\r
+#Add preproccessor definitions\r
+C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL\r
+C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H\r
+!if !$(FREEBUILD)\r
+#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG\r
+C_DEFINES=$(C_DEFINES) \r
+!endif\r
+\r
+LINKER_FLAGS= $(LINKER_FLAGS)\r
+MSC_WARNING_LEVEL= /W3\r
+#MSC_OPTIMIZATION= /O0\r
index 97c149a..8ee31d9 100644 (file)
@@ -1,73 +1,71 @@
-!if $(FREEBUILD)
-TARGETNAME=osmtest
-!else
-TARGETNAME=osmtestd
-!endif
-
-!if !defined(WINIBHOME)
-WINIBHOME=..\..\..\..
-!endif
-
-LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-
-!if defined(OSM_TARGET)
-TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)
-!else
-TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)
-!endif
-
-TARGETTYPE=PROGRAM
-UMTYPE=console
-USE_MSVCRT=1
-OVR_DIR=..\addon
-
-
-SOURCES=\
-       osmt_slvl_vl_arb.c \
-       osmt_service.c \
-       osmt_multicast.c \
-       osmt_inform.c \
-       osmtest.c \
-       main.c \
-
-
-
-OSM_HOME=..
-
-TARGETLIBS=\
-!if $(FREEBUILD)
-                       $(LIBPATH)\*\ibal.lib \
-                       $(LIBPATH)\*\complib.lib \
-                       $(TARGETPATH)\*\osmv_ibal.lib \
-                       $(TARGETPATH)\*\opensm_ibal.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-
-!else
-                       $(LIBPATH)\*\ibald.lib \
-                       $(LIBPATH)\*\complibd.lib \
-                       $(TARGETPATH)\*\osmv_ibald.lib \
-                       $(TARGETPATH)\*\opensm_ibald.lib \
-                       $(CRT_LIB_PATH)\msvcrt.lib
-!endif
-
-#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done
-INCLUDES= \
-   $(OSM_HOME)\osmtest\include; \
-       $(OSM_HOME)\include; \
-       $(OSM_HOME); \
-       $(WINIBHOME)\inc; \
-       $(WINIBHOME)\inc\user;
-
-# Could be any special flag needed for this project 
-USER_C_FLAGS=$(USER_C_FLAGS) /MD
-#Add preproccessor definitions
-C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL
-C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H
-!if !$(FREEBUILD)
-#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG
-C_DEFINES=$(C_DEFINES) 
-!endif
-
-LINKER_FLAGS= $(LINKER_FLAGS)
-MSC_WARNING_LEVEL= /W3
-
+!if $(FREEBUILD)\r
+TARGETNAME=osmtest\r
+!else\r
+TARGETNAME=osmtestd\r
+!endif\r
+\r
+!if !defined(WINIBHOME)\r
+WINIBHOME=..\..\..\..\r
+!endif\r
+\r
+LIBPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+\r
+!if defined(OSM_TARGET)\r
+TARGETPATH=$(OSM_TARGET)\bin\user\obj$(BUILD_ALT_DIR)\r
+!else\r
+TARGETPATH=$(WINIBHOME)\bin\user\obj$(BUILD_ALT_DIR)\r
+!endif\r
+\r
+TARGETTYPE=PROGRAM\r
+UMTYPE=console\r
+USE_MSVCRT=1\r
+OVR_DIR=..\addon\r
+\r
+\r
+SOURCES=\\r
+       osmt_slvl_vl_arb.c \\r
+       osmt_service.c \\r
+       osmt_multicast.c \\r
+       osmt_inform.c \\r
+       osmtest.c \\r
+       main.c \\r
+\r
+\r
+\r
+OSM_HOME=..\r
+\r
+TARGETLIBS=\\r
+!if $(FREEBUILD)\r
+                       $(LIBPATH)\*\ibal.lib \\r
+                       $(LIBPATH)\*\complib.lib \\r
+                       $(TARGETPATH)\*\osmv_ibal.lib \\r
+                       $(TARGETPATH)\*\opensm_ibal.lib\r
+\r
+!else\r
+                       $(LIBPATH)\*\ibald.lib \\r
+                       $(LIBPATH)\*\complibd.lib \\r
+                       $(TARGETPATH)\*\osmv_ibald.lib \\r
+                       $(TARGETPATH)\*\opensm_ibald.lib\r
+!endif\r
+\r
+#DO NOT TOUCH the order of search path , until ib_types.h merging process will be done\r
+INCLUDES= \\r
+   $(OSM_HOME)\osmtest\include; \\r
+       $(OSM_HOME)\include; \\r
+       $(OSM_HOME); \\r
+       $(WINIBHOME)\inc; \\r
+       $(WINIBHOME)\inc\user;\r
+\r
+# Could be any special flag needed for this project \r
+USER_C_FLAGS=$(USER_C_FLAGS) /MD\r
+#Add preproccessor definitions\r
+C_DEFINES=$(C_DEFINES) -DWIN32 -D__WIN__ -D__i386__ -Dinline=__inline -DMT_LITTLE_ENDIAN -DOSM_VENDOR_INTF_AL\r
+C_DEFINES=$(C_DEFINES) -I.. -DHAVE_CONFIG_H\r
+!if !$(FREEBUILD)\r
+#C_DEFINES=$(C_DEFINES) -D_DEBUG -DDEBUG -DDBG\r
+C_DEFINES=$(C_DEFINES) \r
+!endif\r
+\r
+LINKER_FLAGS= $(LINKER_FLAGS)\r
+MSC_WARNING_LEVEL= /W3\r
+\r