diff --git a/utils/owfs/Config.in b/utils/owfs/Config.in new file mode 100644 index 0000000000..a6508e85e2 --- /dev/null +++ b/utils/owfs/Config.in @@ -0,0 +1,49 @@ + menu "Customize libow" + depends on PACKAGE_libow + + menu "Bus master and adapter support" + config LIBOW_MASTER_USB + bool "USB bus master support (requires libusb)" + help + Include support for USB adapters (NOT usb-serial adapters, which use + kernel driver and are supported anyway). + Turning this off will save ~13kB (and ~50kB weighting libusb dependency). + default y + + config LIBOW_MASTER_I2C + bool "I2C bus master (DS2482) support" + default y + help + Include support for I2C adapters. + Turning this feature off will save ~6kB. + + config LIBOW_MASTER_W1 + bool "Kernel W1 bus master support (requires kmod-w1)" + help + Support kernel 1-Wire bus masters (requires KConfig CONFIG_CONNECTOR=y + and CONFIG_W1_CON=y). + Turning this on will increase libow size by about 10kB. + default n + endmenu + + config LIBOW_ZEROCONF + bool "Zeroconf/bonjour support" + default y + help + Enable server process announcement using Zeroconf (Bonjour) protocol. + Turning this feature on will increase owlib size by about 12kB. + + config LIBOW_DEBUG + bool "Enable debug output (100+ kB)" + default y + help + If you don't need to debug your 1-wire network, you can save as much as + 137kB disabling debug output. + + config LIBOW_OWTRAFFIC + bool "Enable bus traffic reports" + default n + help + Enable owfs traffic monitor. It's here purely for debugging purposes. + Turning this on will increase libow size by about 3kB. + endmenu diff --git a/utils/owfs/Makefile b/utils/owfs/Makefile index b939d618e0..d4cc4cb240 100644 --- a/utils/owfs/Makefile +++ b/utils/owfs/Makefile @@ -20,6 +20,14 @@ PKG_LICENSE:=GPL-2.0 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 +PKG_CONFIG_DEPENDS:= \ + CONFIG_LIBOW_MASTER_USB \ + CONFIG_LIBOW_MASTER_I2C \ + CONFIG_LIBOW_MASTER_W1 \ + CONFIG_LIBOW_ZEROCONF \ + CONFIG_LIBOW_DEBUG \ + CONFIG_LIBOW_OWTRAFFIC + include $(INCLUDE_DIR)/package.mk # @@ -74,10 +82,17 @@ endef define Package/libow $(call Package/owfs/Library) - DEPENDS:=+libusb-compat +libpthread + DEPENDS:= \ + +libpthread \ + +LIBOW_MASTER_USB:libusb-compat \ + +LIBOW_MASTER_W1:kmod-w1 TITLE:=OWFS - common shared library endef +define Package/libow/config + source "$(SOURCE)/Config.in" +endef + define Package/libow/description $(call Package/$(PKG_NAME)/Default/description) @@ -170,13 +185,18 @@ CONFIGURE_ARGS += \ --with-fuseinclude="$(STAGING_DIR)/usr/include" \ --with-fuselib="$(STAGING_DIR)/usr/lib" \ --enable-shared \ - --enable-zero \ --disable-parport \ --disable-ownet \ --disable-owpython \ --disable-owphp \ --disable-owtcl \ --disable-swig \ + $(if $(CONFIG_LIBOW_MASTER_USB),--enable-usb,--disable-usb) \ + $(if $(CONFIG_LIBOW_MASTER_W1),--enable-w1,--disable-w1) \ + $(if $(CONFIG_LIBOW_MASTER_I2C),--enable-i2c,--disable-i2c) \ + $(if $(CONFIG_LIBOW_ZEROCONF),--enable-zero,--disable-zero) \ + $(if $(CONFIG_LIBOW_DEBUG),--enable-debug,--disable-debug) \ + $(if $(CONFIG_LIBOW_OWTRAFFIC),--enable-owtraffic,--disable-owtraffic) CONFIGURE_VARS += \ LDFLAGS="$(TARGET_LDFLAGS) -Wl,-rpath-link=$(STAGING_DIR)/usr/lib -Wl,-rpath-link=$(TOOLCHAIN_DIR)/usr/lib" \