diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp
index f8d2070bfae0b444483ca6e2c891c8ad3e44b146..268f65d6f70737118cab77db0ca655ce0ad4fe05 100644
--- a/Fltk/Callbacks.cpp
+++ b/Fltk/Callbacks.cpp
@@ -1,4 +1,4 @@
-// $Id: Callbacks.cpp,v 1.473 2006-11-07 19:47:12 geuzaine Exp $
+// $Id: Callbacks.cpp,v 1.474 2006-11-19 02:23:49 geuzaine Exp $
 //
 // Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 //
@@ -607,6 +607,11 @@ static char *file_types =
   "\tMedit mesh (*.mesh)"
   "\tNastran bulk data file (*.bdf)"
   "\tSTL surface mesh (*.stl)"
+#if defined(HAVE_OCC)
+  "\tSTEP model (*.step)"
+  "\tIGES model (*.iges)"
+  "\tOpenCascade model (*.brep)"
+#endif
   "\tJPEG (*.jpg)"
   "\tPNG (*.png)"
   "\tBMP (*.bmp)"
diff --git a/configure b/configure
index 361749314fc2d6efe40352163c88d10b4004688f..fbdab793d2ee92ac9b470403eba768c4e4948cc6 100755
--- a/configure
+++ b/configure
@@ -4575,11 +4575,15 @@ else
 fi
 
   if test "x${OCC}" = "xyes"; then
-    OCC_LIBS="-lTKSTEP -lTKXDESTEP -lTKSTEP209 -lTKSTEPAttr -lTKSTEPBase"
-    OCC_LIBS="${OCC_LIBS} -lTKXDEIGES -lTKIGES -lTKXSBase -lTKStdSchema -lTKStdLSchema"
-    OCC_LIBS="${OCC_LIBS} -lTKV3d -lTKV2d -lTKBool -lTKShHealing -lTKMesh -lTKPrim"
-    OCC_LIBS="${OCC_LIBS} -lTKTopAlgo -lTKBRep -lTKGeomAlgo -lTKGeomBase -lTKG3d -lTKG2d"
-    OCC_LIBS="${OCC_LIBS} -lTKMath -lTKernel"
+    # data exchange (see occ/ros/adm/make/Makefile for more info)
+    OCC_LIBS="-lTKSTEP -lTKSTEPBase -lTKIGES -lTKXSBase"
+    # modeling algorithms
+    OCC_LIBS="${OCC_LIBS} -lTKOffset -lTKFeat -lTKFillet -lTKBool -lTKShHealing"
+    OCC_LIBS="${OCC_LIBS} -lTKMesh -lTKHLR -lTKBO -lTKPrim -lTKTopAlgo -lTKGeomAlgo"
+    # modeling data
+    OCC_LIBS="${OCC_LIBS} -lTKBRep -lTKGeomBase -lTKG3d -lTKG2d"
+    # foundation classes
+    OCC_LIBS="${OCC_LIBS} -lTKAdvTools -lTKMath -lTKernel"
     if test "x${OCC_PREFIX}" = "x"; then
       GMSH_LIBS="${GMSH_LIBS} ${OCC_LIBS}"
       FLAGS="${FLAGS} -DHAVE_OCC"
diff --git a/configure.in b/configure.in
index a0c5d9ad9bac37f0c6a41fb1efdb51abc53e28f3..4310fe01f7b3810f1b4cc2e5f90d79cd24c4c935 100644
--- a/configure.in
+++ b/configure.in
@@ -1,4 +1,4 @@
-dnl $Id: configure.in,v 1.108 2006-11-16 01:56:51 geuzaine Exp $
+dnl $Id: configure.in,v 1.109 2006-11-19 02:23:49 geuzaine Exp $
 dnl
 dnl Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 dnl
@@ -557,11 +557,15 @@ if test "x$enable_occ" = "xyes"; then
   fi
   AC_CHECK_LIB(TKernel,main,OCC="yes",OCC="no")
   if test "x${OCC}" = "xyes"; then
-    OCC_LIBS="-lTKSTEP -lTKXDESTEP -lTKSTEP209 -lTKSTEPAttr -lTKSTEPBase"
-    OCC_LIBS="${OCC_LIBS} -lTKXDEIGES -lTKIGES -lTKXSBase -lTKStdSchema -lTKStdLSchema"
-    OCC_LIBS="${OCC_LIBS} -lTKV3d -lTKV2d -lTKBool -lTKShHealing -lTKMesh -lTKPrim"
-    OCC_LIBS="${OCC_LIBS} -lTKTopAlgo -lTKBRep -lTKGeomAlgo -lTKGeomBase -lTKG3d -lTKG2d"
-    OCC_LIBS="${OCC_LIBS} -lTKMath -lTKernel"
+    # data exchange (see occ/ros/adm/make/Makefile for more info)
+    OCC_LIBS="-lTKSTEP -lTKSTEPBase -lTKIGES -lTKXSBase"
+    # modeling algorithms
+    OCC_LIBS="${OCC_LIBS} -lTKOffset -lTKFeat -lTKFillet -lTKBool -lTKShHealing"
+    OCC_LIBS="${OCC_LIBS} -lTKMesh -lTKHLR -lTKBO -lTKPrim -lTKTopAlgo -lTKGeomAlgo"
+    # modeling data
+    OCC_LIBS="${OCC_LIBS} -lTKBRep -lTKGeomBase -lTKG3d -lTKG2d"
+    # foundation classes
+    OCC_LIBS="${OCC_LIBS} -lTKAdvTools -lTKMath -lTKernel"
     if test "x${OCC_PREFIX}" = "x"; then
       GMSH_LIBS="${GMSH_LIBS} ${OCC_LIBS}"
       FLAGS="${FLAGS} -DHAVE_OCC"