diff --git a/Makefile.am b/Makefile.am index 1bfdcf4..c609ffa 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1 +1,4 @@ -SUBDIRS=src +SUBDIRS = include src + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = modbus.pc diff --git a/configure.ac b/configure.ac index caf7d4f..334e479 100644 --- a/configure.ac +++ b/configure.ac @@ -12,6 +12,9 @@ AC_PROG_LIBTOOL # Checks for libraries. AM_PATH_GLIB_2_0(2.0.0,,AC_MSG_ERROR(libmodbus needs GLib 2.X)) +PKG_CHECK_MODULES(GLIB, glib-2.0) +AC_SUBST(GLIB_CFLAGS) +AC_SUBST(GLIB_LIBS) # Checks for header files. AC_HEADER_STDC @@ -27,8 +30,11 @@ AC_FUNC_MALLOC AC_FUNC_SELECT_ARGTYPES AC_CHECK_FUNCS([inet_ntoa memset select socket]) -AC_CONFIG_FILES([ - Makefile - src/Makefile - ]) -AC_OUTPUT +AC_OUTPUT([ +Makefile +src/Makefile +include/Makefile +include/modbus/Makefile +modbus.pc +]) + diff --git a/include/Makefile.am b/include/Makefile.am new file mode 100644 index 0000000..09b00d9 --- /dev/null +++ b/include/Makefile.am @@ -0,0 +1,3 @@ +## Process this file with automake to produce Makefile.in + +SUBDIRS = modbus diff --git a/include/modbus/Makefile.am b/include/modbus/Makefile.am new file mode 100644 index 0000000..1ea6067 --- /dev/null +++ b/include/modbus/Makefile.am @@ -0,0 +1,5 @@ +## Process this file with automake to produce Makefile.in + +# Include files to install +libmodbusincludedir = $(includedir)/libmodbus +libmodbusinclude_HEADERS = modbus.h \ No newline at end of file diff --git a/src/modbus.h b/include/modbus/modbus.h index 3108b2a..3108b2a 100644 --- a/src/modbus.h +++ b/include/modbus/modbus.h diff --git a/modbus.pc.in b/modbus.pc.in new file mode 100644 index 0000000..b49a036 --- /dev/null +++ b/modbus.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: modbus +Description: Modbus protocol library +Requires: @modbus_pkgdeps@ +Version: @VERSION@ +Libs: -L${libdir} -lmodbus +Cflags: -I${includedir} diff --git a/src/Makefile.am b/src/Makefile.am index 6bd4b20..64ae674 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -10,10 +10,6 @@ test_modbus_slave_SOURCES = test-modbus-slave.c test_modbus_slave_INCLUDES = @GLIB_CFLAGS@ test_modbus_slave_LDADD = libmodbus.la @GLIB_LIBS@ -INCLUDES = @GLIB_CFLAGS@ +INCLUDES = @GLIB_CFLAGS@ -I$(top_srcdir)/include LDADD = @GLIB_LIBS@ CLEANFILES = *~ - -# Include files to install -libmodbusincludedir = $(includedir)/libmodbus -libmodbusinclude_HEADERS = modbus.h diff --git a/src/modbus.c b/src/modbus.c index c6fade6..6bbd08e 100644 --- a/src/modbus.c +++ b/src/modbus.c @@ -41,7 +41,7 @@ #include #include -#include "modbus.h" +#include #define UNKNOWN_ERROR_MSG "Not defined in modbus specification" diff --git a/src/test-modbus-master.c b/src/test-modbus-master.c index 80c110c..e62454a 100644 --- a/src/test-modbus-master.c +++ b/src/test-modbus-master.c @@ -24,7 +24,7 @@ #include #include -#include +#include #define LOOP 1 #define SLAVE 0x11 diff --git a/src/test-modbus-slave.c b/src/test-modbus-slave.c index eb3b6c7..ee1c6d8 100644 --- a/src/test-modbus-slave.c +++ b/src/test-modbus-slave.c @@ -24,7 +24,7 @@ #include #include -#include +#include int main(void) {