<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=520243413-26112008><FONT face=Arial color=#0000ff 
size=2>Applied on version 1769.</FONT></SPAN></DIV>
<DIV><SPAN class=520243413-26112008><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=520243413-26112008><FONT face=Arial color=#0000ff 
size=2>Thanks</FONT></SPAN></DIV>
<DIV><SPAN class=520243413-26112008><FONT face=Arial color=#0000ff 
size=2>Tzachi</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> ofw-bounces@lists.openfabrics.org 
  [mailto:ofw-bounces@lists.openfabrics.org] <B>On Behalf Of </B>Tzachi 
  Dar<BR><B>Sent:</B> Sunday, November 23, 2008 3:35 PM<BR><B>To:</B> 
  ofw@lists.openfabrics.org<BR><B>Subject:</B> [ofw] patch: Decrease the time it 
  takes to compile opensm<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV><FONT face=Arial size=2><SPAN class=317383113-23112008>The following 
  patch decreases the time that is needed in order to compile opensm from 50 
  seconds to about 5 seconds.</SPAN></FONT></DIV>
  <DIV><FONT face=Arial size=2><SPAN class=317383113-23112008>(this assumes that 
  files are already in the cache).</SPAN></FONT></DIV>
  <DIV><FONT face=Arial size=2><SPAN 
  class=317383113-23112008></SPAN></FONT> </DIV>
  <DIV><FONT face=Arial size=2><SPAN class=317383113-23112008>A better solution 
  would have been to use precompiled headers. Since this requires changes to 
  every source file, I choose not to implement this since we want to keep the 
  files aligned also with the Linux code.</SPAN></FONT></DIV>
  <DIV><FONT face=Arial size=2><SPAN 
  class=317383113-23112008></SPAN></FONT> </DIV>
  <DIV><FONT face=Arial size=2><SPAN 
  class=317383113-23112008>Thanks</SPAN></FONT></DIV>
  <DIV><FONT face=Arial size=2><SPAN 
  class=317383113-23112008>Tzachi</SPAN></FONT></DIV>
  <DIV><FONT face=Arial size=2><SPAN 
  class=317383113-23112008></SPAN></FONT> </DIV>
  <DIV><FONT face=Arial size=2><SPAN class=317383113-23112008>Index: 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/osm_files.c<BR>===================================================================<BR>--- 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/osm_files.c (revision 0)<BR>+++ 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/osm_files.c (revision 
  3544)<BR>@@ -0,0 +1,126 @@<BR>+#include <osm_db_files.c><BR>+#include 
  <osm_db_pack.c><BR>+#include <osm_fwd_tbl.c><BR>+#include 
  <osm_inform.c><BR>+#include <osm_lid_mgr.c><BR>+#include 
  <osm_lin_fwd_rcv.c><BR>+#include 
  <osm_lin_fwd_rcv_ctrl.c><BR>+#include 
  <osm_lin_fwd_tbl.c><BR>+<BR>+#include 
  <osm_link_mgr.c><BR>+#include <osm_matrix.c><BR>+#include 
  <osm_mcast_fwd_rcv.c><BR>+#include 
  <osm_mcast_fwd_rcv_ctrl.c><BR>+#include 
  <osm_mcast_mgr.c><BR>+#include <osm_mcast_tbl.c><BR>+#include 
  <osm_mcm_info.c><BR>+#include <osm_mcm_port.c><BR>+#include 
  <osm_mtree.c><BR>+#include <osm_multicast.c><BR>+#include 
  <osm_node.c><BR>+#include <osm_node_desc_rcv.c><BR>+#include 
  <osm_node_desc_rcv_ctrl.c><BR>+#include 
  <osm_node_info_rcv.c><BR>+#include 
  <osm_node_info_rcv_ctrl.c><BR>+#include 
  <osm_opensm.c><BR>+#include <osm_pkey.c><BR>+#include 
  <osm_pkey_mgr.c><BR>+#include <osm_prtn.c><BR>+#include 
  <osm_pkey_rcv.c><BR>+#include <osm_pkey_rcv_ctrl.c><BR>+#include 
  <osm_qos.c><BR>+#include <osm_port.c><BR>+#include 
  <osm_port_info_rcv.c><BR>+#include 
  <osm_port_info_rcv_ctrl.c><BR>+#include 
  <osm_remote_sm.c><BR>+#include <osm_req.c><BR>+#include 
  <osm_req_ctrl.c><BR>+#include <osm_resp.c><BR>+#include 
  <osm_sa.c><BR>+#include <osm_router.c><BR>+#include 
  <osm_sa_class_port_info.c><BR>+#include 
  <osm_sa_class_port_info_ctrl.c><BR>+#include 
  <osm_sa_guidinfo_record.c><BR>+#include 
  <osm_sa_guidinfo_record_ctrl.c><BR>+#include 
  <osm_sa_informinfo.c><BR>+#include 
  <osm_sa_informinfo_ctrl.c><BR>+#include 
  <osm_sa_lft_record.c><BR>+#include 
  <osm_sa_lft_record_ctrl.c><BR>+#include 
  <osm_sa_link_record.c><BR>+#include 
  <osm_sa_link_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_mad_ctrl.c><BR>+<BR>+#include 
  <osm_sa_mcmember_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_mft_record.c><BR>+<BR>+#include 
  <osm_sa_mft_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_node_record.c><BR>+<BR>+#include 
  <osm_sa_node_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_path_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_pkey_record.c><BR>+<BR>+#include 
  <osm_sa_pkey_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_portinfo_record.c><BR>+<BR>+#include 
  <osm_sa_portinfo_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_response.c><BR>+<BR>+#include 
  <osm_sa_service_record.c><BR>+<BR>+#include 
  <osm_sa_service_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_slvl_record.c><BR>+<BR>+#include 
  <osm_sa_slvl_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_sminfo_record.c><BR>+<BR>+#include 
  <osm_sa_sminfo_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_sw_info_record.c><BR>+<BR>+#include 
  <osm_sa_sw_info_record_ctrl.c><BR>+<BR>+#include 
  <osm_sa_vlarb_record.c><BR>+<BR>+#include 
  <osm_sa_vlarb_record_ctrl.c><BR>+<BR>+#include 
  <osm_service.c><BR>+<BR>+#include 
  <osm_slvl_map_rcv.c><BR>+<BR>+#include 
  <osm_slvl_map_rcv_ctrl.c><BR>+<BR>+#include 
  <osm_sm.c><BR>+#include <osm_sminfo_rcv.c><BR>+#include 
  <osm_sminfo_rcv_ctrl.c><BR>+#include 
  <osm_sm_mad_ctrl.c><BR>+#include <osm_sm_state_mgr.c><BR>+#include 
  <osm_state_mgr.c><BR>+#include <osm_state_mgr_ctrl.c><BR>+#include 
  <osm_subnet.c><BR>+#include <osm_sweep_fail_ctrl.c><BR>+#include 
  <osm_sw_info_rcv.c><BR>+#include 
  <osm_sw_info_rcv_ctrl.c><BR>+#include <osm_switch.c><BR>+#include 
  <osm_trap_rcv.c><BR>+#include <osm_trap_rcv_ctrl.c><BR>+#include 
  <osm_ucast_mgr.c><BR>+#include <osm_ucast_updn.c><BR>+#include 
  <osm_ucast_file.c><BR>+#include <osm_ucast_ftree.c><BR>+#include 
  <osm_vl15intf.c><BR>+#include <osm_vl_arb_rcv.c><BR>+#include 
  <osm_vl_arb_rcv_ctrl.c><BR>+#include <st.c><BR>+#include 
  <main.c><BR>+#include <cl_event_wheel.c><BR>+#include 
  <cl_dispatcher.c><BR>Index: 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/SOURCES<BR>===================================================================<BR>--- 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/SOURCES (revision 3543)<BR>+++ 
  Q:/projinf4/trunk/ulp/opensm/user/opensm/SOURCES (revision 3544)<BR>@@ 
  -18,109 +18,11 
  @@<BR> SOURCES=\<BR>         
  osm.mc \<BR>         opensm.rc 
  \<BR>-        osm_db_files.c 
  \<BR>-        osm_db_pack.c 
  \<BR>-        osm_drop_mgr.c 
  \<BR>-        osm_fwd_tbl.c 
  \<BR>-        osm_inform.c 
  \<BR>-        osm_lid_mgr.c 
  \<BR>-        osm_lin_fwd_rcv.c 
  \<BR>-        osm_lin_fwd_rcv_ctrl.c 
  \<BR>-        osm_lin_fwd_tbl.c 
  \<BR>-        osm_link_mgr.c 
  \<BR>-        osm_matrix.c 
  \<BR>-        osm_mcast_fwd_rcv.c 
  \<BR>-        osm_mcast_fwd_rcv_ctrl.c 
  \<BR>-        osm_mcast_mgr.c 
  \<BR>-        osm_mcast_tbl.c 
  \<BR>-        osm_mcm_info.c 
  \<BR>-        osm_mcm_port.c 
  \<BR>-        osm_mtree.c 
  \<BR>-        osm_multicast.c 
  \<BR>-        osm_node.c 
  \<BR>-        osm_node_desc_rcv.c 
  \<BR>-        osm_node_desc_rcv_ctrl.c 
  \<BR>-        osm_node_info_rcv.c 
  \<BR>-        osm_node_info_rcv_ctrl.c 
  \<BR>-        osm_opensm.c 
  \<BR>-        osm_pkey.c 
  \<BR>-        osm_pkey_mgr.c 
  \<BR>-        osm_prtn.c 
  \<BR>-        osm_prtn_config.c 
  \<BR>-        osm_pkey_rcv.c 
  \<BR>-        osm_pkey_rcv_ctrl.c 
  \<BR>-        osm_qos.c 
  \<BR>-        osm_port.c 
  \<BR>-        osm_port_info_rcv.c 
  \<BR>-        osm_port_info_rcv_ctrl.c 
  \<BR>-        osm_remote_sm.c 
  \<BR>-        osm_req.c 
  \<BR>-        osm_req_ctrl.c 
  \<BR>-        osm_resp.c 
  \<BR>-        osm_sa.c 
  \<BR>-        osm_router.c 
  \<BR>-        osm_sa_class_port_info.c 
  \<BR>-        osm_sa_class_port_info_ctrl.c 
  \<BR>-        osm_sa_guidinfo_record.c 
  \<BR>-        osm_sa_guidinfo_record_ctrl.c 
  \<BR>-        osm_sa_informinfo.c 
  \<BR>-        osm_sa_informinfo_ctrl.c 
  \<BR>-        osm_sa_lft_record.c 
  \<BR>-        osm_sa_lft_record_ctrl.c 
  \<BR>-        osm_sa_link_record.c 
  \<BR>-        osm_sa_link_record_ctrl.c 
  \<BR>-        osm_sa_mad_ctrl.c 
  \<BR>-        osm_sa_mcmember_record.c 
  \<BR>-        osm_sa_mcmember_record_ctrl.c 
  \<BR>-        osm_sa_mft_record.c 
  \<BR>-        osm_sa_mft_record_ctrl.c 
  \<BR>-        osm_sa_node_record.c 
  \<BR>-        osm_sa_node_record_ctrl.c 
  \<BR>-        osm_sa_path_record.c 
  \<BR>-        osm_sa_path_record_ctrl.c 
  \<BR>-        osm_sa_pkey_record.c 
  \<BR>-        osm_sa_pkey_record_ctrl.c 
  \<BR>-        osm_sa_portinfo_record.c 
  \<BR>-        osm_sa_portinfo_record_ctrl.c 
  \<BR>-        osm_sa_response.c 
  \<BR>-        osm_sa_service_record.c 
  \<BR>-        osm_sa_service_record_ctrl.c 
  \<BR>-        osm_sa_slvl_record.c 
  \<BR>-        osm_sa_slvl_record_ctrl.c 
  \<BR>-        osm_sa_sminfo_record.c 
  \<BR>-        osm_sa_sminfo_record_ctrl.c 
  \<BR>-        osm_sa_sw_info_record.c 
  \<BR>-        osm_sa_sw_info_record_ctrl.c 
  \<BR>-        osm_sa_vlarb_record.c 
  \<BR>-        osm_sa_vlarb_record_ctrl.c 
  \<BR>-        osm_service.c 
  \<BR>-        osm_slvl_map_rcv.c 
  \<BR>-        osm_slvl_map_rcv_ctrl.c 
  \<BR>-        osm_sm.c 
  \<BR>-        osm_sminfo_rcv.c 
  \<BR>-        osm_sminfo_rcv_ctrl.c 
  \<BR>-        osm_sm_mad_ctrl.c 
  \<BR>-        osm_sm_state_mgr.c 
  \<BR>-        osm_state_mgr.c 
  \<BR>-        osm_state_mgr_ctrl.c 
  \<BR>-        osm_subnet.c 
  \<BR>-        osm_sweep_fail_ctrl.c 
  \<BR>-        osm_sw_info_rcv.c 
  \<BR>-        osm_sw_info_rcv_ctrl.c 
  \<BR>-        osm_switch.c 
  \<BR>-        osm_trap_rcv.c 
  \<BR>-        osm_trap_rcv_ctrl.c 
  \<BR>-        osm_ucast_mgr.c 
  \<BR>-        osm_ucast_updn.c 
  \<BR>-        osm_ucast_file.c 
  \<BR>-        osm_ucast_ftree.c 
  \<BR>-        osm_vl15intf.c 
  \<BR>-        osm_vl_arb_rcv.c 
  \<BR>-        osm_vl_arb_rcv_ctrl.c 
  \<BR>-        st.c 
  \<BR>-        main.c 
  \<BR>-        cl_event_wheel.c 
  \<BR>-        
  cl_dispatcher.c<BR>+ osm_files.c\<BR>+ osm_drop_mgr.c\<BR>+        
  osm_prtn_config.c\<BR>+        
  osm_sa_mcmember_record.c\<BR>+        
  osm_sa_path_record.c\<BR> <BR> OSM_HOME=..<BR> <BR></SPAN></FONT></DIV></BLOCKQUOTE></BODY></HTML>