Salome HOME
SMH: Fixes and patches from Paul.
[modules/kernel.git] / salome_adm / unix / config_files / check_qwt.m4
1 dnl Copyright (C) 2003  CEA/DEN, EDF R&D
2
3 AC_DEFUN([CHECK_QWT],[
4 AC_REQUIRE([CHECK_QT])dnl
5
6 AC_CHECKING(for qwt)
7
8 qwt_ok=yes
9
10 dnl were is qwt ?
11
12 AC_ARG_WITH(qwt,
13     [  --with-qwt=DIR     directory path to QWT installation ],
14     [QWTHOME="$withval"
15       AC_MSG_RESULT("select $withval as path to QWT")
16     ])
17
18 AC_ARG_WITH(qwt_inc,
19     [  --with-qwt_inc=DIR   directory path to QWT includes ],
20     [QWT_INCLUDES="$withval"
21       AC_MSG_RESULT("select $withval as path to QWT includes")
22     ])
23
24 if test -z $QWTHOME; then
25   AC_MSG_RESULT(QWTHOME not defined)
26   exits_ok=no   
27   if test "x$exits_ok" = "xno"; then
28      for d in /usr/local /usr ; do
29         AC_CHECK_FILE(${d}/lib/libqwt.so,exits_ok=yes,exits_ok=no)
30         if test "x$exits_ok" = "xyes"; then
31            QWTHOME=$d
32            AC_MSG_RESULT(libqwt.so detected in $d/lib)
33         fi
34      done
35   fi
36   if test "x$exits_ok" = "xno"; then
37      for d in `echo $LD_LIBRARY_PATH | sed -e "s/:/ /g"` ; do
38         if test -f $d/libqwt.so ; then
39            AC_MSG_RESULT(libqwt.so detected in $d)
40            QWTHOME=$d
41            QWTHOME=`echo ${QWTHOME} | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
42            exits_ok=yes
43            break
44         fi
45      done
46   fi
47   if test "x$exits_ok" = "xyes"; then
48      if test -z $QWT_INCLUDES; then
49         QWT_INCLUDES=$QWTHOME"/include/qwt"
50      fi
51   fi
52 else
53   if test -z $QWT_INCLUDES; then
54      QWT_INCLUDES="$QWTHOME/include"
55   fi    
56 fi
57
58 if test "x$qwt_ok" = xno -o ! -d "$QWTHOME" ; then
59   AC_MSG_RESULT(no)
60   AC_MSG_WARN(qwt not found)
61   qwt_ok=no
62 else
63    AC_LANG_SAVE
64    AC_LANG_CPLUSPLUS
65    CPPFLAGS_old=$CPPFLAGS
66    CPPFLAGS="$CPPFLAGS -I$QWT_INCLUDES"
67    CPPFLAGS="$CPPFLAGS $QT_INCLUDES"
68
69    AC_CHECK_HEADER(qwt.h,qwt_ok=yes,qwt_ok=no) 
70
71    CPPFLAGS=$CPPFLAGS_old
72
73    if test "x$qwt_ok" = xno ; then
74      AC_MSG_RESULT(no)
75      AC_MSG_WARN(qwt not found)
76   else
77      qwt_ok=yes
78   fi
79
80 if  test "x$qwt_ok" = "xyes"
81 then
82   AC_MSG_CHECKING(linking qwt library)
83   LIBS_old=$LIBS
84   if test "x$QTDIR" = "x/usr"
85   then
86     LIBS="$LIBS -lqt-mt"
87   else
88     LIBS="$LIBS -L$QTDIR/lib -lqt-mt"
89   fi
90   if test "x$QWTHOME" = "x/usr/lib"
91   then
92     LIBS="$LIBS -lqwt"
93   else
94     LIBS="$LIBS -L$QWTHOME/lib -lqwt"
95   fi
96
97   CXXFLAGS_old=$CXXFLAGS
98   CXXFLAGS="$CXXFLAGS $QT_INCLUDES -I$QWT_INCLUDES"
99
100   AC_CACHE_VAL(salome_cv_lib_qwt,[
101     AC_TRY_LINK(
102 #include <qapplication.h>
103 #include <qwt_plot.h>
104 ,   int n;
105     char **s;
106     QApplication a(n, s);
107     QwtPlot* p;
108     a.setMainWidget(p);
109     a.exec();,
110     eval "salome_cv_lib_qwt=yes",eval "salome_cv_lib_qwt=no")
111   ])
112   qwt_ok="$salome_cv_lib_qwt"
113
114   if  test "x$qwt_ok" = "xno"
115   then
116     AC_MSG_RESULT(unable to link with qwt library)
117     AC_MSG_RESULT(QWTHOME environment variable may be wrong)
118   else
119     QWT_INCLUDES="-I$QWT_INCLUDES"
120     if test "x$QWTHOME" = "x/usr/lib"
121     then
122       QWT_LIBS=" -lqwt"
123     else
124       QWT_LIBS="-L$QWTHOME/lib -lqwt"
125     fi
126
127     AC_SUBST(QWT_INCLUDES)
128     AC_SUBST(QWT_LIBS)
129
130     AC_MSG_RESULT(yes)
131   fi
132
133   LIBS=$LIBS_old
134   CXXFLAGS=$CXXFLAGS_old
135
136 fi
137
138
139   AC_LANG_RESTORE
140
141 fi
142
143
144 ])dnl
145 dnl