Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>lilik-openwrt-22.03
@ -0,0 +1,95 @@ | |||||
# | |||||
# Copyright (C) 2017 Hauke Mehrtens <hauke@hauke-m.de> | |||||
# Copyright (C) 2016 - 2017 Stijn Tintel <stijn@linux-ipv6.be> | |||||
# | |||||
# This is free software, licensed under the GNU General Public License v2. | |||||
# See /LICENSE for more information. | |||||
# | |||||
include $(TOPDIR)/rules.mk | |||||
PKG_NAME:=openzwave | |||||
PKG_REV:=164 | |||||
PKG_VERSION:=1.4.$(PKG_REV) | |||||
PKG_RELEASE:=1 | |||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||||
PKG_SOURCE_URL:=http://old.openzwave.com/downloads | |||||
PKG_HASH:=4ecf39787aaf278c203764069b581dbc26094ce57cafeab4a0c1f012d2c0ac69 | |||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) | |||||
PKG_INSTALL:=1 | |||||
include $(INCLUDE_DIR)/package.mk | |||||
define Package/openzwave/default | |||||
URL:=http://openzwave.com | |||||
MAINTAINER:=Stijn Tintel <stijn@linux-ipv6.be> | |||||
DEPENDS:=+libpthread +libstdcpp | |||||
endef | |||||
define Package/openzwave/description | |||||
Open-ZWave is a library that interfaces with selected Z-Wave PC controllers | |||||
endef | |||||
define Package/libopenzwave | |||||
$(call Package/openzwave/default) | |||||
SECTION:=Libs | |||||
CATEGORY:=Libraries | |||||
TITLE:=Open-ZWave Library | |||||
endef | |||||
define Package/openzwave | |||||
$(call Package/openzwave/default) | |||||
SECTION:=Utils | |||||
CATEGORY:=Utilities | |||||
TITLE:=Open-ZWave MinOZW test utility | |||||
DEPENDS:=+libopenzwave +openzwave-config | |||||
endef | |||||
define Package/openzwave-config | |||||
$(call Package/openzwave/default) | |||||
SECTION:=Utils | |||||
CATEGORY:=Utilities | |||||
TITLE:=Open-ZWave Device Configs | |||||
endef | |||||
MAKE_FLAGS += \ | |||||
LD="$(TARGET_CROSS)g++" \ | |||||
PREFIX=$(CONFIGURE_PREFIX) \ | |||||
instlibdir=/usr/lib \ | |||||
pkgconfigdir=/usr/lib/pkgconfig \ | |||||
sysconfdir=/etc/openzwave | |||||
define Build/Prepare | |||||
$(call Build/Prepare/Default) | |||||
rm $(PKG_BUILD_DIR)/cpp/src/platform/HidController.* | |||||
sed -i -e '/hidapi/d;/HidController/d' $(PKG_BUILD_DIR)/distfiles.mk | |||||
endef | |||||
define Package/libopenzwave/install | |||||
$(INSTALL_DIR) $(1)/usr/lib | |||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libopenzwave.so* $(1)/usr/lib/ | |||||
endef | |||||
define Package/openzwave/install | |||||
$(INSTALL_DIR) $(1)/usr/bin | |||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/MinOZW $(1)/usr/bin/ | |||||
endef | |||||
define Package/openzwave-config/install | |||||
$(INSTALL_DIR) $(1)/etc/ | |||||
$(CP) $(PKG_INSTALL_DIR)/etc/openzwave $(1)/etc/ | |||||
endef | |||||
define Build/InstallDev | |||||
$(INSTALL_DIR) $(1)/usr/include | |||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/openzwave $(1)/usr/include/ | |||||
$(INSTALL_DIR) $(1)/usr/lib | |||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libopenzwave.* $(1)/usr/lib/ | |||||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libopenzwave.pc $(1)/usr/lib/pkgconfig/ | |||||
endef | |||||
$(eval $(call BuildPackage,libopenzwave)) | |||||
$(eval $(call BuildPackage,openzwave)) | |||||
$(eval $(call BuildPackage,openzwave-config)) |
@ -0,0 +1,28 @@ | |||||
From eab45f0959ccb1deb662c6f8c036651088e2e8d6 Mon Sep 17 00:00:00 2001 | |||||
From: Stijn Tintel <stijn@linux-ipv6.be> | |||||
Date: Fri, 17 Feb 2017 05:42:25 +0100 | |||||
Subject: [PATCH] unix: fix compilation against musl libc (#1127) | |||||
POSIX.1-2001 requires sys/select.h for select() and friends. | |||||
Compile-tested on glibc and musl, runtime tested on musl. | |||||
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> | |||||
--- | |||||
cpp/src/platform/unix/SerialControllerImpl.cpp | 1 + | |||||
1 file changed, 1 insertion(+) | |||||
diff --git a/cpp/src/platform/unix/SerialControllerImpl.cpp b/cpp/src/platform/unix/SerialControllerImpl.cpp | |||||
index d95f848..b52b74f 100644 | |||||
--- a/cpp/src/platform/unix/SerialControllerImpl.cpp | |||||
+++ b/cpp/src/platform/unix/SerialControllerImpl.cpp | |||||
@@ -25,6 +25,7 @@ | |||||
// along with OpenZWave. If not, see <http://www.gnu.org/licenses/>. | |||||
// | |||||
//----------------------------------------------------------------------------- | |||||
+#include <sys/select.h> | |||||
#include <unistd.h> | |||||
#include <pthread.h> | |||||
#include "Defs.h" | |||||
-- | |||||
2.10.2 | |||||
@ -0,0 +1,29 @@ | |||||
--- a/cpp/build/Makefile | |||||
+++ b/cpp/build/Makefile | |||||
@@ -15,7 +15,7 @@ | |||||
# what flags we will use for compiling in debug mode | |||||
DEBUG_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-inline -Wno-format -Werror -Wno-error=sequence-point -Wno-sequence-point -ggdb -DDEBUG -fPIC -DSYSCONFDIR="\"$(PREFIX)/etc/openzwave/\"" | |||||
# what flags we will use for compiling in release mode | |||||
-RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Werror -Wno-format -Wno-error=sequence-point -Wno-sequence-point -O3 -DNDEBUG -fPIC -DSYSCONFDIR="\"$(PREFIX)/etc/openzwave/\"" | |||||
+RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-error=sequence-point -Wno-sequence-point -DNDEBUG -fPIC -DSYSCONFDIR="\"/etc/openzwave/\"" | |||||
#what flags we will use for linking in debug mode | |||||
DEBUG_LDFLAGS := -g | |||||
@@ -139,7 +139,7 @@ $(LIBDIR)/libopenzwave.a: $(patsubst %.c | |||||
$(patsubst %.cpp,$(OBJDIR)/%.o,$(indep)) \ | |||||
$(OBJDIR)/vers.o | |||||
@echo "Linking Static Library" | |||||
- @$(AR) $@ $+ | |||||
+ @$(AR) q $@ $+ | |||||
@$(RANLIB) $@ | |||||
$(LIBDIR)/$(SHARED_LIB_NAME): $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \ | |||||
@@ -161,7 +161,7 @@ $(top_builddir)/libopenzwave.pc: $(top_s | |||||
-e 's|[@]exec_prefix@|$(PREFIX)/bin|g' \ | |||||
-e 's|[@]libdir@|$(instlibdir)|g' \ | |||||
-e 's|[@]includedir@|$(PREFIX)/include/openzwave/|g' \ | |||||
- -e 's|[@]sysconfdir@|$(PREFIX)/etc/openzwave/|g' \ | |||||
+ -e 's|[@]sysconfdir@|/etc/openzwave/|g' \ | |||||
-e 's|[@]gitversion@|$(GITVERSION)|g' \ | |||||
-e 's|[@]docdir@|$(docdir)/|g' \ | |||||
-e 's|[@]VERSION@|$(VERSION)|g' \ |
@ -0,0 +1,89 @@ | |||||
--- a/cpp/src/Driver.cpp | |||||
+++ b/cpp/src/Driver.cpp | |||||
@@ -37,11 +37,6 @@ | |||||
#include "platform/Event.h" | |||||
#include "platform/Mutex.h" | |||||
#include "platform/SerialController.h" | |||||
-#ifdef WINRT | |||||
-#include "platform/winRT/HidControllerWinRT.h" | |||||
-#else | |||||
-#include "platform/HidController.h" | |||||
-#endif | |||||
#include "platform/Thread.h" | |||||
#include "platform/Log.h" | |||||
#include "platform/TimeStamp.h" | |||||
@@ -223,14 +218,7 @@ m_nonceReportSentAttempt( 0 ) | |||||
initNetworkKeys(false); | |||||
- if( ControllerInterface_Hid == _interface ) | |||||
- { | |||||
- m_controller = new HidController(); | |||||
- } | |||||
- else | |||||
- { | |||||
- m_controller = new SerialController(); | |||||
- } | |||||
+ m_controller = new SerialController(); | |||||
m_controller->SetSignalThreshold( 1 ); | |||||
Options::Get()->GetOptionAsBool( "NotifyTransactions", &m_notifytransactions ); | |||||
--- a/cpp/build/Makefile | |||||
+++ b/cpp/build/Makefile | |||||
@@ -66,16 +66,7 @@ CFLAGS += $(CPPFLAGS) | |||||
#where to put the temporary library | |||||
LIBDIR ?= $(top_builddir) | |||||
-INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/ -I $(top_srcdir)/cpp/hidapi/hidapi/ | |||||
- | |||||
-ifeq ($(UNAME),Darwin) | |||||
-SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/mac | |||||
-else ifeq ($(UNAME),FreeBSD) | |||||
-SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/libusb | |||||
-else | |||||
-SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/linux | |||||
-endif | |||||
- | |||||
+INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/ | |||||
SOURCES := $(top_srcdir)/cpp/src $(top_srcdir)/cpp/src/command_classes $(top_srcdir)/cpp/tinyxml \ | |||||
$(top_srcdir)/cpp/src/value_classes $(top_srcdir)/cpp/src/platform $(top_srcdir)/cpp/src/platform/unix $(SOURCES_HIDAPI) $(top_srcdir)/cpp/src/aes/ | |||||
@@ -85,14 +76,6 @@ VPATH = $(top_srcdir)/cpp/src:$(top_srcd | |||||
tinyxml := $(notdir $(wildcard $(top_srcdir)/cpp/tinyxml/*.cpp)) | |||||
-ifeq ($(UNAME),Darwin) | |||||
-hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/mac/*.c)) | |||||
-else ifeq ($(UNAME),FreeBSD) | |||||
-hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/libusb/*.c)) | |||||
-else | |||||
-hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/linux/*.c)) # we do not want the libusb version | |||||
-endif | |||||
- | |||||
cclasses := $(notdir $(wildcard $(top_srcdir)/cpp/src/command_classes/*.cpp)) | |||||
vclasses := $(notdir $(wildcard $(top_srcdir)/cpp/src/value_classes/*.cpp)) | |||||
pform := $(notdir $(wildcard $(top_srcdir)/cpp/src/platform/*.cpp)) \ | |||||
@@ -111,7 +94,6 @@ printversion: | |||||
-include $(patsubst %.cpp,$(DEPDIR)/%.d,$(tinyxml)) | |||||
--include $(patsubst %.c,$(DEPDIR)/%.d,$(hidapi)) | |||||
-include $(patsubst %.cpp,$(DEPDIR)/%.d,$(cclasses)) | |||||
-include $(patsubst %.cpp,$(DEPDIR)/%.d,$(vclasses)) | |||||
-include $(patsubst %.cpp,$(DEPDIR)/%.d,$(pform)) | |||||
@@ -131,7 +113,6 @@ $(top_srcdir)/cpp/src/vers.cpp: | |||||
#$(OBJDIR)/vers.o: $(top_builddir)/vers.cpp | |||||
$(LIBDIR)/libopenzwave.a: $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \ | |||||
- $(patsubst %.c,$(OBJDIR)/%.o,$(hidapi)) \ | |||||
$(patsubst %.c,$(OBJDIR)/%.o,$(aes)) \ | |||||
$(patsubst %.cpp,$(OBJDIR)/%.o,$(cclasses)) \ | |||||
$(patsubst %.cpp,$(OBJDIR)/%.o,$(vclasses)) \ | |||||
@@ -143,7 +124,6 @@ $(LIBDIR)/libopenzwave.a: $(patsubst %.c | |||||
@$(RANLIB) $@ | |||||
$(LIBDIR)/$(SHARED_LIB_NAME): $(patsubst %.cpp,$(OBJDIR)/%.o,$(tinyxml)) \ | |||||
- $(patsubst %.c,$(OBJDIR)/%.o,$(hidapi)) \ | |||||
$(patsubst %.c,$(OBJDIR)/%.o,$(aes)) \ | |||||
$(patsubst %.cpp,$(OBJDIR)/%.o,$(cclasses)) \ | |||||
$(patsubst %.cpp,$(OBJDIR)/%.o,$(vclasses)) \ |
@ -0,0 +1,24 @@ | |||||
--- a/cpp/src/platform/unix/SerialControllerImpl.cpp | |||||
+++ b/cpp/src/platform/unix/SerialControllerImpl.cpp | |||||
@@ -34,10 +34,6 @@ | |||||
#include "SerialControllerImpl.h" | |||||
#include "platform/Log.h" | |||||
-#ifdef __linux__ | |||||
-#include <libudev.h> | |||||
-#endif | |||||
- | |||||
using namespace OpenZWave; | |||||
//----------------------------------------------------------------------------- | |||||
--- a/cpp/build/Makefile | |||||
+++ b/cpp/build/Makefile | |||||
@@ -59,7 +59,7 @@ endif | |||||
else | |||||
LDFLAGS += -shared -Wl,-soname,libopenzwave.so.$(VERSION) | |||||
-LIBS += -ludev | |||||
+LIBS += | |||||
endif | |||||
CFLAGS += $(CPPFLAGS) | |||||