Linux build : fix undefined pragma
[scilab.git] / scilab / m4 / libxml2.m4
1 dnl
2 dnl Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 dnl Copyright (C) INRIA - 2008 - Sylvestre Ledru
4 dnl 
5 dnl Copyright (C) 2012 - 2016 - Scilab Enterprises
6 dnl
7 dnl This file is hereby licensed under the terms of the GNU GPL v2.0,
8 dnl pursuant to article 5.3.4 of the CeCILL v.2.1.
9 dnl This file was originally licensed under the terms of the CeCILL v2.1,
10 dnl and continues to be available under such terms.
11 dnl For more information, see the COPYING file which you should have received
12 dnl along with this program.
13 dnl
14 dnl libxml is mandatory in Scilab 
15 dnl When we check :
16 dnl * if the path is provided or that we have to find it ourself
17 dnl * if it is available
18 dnl * what are the compilation flags 
19 dnl * what are linking flags
20 AC_DEFUN([AC_LIBXML2], [
21
22 AC_ARG_WITH(libxml2,
23                 AC_HELP_STRING([--with-libxml2=PREFIX],[Set the path to your libxml2 installation]),
24                 [with_libxml2=$withval],
25                 [with_libxml2='yes']
26                 )
27
28 if test "$with_libxml2" != 'yes' -a "$with_libxml2" != 'no'; then
29     # Look if xml-config xml2_config (which provides cflags and ldflags) is available
30     AC_MSG_CHECKING([libxml2, for xml-config])
31     XML_CONFIG="$with_libxml2/bin/xml2-config"
32     if test -x "$XML_CONFIG"; then
33         AC_MSG_RESULT([$XML_CONFIG])
34     else
35         AC_MSG_ERROR([Unable to find $XML_CONFIG. Please check the path you provided])
36     fi
37 else
38     if $WITH_DEVTOOLS; then # Scilab thirparties
39         XML_CONFIG="$DEVTOOLS_BINDIR/xml2-config"
40     else
41         AC_CHECK_PROGS(XML_CONFIG,xml2-config,no)
42     fi
43     if test "x$XML_CONFIG" = "xno"; then
44         AC_MSG_ERROR([Unable to find xml2-config in the path. Please check your installation of libxml2])
45     fi
46 fi
47 saved_cflags=$CFLAGS
48 saved_LIBS="$LIBS"
49
50 XML_FLAGS=`$XML_CONFIG --cflags`
51 XML_LIBS=`$XML_CONFIG --libs`
52 XML_VERSION=`$XML_CONFIG --version`
53
54 CFLAGS="$CFLAGS $XML_FLAGS"
55 LIBS="$LIBS $XML_LIBS"
56
57 AC_CHECK_LIB([xml2], [xmlReaderForFile],
58                [],
59                [AC_MSG_ERROR([libxml2 : library missing. (Cannot find symbol xmlReaderForFile). Check if libxml2 is installed and if the version is correct])]
60                )
61 AC_CHECK_LIB([xml2], [xmlBufferDetach],
62                [],
63                [AC_MSG_ERROR([libxml2 : library missing. (Cannot find symbol xmlBufferDetach). Check if libxml2 is installed and if the version is correct])]
64                )
65
66 #AC_CHECK_HEADERS([libxml/xmlreader.h])
67 #AC_CHECK_HEADERS([libxml/parser.h])
68 #AC_CHECK_HEADERS([libxml/tree.h])
69
70 #AC_CHECK_HEADERS([libxml/xpath.h])
71 #AC_CHECK_HEADERS([libxml/xpathInternals.h])
72
73 CFLAGS=$saved_cflags
74 LIBS="$saved_LIBS"
75
76 AC_SUBST(XML_FLAGS)
77 AC_SUBST(XML_LIBS)
78 AC_SUBST(XML_VERSION)
79
80 AC_DEFINE_UNQUOTED([LIBXML_FLAGS],["$XML_FLAGS"],[libXML2 flags])
81 AC_DEFINE_UNQUOTED([LIBXML_LIBS],["$XML_LIBS"],[libXML2 library])
82
83 #CFLAGS="$CFLAGS $XML_FLAGS"
84 #AC_CHECK_LIB(xml2,xmlInitParserCtxt,,[AC_MSG_ERROR([libxml2 : library missing])])
85
86
87 #AC_CHECK_HEADERS([libxml/tree.h],,[AC_MSG_ERROR([libxml2 : library missing missing])])
88
89 # Gets compilation and library flags
90 ])