On 08/07/2014 01:02, Charles Lepple wrote:
Sorry I did not test this sooner - this went to Gmane but not to my email.
If you have time, could you please write up a quick man page for this driver?

Also, there seem to be some missing symbols and include files:

http://buildbot.networkupstools.org/public/nut/waterfall?branch=asem_i2c

The problem is that linux/i2c-dev.h must come from libi2c-dev to define the 
required functions. Same header is part of the kernel, but without required 
functions. Changed the configure.ac check to look for the functions, not just 
the header.
To build the driver you'll need libi2c-dev package (part of i2c-tools) on 
debian.

libi2c-dev is now installed on the ubuntu-trusty builder.

configure:10067: checking whether i2c_smbus_read_word_data is declared
configure:10067: gcc -c -g -O2 -Wall -Wsign-compare  conftest.c >&5
In file included from conftest.c:72:0:
/usr/include/linux/i2c-dev.h: In function 'i2c_smbus_write_quick':
/usr/include/linux/i2c-dev.h:176:55: error: 'NULL' undeclared (first use in 
this function)
   return i2c_smbus_access(file,value,0,I2C_SMBUS_QUICK,NULL);
                                                        ^
/usr/include/linux/i2c-dev.h:176:55: note: each undeclared identifier is 
reported only once for each function it appears in
/usr/include/linux/i2c-dev.h: In function 'i2c_smbus_write_byte':
/usr/include/linux/i2c-dev.h:191:41: error: 'NULL' undeclared (first use in 
this function)
                           I2C_SMBUS_BYTE,NULL);

Ref:
http://buildbot.networkupstools.org/public/nut/builders/Ubuntu-trusty-x64/builds/20/steps/configure/logs/config.log

Seems that on x64 architectures NULL is not #defined in <stddef.h>
the attached patch #includes <stdio.h> in AC_CHECK_DECLS. Tested on an ubuntu 12.10 x64, seems to solve the issue.

--
            Giuseppe Corbelli
WASP Software Engineer, Copan Italia S.p.A
Phone: +390303666318  Fax: +390302659932
E-mail: [email protected]
diff --git a/configure.ac b/configure.ac
index 39f1ad4..655f0d5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -476,7 +476,9 @@ if test "${nut_with_linux_i2c}" != no; then
                 [i2c_smbus_read_word_data, i2c_smbus_write_word_data, i2c_smbus_read_block_data],
                 [nut_with_linux_i2c="yes"],
                 [nut_with_linux_i2c="no"],
-                [#include <linux/i2c-dev.h>]
+                [#include <stdio.h>
+                 #include <linux/i2c-dev.h>
+                ]
             )
             ;;
         * )
_______________________________________________
Nut-upsdev mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsdev

Reply via email to