You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
3.2 KiB

  1. #
  2. # Copyright (C) 2006-2015 OpenWrt.org
  3. # Copyright (C) 2015-2017 Christian Beier <dontmind@freeshell.org>
  4. #
  5. # This is free software, licensed under the GNU General Public License v2.
  6. # See /LICENSE for more information.
  7. #
  8. include $(TOPDIR)/rules.mk
  9. PKG_NAME:=ola
  10. PKG_VERSION:=0.10.6
  11. PKG_RELEASE:=3
  12. PKG_SOURCE_PROTO:=git
  13. PKG_SOURCE_URL:=https://github.com/OpenLightingProject/ola.git
  14. PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
  15. PKG_SOURCE_VERSION:=6e57342c414a72cdd721e8df5bc7967e17459647
  16. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
  17. PKG_MIRROR_HASH:=c1f36eaedcd9711e42fd362ff84d8e66eb40bc6af97de77129a5074d05fb9936
  18. PKG_LICENSE:=LGPL-2.1+
  19. PKG_FIXUP:=libtool
  20. PKG_INSTALL:=1
  21. PKG_BUILD_PARALLEL:=1
  22. PKG_USE_MIPS16:=0
  23. HOST_BUILD_DEPENDS:=protobuf/host
  24. PKG_BUILD_DEPENDS:=ola/host
  25. include $(INCLUDE_DIR)/host-build.mk
  26. include $(INCLUDE_DIR)/package.mk
  27. define Package/ola
  28. SECTION:=net
  29. CATEGORY:=Network
  30. TITLE:=Open Lighting Architecture Daemon
  31. URL:=https://www.openlighting.org/
  32. MAINTAINER:=Christian Beier <dontmind@freeshell.org>
  33. DEPENDS:=+protobuf +libusb-1.0 +libuuid +libstdcpp +libpthread +librt +zlib +libncurses +liblo +libmicrohttpd
  34. endef
  35. define Package/ola/description
  36. OLA (Open Lighting Architecture) is a framework that allows applications to
  37. send and receive DMX512, using various hardware devices and 'DMX over IP'
  38. protocols. It enables software controllers talk to DMX hardware.
  39. endef
  40. CONFIGURE_ARGS += \
  41. --disable-dependency-tracking \
  42. --disable-static \
  43. --disable-fatal-warnings \
  44. --disable-unittests \
  45. --without-dns-sd \
  46. --with-ola-protoc-plugin=$(STAGING_DIR_HOSTPKG)/bin/ola_protoc_plugin
  47. HOST_CONFIGURE_ARGS += \
  48. --disable-all-plugins \
  49. --disable-slp \
  50. --disable-osc \
  51. --disable-uart \
  52. --disable-libusb \
  53. --disable-libftdi \
  54. --disable-http \
  55. --disable-examples \
  56. --disable-unittests \
  57. --disable-doxygen-html \
  58. --disable-doxygen-doc
  59. # only build the ola_protoc thingy
  60. define Host/Compile
  61. cd $(HOST_BUILD_DIR); \
  62. $(MAKE) protoc/ola_protoc_plugin
  63. endef
  64. define Host/Install
  65. $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin
  66. $(CP) $(HOST_BUILD_DIR)/protoc/ola_protoc_plugin $(STAGING_DIR_HOSTPKG)/bin
  67. endef
  68. define Build/InstallDev
  69. $(INSTALL_DIR) $(1)/usr/include
  70. $(CP) $(PKG_INSTALL_DIR)/usr/include/ola $(1)/usr/include/
  71. $(CP) $(PKG_INSTALL_DIR)/usr/include/olad $(1)/usr/include/
  72. $(INSTALL_DIR) $(1)/usr/lib
  73. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  74. endef
  75. define Package/ola/install
  76. $(INSTALL_DIR) $(1)/usr/bin
  77. $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin
  78. $(INSTALL_DIR) $(1)/usr/lib
  79. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib
  80. $(INSTALL_DIR) $(1)/etc/init.d
  81. $(INSTALL_BIN) ./files/olad.init $(1)/etc/init.d/olad
  82. $(INSTALL_DIR) $(1)/usr/share/ola/pids
  83. $(CP) $(PKG_INSTALL_DIR)/usr/share/ola/pids/* $(1)/usr/share/ola/pids
  84. $(INSTALL_DIR) $(1)/usr/share/olad/www
  85. $(CP) $(PKG_INSTALL_DIR)/usr/share/olad/www/* $(1)/usr/share/olad/www
  86. endef
  87. define Package/ola/postinst
  88. #!/bin/sh
  89. # make sure the conf dir exists and is writeable by the group olad uses
  90. mkdir -p $${IPKG_INSTROOT}/etc/ola
  91. chgrp nogroup $${IPKG_INSTROOT}/etc/ola
  92. chmod 775 $${IPKG_INSTROOT}/etc/ola
  93. endef
  94. $(eval $(call HostBuild))
  95. $(eval $(call BuildPackage,ola))