Author: iulian Date: 2012-05-23 12:05:41 -0500 (Wed, 23 May 2012) New Revision: 5529 Added: cgm/trunk/geom/OCC/occ_patches_6.5.2_gcc4.6.3 Log: in order to be able to build occt version 6.5.2, on a system with gcc 4.6.3, you need to apply this patch, in this way: after extracting the occ tar file, go to root directory patch with $> patch -p1<occ_patches_6.5.2_gcc4.6.3 with this patch, make check passes for cgm built with this version of occ(t) Added: cgm/trunk/geom/OCC/occ_patches_6.5.2_gcc4.6.3 =================================================================== --- cgm/trunk/geom/OCC/occ_patches_6.5.2_gcc4.6.3 (rev 0) +++ cgm/trunk/geom/OCC/occ_patches_6.5.2_gcc4.6.3 2012-05-23 17:05:41 UTC (rev 5529) @@ -0,0 +1,135 @@ +diff -rupN orgOCC652/ros/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx OCC652/ros/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx +--- orgOCC652/ros/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx 2011-07-15 02:27:59.000000000 -0500 ++++ OCC652/ros/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx 2012-05-23 11:44:30.190980273 -0500 +@@ -201,9 +201,18 @@ void BRepBuilderAPI_Collect::Add (const + BuildBack (myGen, GenBack); // Vraiment pas optimum a Revoir + BuildBack (myMod, ModBack); + +- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_FACE); +- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_EDGE); +- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_VERTEX); ++ TopAbs_ShapeEnum type = SI.ShapeType(); ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,type); ++ if(type < TopAbs_SHELL) ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_SHELL); ++ if(type < TopAbs_FACE) ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_FACE); ++ if(type < TopAbs_WIRE) ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_WIRE); ++ if(type < TopAbs_EDGE) ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_EDGE); ++ if(type < TopAbs_VERTEX) ++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_VERTEX); + + #ifdef DEB + if (Affich) { +diff -rupN orgOCC652/ros/src/BRepClass3d/BRepClass3d_SClassifier.cxx OCC652/ros/src/BRepClass3d/BRepClass3d_SClassifier.cxx +--- orgOCC652/ros/src/BRepClass3d/BRepClass3d_SClassifier.cxx 2011-08-12 05:09:56.000000000 -0500 ++++ OCC652/ros/src/BRepClass3d/BRepClass3d_SClassifier.cxx 2012-05-23 09:29:19.235267158 -0500 +@@ -90,7 +90,8 @@ void BRepClass3d_SClassifier::PerformInf + myState=2; + for(aSE.InitShell(); aSE.MoreShell() && nump<2; aSE.NextShell()) { + for(aSE.InitFace(); aSE.MoreFace() && nump<2; ) { +- aF =*((TopoDS_Face*)&aSE.CurrentFace()); ++ TopoDS_Face tmpVar = aSE.CurrentFace(); ++ aF =*((TopoDS_Face*)&tmpVar); + aSE.NextFace(); + if(!nump) { + nump++; +diff -rupN orgOCC652/ros/src/Extrema/Extrema_ExtPElS.cxx OCC652/ros/src/Extrema/Extrema_ExtPElS.cxx +--- orgOCC652/ros/src/Extrema/Extrema_ExtPElS.cxx 2011-07-15 02:29:06.000000000 -0500 ++++ OCC652/ros/src/Extrema/Extrema_ExtPElS.cxx 2012-05-23 11:44:30.190980273 -0500 +@@ -56,6 +56,7 @@ void Extrema_ExtPElS::Perform(const gp_P + gp_Vec myZ = Pos.XDirection()^Pos.YDirection(); + Standard_Real U1 = gp_Vec(Pos.XDirection()).AngleWithRef(OPp,myZ); //-PI<U1<PI + Standard_Real U2 = U1 + PI; ++ if(U1 > -Tol && U1 < 0.) {U1 = 0.;}
participants (1)
-
iulian@mcs.anl.gov