PKG_NAME:=netatop
PKG_RELEASE:=1
-PKG_VERSION:=2.0
+PKG_VERSION:=3.1
PKG_LICENSE:=GPL-2.0
PKG_SOURCE_URL:=https://www.atoptool.nl/download/
-PKG_HASH:=c66d7ca094d667428924f2faff2afb816b17565e8c3628e43bfa0e1a2e22c20e
+PKG_HASH:=736f43572c31a90748f023f0a5a814bff58d44c0c3f060d776cfd6e6e8435c62
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_MAINTAINER:=Toni Uhlig <matzeton@googlemail.com>
include $(TOPDIR)/rules.mk
PKG_NAME:=syslog-ng
-PKG_VERSION:=3.26.1
-PKG_RELEASE:=2
+PKG_VERSION:=3.27.1
+PKG_RELEASE:=1
PKG_MAINTAINER:=Josef Schlehofer <josef.schlehofer@nic.cz>
PKG_LICENSE:=LGPL-2.1-or-later GPL-2.0-or-later
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/syslog-ng/syslog-ng/releases/download/$(PKG_NAME)-$(PKG_VERSION)/
-PKG_HASH:=90214223864df252cea80dbb35c88a2464edcbbb2c9fbc6f6f6c13ee60cb62cd
+PKG_HASH:=c54c633c97f7fd8dd68261cfd784a76211e6e52965178e3aa4d0e32b899d61b3
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
endef
CONFIGURE_ARGS += \
- --disable-snmp-dest \
+ --disable-afsnmp \
$(call autoconf_bool,CONFIG_IPV6,ipv6) \
--disable-tcp-wrapper \
--disable-spoof-source \
procd_set_param command /usr/sbin/syslog-ng --foreground
procd_close_instance
}
+
+reload_service() {
+ /usr/sbin/syslog-ng-ctl reload
+}
include $(TOPDIR)/rules.mk
PKG_NAME:=meson
-PKG_VERSION:=0.54.1
+PKG_VERSION:=0.54.2
PKG_RELEASE:=1
PYPI_NAME:=meson
-PKG_HASH:=2f76fb4572762be13ee479292610091b4509af5788bcceb391fe222bcd0296dc
+PKG_HASH:=a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455
PKG_MAINTAINER:=Andre Heider <a.heider@gmail.com>
PKG_LICENSE:=Apache-2.0
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=exfat-nofuse
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE_URL:=https://github.com/dorimanx/exfat-nofuse.git
PKG_SOURCE_PROTO:=git
Kernel module for ExFAT Filesytems
endef
-MAKE_OPTS:= \
- ARCH="$(LINUX_KARCH)" \
- CROSS_COMPILE="$(TARGET_CROSS)" \
- M="$(PKG_BUILD_DIR)"
-
define Build/Compile
- $(MAKE) -C "$(LINUX_DIR)" \
- $(MAKE_OPTS) \
+ $(KERNEL_MAKE) \
CONFIG_EXFAT_FS=m \
+ M="$(PKG_BUILD_DIR)" \
modules
endef
#
# Additional go tool link arguments to use when building targets.
#
-# e.g. GO_PKG_LDFLAGS:=-s -w
+# Note that the OpenWrt build system has an option to strip binaries
+# (enabled by default), so -s (Omit the symbol table and debug
+# information) and -w (Omit the DWARF symbol table) flags are not
+# necessary.
+#
+# e.g. GO_PKG_LDFLAGS:=-r dir1:dir2 -u
#
#
# GO_PKG_LDFLAGS_X - list of string variable definitions, default empty
GO_PKG_STRIP_ARGS:=--strip-all
endif
STRIP:=$(TARGET_CROSS)strip $(GO_PKG_STRIP_ARGS)
- RSTRIP= \
- export CROSS="$(TARGET_CROSS)" \
- $(if $(PKG_BUILD_ID),KEEP_BUILD_ID=1) \
- $(if $(CONFIG_KERNEL_KALLSYMS),NO_RENAME=1) \
- $(if $(CONFIG_KERNEL_PROFILING),KEEP_SYMBOLS=1); \
- NM="$(TARGET_CROSS)nm" \
- STRIP="$(STRIP)" \
- STRIP_KMOD="$(SCRIPT_DIR)/strip-kmod.sh" \
- PATCHELF="$(STAGING_DIR_HOST)/bin/patchelf" \
- $(SCRIPT_DIR)/rstrip.sh
endif
define GoPackage/GoSubMenu
CATEGORY:=Languages
endef
-define GoPackage/Environment/Target
+GO_PKG_TARGET_VARS= \
GOOS=$(GO_OS) \
GOARCH=$(GO_ARCH) \
GO386=$(GO_386) \
CGO_CPPFLAGS="$(TARGET_CPPFLAGS)" \
CGO_CXXFLAGS="$(filter-out $(GO_CFLAGS_TO_REMOVE),$(TARGET_CXXFLAGS))" \
CGO_LDFLAGS="$(TARGET_LDFLAGS)"
-endef
-define GoPackage/Environment/Build
+GO_PKG_BUILD_VARS= \
GOPATH=$(GO_PKG_BUILD_DIR) \
GOCACHE=$(GO_PKG_CACHE_DIR) \
GOENV=off
-endef
-define GoPackage/Environment/Default
- $(call GoPackage/Environment/Target) \
- $(call GoPackage/Environment/Build)
-endef
+GO_PKG_DEFAULT_VARS= \
+ $(GO_PKG_TARGET_VARS) \
+ $(GO_PKG_BUILD_VARS)
+
+GO_PKG_VARS=$(GO_PKG_DEFAULT_VARS)
+
+# do not use for new code; this will be removed after the next OpenWrt release
+GoPackage/Environment=$(GO_PKG_VARS)
+
+GO_PKG_DEFAULT_LDFLAGS= \
+ -buildid '$(SOURCE_DATE_EPOCH)' \
+ -linkmode external \
+ -extldflags '$(patsubst -z%,-Wl$(comma)-z$(comma)%,$(TARGET_LDFLAGS))'
+
+GO_PKG_INSTALL_ARGS= \
+ -v \
+ -trimpath \
+ -ldflags "all=$(GO_PKG_DEFAULT_LDFLAGS)"
+
+ifeq ($(GO_PKG_ENABLE_PIE),1)
+ GO_PKG_INSTALL_ARGS+= -buildmode pie
+endif
-GoPackage/Environment=$(call GoPackage/Environment/Default)
+ifeq ($(GO_ARCH),arm)
+ GO_PKG_INSTALL_ARGS+= -installsuffix "v$(GO_ARM)"
+
+else ifneq ($(filter $(GO_ARCH),mips mipsle),)
+ GO_PKG_INSTALL_ARGS+= -installsuffix "$(GO_MIPS)"
+
+else ifneq ($(filter $(GO_ARCH),mips64 mips64le),)
+ GO_PKG_INSTALL_ARGS+= -installsuffix "$(GO_MIPS64)"
+
+endif
+
+ifneq ($(strip $(GO_PKG_GCFLAGS)),)
+ GO_PKG_INSTALL_ARGS+= -gcflags "$(GO_PKG_GCFLAGS)"
+endif
+
+GO_PKG_CUSTOM_LDFLAGS= \
+ $(GO_PKG_LDFLAGS) \
+ $(patsubst %,-X %,$(GO_PKG_LDFLAGS_X))
+
+ifneq ($(strip $(GO_PKG_CUSTOM_LDFLAGS)),)
+ GO_PKG_INSTALL_ARGS+= -ldflags "$(GO_PKG_CUSTOM_LDFLAGS) $(GO_PKG_DEFAULT_LDFLAGS)"
+endif
# false if directory does not exist
GoPackage/is_dir_not_empty=$$$$($(FIND) $(1) -maxdepth 0 -type d \! -empty 2>/dev/null)
define GoPackage/Build/Compile
( \
cd $(GO_PKG_BUILD_DIR) ; \
- export $(call GoPackage/Environment) ; \
+ export $(GO_PKG_VARS) ; \
\
echo "Finding targets" ; \
targets=$$$$(go list $(GO_PKG_BUILD_PKG)) ; \
\
if [ "$(strip $(GO_PKG_SOURCE_ONLY))" != 1 ]; then \
echo "Building targets" ; \
- case $(GO_ARCH) in \
- arm) installsuffix="v$(GO_ARM)" ;; \
- mips|mipsle) installsuffix="$(GO_MIPS)" ;; \
- mips64|mips64le) installsuffix="$(GO_MIPS64)" ;; \
- esac ; \
- ldflags="-linkmode external -extldflags '$(TARGET_LDFLAGS:-z%=-Wl,-z,%)'" ; \
- pkg_gcflags="$(strip $(GO_PKG_GCFLAGS))" ; \
- pkg_ldflags="$(strip $(GO_PKG_LDFLAGS))" ; \
- for def in $(GO_PKG_LDFLAGS_X); do \
- pkg_ldflags="$$$$pkg_ldflags -X $$$$def" ; \
- done ; \
- go install \
- $(if $(GO_PKG_ENABLE_PIE),-buildmode pie) \
- $$$${installsuffix:+-installsuffix $$$$installsuffix} \
- -trimpath \
- -ldflags "all=$$$$ldflags" \
- -v \
- $$$${pkg_gcflags:+-gcflags "$$$$pkg_gcflags"} \
- $$$${pkg_ldflags:+-ldflags "$$$$pkg_ldflags $$$$ldflags"} \
- $(1) \
- $$$$targets ; \
+ go install $(GO_PKG_INSTALL_ARGS) $(1) $$$$targets ; \
retval=$$$$? ; \
echo ; \
\
else ifeq ($(GO_ARCH),arm)
GO_TARGET_FPU:=$(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE))))
- # FPU names from https://gcc.gnu.org/onlinedocs/gcc-8.3.0/gcc/ARM-Options.html#index-mfpu-1
- # see also https://github.com/gcc-mirror/gcc/blob/gcc-8_3_0-release/gcc/config/arm/arm-cpus.in
- #
- # Assumptions:
- #
- # * -d16 variants (16 instead of 32 double-precision registers) acceptable
- # Go doesn't appear to check the HWCAP_VFPv3D16 flag in
- # https://github.com/golang/go/blob/release-branch.go1.13/src/runtime/os_linux_arm.go
- #
- # * Double-precision required
- # Based on no evidence(!)
- # Excludes vfpv3xd, vfpv3xd-fp16, fpv4-sp-d16, fpv5-sp-d16
-
- GO_ARM_7_FPUS:= \
- vfpv3 vfpv3-fp16 vfpv3-d16 vfpv3-d16-fp16 neon neon-vfpv3 neon-fp16 \
- vfpv4 vfpv4-d16 neon-vfpv4 \
- fpv5-d16 fp-armv8 neon-fp-armv8 crypto-neon-fp-armv8
-
- GO_ARM_6_FPUS:=vfp vfpv2
-
- ifneq ($(filter $(GO_TARGET_FPU),$(GO_ARM_7_FPUS)),)
- GO_ARM:=7
- else ifneq ($(filter $(GO_TARGET_FPU),$(GO_ARM_6_FPUS)),)
+ # FPU names from https://gcc.gnu.org/onlinedocs/gcc-8.4.0/gcc/ARM-Options.html#index-mfpu-1
+ # see also https://github.com/gcc-mirror/gcc/blob/releases/gcc-8.4.0/gcc/config/arm/arm-cpus.in
+
+ ifeq ($(GO_TARGET_FPU),)
+ GO_ARM:=5
+ else ifneq ($(filter $(GO_TARGET_FPU),vfp vfpv2),)
GO_ARM:=6
else
- GO_ARM:=5
+ GO_ARM:=7
endif
else ifneq ($(filter $(GO_ARCH),mips mipsle),)
include $(TOPDIR)/rules.mk
GO_VERSION_MAJOR_MINOR:=1.14
-GO_VERSION_PATCH:=2
+GO_VERSION_PATCH:=3
PKG_NAME:=golang
PKG_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
PKG_SOURCE:=go$(PKG_VERSION).src.tar.gz
PKG_SOURCE_URL:=$(GO_SOURCE_URLS)
-PKG_HASH:=98de84e69726a66da7b4e58eac41b99cbe274d7e8906eeb8a5b7eb0aadee7f7c
+PKG_HASH:=93023778d4d1797b7bc6a53e86c3a9b150c923953225f8a48a2d5fabc971af56
PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
PKG_LICENSE:=BSD-3-Clause
HOST_UNPACK:=$(HOST_TAR) -C $(HOST_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
BOOTSTRAP_UNPACK:=$(HOST_TAR) -C $(BOOTSTRAP_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(BOOTSTRAP_SOURCE)
-# don't strip ELF executables in test data (and go itself)
+# don't strip ELF executables in test data
RSTRIP:=:
STRIP:=:
libraries for the Go programming language.
endef
+define Package/golang/config
+menu "Configuration"
+
+config GOLANG_EXTERNAL_BOOTSTRAP_ROOT
+ string "External bootstrap Go root directory"
+ help
+ Path to a working Go tree (>= Go 1.4), with bin, pkg, and src
+ subdirectories and the Go compiler at bin/go.
+
+ If specified, the existing Go installation will be used to
+ compile host (buildroot) Go.
+
+ Leave blank to compile the default bootstrap Go.
+
+endmenu
+endef
+
define Package/golang-doc
$(call Package/golang/Default)
TITLE+= (documentation)
for cross-compilation.
endef
+EXTERNAL_BOOTSTRAP_DIR:=$(call qstrip,$(CONFIG_GOLANG_EXTERNAL_BOOTSTRAP_ROOT))
+USE_DEFAULT_BOOTSTRAP:=$(if $(EXTERNAL_BOOTSTRAP_DIR),,1)
+
+PKG_GO_ZBOOTSTRAP_MODS:= \
+ s/defaultGO386 = `[^`]*`/defaultGO386 = `$(if $(GO_386),$(GO_386),387)`/; \
+ s/defaultGOARM = `[^`]*`/defaultGOARM = `$(if $(GO_ARM),$(GO_ARM),5)`/; \
+ s/defaultGOMIPS = `[^`]*`/defaultGOMIPS = `$(if $(GO_MIPS),$(GO_MIPS),hardfloat)`/; \
+ s/defaultGOMIPS64 = `[^`]*`/defaultGOMIPS64 = `$(if $(GO_MIPS64),$(GO_MIPS64),hardfloat)`/; \
+ s/defaultGOPPC64 = `[^`]*`/defaultGOPPC64 = `power8`/;
+
+PKG_GO_LDFLAGS= \
+ -buildid '$(SOURCE_DATE_EPOCH)'
+
+ifeq ($(CONFIG_NO_STRIP)$(CONFIG_DEBUG),)
+ PKG_GO_LDFLAGS+= -s -w
+endif
+
+# setting -trimpath is not necessary here because the paths inside the
+# compiler binary are relative to GOROOT_FINAL (PKG_GO_ROOT), which is
+# static / not dependent on the build environment
+PKG_GO_INSTALL_ARGS= \
+ -ldflags "all=$(PKG_GO_LDFLAGS)"
+
+ifeq ($(PKG_GO_ENABLE_PIE),1)
+ PKG_GO_INSTALL_ARGS+= -buildmode pie
+endif
+
define Download/golang-bootstrap
FILE:=$(BOOTSTRAP_SOURCE)
URL:=$(BOOTSTRAP_SOURCE_URL)
HASH:=$(BOOTSTRAP_HASH)
endef
-$(eval $(call Download,golang-bootstrap))
-$(eval $(call GoCompiler/AddProfile,Bootstrap,$(BOOTSTRAP_BUILD_DIR),,bootstrap,$(GO_HOST_OS_ARCH)))
$(eval $(call GoCompiler/AddProfile,Host,$(HOST_BUILD_DIR),$(HOST_GO_PREFIX),$(HOST_GO_VERSION_ID),$(GO_HOST_OS_ARCH),$(HOST_GO_INSTALL_SUFFIX)))
$(eval $(call GoCompiler/AddProfile,Package,$(PKG_BUILD_DIR),$(PKG_GO_PREFIX),$(PKG_GO_VERSION_ID),$(GO_OS_ARCH),$(PKG_GO_INSTALL_SUFFIX)))
-define Host/Prepare
+ifeq ($(USE_DEFAULT_BOOTSTRAP),1)
+ $(eval $(call GoCompiler/AddProfile,Bootstrap,$(BOOTSTRAP_BUILD_DIR),,bootstrap,$(GO_HOST_OS_ARCH)))
+
+ $(eval $(call Download,golang-bootstrap))
+
+ define Host/Prepare
$(call Host/Prepare/Default)
mkdir -p $(BOOTSTRAP_BUILD_DIR)
$(BOOTSTRAP_UNPACK)
-endef
+ endef
+endif
# when https://github.com/golang/go/issues/31544 is fixed,
# we should be able to set GO_LDFLAGS=-buildmode=pie for host make
)
$(call GoCompiler/Host/Make, \
- GOROOT_BOOTSTRAP=$(BOOTSTRAP_BUILD_DIR) \
+ GOROOT_BOOTSTRAP=$(if $(USE_DEFAULT_BOOTSTRAP),$(BOOTSTRAP_BUILD_DIR),$(EXTERNAL_BOOTSTRAP_DIR)) \
GOCACHE=$(HOST_GO_CACHE_DIR) \
CC=$(HOSTCC_NOCACHE) \
CXX=$(HOSTCXX_NOCACHE) \
PATH=$(HOST_GO_ROOT)/openwrt:$$$$PATH \
)
+ $(SED) '$(PKG_GO_ZBOOTSTRAP_MODS)' \
+ $(PKG_BUILD_DIR)/src/cmd/internal/objabi/zbootstrap.go
+
@echo "Building target Go second stage"
( \
cd $(PKG_BUILD_DIR)/bin ; \
- export $(call GoPackage/Environment/Target) ; \
+ export $(GO_PKG_TARGET_VARS) ; \
$(CP) go go-host ; \
GOROOT_FINAL=$(PKG_GO_ROOT) \
GOCACHE=$(PKG_GO_TARGET_CACHE_DIR) \
CXX=g++ \
PKG_CONFIG=pkg-config \
PATH=$(HOST_GO_ROOT)/openwrt:$$$$PATH \
- ./go-host install -a $(if $(PKG_GO_ENABLE_PIE),-buildmode=pie) std cmd ; \
+ ./go-host install -a $(PKG_GO_INSTALL_ARGS) std cmd ; \
retval=$$$$? ; \
rm -f go-host ; \
exit $$$$retval ; \
PECL_NAME:=redis
PECL_LONGNAME:=PHP extension for interfacing with Redis
-PKG_VERSION:=5.2.1
+PKG_VERSION:=5.2.2
PKG_RELEASE:=1
-PKG_HASH:=c05af6254d704844303fbe8b13b2d54bdb4372b1a081934e67cac42ec79ecbbe
+PKG_HASH:=9965269ec8da48761873e943b770d7053e7579b2b858af97e582eadc7e6eaa11
PKG_NAME:=php7-pecl-redis
PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz
include $(TOPDIR)/rules.mk
PKG_NAME:=php
-PKG_VERSION:=7.4.5
+PKG_VERSION:=7.4.6
PKG_RELEASE:=1
PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://www.php.net/distributions/
-PKG_HASH:=d059fd7f55bdc4d2eada15a00a2976697010d3631ef6f83149cc5289e1f23c2c
+PKG_HASH:=d740322f84f63019622b9f369d64ea5ab676547d2bdcf12be77a5a4cffd06832
PKG_BUILD_PARALLEL:=1
PKG_USE_MIPS16:=0
7. [Building a Python package](#building-a-python-package)
1. [Include python3-package.mk](#include-python3-packagemk)
2. [Add Package/<PKG_NAME> OpenWrt definitions](#add-packagepkg_name-openwrt-definitions)
- 3. [Wrapping things up so that they build](#wrapping-things-up-so-that-they-build)
- 4. [Customizing things](#customizing-things)
- 5. [Host-side Python packages for build](#host-side-python-packages-for-build)
+ 3. [Python package dependencies](#python-package-dependencies)
+ 4. [Wrapping things up so that they build](#wrapping-things-up-so-that-they-build)
+ 5. [Customizing things](#customizing-things)
+ 6. [Host-side Python packages for build](#host-side-python-packages-for-build)
## Description
* typically the package is named `Package/python3-<something>` ; this convention makes things easier to follow, though it could work without naming things this way
* `TITLE` can be something a bit more verbose/neat ; typically the name is short as seen above
+### Python package dependencies
+
+Aside from other libraries and programs, every Python package will depend on at least one of these three types of packages:
+
+* The Python interpreter: All Python packages should depend on one of these three interpreter packages:
+
+ * `python3-light` is the best default for most Python packages.
+
+ * `python3-base` should only be used as a dependency if you are certain the bare interpreter is sufficient.
+
+ * `python3` is useful if many (more than three) Python standard library packages are needed.
+
+* Python standard library packages: As noted above, many parts of the Python standard library are packaged separate from the Python interpreter. These packages are defined by the files in [lang/python/python3/files](lang/python/python3/files).
+
+ To find out which of these separate standard library packages are necessary, after completing a draft Makefile (including the `$(eval ...)` lines described in the next section), run `make` with the `configure` target and `PY3=stdlib V=s` in the command line. For example:
+
+ ```
+ make package/python-lxml/configure PY3=stdlib V=s
+ ```
+
+ If the package has been built previously, include the `clean` target to trigger configure again:
+
+ ```
+ make package/python-lxml/{clean,configure} PY3=stdlib V=s
+ ```
+
+ This will search the package for module imports and generate a list of suggested dependencies. Some of the found imports may be false positives, e.g. in example or test files, so examine the matches for more information.
+
+* Other Python packages: The easiest way to find these dependencies is to look for the `install_requires` keyword inside the package's `setup.py` file (it will be a keyword argument to the `setup()` function). This will be a list of run-time dependencies for the package.
+
+ There may already be packages in the packages feed that provide these dependencies. If not, they will need to be packaged for your Python package to function correctly.
+
+ Any packages in a `setup_requires` keyword argument are build-time dependencies that may need to be installed on the host (host Python inside of OpenWrt buildroot, not system Python that is part of the outer computer system). To ensure these build-time dependencies are present, see [Host-side Python packages for build](#host-side-python-packages-for-build). (Note that Setuptools is already installed as part of host Python.)
+
### Wrapping things up so that they build
If all the above prerequisites have been met, all that's left is:
--- /dev/null
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+# Please do not update: 3.0.3 is the last version compatible with Django 1.11
+PKG_NAME:=django-jsonfield2
+PKG_VERSION:=3.0.3
+PKG_RELEASE:=1
+
+# Source for 3.0.3 is not available from PyPI
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/rpkilby/jsonfield2/tar.gz/$(PKG_VERSION)?
+PKG_HASH:=4b79ac28738671fe27cadbd537d50130c35a286207d31d8320c7b48b6cda36ca
+
+PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
+PKG_LICENSE:=MIT
+PKG_LICENSE_FILES:=LICENSE
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/jsonfield2-$(PKG_VERSION)
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+include ../python3-package.mk
+
+define Package/python3-django-jsonfield2
+ SUBMENU:=Python
+ SECTION:=lang
+ CATEGORY:=Languages
+ TITLE:=A reusable Django field to store validated JSON in models
+ URL:=https://github.com/rpkilby/jsonfield2
+ DEPENDS:=+python3-light +python3-decimal +django
+ CONFLICTS:=python3-django-jsonfield
+endef
+
+define Package/python3-django-jsonfield2/description
+ A modern fork of django-jsonfield, compatible with the latest versions
+ of Django.
+
+ jsonfield2 is a reusable model field that allows you to store
+ validated JSON, automatically handling serialization to and from the
+ database.
+endef
+
+$(eval $(call Py3Package,python3-django-jsonfield2))
+$(eval $(call BuildPackage,python3-django-jsonfield2))
+$(eval $(call BuildPackage,python3-django-jsonfield2-src))
include $(TOPDIR)/rules.mk
+# Please do not update: 3.3.0 is the last version compatible with Django 1.11
PKG_NAME:=django-postoffice
-PKG_VERSION:=3.2.1
-PKG_RELEASE:=2
+PKG_VERSION:=3.3.0
+PKG_RELEASE:=1
PYPI_NAME:=django-post-office
PYPI_SOURCE_NAME:=django-post_office
-PKG_HASH:=e32427822f647719575094f790ca949ef9f9827ec0e8378cb021f01f3834b2a4
+PKG_HASH:=b06514da601c22e955bd93a4ac6dd6b2218c571ca67c193e62bd1f22cec7536f
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
PKG_LICENSE:=MIT
DEPENDS:= \
+python3 \
+python3-django1 \
- +python3-django-jsonfield
+ +python3-django-jsonfield2
endef
define Package/python3-django-postoffice/description
#
-# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/)
+# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/)
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=python-atomicwrites
-PKG_VERSION:=1.3.0
-PKG_RELEASE:=2
+PKG_VERSION:=1.4.0
+PKG_RELEASE:=1
PYPI_NAME:=atomicwrites
-PKG_HASH:=75a9445bac02d8d058d5e1fe689654ba5a6556a1dfd8ce6ec55a0ed79866cfa6
+PKG_HASH:=ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec@nic.cz>
PKG_LICENSE:=MIT
PKG_NAME:=python-chardet
PKG_VERSION:=3.0.4
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_LICENSE:=LGPL-2.1
PYPI_NAME:=chardet
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
for bin in $(1)/usr/bin/*; do \
mv $$$$bin $$$${bin}3 ; \
+ $(LN) $$$${bin##*/}3 $$$$bin ; \
done
endef
include $(TOPDIR)/rules.mk
PKG_NAME:=python-more-itertools
-PKG_VERSION:=8.2.0
-PKG_RELEASE:=2
+PKG_VERSION:=8.3.0
+PKG_RELEASE:=1
PYPI_NAME:=more-itertools
-PKG_HASH:=b1ddb932186d8a6ac451e1d95844b382f55e12686d51ca0c68b6f61f2ab7a507
+PKG_HASH:=558bb897a2232f5e4f8e2399089e35aecb746e1f9191b6584a151647e89267be
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec@nic.cz>
PKG_LICENSE:=MIT
PKG_NAME:=python-twisted
PKG_VERSION:=20.3.0
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PYPI_NAME:=Twisted
PYPI_SOURCE_EXT:=tar.bz2
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
for bin in $(1)/usr/bin/*; do \
mv $$$$bin $$$${bin}3 ; \
+ $(LN) $$$${bin##*/}3 $$$$bin ; \
done
endef
--- /dev/null
+#!/bin/sh
+
+# Packages data
+#
+# Notes:
+# * python3-codecs: Also contains codecs for CJK encodings but we don't
+# have a good way to check for uses
+# * python3-openssl: Don't include hashlib as it supports several
+# standard algorithms without requiring OpenSSL
+
+packages="
+python3-asyncio: asyncio
+python3-cgi: cgi
+python3-cgitb: cgitb
+python3-codecs: unicodedata
+python3-ctypes: ctypes
+python3-dbm: dbm
+python3-decimal: decimal
+python3-distutils: distutils
+python3-email: email
+python3-gdbm: dbm.gnu
+python3-logging: logging
+python3-lzma: lzma
+python3-multiprocessing: multiprocessing
+python3-ncurses: ncurses
+python3-openssl: ssl
+python3-pydoc: doctest pydoc
+python3-sqlite3: sqlite3
+python3-unittest: unittest
+python3-urllib: urllib
+python3-xml: xml xmlrpc
+"
+
+
+# Constants
+
+stdin_name="<stdin>"
+grep_dir_filters="
+-Ir
+--include=*.py
+--exclude=setup.py
+--exclude=test_*.py
+--exclude=*_test.py
+--exclude-dir=test
+--exclude-dir=tests
+--exclude-dir=ipkg-*
+--exclude-dir=.pkgdir
+"
+
+log_level_notice=5
+log_level_info=6
+log_level_debug=7
+
+# /usr/include/sysexits.h
+ex_usage=64
+ex_noinput=66
+ex_unavailable=69
+ex_software=70
+
+newline="
+"
+oifs="$IFS"
+
+
+# Defaults
+
+grep_output_default_max_count=3
+grep_output_default_color_when="auto"
+grep_output_default_line_prefix="-HnT --label=$stdin_name"
+grep_output_default_context_num=1
+
+log_level_default="$log_level_info"
+
+
+# Global variables
+
+log_level=
+grep=
+grep_output_options=
+grep_output_description=
+stdin=
+output_name=
+is_first_search=
+
+
+# Logging
+
+log() {
+ printf '%s\n' "$*"
+}
+
+can_log_notice() {
+ [ "$log_level" -ge "$log_level_notice" ]
+}
+
+can_log_info() {
+ [ "$log_level" -ge "$log_level_info" ]
+}
+
+can_log_debug() {
+ [ "$log_level" -ge "$log_level_debug" ]
+}
+
+log_notice() {
+ if can_log_notice; then
+ log "$@"
+ fi
+}
+
+log_info() {
+ if can_log_info; then
+ log "$@"
+ fi
+}
+
+log_debug() {
+ if can_log_debug; then
+ log "$@"
+ fi
+}
+
+log_error() {
+ printf '%s\n' "Error: $*" >&2
+}
+
+
+# Usage
+
+usage() {
+ cat <<- EOF
+ Usage: ${0##*/} [OPTION]... [FILE]...
+ Search for imports of certain Python standard libraries in each FILE,
+ generate a list of suggested package dependencies.
+
+ With no FILE, or when FILE is -, read standard input.
+
+ Options:
+ -c WHEN use color in output;
+ WHEN is 'always', 'never', or 'auto' (default: '$grep_output_default_color_when')
+ -h display this help text and exit
+ -m NUM show max NUM matches per package per file (default: $grep_output_default_max_count);
+ use 0 to show all matches
+ -n NAME when one or no FILE is given, use NAME instead of FILE in
+ displayed information
+ -q show suggested dependencies only
+ -v show verbose output (also show all matches)
+ -x NUM show NUM lines of context (default: $grep_output_default_context_num)
+
+ EOF
+}
+
+
+# Imports search
+
+get_package_modules() {
+ local line="$1"
+ local field_num=0
+ local IFS=:
+
+ for field in $line; do
+ # strip leading and trailing whitespace
+ field="${field#"${field%%[! ]*}"}"
+ field="${field%"${field##*[! ]}"}"
+
+ # set variables in search_path()
+ if [ "$field_num" -eq 0 ]; then
+ package="$field"
+ field_num=1
+ elif [ "$field_num" -eq 1 ]; then
+ modules="$field"
+ field_num=2
+ else
+ field_num=3
+ fi
+ done
+
+ if [ "$field_num" -ne 2 ] || [ -z "$package" ] || [ -z "$modules" ]; then
+ log_error "invalid package data \"$line\""
+ exit "$ex_software"
+ fi
+}
+
+search_path_for_modules() {
+ local path="$1"
+ local path_is_dir="$2"
+ local path_is_stdin="$3"
+ local package="$4"
+ local modules="$5"
+ local modules_regex
+ local regex
+ local remove_dir_prefix
+ local grep_results
+ local IFS="$oifs"
+
+ log_debug " Looking for modules in $package ($modules)"
+
+ modules_regex=$(printf '%s' "$modules" | sed -e 's/\./\\./g' -e 's/\s\+/|/g')
+ regex="\b(import\s+($modules_regex)|from\s+($modules_regex)\S*\s+import)\b"
+
+ if [ -n "$path_is_dir" ]; then
+ remove_dir_prefix="s|^\(\(\x1b[[0-9;]*[mK]\)*\)$path|\1|"
+ grep_results=$($grep $grep_output_options $grep_dir_filters -E "$regex" "$path")
+
+ elif [ -n "$path_is_stdin" ]; then
+ grep_results=$(printf '%s\n' "$stdin" | $grep $grep_output_options -E "$regex")
+
+ else
+ grep_results=$($grep $grep_output_options -E "$regex" "$path")
+ fi
+
+ if [ "$?" -ne 0 ]; then
+ log_debug " No imports found"
+ log_debug ""
+ return 0
+ fi
+
+ log_info " Found imports for: $modules"
+
+ if can_log_info; then
+ printf '%s\n' "$grep_results" | sed -e "$remove_dir_prefix" -e "s/^/ /"
+ fi
+
+ log_info ""
+
+ # set variable in search_path()
+ suggested="$suggested +$package"
+}
+
+search_path() {
+ local path="$1"
+ local name="$2"
+ local path_is_dir
+ local path_is_stdin
+ local package
+ local modules
+ local suggested
+ local IFS="$newline"
+
+ if [ "$path" = "-" ]; then
+ path_is_stdin=1
+
+ else
+ if ! [ -e "$path" ]; then
+ log_error "$path does not exist"
+ exit "$ex_noinput"
+ fi
+
+ if [ -d "$path" ]; then
+ path="${path%/}/"
+ path_is_dir=1
+ fi
+ fi
+
+ log_info ""
+ log_info "Searching $name (showing $grep_output_description):"
+ log_info ""
+
+ if [ -n "$path_is_stdin" ]; then
+ stdin="$(cat)"
+ fi
+
+ for line in $packages; do
+ # strip leading whitespace
+ line="${line#"${line%%[! ]*}"}"
+
+ # skip blank lines or comments (beginning with #)
+ if [ -z "$line" ] || [ "$line" != "${line###}" ]; then
+ continue
+ fi
+
+ package=
+ modules=
+
+ get_package_modules "$line"
+ search_path_for_modules "$path" "$path_is_dir" "$path_is_stdin" "$package" "$modules"
+ done
+
+ log_notice "Suggested dependencies for $name:"
+
+ if [ -z "$suggested" ]; then
+ suggested="(none)"
+ fi
+ IFS="$oifs"
+ for package in $suggested; do
+ log_notice " $package"
+ done
+
+ log_notice ""
+}
+
+
+# Find GNU grep
+
+if ggrep --version 2>&1 | grep -q GNU; then
+ grep="ggrep"
+elif grep --version 2>&1 | grep -q GNU; then
+ grep="grep"
+else
+ log_error "cannot find GNU grep"
+ exit "$ex_unavailable"
+fi
+
+
+# Process environment variables
+
+case $PYTHON3_FIND_STDLIB_DEPENDS_LOG_LEVEL in
+ notice)
+ log_level="$log_level_notice"
+ ;;
+ info)
+ log_level="$log_level_info"
+ ;;
+ debug)
+ log_level="$log_level_debug"
+ ;;
+ *)
+ log_level="$log_level_default"
+ ;;
+esac
+
+grep_output_max_count="${PYTHON3_FIND_STDLIB_DEPENDS_MAX_COUNT:-$grep_output_default_max_count}"
+grep_output_color_when="${PYTHON3_FIND_STDLIB_DEPENDS_COLOR_WHEN:-$grep_output_default_color_when}"
+grep_output_line_prefix="${PYTHON3_FIND_STDLIB_DEPENDS_LINE_PREFIX:-$grep_output_default_line_prefix}"
+grep_output_context_num="${PYTHON3_FIND_STDLIB_DEPENDS_CONTEXT_NUM:-$grep_output_default_context_num}"
+
+
+# Process command line options
+
+while getopts c:hm:n:qvx: OPT; do
+ case $OPT in
+ c)
+ grep_output_color_when="$OPTARG"
+ ;;
+ h)
+ usage
+ exit 0
+ ;;
+ m)
+ grep_output_max_count="$OPTARG"
+ ;;
+ n)
+ output_name="$OPTARG"
+ ;;
+ q)
+ log_level="$log_level_notice"
+ ;;
+ v)
+ log_level="$log_level_debug"
+ ;;
+ x)
+ grep_output_context_num="$OPTARG"
+ ;;
+ \?)
+ usage
+ exit "$ex_usage"
+ ;;
+ esac
+done
+
+shift $((OPTIND - 1))
+
+
+# Set up grep output options
+
+if can_log_info; then
+ if [ "$grep_output_color_when" = "auto" ]; then
+ if [ -t 1 ]; then
+ grep_output_color_when="always"
+ else
+ grep_output_color_when="never"
+ fi
+ fi
+
+ if ! can_log_debug && [ "$grep_output_max_count" -gt 0 ]; then
+ grep_output_options="-m $grep_output_max_count"
+
+ if [ "$grep_output_max_count" -eq 1 ]; then
+ grep_output_description="max 1 match per file"
+ else
+ grep_output_description="max $grep_output_max_count matches per file"
+ fi
+
+ else
+ grep_output_description="all matches"
+ fi
+
+ if [ "$grep_output_context_num" -gt 0 ]; then
+ grep_output_options="$grep_output_options -C $grep_output_context_num"
+
+ if [ "$grep_output_context_num" -eq 1 ]; then
+ grep_output_description="$grep_output_description, 1 line of context"
+ else
+ grep_output_description="$grep_output_description, $grep_output_context_num lines of context"
+ fi
+ fi
+
+ grep_output_options="$grep_output_options --color=$grep_output_color_when $grep_output_line_prefix"
+
+else
+ grep_output_options="-q"
+fi
+
+
+# Main
+
+if [ "$#" -gt 0 ]; then
+ is_first_search=1
+
+ if [ "$#" -gt 1 ]; then
+ output_name=
+ fi
+
+ for path; do
+ if [ -z "$is_first_search" ]; then
+ log_info "===="
+ fi
+
+ if [ -z "$output_name" ]; then
+ if [ "$path" = "-" ]; then
+ output_name="$stdin_name"
+ else
+ output_name="$path"
+ fi
+ fi
+
+ search_path "$path" "$output_name"
+
+ is_first_search=
+ output_name=
+ done
+
+else
+ search_path "-" "${output_name:-$stdin_name}"
+fi
PYTHON3_PKG_SETUP_ARGS ?= --single-version-externally-managed
PYTHON3_PKG_SETUP_VARS ?=
+define Py3Build/FindStdlibDepends
+ $(SHELL) $(python3_mk_path)python3-find-stdlib-depends.sh -n "$(PKG_NAME)" "$(PKG_BUILD_DIR)"
+endef
+
define Py3Build/Compile/Default
$(if $(HOST_PYTHON3_PACKAGE_BUILD_DEPENDS),
$(call HostPython3/PipInstall,$(HOST_PYTHON3_PACKAGE_BUILD_DEPENDS))
)
endef
+Py3Build/Configure=$(Py3Build/Configure/Default)
Py3Build/Compile=$(Py3Build/Compile/Default)
PYTHON3_PKG_BUILD ?= 1
ifeq ($(strip $(PYTHON3_PKG_BUILD)),1)
+ ifeq ($(PY3),stdlib)
+ Hooks/Configure/Post+=Py3Build/FindStdlibDepends
+ endif
Build/Compile=$(Py3Build/Compile)
endif
# Note: keep in sync with setuptools & pip
PYTHON3_VERSION_MAJOR:=3
PYTHON3_VERSION_MINOR:=8
-PYTHON3_VERSION_MICRO:=2
+PYTHON3_VERSION_MICRO:=3
PYTHON3_VERSION:=$(PYTHON3_VERSION_MAJOR).$(PYTHON3_VERSION_MINOR)
-PYTHON3_SETUPTOOLS_PKG_RELEASE:=1
-PYTHON3_PIP_PKG_RELEASE:=3
+PYTHON3_SETUPTOOLS_PKG_RELEASE:=3
+PYTHON3_PIP_PKG_RELEASE:=4
PYTHON3_SETUPTOOLS_VERSION:=41.2.0
PYTHON3_PIP_VERSION:=19.2.3
include ../python3-version.mk
PKG_NAME:=python3
-PKG_RELEASE:=3
+PKG_RELEASE:=2
PKG_VERSION:=$(PYTHON3_VERSION).$(PYTHON3_VERSION_MICRO)
PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION)
-PKG_HASH:=2646e7dc233362f59714c6193017bb2d6f7b38d6ab4a0cb5fbac5c36c4d845df
+PKG_HASH:=dfab5ec723c218082fe3d5d7ae17ecbdebffa9a1aea4d64aa3a2ecdd2e795864
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>, Jeffery To <jeffery.to@gmail.com>
PKG_LICENSE:=Python/2.0
EXTRA_LDFLAGS+= \
-L$(PKG_BUILD_DIR)
-ENABLE_IPV6:=
-ifeq ($(CONFIG_IPV6),y)
- ENABLE_IPV6 += --enable-ipv6
-endif
-
PYTHON_FOR_BUILD:= \
_PYTHON_PROJECT_BASE=$(PKG_BUILD_DIR) \
_PYTHON_HOST_PLATFORM=linux2 \
ac_cv_header_bluetooth_h=no
CONFIGURE_ARGS+= \
- --sysconfdir=/etc \
+ --enable-optimizations \
--enable-shared \
- --without-cxx-main \
- --with-threads \
--with-system-ffi \
- --with-ensurepip=no \
+ --without-cxx-main \
+ --without-ensurepip \
--without-pymalloc \
- $(if $(CONFIG_PYTHON3_BLUETOOTH_SUPPORT),,$(DISABLE_BLUETOOTH)) \
- PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)" \
- $(ENABLE_IPV6) \
+ $(if $(CONFIG_IPV6),--enable-ipv6) \
+ $(if $(findstring mips,$(CONFIG_ARCH)),,--with-lto) \
CONFIG_SITE="$(PKG_BUILD_DIR)/config.site" \
- OPT="$(TARGET_CFLAGS)"
+ OPT="$(TARGET_CFLAGS)" \
+ PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)" \
+ $(if $(CONFIG_PYTHON3_BLUETOOTH_SUPPORT),,$(DISABLE_BLUETOOTH))
define Build/Prepare
$(call Build/Prepare/Default)
endif
HOST_CONFIGURE_ARGS+= \
+ --enable-optimizations \
+ --with-ensurepip=upgrade \
+ --with-system-expat=$(STAGING_DIR_HOSTPKG) \
--without-cxx-main \
--without-pymalloc \
- --with-threads \
- --prefix=$(HOST_PYTHON3_DIR) \
- --exec-prefix=$(HOST_PYTHON3_DIR) \
- --with-system-expat=$(STAGING_DIR_HOSTPKG) \
- --with-ensurepip=upgrade \
CONFIG_SITE=
define Host/Configure
$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/bin/python$(PYTHON3_VERSION)-config $(1)/usr/bin
$(LN) python$(PYTHON3_VERSION)-config $(1)/usr/bin/python3-config
+ $(LN) python$(PYTHON3_VERSION)-config $(1)/usr/bin/python-config
$(LN) python$(PYTHON3_VERSION)/config-$(PYTHON3_VERSION)/libpython$(PYTHON3_VERSION).a $(1)/usr/lib/
# This depends on being called before filespec is processed
$(SED) 's|$(TARGET_AR)|ar|g;s|$(TARGET_CROSS)readelf|readelf|g;s|$(TARGET_CC)|gcc|g;s|$(TARGET_CXX)|g++|g' \
define Package/python3-openssl
$(call Package/python3/Default)
TITLE:=Python $(PYTHON3_VERSION) SSL module
- DEPENDS:=+python3-light +libopenssl
+ DEPENDS:=+python3-light +libopenssl +ca-certs
endef
$(eval $(call Py3BasePackage,python3-openssl, \
$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages
$(CP) $(PKG_BUILD_DIR)/install-pip/usr/bin/pip$(PYTHON3_VERSION) $(1)/usr/bin
$(LN) pip$(PYTHON3_VERSION) $(1)/usr/bin/pip3
+ $(LN) pip$(PYTHON3_VERSION) $(1)/usr/bin/pip
$(CP) \
$(PKG_BUILD_DIR)/install-pip/usr/lib/python$(PYTHON3_VERSION)/site-packages/pip \
$(PKG_BUILD_DIR)/install-pip/usr/lib/python$(PYTHON3_VERSION)/site-packages/pip-$(PYTHON3_PIP_VERSION).dist-info \
$(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages
$(CP) $(PKG_BUILD_DIR)/install-setuptools/usr/bin/easy_install-* $(1)/usr/bin
$(LN) easy_install-$(PYTHON3_VERSION) $(1)/usr/bin/easy_install-3
+ $(LN) easy_install-$(PYTHON3_VERSION) $(1)/usr/bin/easy_install
$(CP) \
$(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools \
$(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools-$(PYTHON3_SETUPTOOLS_VERSION).dist-info \
$(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/easy_install.py \
$(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages
+ $(CP) \
+ $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools/site-patch.py \
+ $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools/site-patch.py.txt
find $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/ -path '*/__pycache__/*' -delete
find $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/ -type d -name __pycache__ -delete
endef
--- /dev/null
+--- a/setuptools/command/easy_install.py
++++ b/setuptools/command/easy_install.py
+@@ -1315,7 +1315,10 @@ class easy_install(Command):
+ return # already did it, or don't need to
+
+ sitepy = os.path.join(self.install_dir, "site.py")
+- source = resource_string("setuptools", "site-patch.py")
++ try:
++ source = resource_string("setuptools", "site-patch.py")
++ except FileNotFoundError:
++ source = resource_string("setuptools", "site-patch.py.txt")
+ source = source.decode('utf-8')
+ current = ""
+
--- a/Python/initconfig.c
+++ b/Python/initconfig.c
-@@ -120,7 +120,7 @@ int Py_NoSiteFlag = 0; /* Suppress 'impo
+@@ -152,7 +152,7 @@ int Py_NoSiteFlag = 0; /* Suppress 'impo
int Py_BytesWarningFlag = 0; /* Warn on str(bytes) and str(buffer) */
int Py_FrozenFlag = 0; /* Needed by getpath.c */
int Py_IgnoreEnvironmentFlag = 0; /* e.g. PYTHONPATH, PYTHONHOME */
--- a/configure
+++ b/configure
-@@ -15142,7 +15142,7 @@ $as_echo_n "checking ABIFLAGS... " >&6;
+@@ -15174,7 +15174,7 @@ $as_echo_n "checking ABIFLAGS... " >&6;
$as_echo "$ABIFLAGS" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking SOABI" >&5
$as_echo_n "checking SOABI... " >&6; }
--- a/configure.ac
+++ b/configure.ac
-@@ -4633,7 +4633,7 @@ AC_SUBST(SOABI)
+@@ -4654,7 +4654,7 @@ AC_SUBST(SOABI)
AC_MSG_CHECKING(ABIFLAGS)
AC_MSG_RESULT($ABIFLAGS)
AC_MSG_CHECKING(SOABI)
# Here are a couple of targets for MacOSX again, to install a full
--- a/configure
+++ b/configure
-@@ -15181,7 +15181,7 @@ else
+@@ -15213,7 +15213,7 @@ else
fi
LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}"
--- a/configure.ac
+++ b/configure.ac
-@@ -4667,7 +4667,7 @@ fi
+@@ -4688,7 +4688,7 @@ fi
dnl define LIBPL after ABIFLAGS and LDVERSION is defined.
AC_SUBST(PY_ENABLE_SHARED)
2 files changed, 108 insertions(+), 30 deletions(-)
create mode 100644 Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst
-diff --git a/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst b/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst
-new file mode 100644
-index 000000000000..e0a08464a1e1
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst
@@ -0,0 +1,4 @@
+1.1.0. The version specific TLS methods are emulated with TLS_method() plus
+SSL_CTX_set_min/max_proto_version(). Pseudo random numbers are generated
+with RAND_bytes().
-diff --git a/Modules/_ssl.c b/Modules/_ssl.c
-index f50823e6947a..827026e3bf5c 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
-@@ -45,14 +45,6 @@ static PySocketModule_APIObject PySocketModule;
+@@ -45,14 +45,6 @@ static PySocketModule_APIObject PySocket
#include <sys/poll.h>
#endif
#define TLS_method SSLv23_method
#define TLS_client_method SSLv23_client_method
#define TLS_server_method SSLv23_server_method
-@@ -896,7 +889,7 @@ _ssl_configure_hostname(PySSLSocket *self, const char* server_hostname)
+@@ -896,7 +889,7 @@ _ssl_configure_hostname(PySSLSocket *sel
goto error;
}
} else {
ASN1_STRING_length(ip))) {
_setSSLError(NULL, 0, __FILE__, __LINE__);
goto error;
-@@ -1372,8 +1365,9 @@ _get_peer_alt_names (X509 *certificate) {
+@@ -1372,8 +1365,9 @@ _get_peer_alt_names (X509 *certificate)
goto fail;
}
PyTuple_SET_ITEM(t, 0, v);
if (v == NULL) {
Py_DECREF(t);
goto fail;
-@@ -3031,44 +3025,124 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version)
+@@ -3078,44 +3072,124 @@ _ssl__SSLContext_impl(PyTypeObject *type
long options;
SSL_CTX *ctx = NULL;
X509_VERIFY_PARAM *params;
_setSSLError(NULL, 0, __FILE__, __LINE__);
return NULL;
}
-@@ -5241,7 +5315,7 @@ PySSL_RAND(int len, int pseudo)
+@@ -5288,7 +5362,7 @@ PySSL_RAND(int len, int pseudo)
if (bytes == NULL)
return NULL;
if (pseudo) {
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
-@@ -201,6 +202,11 @@ static void _PySSLFixErrno(void) {
+@@ -201,6 +201,11 @@ static void _PySSLFixErrno(void) {
#define TLS_method SSLv23_method
#define TLS_client_method SSLv23_client_method
#define TLS_server_method SSLv23_server_method
static int X509_NAME_ENTRY_set(const X509_NAME_ENTRY *ne)
{
-@@ -1677,7 +1683,7 @@ _decode_certificate(X509 *certificate) {
+@@ -1724,7 +1729,7 @@ _decode_certificate(X509 *certificate) {
Py_DECREF(sn_obj);
(void) BIO_reset(biobuf);
ASN1_TIME_print(biobuf, notBefore);
len = BIO_gets(biobuf, buf, sizeof(buf)-1);
if (len < 0) {
-@@ -1694,7 +1700,7 @@ _decode_certificate(X509 *certificate) {
+@@ -1741,7 +1746,7 @@ _decode_certificate(X509 *certificate) {
Py_DECREF(pnotBefore);
(void) BIO_reset(biobuf);
ASN1_TIME_print(biobuf, notAfter);
len = BIO_gets(biobuf, buf, sizeof(buf)-1);
if (len < 0) {
-@@ -3235,7 +3241,7 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version)
+@@ -3282,7 +3287,7 @@ _ssl__SSLContext_impl(PyTypeObject *type
conservative and assume it wasn't fixed until release. We do this check
at runtime to avoid problems from the dynamic linker.
See #25672 for more on this. */
if (!(libver >= 0x10001000UL && libver < 0x1000108fUL) &&
!(libver >= 0x10000000UL && libver < 0x100000dfUL)) {
SSL_CTX_set_mode(self->ctx, SSL_MODE_RELEASE_BUFFERS);
-@@ -6403,10 +6409,10 @@ PyInit__ssl(void)
+@@ -6450,10 +6455,10 @@ PyInit__ssl(void)
return NULL;
/* OpenSSL version */
r = PyLong_FromUnsignedLong(libver);
if (r == NULL)
return NULL;
-@@ -6416,7 +6422,7 @@ PyInit__ssl(void)
+@@ -6463,7 +6468,7 @@ PyInit__ssl(void)
r = Py_BuildValue("IIIII", major, minor, fix, patch, status);
if (r == NULL || PyModule_AddObject(m, "OPENSSL_VERSION_INFO", r))
return NULL;
include $(TOPDIR)/rules.mk
PKG_NAME:=c-ares
-PKG_VERSION:=1.15.0
-PKG_RELEASE:=4
+PKG_VERSION:=1.16.1
+PKG_RELEASE:=1
PKG_LICENSE:=MIT
PKG_CPE_ID:=cpe:/a:c-ares_project:c-ares
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://c-ares.haxx.se/download
-PKG_HASH:=6cdb97871f2930530c97deb7cf5c8fa4be5a0b02c7cea6e7c7667672a39d6852
+PKG_HASH:=d08312d0ecc3bd48eee0a4cc0d2137c9f194e0a28de2028928c0f6cae85f86ce
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
include $(TOPDIR)/rules.mk
PKG_NAME:=faad2
-PKG_VERSION:=2.9.1
+PKG_VERSION:=2.9.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/knik0/faad2/tar.gz/2_9_1?
-PKG_HASH:=7fa33cff76abdda5a220ca5de0b2e05a77354f3b97f735193c2940224898aa9a
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-2_9_1
+PKG_SOURCE_URL:=https://codeload.github.com/knik0/faad2/tar.gz/2_9_2?
+PKG_HASH:=9728b2b94f94ab49363cd229e7377fbe6ef3c311c5cd80da662d53ddb0ee091d
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-2_9_2
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0-or-later
+++ /dev/null
-From 8552fd53aaf5059ed769a0564330816beacaca98 Mon Sep 17 00:00:00 2001
-From: Rosen Penev <rosenp@gmail.com>
-Date: Tue, 10 Mar 2020 17:38:29 -0700
-Subject: [PATCH] fix compilation with LC_ONLY_DECODER
-
-881b5e263f25a8a8b714e83407fc2c9dab407e40 broke compilation by always
-defining DRN and DRM_PS. Fix this and place the define where it belongs.
----
- libfaad/Makefile.am | 2 +-
- libfaad/common.h | 7 +++++--
- 2 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/libfaad/Makefile.am b/libfaad/Makefile.am
-index 8ed57ae..7d9c71f 100644
---- a/libfaad/Makefile.am
-+++ b/libfaad/Makefile.am
-@@ -32,5 +32,5 @@ libfaad_la_SOURCES = bits.c cfft.c decoder.c drc.c \
-
- libfaad_drm_la_LDFLAGS = ${libfaad_la_LDFLAGS}
- libfaad_drm_la_LIBADD = ${libfaad_la_LIBADD}
--libfaad_drm_la_CFLAGS = ${libfaad_la_CFLAGS} -DDRM -DDRM_PS
-+libfaad_drm_la_CFLAGS = ${libfaad_la_CFLAGS} -DDRM_SUPPORT
- libfaad_drm_la_SOURCES = ${libfaad_la_SOURCES}
-diff --git a/libfaad/common.h b/libfaad/common.h
-index 8b78807..76722e4 100644
---- a/libfaad/common.h
-+++ b/libfaad/common.h
-@@ -91,8 +91,10 @@ extern "C" {
- /* Allow decoding of LD profile AAC */
- #define LD_DEC
- /* Allow decoding of Digital Radio Mondiale (DRM) */
--//#define DRM
--//#define DRM_PS
-+#ifdef DRM_SUPPORT
-+#define DRM
-+#define DRM_PS
-+#endif
-
- /* LD can't do without LTP */
- #ifdef LD_DEC
-@@ -115,6 +117,7 @@ extern "C" {
- #undef MAIN_DEC
- #undef SSR_DEC
- #undef DRM
-+ #undef DRM_PS
- #undef ALLOW_SMALL_FRAMELENGTH
- #undef ERROR_RESILIENCE
- #endif
+++ /dev/null
-From 4ae9873a80ea47858d20f1d590aaf816c3aebb20 Mon Sep 17 00:00:00 2001
-From: Rosen Penev <rosenp@gmail.com>
-Date: Tue, 10 Mar 2020 20:13:57 -0700
-Subject: [PATCH] fix compilation without SBR/PS_DEC
-
-The bits.h include needs to be in mp4.h as it uses the bitfield struct.
----
- libfaad/mp4.c | 1 -
- libfaad/mp4.h | 1 +
- 2 files changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libfaad/mp4.c b/libfaad/mp4.c
-index 9f0198a..dbcff83 100644
---- a/libfaad/mp4.c
-+++ b/libfaad/mp4.c
-@@ -33,7 +33,6 @@
-
- #include <stdlib.h>
-
--#include "bits.h"
- #include "mp4.h"
- #include "syntax.h"
-
-diff --git a/libfaad/mp4.h b/libfaad/mp4.h
-index 5a94be4..d99a3e3 100644
---- a/libfaad/mp4.h
-+++ b/libfaad/mp4.h
-@@ -35,6 +35,7 @@
- extern "C" {
- #endif
-
-+#include "bits.h"
- #include "neaacdec.h"
-
- int8_t AudioSpecificConfig2(uint8_t *pBuffer,
--- /dev/null
+#
+# Copyright (C) 2020 Lucian Cristian
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libcap-ng
+PKG_VERSION:=0.7.10
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://people.redhat.com/sgrubb/libcap-ng
+PKG_HASH:=a84ca7b4e0444283ed269b7a29f5b6187f647c82e2b876636b49b9a744f0ffbf
+
+PKG_MAINTAINER:=Lucian CRISTIAN <lucian.cristian@gmail.com>
+PKG_LICENSE:=GPL-2.0-or-later LGPL-2.1-or-later
+PKG_LICENSE_FILES:=License
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+PKG_FIXUP:=autoreconf
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libcap-ng/Default
+ TITLE:=POSIX capabilities library
+ SECTION:=libs
+ CATEGORY:=Libraries
+ URL:=https://people.redhat.com/sgrubb/libcap-ng/index.html
+endef
+
+define Package/libcap-ng/description/Default
+ POSIX capabilities library
+endef
+
+define Package/libcap-ng
+ $(call Package/libcap-ng/Default)
+ TITLE += library
+endef
+
+define Package/libcap-ng-bin
+ $(call Package/libcap-ng/Default)
+ TITLE += binaries
+ DEPENDS += libcap-ng
+endef
+
+define Package/libcap-ng-bin/description
+ $(call Package/libcap-ng/description/Default)
+ .
+ This package contains the libcap-ng utilities.
+endef
+
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed $(FPIC)
+TARGET_CFLAGS += -flto
+
+CONFIGURE_VARS += \
+ ac_cv_prog_swig_found=no
+
+CONFIGURE_ARGS += \
+ --prefix=/usr \
+ --without-python \
+ --without-python3
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcap-ng.{so*,a} $(1)/usr/lib/
+ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libcap-ng.pc $(1)/usr/lib/pkgconfig/
+ $(INSTALL_DIR) $(1)/usr/share/aclocal
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/cap-ng.m4\
+ $(1)/usr/share/aclocal
+endef
+
+define Package/libcap-ng/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcap-ng.so* $(1)/usr/lib/
+endef
+
+define Package/libcap-ng-bin/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/sbin/
+endef
+
+$(eval $(call BuildPackage,libcap-ng))
+$(eval $(call BuildPackage,libcap-ng-bin))
--- /dev/null
+From 2c855b76362d1027abea967ac253cae8a7c160c3 Mon Sep 17 00:00:00 2001
+From: Trevor Woerner <twoerner@gmail.com>
+Date: Wed, 6 May 2020 17:38:05 -0400
+Subject: [PATCH] configure.ac: add library if header found (#10)
+
+If the pthread.h header is found, make sure library containing
+"pthread_atfork" is added to the list of libraries against which to link.
+On some hosts (e.g. openSUSE 15.1) "-lpthread" needs to be explicitly added
+in order for the code to compile correctly.
+
+Signed-off-by: Trevor Woerner <twoerner@gmail.com>
+---
+ configure.ac | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9d6aca3..4fbe4d3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -56,7 +56,9 @@ AC_CHECK_HEADERS(sys/xattr.h, [], [
+ AC_CHECK_HEADERS(attr/xattr.h, [], [AC_MSG_WARN(attr/xattr.h not found, disabling file system capabilities.)])
+ ])
+ AC_CHECK_HEADERS(linux/securebits.h, [], [])
+-AC_CHECK_HEADERS(pthread.h, [], [AC_MSG_WARN(pthread.h not found, disabling pthread_atfork.)])
++AC_CHECK_HEADERS(pthread.h,
++ [AC_SEARCH_LIBS(pthread_atfork, pthread)],
++ [AC_MSG_WARN(pthread.h not found, disabling pthread_atfork.)])
+
+ AC_C_CONST
+ AC_C_INLINE
--- /dev/null
+diff -ru libcap-ng-0.7.4.orig/src/cap-ng.c libcap-ng-0.7.4/src/cap-ng.c
+--- libcap-ng-0.7.4.orig/src/cap-ng.c 2014-04-24 15:41:43.000000000 -0300
++++ libcap-ng-0.7.4/src/cap-ng.c 2015-04-15 08:45:10.783335463 -0300
+@@ -34,6 +34,7 @@
+ #include <stdarg.h>
+ #include <errno.h>
+ #include <fcntl.h>
++#include <endian.h>
+ #include <byteswap.h>
+ #ifdef HAVE_SYSCALL_H
+ #include <sys/syscall.h>
--- /dev/null
+From 9b5597dc780a9da292f9142899a992cfc6ca081d Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Thu, 7 May 2020 00:19:18 +0200
+Subject: [PATCH] src/cap-ng.c: fix build without threads (#13)
+
+Put pthread_atfork under #ifdef HAVE_PTHREAD_H block
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ src/cap-ng.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/cap-ng.c b/src/cap-ng.c
+index 35fcd7a..97a3dbd 100644
+--- a/src/cap-ng.c
++++ b/src/cap-ng.c
+@@ -166,7 +166,9 @@ static void deinit(void)
+ static void init_lib(void) __attribute__ ((constructor));
+ static void init_lib(void)
+ {
++#ifdef HAVE_PTHREAD_H
+ pthread_atfork(NULL, NULL, deinit);
++#endif
+ }
+
+ static void init(void)
--- /dev/null
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libebml
+PKG_VERSION:=1.3.10
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/Matroska-Org/libebml/tar.gz/release-$(PKG_VERSION)?
+PKG_HASH:=2562bb9bc3248e956a6ed1148eafe4d7d68759257133083c212d14faa8709d1e
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
+
+PKG_MAINTAINER:=
+PKG_LICENSE:=LGPL-2.1-or-later
+PKG_LICENSE_FILES:=LICENSE.LGPL
+
+CMAKE_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/libebml
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=a C++ libary to parse EBML files
+ URL:=https://github.com/Matroska-Org/libebml
+ DEPENDS:=+libstdcpp
+ BUILDONLY:=1
+endef
+
+define Package/libebml/description
+ a C++ libary to parse EBML files
+ Specifications may be rendered at http://matroska-org.github.io/libebml/
+endef
+
+CMAKE_OPTIONS += \
+ -DDISABLE_PKGCONFIG=OFF \
+ -DDISABLE_CMAKE_CONFIG=OFF \
+ -DENABLE_WIN32_IO=OFF
+
+TARGET_CFLAGS += -flto
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
+
+$(eval $(call BuildPackage,libebml))
--- /dev/null
+#
+# Copyright (C) 2006-2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+include $(INCLUDE_DIR)/kernel.mk
+
+PKG_NAME:=libfuse3
+PKG_VERSION:=3.9.1
+PKG_RELEASE:=1
+
+PKG_SOURCE:=fuse-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=https://github.com/libfuse/libfuse/releases/download/fuse-$(PKG_VERSION)
+PKG_HASH:=1bafcfd6c66ba35b7b0beb822532a9106eb8409ad6cde988888fde85f89be645
+PKG_BUILD_DIR:=$(BUILD_DIR)/fuse-$(PKG_VERSION)
+
+PKG_MAINTAINER:=
+PKG_CPE_ID:=cpe:/a:fuse_project:fuse
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+PKG_BUILD_DEPENDS:=meson/host
+
+include $(INCLUDE_DIR)/package.mk
+include ../../devel/meson/meson.mk
+
+define Package/libfuse3
+ TITLE:=FUSE3 library
+ URL:=https://github.com/libfuse/libfuse
+ SECTION:=libs
+ CATEGORY:=Libraries
+ DEPENDS:=+kmod-fuse +libpthread
+ SUBMENU:=Filesystem
+ ABI_VERSION:=1
+ LICENSE:=LGPL-2.1-only
+ LICENSE_FILES:=LGPL2.txt
+endef
+
+define Package/libfuse3/description
+ fuse3 (Filesystem in UserSpacE)
+ This package contains the fuse3 shared libraries, needed by other programs.
+ - libfuse3
+endef
+
+MESON_ARGS += \
+ -Ddisable-mtab=true \
+ -Dutils=false \
+ -Dexamples=false \
+ -Duseroot=false
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include/fuse3
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/fuse3/*.h $(1)/usr/include/fuse3
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse3.so* $(1)/usr/lib/
+ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/fuse3.pc $(1)/usr/lib/pkgconfig/
+endef
+
+define Package/libfuse3/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse3.so.* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libfuse3))
include $(TOPDIR)/rules.mk
PKG_NAME:=libmariadb
-PKG_VERSION:=3.1.7
-PKG_RELEASE:=2
+PKG_VERSION:=3.1.8
+PKG_RELEASE:=1
PKG_SOURCE:=mariadb-connector-c-$(PKG_VERSION)-src.tar.gz
PKG_SOURCE_URL := \
https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/connector-c-$(PKG_VERSION) \
https://downloads.mariadb.org/interstitial/connector-c-$(PKG_VERSION)
-PKG_HASH:=64f7bc8f5df3200ba6e3080f68ee4942382a33e8371baea8ca4b9242746df59a
+PKG_HASH:=431434d3926f4bcce2e5c97240609983f60d7ff50df5a72083934759bb863f7b
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
PKG_LICENSE:=LGPL-2.1
PKG_LICENSE_FILES:=COPYING.LIB
--- /dev/null
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libmatroska
+PKG_VERSION:=1.5.2
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/Matroska-Org/libmatroska/tar.gz/release-$(PKG_VERSION)?
+PKG_HASH:=8d03020ca3a657fe8d1ff57209b4218b6001df2ecd11ae956b428de941f2811f
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
+
+PKG_MAINTAINER:=
+PKG_LICENSE:=LGPL-2.1-or-later
+PKG_LICENSE_FILES:=LICENSE.LGPL
+
+CMAKE_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+PKG_BUILD_DEPENDS:=libebml
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/libmatroska
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=a C++ libary to parse Matroska files (.mkv and .mka)
+ URL:=https://github.com/Matroska-Org/libmatroska
+ DEPENDS:=+libstdcpp
+ BUILDONLY:=1
+endef
+
+define Package/libmatroska/description
+ a C++ libary to parse and create Matroska files
+endef
+
+CMAKE_OPTIONS += \
+ -DDISABLE_PKGCONFIG=OFF \
+ -DDISABLE_CMAKE_CONFIG=OFF
+
+TARGET_CFLAGS += -flto
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
+
+$(eval $(call BuildPackage,libmatroska))
PKG_NAME:=libmicrohttpd
PKG_VERSION:=0.9.70
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/libmicrohttpd
SECTION:=libs
CATEGORY:=Libraries
TITLE:=GNU libmicrohttpd is a library that runs an HTTP server.
- URL:=http://www.gnu.org/software/libmicrohttpd/
+ URL:=https://www.gnu.org/software/libmicrohttpd/
endef
define Package/libmicrohttpd-no-ssl
PROVIDES:=libmicrohttpd
endef
+define Package/libmicrohttpd/description
+ GNU libmicrohttpd is a small C library that is supposed to make it easy
+ to run an HTTP server as part of another application.
+endef
+
CONFIGURE_ARGS += \
--disable-curl \
--disable-rpath \
--disable-doc \
--disable-examples \
--disable-poll \
- --enable-epoll
+ --enable-epoll \
+ --with-pic
ifeq ($(BUILD_VARIANT),ssl)
CONFIGURE_ARGS += \
--without-gnutls
endif
-define Package/libmicrohttpd/description
- GNU libmicrohttpd is a small C library that is supposed to make it easy
- to run an HTTP server as part of another application.
-endef
-
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/microhttpd.h $(1)/usr/include/
include $(TOPDIR)/rules.mk
PKG_NAME:=libnpupnp
-PKG_VERSION:=2.2.1
+PKG_VERSION:=4.0.3
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads
-PKG_HASH:=da67d4c258d139d476af6b800926cd9cd09ba17d9e9fcfaebe3fb98241b32790
+PKG_HASH:=160ab9b0fa8886013811573cb28cffe0b205eadb318e9627c09b297dee1cbc23
PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=libupnpp
-PKG_VERSION:=0.18.0
+PKG_VERSION:=0.19.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads
-PKG_HASH:=c9659cd36ce70c43e9889a6c3a5eeb28e4f799580727826a6c7aef9bef6b6937
+PKG_HASH:=412b38bdd07441588c11bb1d64af7d112f439a46512d53c907f9b54a6666ff58
PKG_MAINTAINER:=Petko Bordjukov <bordjukov@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_NAME:=libwebp
PKG_VERSION:=1.1.0
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://storage.googleapis.com/downloads.webmproject.org/releases/webp
-DWEBP_BUILD_WEBPMUX=OFF \
-DWEBP_BUILD_EXTRAS=OFF
+ifneq ($(findstring arm,$(CONFIG_ARCH)),)
+ifeq ($(findstring neon,$(CONFIG_CPU_TYPE)),)
+CMAKE_OPTIONS += -DWEBP_ENABLE_SIMD=OFF
+endif
+endif
+
TARGET_CFLAGS += -flto
define Package/libwebp/install
PKG_NAME:=measurement-kit
PKG_VERSION:=0.10.11
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/measurement-kit/measurement-kit/tar.gz/v$(PKG_VERSION)?
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
+PKG_BUILD_DEPENDS:=curl libevent2 libmaxminddb openssl
PKG_BUILD_PARALLEL:=1
+PKG_CONFIG_DEPENDS:=MEASUREMENT_KIT_BUILD_DEPENDS
+
include $(INCLUDE_DIR)/package.mk
define Package/measurement-kit
CATEGORY:=Libraries
TITLE:=library for open network measurement
URL:=https://measurement-kit.github.io/
- DEPENDS:=+libstdcpp +libcurl +libevent2-pthreads +libevent2-extra +libevent2-openssl +libevent2-core +libmaxminddb +ca-bundle
+ DEPENDS:=+libstdcpp +libcurl +libevent2-pthreads +libevent2-extra +libevent2-openssl +libevent2-core +libmaxminddb +libopenssl +ca-bundle
endef
define Package/measurement-kit/description
Measurement Kit is a C++14 library that implements open network measurement methodologies (performance, censorship, etc.)
endef
+define Package/measurement-kit/config
+config MEASUREMENT_KIT_BUILD_DEPENDS
+ bool
+ default PACKAGE_measurement-kit
+
+config MEASUREMENT_KIT_BUILD_SELECT
+ tristate
+ default m if MEASUREMENT_KIT_BUILD_DEPENDS
+ select PACKAGE_libevent2-openssl
+ select PACKAGE_libevent2-pthreads
+endef
+
CONFIGURE_ARGS+= --with-ca-bundle=/etc/ssl/cert.pem
TARGET_CFLAGS += $(if $(CONFIG_USE_UCLIBC),-DCATCH_CONFIG_GLOBAL_NEXTAFTER)
PKG_NAME:=nspr
PKG_VERSION:=4.25
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
PKG_LICENCE:=MPL-2.0
endif
export MUSL=$(if $(CONFIG_LIBC_USE_GLIBC),0,1)
-TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed $(FPIC)
+TARGET_CFLAGS += -flto
CONFIGURE_ARGS += \
--build=$(GNU_HOST_NAME) \
PKG_NAME:=nss
PKG_VERSION:=3.52
-PKG_RELEASE:=1
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:= \
TARGET_CFLAGS+= -mfloat-abi=softfp
endif
-TARGET_CFLAGS += -D_GNU_SOURCE
-TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
+ifneq ($(findstring arm,$(CONFIG_ARCH)),)
+ifeq ($(findstring neon,$(CONFIG_CPU_TYPE)),)
+export NSS_DISABLE_ARM32_NEON
+endif
+endif
-export CROSS_COMPILE=1
-export BUILD_OPT=1
export NATIVE_CC=$(HOSTCC)
export NATIVE_FLAGS=$(HOST_CFLAGS)
-export NSDISTMODE=copy
export NSS_ENABLE_WERROR=0
-export NSS_DISABLE_GTESTS=1
-export NSS_USE_SYSTEM_SQLITE=1
-export OS_TARGET=Linux
-export OS_ARCH=Linux
-export OS_TEST=$(ARCH)
-export CPU_ARCH=$(ARCH)
-export fpic=$(FPIC)
-export NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr
-export SEED_ONLY_DEV_URANDOM=1
-export OS_REL_CFLAGS=$(TARGET_CFLAGS)
-export NS_USE_GCC=1
-export FREEBL_NO_DEPEND=1
-#size optimisation, seems to not impact speed
-export NSS_DISABLE_DBM=1
-export NSS_PKIX_NO_LDAP=1
-export ALLOW_OPT_CODE_SIZE=1
-export OPT_CODE_SIZE=1
+
+MAKE_FLAGS += \
+ CROSS_COMPILE=1 \
+ BUILD_OPT=1 \
+ NSDISTMODE=copy \
+ NSS_DISABLE_GTESTS=1 \
+ NSS_USE_SYSTEM_SQLITE=1 \
+ OS_ARCH=Linux \
+ OS_TEST=$(ARCH) \
+ fpic=$(FPIC) \
+ NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
+ SEED_ONLY_DEV_URANDOM=1 \
+ NS_USE_GCC=1 \
+ FREEBL_NO_DEPEND=1 \
+ NSS_DISABLE_DBM=1 \
+ NSS_PKIX_NO_LDAP=1 \
+ ALLOW_OPT_CODE_SIZE=1 \
+ OPT_CODE_SIZE=1 \
+ OS_REL_CFLAGS="$(TARGET_CFLAGS)"
#native compile nsinstall
define Build/Prepare
$(call Build/Prepare/Default)
- USE_NATIVE=1 OS_REL_CFLAGS="$(HOST_CFLAGS)" LDFLAGS="$(HOST_LDFLAGS)" CC="$(HOSTCC)" \
+ USE_NATIVE=1 OS_REL_CFLAGS="$(HOST_CFLAGS)" LDFLAGS="$(HOST_LDFLAGS)" \
+ CC="$(HOSTCC)" CPU_ARCH="$(HOST_ARCH)" \
$(MAKE) -C $(PKG_BUILD_DIR)/nss/coreconf/nsinstall
endef
--- a/nss/coreconf/arch.mk 2019-03-31 23:38:34.374931416 +0300
+++ b/nss/coreconf/arch.mk 2019-03-31 23:38:44.667236102 +0300
-@@ -305,7 +305,7 @@
+@@ -334,7 +334,7 @@
OBJDIR_NAME_COMPILER = $(COMPILER_TAG)
endif
OBJDIR_NAME_BASE = $(OS_TARGET)$(OS_RELEASE)$(CPU_TAG)$(OBJDIR_NAME_COMPILER)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG)
ifdef MOZ_DEBUG_SYMBOLS
ifdef MOZ_DEBUG_FLAGS
OPTIMIZER += $(MOZ_DEBUG_FLAGS)
+@@ -192,7 +192,7 @@
+ endif
+ endif
+
+-MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so) $(RPATH)
++MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so) $(RPATH) $(fpic) -Wl,--gc-sections,--as-needed
+
+ ifdef MAPFILE
+ MKSHLIB += -Wl,--version-script,$(MAPFILE)
--- a/nss/coreconf/UNIX.mk 2019-04-06 20:34:24.284157646 +0300
+++ b/nss/coreconf/UNIX.mk 2019-04-06 20:34:34.760485327 +0300
@@ -10,7 +10,6 @@
PKG_NAME:=p11-kit
PKG_VERSION:=0.23.20
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://github.com/p11-glue/p11-kit/releases/download/$(PKG_VERSION)
define Package/p11-kit/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libp11-kit.so.* $(1)/usr/lib/
- $(INSTALL_DIR) $(1)/etc/p11-kit/modules/
+ $(INSTALL_DIR) $(1)/etc/pkcs11/modules/
ifneq ($(CONFIG_PACKAGE_libopensc),)
- $(CP) ./files/opensc.module $(1)/etc/p11-kit/modules/
+ $(CP) ./files/opensc.module $(1)/etc/pkcs11/modules/
endif
endef
#
-# Copyright (C) 2019 Yousong Zhou <yszhou4tech@gmail.com>
+# Copyright (C) 2019-2020 Yousong Zhou <yszhou4tech@gmail.com>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=spice-protocol
-PKG_VERSION:=0.14.1
+PKG_VERSION:=0.14.2
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.spice-space.org/download/releases
-PKG_HASH:=79e6da61834b080a143234c1cd4c099a8ead1a64b5039489610b72ab282c132a
+PKG_HASH:=8f3a63c8b68300dffe36f2e75eac57afa1e76d5d80af760fd138a0b3f44cf1e9
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING
-PKG_INSTALL:=1
PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com>
+PKG_INSTALL:=1
+PKG_BUILD_DEPENDS:=meson/host
+
include $(INCLUDE_DIR)/package.mk
+include ../../devel/meson/meson.mk
define Package/spice-protocol
--- /dev/null
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=taglib
+PKG_VERSION:=1.12-beta-1
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/taglib/taglib/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=d2a44be7ca8b7682b218affc9910dcfb027481f402f7c30bd2996392b2429ae4
+
+PKG_MAINTAINER:=
+PKG_LICENSE:=LGPL-2.1-or-later
+PKG_LICENSE_FILES:=COPYING.LGPL
+PKG_CPE_ID:=cpe:/a:taglib:taglib
+
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/taglib
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=taglib
+ URL:=https://github.com/taglib/taglib
+ DEPENDS:=+libstdcpp
+ BUILDONLY:=1
+endef
+
+define Package/taglib/description
+ TagLib is a library for reading and editing the metadata of several
+ popular audio formats. Currently it supports both ID3v1 and ID3v2 for
+ MP3 files, Ogg Vorbis comments and ID3 tags in FLAC, MPC, Speex, WavPack,
+ TrueAudio, WAV, AIFF, MP4, APE, DSF, DFF, and ASF files.
+endef
+
+CMAKE_OPTIONS += \
+ -DBUILD_TESTS=OFF \
+ -DBUILD_EXAMPLES=OFF \
+ -DBUILD_BINDINGS=OFF \
+ -DNO_ITUNES_HACKS=ON
+
+TARGET_CXXFLAGS += -flto
+
+define Build/InstallDev
+ $(call Build/InstallDev/cmake,$(1))
+ $(SED) '/^prefix=\|^exec_prefix=/s|/usr|$(STAGING_DIR)/usr|' $(1)/usr/bin/taglib-config
+ $(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/taglib.pc
+ $(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/taglib.pc
+endef
+
+$(eval $(call BuildPackage,taglib))
PKG_NAME:=ffmpeg
PKG_VERSION:=4.2.2
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://ffmpeg.org/releases/
--- /dev/null
+--- a/libavcodec/wmv2dsp.c
++++ b/libavcodec/wmv2dsp.c
+@@ -263,6 +263,6 @@ av_cold void ff_wmv2dsp_init(WMV2DSPContext *c)
+ c->put_mspel_pixels_tab[6] = put_mspel8_mc22_c;
+ c->put_mspel_pixels_tab[7] = put_mspel8_mc32_c;
+
+- if (ARCH_MIPS)
++ if (ARCH_MIPS64)
+ ff_wmv2dsp_init_mips(c);
+ }
PKG_NAME:=gerbera
PKG_VERSION:=1.5.0
-PKG_RELEASE:=4
+PKG_RELEASE:=6
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/gerbera/gerbera/tar.gz/v$(PKG_VERSION)?
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=LICENSE.md
-PKG_BUILD_DEPENDS:=pugixml spdlog
+PKG_BUILD_DEPENDS:=libmatroska pugixml spdlog taglib
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
-DWITH_CURL=OFF \
-DWITH_INOTIFY=ON \
-DWITH_JS=OFF \
- -DWITH_TAGLIB=OFF \
+ -DWITH_TAGLIB=ON \
-DWITH_AVCODEC=OFF \
-DWITH_FFMPEGTHUMBNAILER=OFF \
-DWITH_EXIF=ON \
-DWITH_EXIV2=OFF \
- -DWITH_MATROSKA=OFF \
+ -DWITH_MATROSKA=ON \
-DWITH_SYSTEMD=OFF \
-DWITH_LASTFM=OFF \
-DWITH_DEBUG=OFF \
include $(TOPDIR)/rules.mk
PKG_NAME:=adblock
-PKG_VERSION:=4.0.4
-PKG_RELEASE:=4
+PKG_VERSION:=4.0.5
+PKG_RELEASE:=1
PKG_LICENSE:=GPL-3.0-or-later
PKG_MAINTAINER:=Dirk Brenken <dev@brenken.org>
SECTION:=net
CATEGORY:=Network
TITLE:=Powerful adblock script to block ad/abuse domains by using DNS
- DEPENDS:=+jshn +jsonfilter +coreutils +coreutils-sort +ca-bundle
+ DEPENDS:=+jshn +jsonfilter +coreutils +coreutils-sort +ca-bundle +opkg
PKGARCH:=all
endef
| bitcoin | | S | mining | [Link](https://github.com/hoshsadiq/adblock-nocoin-list) |
| disconnect | x | S | general | [Link](https://disconnect.me) |
| dshield | | XL | general | [Link](https://dshield.org) |
-| energized_blugo | | XL | compilation | [Link](https://github.com/EnergizedProtection/block) |
-| energized_blu | | XL | compilation | [Link](https://github.com/EnergizedProtection/block) |
-| energized_porn | | XXL | compilation+porn | [Link](https://github.com/EnergizedProtection/block) |
-| energized_unified | | XXL | compilation | [Link](https://github.com/EnergizedProtection/block) |
+| energized_blugo | | XL | compilation | [Link](https://energized.pro) |
+| energized_blu | | XL | compilation | [Link](https://energized.pro) |
+| energized_porn | | XXL | compilation+porn | [Link](https://energized.pro) |
+| energized_ultimate | | XXL | compilation | [Link](https://energized.pro) |
+| energized_unified | | XXL | compilation | [Link](https://energized.pro) |
| malwaredomains | | M | malware | [Link](https://malwaredomains.com) |
| malwarelist | | S | malware | [Link](https://www.malwaredomainlist.com) |
| notracking | | XL | tracking | [Link](https://github.com/notracking/hosts-blocklists) |
| reg_ro | | M | reg_romania | [Link](https://easylist.to) |
| reg_ru | | M | reg_russia | [Link](https://easylist.to) |
| reg_vn | | M | reg_vietnam | [Link](https://bigdargon.github.io/hostsVN) |
-| shallalist | | L | general | [Link](https://www.shallalist.de) |
-| shallalist_porn | | XXL | general+porn | [Link](https://www.shallalist.de) |
+| shallalist | | L | general | [Link](http://www.shallalist.de) |
+| shallalist_porn | | XXL | general+porn | [Link](http://www.shallalist.de) |
| smarttv | | S | smarttv | [Link](https://github.com/Perflyst/PiHoleBlocklist) |
| spam404 | | S | general | [Link](https://github.com/Dawsey21) |
-| stevenblack | | L | compilation | [Link](https://github.com/StevenBlack/hosts) |
+| stevenblack | | L | compilation+porn | [Link](https://github.com/StevenBlack/hosts) |
+| stevenblack_porn | | L | compilation+porn | [Link](https://github.com/StevenBlack/hosts) |
| stopforumspam | | S | spam | [Link](https://www.stopforumspam.com) |
| sysctl | | M | general | [Link](http://sysctl.org/cameleon) |
| utcapitole | | L | general | [Link](https://dsi.ut-capitole.fr/blacklists/index_en.php) |
src_enabled="${src_enabled//\'}"
printf "%s\\n" "::: Available adblock sources"
printf "%s\\n" ":::"
- printf "%-25s%-10s%-7s%-20s%s\\n" " Name" "Enabled" "Size" "Focus" "Info URL"
- printf "%s\\n" " ------------------------------------------------------------------"
+ printf "%-25s%-10s%-7s%-21s%s\\n" " Name" "Enabled" "Size" "Focus" "Info URL"
+ printf "%s\\n" " -------------------------------------------------------------------"
json_load_file "${src_file}"
json_get_keys keylist
for key in ${keylist}
enabled=" "
fi
src_enabled="${src_enabled/${key}}"
- printf " + %-21s%-10s%-7s%-20s%s\\n" "${key}" "${enabled}" "${size}" "${focus}" "${descurl}"
+ printf " + %-21s%-10s%-7s%-21s%s\\n" "${key:0:20}" "${enabled}" "${size:0:3}" "${focus:0:20}" "${descurl:0:50}"
else
src_enabled="${src_enabled} ${key}"
fi
printf "%s\\n" " ----------------------------------------------"
for key in ${src_enabled}
do
- printf " - %s\\n" "${key}"
+ printf " - %s\\n" "${key:0:20}"
done
fi
else
export LC_ALL=C
export PATH="/usr/sbin:/usr/bin:/sbin:/bin"
set -o pipefail
-adb_ver="4.0.4"
+adb_ver="4.0.5"
adb_enabled=0
adb_debug=0
adb_forcedns=0
if [ ! -r "/etc/config/adblock" ] || [ -n "$(uci -q show adblock.@source[0])" ]
then
- if [ -r "/etc/config/adblock-opkg" ] && [ -z "$(uci -q show adblock-opkg.@source[0])" ]
+ if { [ -r "/etc/config/adblock-opkg" ] && [ -z "$(uci -q show adblock-opkg.@source[0])" ]; } || \
+ { [ -r "/rom/etc/config/adblock" ] && [ -z "$(uci -q show /rom/etc/config/adblock.@source[0])" ]; }
then
if [ -r "/etc/config/adblock" ]
then
cp -pf "/etc/config/adblock" "/etc/config/adblock-backup"
fi
- cp -pf "/etc/config/adblock-opkg" "/etc/config/adblock"
+ if [ -r "/etc/config/adblock-opkg" ]
+ then
+ cp -pf "/etc/config/adblock-opkg" "/etc/config/adblock"
+ elif [ -r "/rom/etc/config/adblock" ]
+ then
+ cp -pf "/rom/etc/config/adblock" "/etc/config/adblock"
+ fi
f_log "info" "missing or old adblock config replaced with new valid default config"
else
f_log "err" "unrecoverable adblock config error, please re-install the package via opkg with the '--force-reinstall --force-maintainer' options"
adb_dnsinstance="${adb_dnsinstance:-"0"}"
adb_dnsuser="${adb_dnsuser:-"root"}"
adb_dnsdir="${adb_dnsdir:-"/etc/kresd"}"
- adb_dnsheader="${adb_dnsheader:-"\$TTL 2h\n@ IN SOA localhost. root.localhost. (1 6h 1h 1w 2h)\n IN NS localhost.\n"}"
+ adb_dnsheader="${adb_dnsheader:-"\$TTL 2h\n@ IN SOA localhost. root.localhost. (1 6h 1h 1w 2h)\n"}"
adb_dnsdeny="${adb_dnsdeny:-"${adb_awk} '{print \"\"\$0\" CNAME .\\n*.\"\$0\" CNAME .\"}'"}"
adb_dnsallow="${adb_dnsallow:-"${adb_awk} '{print \"\"\$0\" CNAME rpz-passthru.\\n*.\"\$0\" CNAME rpz-passthru.\"}'"}"
adb_dnssafesearch="${adb_dnssafesearch:-"0"}"
"descurl": "https://www.dshield.org"
},
"energized_blugo": {
- "url": "https://raw.githubusercontent.com/EnergizedProtection/block/master/bluGo/formats/domains.txt",
+ "url": "https://block.energized.pro/bluGo/formats/domains.txt",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"size": "XL",
"focus": "compilation",
- "descurl": "https://github.com/EnergizedProtection/block"
+ "descurl": "https://energized.pro"
},
"energized_blu": {
- "url": "https://raw.githubusercontent.com/EnergizedProtection/block/master/blu/formats/domains.txt",
+ "url": "https://block.energized.pro/blu/formats/domains.txt",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"size": "XL",
"focus": "compilation",
- "descurl": "https://github.com/EnergizedProtection/block"
+ "descurl": "https://energized.pro"
},
"energized_porn": {
- "url": "https://raw.githubusercontent.com/EnergizedProtection/block/master/porn/formats/domains.txt",
+ "url": "https://block.energized.pro/porn/formats/domains.txt",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"size": "XXL",
"focus": "compilation+porn",
- "descurl": "https://github.com/EnergizedProtection/block"
+ "descurl": "https://energized.pro"
+ },
+ "energized_ultimate": {
+ "url": "https://block.energized.pro/ultimate/formats/domains.txt",
+ "rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
+ "size": "XXL",
+ "focus": "compilation",
+ "descurl": "https://energized.pro"
},
"energized_unified": {
- "url": "https://raw.githubusercontent.com/EnergizedProtection/block/master/unified/formats/domains.txt",
+ "url": "https://block.energized.pro/unified/formats/domains.txt",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"size": "XXL",
"focus": "compilation",
- "descurl": "https://github.com/EnergizedProtection/block"
+ "descurl": "https://energized.pro"
},
"malwaredomains": {
"url": "http://mirror.espoch.edu.ec/malwaredomains/justdomains",
"descurl": "https://bigdargon.github.io/hostsVN"
},
"shallalist": {
- "url": "https://www.shallalist.de/Downloads/shallalist.tar.gz",
+ "url": "http://www.shallalist.de/Downloads/shallalist.tar.gz",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"categories": [
"adv", "costtraps", "spyware", "tracker", "warez"
],
"size": "L",
"focus": "general",
- "descurl": "https://www.shallalist.de"
+ "descurl": "http://www.shallalist.de"
},
"shallalist_porn": {
- "url": "https://www.shallalist.de/Downloads/shallalist.tar.gz",
+ "url": "http://www.shallalist.de/Downloads/shallalist.tar.gz",
"rule": "/^([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($1)}",
"categories": [
"adv", "costtraps", "porn", "spyware", "tracker", "warez"
],
"size": "XXL",
"focus": "general+porn",
- "descurl": "https://www.shallalist.de"
+ "descurl": "http://www.shallalist.de"
},
"smarttv": {
"url": "https://raw.githubusercontent.com/Perflyst/PiHoleBlocklist/master/SmartTV.txt",
"descurl": "https://github.com/Dawsey21"
},
"stevenblack": {
+ "url": "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts",
+ "rule": "/^0\\.0\\.0\\.0[[:space:]]+([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($2)}",
+ "size": "L",
+ "focus": "compilation",
+ "descurl": "https://github.com/StevenBlack/hosts"
+ },
+ "stevenblack_porn": {
"url": "https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts",
"rule": "/^0\\.0\\.0\\.0[[:space:]]+([[:alnum:]_-]+\\.)+[[:alpha:]]+([[:space:]]|$)/{print tolower($2)}",
"size": "L",
PKG_NAME:=apache
PKG_VERSION:=2.4.43
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE_NAME:=httpd
PKG_SOURCE:=$(PKG_SOURCE_NAME)-$(PKG_VERSION).tar.bz2
ifneq ($(CONFIG_PACKAGE_apache-mod-suexec)$(CONFIG_PACKAGE_apache-suexec),)
CONFIGURE_ARGS+= \
--enable-suexec \
- --with-suexec-bin=/usr/sbin/suexec \
+ --with-suexec-bin=/usr/lib/apache2/suexec_dir/suexec \
--with-suexec-caller=apache \
- --with-suexec-docroot=/var/www \
- --with-suexec-logfile=/var/log/apache2/suexec.log \
- --with-suexec-uidmin=99 \
- --with-suexec-gidmin=99
+ --with-suexec-logfile=/var/log/apache2/suexec.log
else
CONFIGURE_ARGS+= \
--disable-suexec
endef
define Package/apache-suexec/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(CP) $(PKG_INSTALL_DIR)/usr/sbin/suexec $(1)/usr/sbin
+ $(INSTALL_DIR) -m0750 $(1)/usr/lib/apache2/suexec_dir
+ $(INSTALL_SUID) $(PKG_INSTALL_DIR)/usr/sbin/suexec \
+ $(1)/usr/lib/apache2/suexec_dir
endef
define Package/apache-utils/install
$(1)/usr/sbin
endef
+# Directory "suexec_dir" is installed with '-m0750' above and contains
+# SUID binary "suexec". Below post-install script changes the group of
+# "suexec_dir" to apache, so user apache can access the folder (and the
+# SUID binary). The script only changes the group if the directory is
+# currently owned by "root:root".
+define Package/apache-suexec/postinst
+#!/bin/sh
+if [ -z "$${IPKG_INSTROOT}" ]; then
+ dir="/usr/lib/apache2/suexec_dir"
+ if ! [ -L "$$dir" ] && [ -d "$$dir" ] && [ -O "$$dir" ] && [ -G "$$dir" ]; then
+ chown :apache "$$dir"
+ fi
+fi
+exit 0
+endef
+
define Package/apache/Module
define Package/apache-mod-$(1)
$(call Package/apache/Default)
}
start() {
- mkdir -p /var/log/apache2 /var/run/apache2
+ mkdir -p -m 0750 /var/log/apache2
+ mkdir -p /var/run/apache2
apachectl -k start
}
include $(TOPDIR)/rules.mk
PKG_NAME:=bind
-PKG_VERSION:=9.16.2
+PKG_VERSION:=9.16.3
PKG_RELEASE:=1
USERID:=bind=57:bind=57
PKG_SOURCE_URL:= \
https://www.mirrorservice.org/sites/ftp.isc.org/isc/bind9/$(PKG_VERSION) \
https://ftp.isc.org/isc/bind9/$(PKG_VERSION)
-PKG_HASH:=d9e5b77cfca5ccad97f19cddc87128758ec15c16e6585000c6b2f84fc225993f
+PKG_HASH:=27ac6513de5f8d0db34b9f241da53baa15a14b2ad21338d0cde0826eaf564f7e
PKG_FIXUP:=autoreconf
PKG_REMOVE_FILES:=aclocal.m4 libtool.m4
PKG_NAME:=cifs-utils
PKG_VERSION:=6.10
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://download.samba.org/pub/linux-cifs/cifs-utils/
--disable-man \
--without-libcap
+CONFIGURE_ARGS += \
+ ac_cv_lib_cap_ng_capng_clear=no
+
TARGET_CFLAGS += $(FPIC) -ffunction-sections -flto
TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
include $(TOPDIR)/rules.mk
PKG_NAME:=dawn
-PKG_SOURCE_DATE:=2020-04-17
-PKG_RELEASE:=2
+PKG_SOURCE_DATE:=2020-05-20
+PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/berlin-open-wireless-lab/DAWN.git
-PKG_SOURCE_VERSION:=2ff3b3017fc5e5477f494e6aa85d6b0b4acd68bb
-PKG_MIRROR_HASH:=b9260dad56f40a371157a6d9c54ac295bdbfc5f853915df18e4152eb8f3110f9
+PKG_SOURCE_VERSION:=73c79989676f5b89f4547f4effc4497f5aaeea44
+PKG_MIRROR_HASH:=a5bf4bf58e3352316800a1f5d4cfb750a09f4f43c1494c5560d71a22fa267c55
PKG_MAINTAINER:=Nick Hainke <vincent@systemli.org>
PKG_LICENSE:=GPL-2.0-only
--- /dev/null
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=etesync-server
+PKG_VERSION:=0.3.0
+PKG_RELEASE:=2
+
+PKG_SOURCE:=etesync-server-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/etesync/server/archive/v$(PKG_VERSION)
+PKG_HASH:=d0728effa898a8b7afb4ce7439e0d0fd46bc819008925f21788d7e113435b579
+
+PKG_LICENSE:=AGPL-3.0-only
+PKG_LICENSE_FILES:=LICENSE
+PKG_MAINTAINER:=Peter Stadler <peter.stadler@student.uibk.ac.at>
+
+PKG_BUILD_PARALLEL:=1
+PYTHON3_PKG_BUILD:=0
+
+PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
+
+include $(INCLUDE_DIR)/package.mk
+include ../../lang/python/python3-package.mk
+
+
+define Package/etesync-server
+ SECTION:=net
+ CATEGORY:=Network
+ SUBMENU:=Web Servers/Proxies
+ TITLE:=End-to-End Encrypted Secure Data Sync
+ URL:=https://www.etesync.com/
+ DEPENDS:=+nginx-ssl +python3-light +python3-django \
+ +python3-django-restframework +python3-drf-nested-routers \
+ +python3-django-cors-headers +python3-django-etesync-journal \
+ +uwsgi +uwsgi-python3-plugin +uwsgi-syslog-plugin
+ USERID:=etesync=44312
+endef
+
+
+define Package/etesync-server/description
+ End-to-End Encrypted Secure Data Sync
+endef
+
+
+Build/Compile:=:
+
+
+define Py3Package/etesync-server/install
+ $(INSTALL_DIR) $(1)/www/etesync/static/
+
+ $(INSTALL_DIR) $(1)/etc/uci-defaults/
+ $(CP) ./files/81_setup-etesync-server $(1)/etc/uci-defaults/
+
+ $(INSTALL_DIR) $(1)/etc/nginx/conf.d/
+ $(INSTALL_CONF) ./files/etesync.locations $(1)/etc/nginx/conf.d/
+
+ $(INSTALL_DIR) $(1)/etc/config/
+ $(INSTALL_CONF) ./files/uci.cfg $(1)/etc/config/etesync_server
+
+ $(INSTALL_DIR) $(1)/usr/share/etesync-server/templates/
+ $(INSTALL_DATA) $(PKG_BUILD_DIR)/templates/* \
+ $(1)/usr/share/etesync-server/templates/
+
+ $(INSTALL_DIR) $(1)/usr/share/etesync-server/etesync_server/
+ $(INSTALL_DATA) $(PKG_BUILD_DIR)/manage.py \
+ $(1)/usr/share/etesync-server/
+
+ $(INSTALL_DATA) $(PKG_BUILD_DIR)/etesync_server/* \
+ $(1)/usr/share/etesync-server/etesync_server/
+
+ $(LN) /var/etc/etesync-server/etesync-server.ini \
+ $(1)/usr/share/etesync-server/
+ #init creates /var/etc/etesync-server/etesync-server.ini from uci.cfg
+
+ $(INSTALL_DIR) $(1)/etc/uwsgi/vassals/
+ $(INSTALL_CONF) ./files/uwsgi.ini \
+ $(1)/etc/uwsgi/vassals/etesync-server.available
+
+ $(LN) /var/etc/etesync-server/uwsgi.ini \
+ $(1)/etc/uwsgi/vassals/etesync-server.ini
+ #init links etesync-server.available /var/etc/etesync-server/uwsgi.ini
+
+ $(INSTALL_DIR) $(1)/etc/init.d/
+ $(INSTALL_BIN) ./files/uwsgi.init $(1)/etc/init.d/etesync-server
+endef
+
+Py3Package/etesync-server/filespec:=
+
+
+define Package/etesync-server/postrm
+#!/bin/sh
+[ -n "$${IPKG_INSTROOT}" ] && exit 0
+rmdir /usr/share/etesync-server/etesync_server
+[ "$${PKG_UPGRADE}" = "1" ] && exit 0
+rm -r /www/etesync/static
+rmdir /www/etesync
+exit 0
+endef
+
+
+define Package/etesync-server/conffiles
+/etc/config/etesync_server
+/etc/nginx/conf.d/etesync.locations
+/etc/uwsgi/vassals/etesync-server.available
+endef
+
+
+$(eval $(call Py3Package,etesync-server))
+$(eval $(call BuildPackage,etesync-server))
+$(eval $(call BuildPackage,etesync-server-src))
--- /dev/null
+#!/bin/sh
+
+[ "${PKG_UPGRADE}" = "1" ] && /etc/init.d/etesync-server stop
+
+cd /usr/share/etesync-server || exit 1
+
+python3 manage.pyc migrate --noinput || exit 1
+
+# setup minimal ini for collectstatic:
+mkdir -p /var/etc/etesync-server/ || exit 1
+printf "[global]\nSTATIC_ROOT=/www/etesync/static" >etesync-server.ini || exit 1
+python3 manage.pyc collectstatic --noinput || exit 1
+
+ETESYNC_HAS_USER_PY3CMD="import sqlite3
+c = sqlite3.connect('db.sqlite3').cursor()
+c.execute('select * from auth_user')
+if c.fetchone()==None: print('0')
+else: print('1')"
+
+echo
+
+if [ "$(python3 -c "$ETESYNC_HAS_USER_PY3CMD" || exit 1)" = "0" ]
+then
+ echo "===== First, create a superuser of the Webinterface by ====="
+ [ -t 0 ] && python3 manage.pyc createsuperuser ||
+ echo "===== python3 $(pwd)/manage.pyc createsuperuser ====="
+fi
+
+chown -Rh etesync:nogroup . /www/etesync/ || exit 1
+
+[ -x /etc/init.d/nginx ] || exit 1
+
+/etc/init.d/nginx running && /etc/init.d/nginx reload || /etc/init.d/nginx start
+
+router_ip() {
+ local ifstat="$(ifstatus "lan")"
+
+ for ip in $(echo "${ifstat}" | jsonfilter -e '@["ipv4-address"].*.address')
+ do echo "${ip}" && return
+ done
+
+ for ip in $(echo "${ifstat}" | jsonfilter -e '@["ipv6-address"].*.address')
+ do echo "[${ip}]" && return
+ done
+
+ for ip in $(echo "${ifstat}" | \
+ jsonfilter -e '@["ipv6-prefix-assignment"].*["local-address"].address')
+ do echo "[${ip}]" && return
+ done
+
+ echo '$ROUTER'
+}
+
+echo "===== You can add users by https://$(router_ip)/etesync/admin/login ====="
+
+exit 0
--- /dev/null
+location /etesync/static {
+ access_log off;
+ error_log /dev/null;
+ expires 1y;
+ try_files $uri $uri/ =404;
+}
+
+location /etesync {
+ access_log off;
+ error_log /dev/null;
+ include uwsgi_params;
+ uwsgi_pass unix:///var/run/etesync-server.socket;
+}
--- /dev/null
+
+config django 'global'
+ option static_url '/etesync/static/' # TODO for django 3.1: "static/"
+ option debug 'false'
+
+config django 'allowed_hosts'
+ list uci_allow_all_ips_of 'loopback'
+ list uci_allow_all_ips_of 'lan'
+# list allowed_host "example.com"
+
+config django 'database'
+ option engine 'django.db.backends.sqlite3'
+ option name 'db.sqlite3'
--- /dev/null
+; The script /etc/init.d/etesync-server creates the second symlink in the
+; following chain when starting (and deletes it when stopping the service):
+; /etc/uwsgi/vassals/etesync-server.ini (letting the emperor load it on-demand)
+; -> /var/etc/etesync-server/uwsgi.ini (in RAM)
+; -> /etc/uwsgi/vassals/etesync-server.available (this file)
+
+[uwsgi]
+strict = true
+
+plugin = python
+manage-script-name = true
+chdir = /usr/share/etesync-server
+mount = /etesync=etesync_server.wsgi:application
+pidfile = /var/etc/etesync-server/master.pid
+
+enable-threads = true
+thunder-lock = true
+post-buffering = 8192
+harakiri = 60
+lazy-apps = true
+master = true
+idle = 600
+
+plugin = syslog
+; disable-logging only affects req-logger:
+disable-logging = true
+log-format=%(method) %(uri) => return %(status) (%(rsize) bytes in %(msecs) ms)
+req-logger = syslog:etesync-server_req
+
+logger = etesync syslog:etesync-server_main
+ignore-sigpipe = true
+ignore-write-errors = true
+
+if-env = UWSGI_EMPEROR_FD
+; the regular expression leaves for successful de/activation only one line each:
+log-route = etesync ^(?!... Starting uWSGI |compiled with version: |os: Linux|nodename: |machine: |clock source: |pcre jit |detected number of CPU cores: |current working directory: |writing pidfile to |detected binary path: |chdir.. to |your processes number limit is |your memory page size is |detected max file descriptor number: |lock engine: |thunder lock: |uwsgi socket |setgid.. to |setuid.. to |Python version: |Python main interpreter initialized at |python threads support |your server socket listen backlog is limited to |your mercy for graceful operations on workers is |mapped |... Operational MODE: |... uWSGI is running in multiple interpreter mode ...|spawned uWSGI worker |mounting |WSGI app |announcing my loyalty to the Emperor...|workers have been inactive for more than |SIGINT/SIGQUIT received...killing workers...|worker |goodbye to uWSGI.)
+end-if =
+
+if-not-env = UWSGI_EMPEROR_FD
+log-route = etesync .*
+vacuum = true
+socket = /var/run/etesync-server.socket
+end-if =
+
+chmod-socket = 660
+chown-socket = etesync:nogroup
+uid = etesync
+gid = nogroup
--- /dev/null
+#!/bin/sh /etc/rc.common
+
+START=82
+
+USE_PROCD=1
+
+ETESYNC_INI="/var/etc/etesync-server/etesync-server.ini"
+
+
+etesync_print_uci_allow_all_ips_of() {
+ local ifstat="$(ifstatus "$1")"
+
+ for ip in $(echo "${ifstat}" | jsonfilter -e '@["ipv4-address"].*.address')
+ do echo "allowed_host_${ip//[^0-9]/_} = ${ip}"
+ done
+
+ for ip in $(echo "${ifstat}" | jsonfilter -e '@["ipv6-address"].*.address')
+ do echo "allowed_host_${ip//[^0-9A-Fa-f]/_} = [${ip}]"
+ done
+
+ for ip in $(echo "${ifstat}" | \
+ jsonfilter -e '@["ipv6-prefix-assignment"].*["local-address"].address')
+ do echo "allowed_host_${ip//[^0-9A-Fa-f]/_} = [${ip}]"
+ done
+}
+
+
+etesync_validate_global() {
+ cd /usr/share/etesync-server/ >/dev/null || return
+
+ uci_load_validate etesync_server django "global" "$1" \
+ 'secret_file:file:secret.txt' \
+ 'static_url:string:/etesync/static' \
+ 'language_code:string:en-us' \
+ 'time_zone:string:UTC' \
+ 'debug:bool:false' \
+ ;
+}
+
+
+etesync_print_global() {
+ printf "\n[global]\n"
+
+ echo "secret_file = ${secret_file}"
+ echo "static_root = /www/etesync/static" #sic!
+ echo "static_url = ${static_url}"
+ echo "language_code = ${language_code}"
+ echo "time_zone = ${time_zone}"
+ echo "debug = ${debug}"
+}
+
+
+etesync_validate_allowed_hosts() {
+ uci_load_validate etesync_server django "allowed_hosts" "$1" \
+ 'uci_allow_all_ips_of:network' \
+ 'allowed_host:host' \
+ ;
+}
+
+
+etesync_print_allowed_hosts() {
+ printf "\n[allowed_hosts]\n"
+
+ local iface
+ for iface in ${uci_allow_all_ips_of}
+ do etesync_print_uci_allow_all_ips_of "${iface}"
+ done
+
+ local host
+ for host in ${allowed_host}
+ do echo "allowed_host_${host//[^0-9A-Za-z]/_} = ${host}"
+ done
+}
+
+
+etesync_validate_database() {
+ cd /usr/share/etesync-server/ >/dev/null || return
+
+ uci_load_validate etesync_server django "database" "$1" \
+ 'engine:hostname:django.db.backends.sqlite3' \
+ 'name:file:db.sqlite3' \
+ ;
+}
+
+
+etesync_print_database() {
+ printf "\n[database]\n"
+
+ echo "engine = ${engine}"
+ echo "name = ${name}"
+}
+
+
+etesync_init() { # This must print ONLY configuration lines:
+ echo "; This file is re-created from /etc/config/etesync_server "
+ etesync_validate_global etesync_print_global
+ etesync_validate_allowed_hosts etesync_print_allowed_hosts
+ etesync_validate_database etesync_print_database
+} >"${ETESYNC_INI}"
+
+
+start_service() {
+ mkdir -p /var/etc/etesync-server/
+ etesync_init
+ logger -p 'daemon.info' -t 'etesync-server_init' 'starting ...'
+ ln -sf /etc/uwsgi/vassals/etesync-server.available \
+ /var/etc/etesync-server/uwsgi.ini
+}
+
+
+stop_service() {
+ rm -f /var/etc/etesync-server/uwsgi.ini "${ETESYNC_INI}"
+}
+
+
+reload_service() {
+ etesync_init
+ logger -p 'daemon.info' -t 'etesync-server_init' 'reloading ...'
+ kill -SIGHUP "$(cat "/var/etc/etesync-server/master.pid")" 2>/dev/null
+ #if the server is in on-demand mode, the ini files are reloaded then, too.
+}
+
+
+service_triggers() {
+ procd_open_validate
+ etesync_validate_global "$@"
+ etesync_validate_allowed_hosts "$@"
+ etesync_validate_database "$@"
+ procd_close_validate
+
+ config_load etesync_server
+ config_list_foreach "allowed_hosts" "uci_allow_all_ips_of" \
+ procd_add_reload_interface_trigger
+
+ procd_add_reload_trigger etesync_server
+}
depends on PACKAGE_fastd
default y
-config FASTD_ENABLE_METHOD_XSALSA20_POLY1305
- bool "Enable xsalsa20-poly1305 method"
- depends on PACKAGE_fastd
- default n
-
-
-config FASTD_ENABLE_CIPHER_AES128_CTR
- bool "Enable the AES128-CTR cipher"
- depends on PACKAGE_fastd
- default n
config FASTD_ENABLE_CIPHER_NULL
bool "Enable the null cipher"
include $(TOPDIR)/rules.mk
PKG_NAME:=fastd
-PKG_VERSION:=18
-PKG_RELEASE:=4
+PKG_VERSION:=19
+PKG_RELEASE:=1
PKG_MAINTAINER:=Matthias Schiffer <mschiffer@universe-factory.net>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://github.com/NeoRaider/fastd/releases/download/v$(PKG_VERSION)
-PKG_HASH:=714ff09d7bd75f79783f744f6f8c5af2fe456c8cf876feaa704c205a73e043c9
+PKG_HASH:=6054608e2103b634c9d19ecd1ae058d4ec694747047130719db180578729783a
PKG_LICENSE:=BSD-2-Clause
PKG_LICENSE_FILES:=COPYRIGHT
CONFIG_FASTD_ENABLE_METHOD_GENERIC_POLY1305 \
CONFIG_FASTD_ENABLE_METHOD_GENERIC_UMAC \
CONFIG_FASTD_ENABLE_METHOD_NULL \
- CONFIG_FASTD_ENABLE_METHOD_XSALSA20_POLY1305 \
- CONFIG_FASTD_ENABLE_CIPHER_AES128_CTR \
CONFIG_FASTD_ENABLE_CIPHER_NULL \
CONFIG_FASTD_ENABLE_CIPHER_SALSA20 \
CONFIG_FASTD_ENABLE_CIPHER_SALSA2012 \
PKG_BUILD_DEPENDS:=nacl
+PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
-DWITH_METHOD_GENERIC_POLY1305:BOOL=FALSE \
-DWITH_METHOD_GENERIC_UMAC:BOOL=FALSE \
-DWITH_METHOD_NULL:BOOL=FALSE \
- -DWITH_METHOD_XSALSA20_POLY1305:BOOL=FALSE \
-DWITH_CIPHER_AES128_CTR:BOOL=FALSE \
-DWITH_CIPHER_NULL:BOOL=FALSE \
-DWITH_CIPHER_SALSA20:BOOL=FALSE \
CMAKE_OPTIONS += -DWITH_METHOD_NULL:BOOL=TRUE
endif
-ifeq ($(CONFIG_FASTD_ENABLE_METHOD_XSALSA20_POLY1305),y)
-CMAKE_OPTIONS += -DWITH_METHOD_XSALSA20_POLY1305:BOOL=TRUE
-endif
-
-
-ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_AES128_CTR),y)
-CMAKE_OPTIONS += -DWITH_CIPHER_AES128_CTR:BOOL=TRUE
-endif
ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_NULL),y)
CMAKE_OPTIONS += -DWITH_CIPHER_NULL:BOOL=TRUE
+++ /dev/null
-From 9710132c04cd378bd36f16a2a3d98d9c4c5fdbac Mon Sep 17 00:00:00 2001
-From: David Bauer <mail@david-bauer.net>
-Date: Thu, 25 Jul 2019 18:51:25 +0200
-Subject: [PATCH] resolve: fix segmentation fault with musl >1.1.20
-
-When compiled with musl >1.1.20, fastd will crash in case it can't
-resolve a peers hostname. This is due to a changed implementation of
-freeaddrinfo in musl 1.1.21 onwards.
-
-This segfault is fixed by not calling freeaddrinfo in case the supplied
-pointer is null.
-
-Signed-off-by: David Bauer <mail@david-bauer.net>
----
- src/resolve.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/resolve.c b/src/resolve.c
-index 9bdfa1c..bfd2a59 100644
---- a/src/resolve.c
-+++ b/src/resolve.c
-@@ -104,7 +104,9 @@ static void * resolve_peer(void *varg) {
-
- fastd_async_enqueue(ASYNC_TYPE_RESOLVE_RETURN, ret, sizeof(fastd_async_resolve_return_t) + n_addr*sizeof(fastd_peer_address_t));
-
-- freeaddrinfo(res);
-+ if (res)
-+ freeaddrinfo(res);
-+
- free(arg->hostname);
- free(arg);
-
---
-2.20.1
-
+++ /dev/null
-From c29b4b0e3cc5bf68129fd0f94f424950b7888deb Mon Sep 17 00:00:00 2001
-Message-Id: <c29b4b0e3cc5bf68129fd0f94f424950b7888deb.1567630068.git.mschiffer@universe-factory.net>
-From: Wilfried Klaebe <wklaebe@users.noreply.github.com>
-Date: Sat, 31 Aug 2019 21:44:13 +0200
-Subject: [PATCH] doc: examples/openwrt: fix init script, wasn't working with
- two VPNs
-
-If two VPNs were configured via uci, the init script complained about
-the peer group of its peers not matching its net.
----
- doc/examples/openwrt/fastd.init | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/doc/examples/openwrt/fastd.init b/doc/examples/openwrt/fastd.init
-index 15737b403ec2..4ba69ece9887 100644
---- a/doc/examples/openwrt/fastd.init
-+++ b/doc/examples/openwrt/fastd.init
-@@ -233,7 +233,7 @@ generate_peer_group_config() {
- config_get group_parent "$group" parent
- [ "$parent" = "$group_parent" ] || return 0
-
-- if [ "$net" != "$peer_net" ]; then
-+ if [ "$net" != "$group_net" ]; then
- [ -z "$parent" ] || error "warning: the parent of peer group '$group' doesn't match its net, the peer group will be ignored"
- return 0
- fi
---
-2.23.0
-
PKG_NAME:=knot
PKG_VERSION:=2.9.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://secure.nic.cz/files/knot-dns/
CONFIGURE_ARGS += \
--enable-recvmmsg=no \
+ --enable-cap-ng=no \
--disable-fastparser \
--without-libidn \
--with-rundir=/var/run/knot \
--- /dev/null
+From 442633ae37f8a4e1164a2db3ad6b55bc738ba0b2 Mon Sep 17 00:00:00 2001
+From: Daniel Salzman <daniel.salzman@nic.cz>
+Date: Fri, 22 May 2020 12:50:29 +0200
+Subject: [PATCH] configure: allow to manually disable POSIX capabilities
+
+---
+ configure.ac | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 47772799e..a08ca8532 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -554,7 +554,13 @@ AS_IF([test "$enable_utilities" = "yes"], [
+ ])
+ ]) # Knot DNS utilities dependencies
+
++AC_ARG_ENABLE([cap-ng],
++ AS_HELP_STRING([--enable-cap-ng=auto|no], [enable POSIX capabilities [default=auto]]),
++ [enable_cap_ng="$enableval"], [enable_cap_ng=auto])
++
+ AS_IF([test "$enable_daemon" = "yes"], [
++
++AS_IF([test "$enable_cap_ng" != "no"],[
+ PKG_CHECK_MODULES([cap_ng], [cap-ng], [enable_cap_ng=yes], [
+ enable_cap_ng=no
+ AC_CHECK_HEADER([cap-ng.h], [
+@@ -570,7 +576,7 @@ AS_IF([test "$enable_daemon" = "yes"], [
+ ], [
+ enable_cap_ng=no
+ cap_ng_LIBS=
+-])
++])])
+
+ AS_IF([test "$enable_cap_ng" = yes],
+ [AC_DEFINE([ENABLE_CAP_NG], [1], [POSIX capabilities available])]
+--
+2.17.1
+
include $(TOPDIR)/rules.mk
PKG_NAME:=libreswan
-PKG_VERSION:=3.31
-PKG_RELEASE:=1
+PKG_VERSION:=3.32
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://download.libreswan.org/
-PKG_HASH:=4ad9732b30d07a9f4b838fb5580fa11b7b65e073bf97665591ee611bc2d6b8f3
+PKG_HASH:=236b57fee8f562302c54f2b16d8a839a9039fcb5893668e61b398ec6b179432e
PKG_MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
+kmod-crypto-aead +kmod-crypto-authenc +kmod-crypto-gcm \
+kmod-crypto-hash +kmod-crypto-rng +kmod-ip-vti +kmod-ipsec \
+kmod-ipsec4 +kmod-ipt-ipsec +libevent2 +libevent2-pthreads \
- +libldns +librt +libunbound-heavy +nss-utils +nspr
+ +libldns +librt +libunbound-heavy +nss-utils +nspr +libcap-ng
PROVIDES:=openswan
CONFLICTS:=strongswan
TITLE+= IPsec Server
/etc/ipsec.conf
/etc/ipsec.secrets
endef
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
+TARGET_CFLAGS += -flto
MAKE_FLAGS+= \
WERROR_CFLAGS=" " \
+ NSS_REQ_AVA_COPY=false \
USE_LINUX_AUDIT=false \
USE_LABELED_IPSEC=false \
USE_NM=false \
+ USE_NSS_KDF=true \
+ USE_NSS_PRF=true \
USE_LIBCURL=false \
USE_GLIBC_KERN_FLIP_HEADERS=true \
USE_XAUTHPAM=false \
- USE_FIPSCHECK=false \
- USE_LIBCAP_NG=false \
+ USE_LIBCAP_NG=true \
USE_SYSTEMD_WATCHDOG=false \
USE_SECCOMP=false\
INC_USRLOCAL="/usr" \
FINALRUNDIR="/var/run/pluto" \
+ MODPROBEARGS="-q" \
ARCH="$(LINUX_KARCH)" \
ifdef CONFIG_LINUX_4_14
checkconfig() {
${IPSEC_BIN} addconn --checkconfig || return 1
+ mkdir -p /var/run/pluto
}
start_service() {
--- /dev/null
+From db7715407efa43cd2a66caed67c02d8f7bb90b35 Mon Sep 17 00:00:00 2001
+From: Paul Wouters <pwouters@redhat.com>
+Date: Tue, 12 May 2020 12:56:38 -0400
+Subject: [PATCH] nss: move NSS_PKCS11_2_0_COMPAT define to
+ ike_alg_encrypt_nss_gcm_ops.c
+
+It needs to go before any nss includes are done, and those includes are
+all over the place. But CK_GCM_PARAMS is only used in one file, so
+just define it there instead before the nss includes.
+---
+ lib/libswan/ike_alg_encrypt_nss_gcm_ops.c | 6 ++++++
+ 1 files changed, 6 insertions(+), 0 deletions(-)
+
+diff --git a/lib/libswan/ike_alg_encrypt_nss_gcm_ops.c b/lib/libswan/ike_alg_encrypt_nss_gcm_ops.c
+index 93a027089a..571913cc1e 100644
+--- a/lib/libswan/ike_alg_encrypt_nss_gcm_ops.c
++++ b/lib/libswan/ike_alg_encrypt_nss_gcm_ops.c
+@@ -16,6 +16,12 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+
++/*
++ * Special advise from Bob Relyea - needs to go before any nss include
++ *
++ */
++#define NSS_PKCS11_2_0_COMPAT 1
++
+ #include "lswlog.h"
+ #include "lswnss.h"
+ #include "prmem.h"
--- /dev/null
+--- a/programs/pluto/kernel_xfrm.c 2020-05-16 19:12:30.107226478 +0300
++++ b/programs/pluto/kernel_xfrm.c 2020-05-16 19:20:25.735522574 +0300
+@@ -2759,7 +2759,8 @@
+ LOG_ERRNO(errno, "\"%s\"", proc_f);
+ }
+ } else {
+- LOG_ERRNO(errno, "could not stat \"%s\"", proc_f);
++ DBG(DBG_KERNEL, DBG_log("starting without ipv6 support!"));
++ disable_ipv6 = 1;
+ }
+
+ if (disable_ipv6 == 1) {
--- /dev/null
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=netsniff-ng
+PKG_VERSION:=0.6.7
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/netsniff-ng/netsniff-ng/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=030b0554206b43c5883e48a63575fb65d7835e275333372f55f7d615d419da05
+
+PKG_MAINTAINER:=Toni Uhlig <matzeton@googlemail.com>
+PKG_LICENSE:=GPL-2.0-or-later
+PKG_LICENSE_FILES:=COPYING
+
+PKG_USE_MIPS16:=0
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/netsniff-ng
+ SECTION:=net
+ CATEGORY:=Network
+ DEPENDS:=+libpthread +libpcap +libncurses +zlib +liburcu +libsodium +libnetfilter-conntrack
+ TITLE:=netsniff-ng
+ URL:=https://github.com/netsniff-ng/netsniff-ng
+endef
+
+define Package/netsniff-ng/description
+ netsniff-ng is a free, performant Linux network analyzer and
+ networking toolkit. If you will, the Swiss army knife for network
+ packets.
+endef
+
+define Build/Configure
+ ( cd $(PKG_BUILD_DIR); \
+ CC="$(TARGET_CC)" \
+ LD="$(TARGET_LD)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" \
+ CROSS_COMPILE="$(REAL_GNU_TARGET_NAME)-" \
+ ./configure --prefix=/usr --disable-geoip --disable-libnl )
+endef
+
+define Build/Compile
+ $(MAKE) -C $(PKG_BUILD_DIR) Q= \
+ CC="$(TARGET_CC)" \
+ LD="$(TARGET_LD)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" \
+ CROSS_COMPILE="$(REAL_GNU_TARGET_NAME)-"
+endef
+
+define Package/netsniff-ng/install
+ $(INSTALL_DIR) $(1)/etc/netsniff-ng
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(CP) $(PKG_BUILD_DIR)/ether.conf $(1)/etc/netsniff-ng
+ $(CP) $(PKG_BUILD_DIR)/tcp.conf $(1)/etc/netsniff-ng
+ $(CP) $(PKG_BUILD_DIR)/udp.conf $(1)/etc/netsniff-ng
+ $(CP) $(PKG_BUILD_DIR)/oui.conf $(1)/etc/netsniff-ng
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/netsniff-ng/netsniff-ng $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/trafgen/trafgen $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/astraceroute/astraceroute $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/flowtop/flowtop $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/ifpps/ifpps $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/bpfc/bpfc $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/curvetun/curvetun $(1)/usr/sbin/
+endef
+
+$(eval $(call BuildPackage,netsniff-ng))
--- /dev/null
+From 9da66f0925818ddb12127bfcb46acf79e354cabc Mon Sep 17 00:00:00 2001
+From: Toni Uhlig <matzeton@googlemail.com>
+Date: Mon, 18 May 2020 11:36:56 +0200
+Subject: [PATCH] configure script honors (C|LD)FLAGS
+
+Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
+---
+ configure | 32 ++++++++++++++++----------------
+ 1 file changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/configure b/configure
+index 510826a..ceda000 100755
+--- a/configure
++++ b/configure
+@@ -221,8 +221,8 @@ EOF
+ NACL_LIB="nacl"
+ fi
+
+- LDFLAGS="-L $NACL_LIB_DIR"
+- CFLAGS="-I $NACL_INC_DIR"
++ LDFLAGS="$LDFLAGS -L $NACL_LIB_DIR"
++ CFLAGS="$CFLAGS -I $NACL_INC_DIR"
+
+ $CC $CFLAGS $LDFLAGS -o $TMPDIR/nacltest $TMPDIR/nacltest.c >> config.log 2>&1
+ if [ ! -x $TMPDIR/nacltest ] ; then
+@@ -268,7 +268,7 @@ int main(void)
+ }
+ EOF
+
+- $CC \
++ $CC $CFLAGS $LDFLAGS \
+ $($PKG_CONFIG --cflags libnl-3.0 2>> config.log) \
+ $($PKG_CONFIG --cflags libnl-genl-3.0 2>> config.log) \
+ -o $TMPDIR/libnltest \
+@@ -315,7 +315,7 @@ int main(void)
+ }
+ EOF
+
+- $CC \
++ $CC $CFLAGS $LDFLAGS \
+ $($PKG_CONFIG --cflags libnl-route-3.0 2>> config.log) \
+ -o $TMPDIR/libnlroutetest \
+ $TMPDIR/libnlroutetest.c \
+@@ -350,7 +350,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/tpacketv3test $TMPDIR/tpacketv3test.c >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/tpacketv3test $TMPDIR/tpacketv3test.c >> config.log 2>&1
+ if [ ! -x $TMPDIR/tpacketv3test ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -383,7 +383,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/tpacketv2test $TMPDIR/tpacketv2test.c >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/tpacketv2test $TMPDIR/tpacketv2test.c >> config.log 2>&1
+ if [ ! -x $TMPDIR/tpacketv2test ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -410,7 +410,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/fopencookietest $TMPDIR/fopencookietest.c >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/fopencookietest $TMPDIR/fopencookietest.c >> config.log 2>&1
+ if [ ! -x $TMPDIR/fopencookietest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -433,7 +433,7 @@ int main(void)
+ }
+ EOF
+
+- $CC \
++ $CC $CFLAGS $LDFLAGS \
+ $($PKG_CONFIG --cflags ncurses 2>> config.log) \
+ -o $TMPDIR/ncursestest $TMPDIR/ncursestest.c \
+ $($PKG_CONFIG --libs ncurses 2>> config.log \
+@@ -476,7 +476,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/geoiptest $TMPDIR/geoiptest.c -lGeoIP >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/geoiptest $TMPDIR/geoiptest.c -lGeoIP >> config.log 2>&1
+ if [ ! -x $TMPDIR/geoiptest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -503,7 +503,7 @@ int main(void)
+ }
+ EOF
+
+- $CC \
++ $CC $CFLAGS $LDFLAGS \
+ $($PKG_CONFIG --cflags libnetfilter_conntrack 2>> config.log) \
+ -o $TMPDIR/nfcttest \
+ $TMPDIR/nfcttest.c \
+@@ -536,7 +536,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/ztest $TMPDIR/ztest.c -lz >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/ztest $TMPDIR/ztest.c -lz >> config.log 2>&1
+ if [ ! -x $TMPDIR/ztest ] ; then
+ echo "[NO]"
+ echo "CONFIG_LIBZ=0" >> Config
+@@ -564,7 +564,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/urcutest $TMPDIR/urcutest.c -lurcu >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/urcutest $TMPDIR/urcutest.c -lurcu >> config.log 2>&1
+ if [ ! -x $TMPDIR/urcutest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -588,7 +588,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/pcaptest $TMPDIR/pcaptest.c -lpcap >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/pcaptest $TMPDIR/pcaptest.c -lpcap >> config.log 2>&1
+ if [ ! -x $TMPDIR/pcaptest ] ; then
+ echo "[NO]"
+ echo "CONFIG_LIBPCAP=0" >> Config
+@@ -638,7 +638,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/hwtstest $TMPDIR/hwtstest.c >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/hwtstest $TMPDIR/hwtstest.c >> config.log 2>&1
+ if [ ! -x $TMPDIR/hwtstest ] ; then
+ echo "[NO]"
+ echo "CONFIG_HWTSTAMP=0" >> Config
+@@ -663,7 +663,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/clitest $TMPDIR/clitest.c -lcli >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/clitest $TMPDIR/clitest.c -lcli >> config.log 2>&1
+ if [ ! -x $TMPDIR/clitest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+@@ -687,7 +687,7 @@ int main(void)
+ }
+ EOF
+
+- $CC -o $TMPDIR/nettest $TMPDIR/nettest.c -lnet >> config.log 2>&1
++ $CC $CFLAGS $LDFLAGS -o $TMPDIR/nettest $TMPDIR/nettest.c -lnet >> config.log 2>&1
+ if [ ! -x $TMPDIR/nettest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+--
+2.20.1
+
--- /dev/null
+From 505dde6ac50689ec2ba50a1f0087eb8a9ff1f419 Mon Sep 17 00:00:00 2001
+From: Toni Uhlig <matzeton@googlemail.com>
+Date: Mon, 18 May 2020 20:12:17 +0200
+Subject: [PATCH] fix ncurses check during configure
+
+Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
+---
+ configure | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/configure b/configure
+index ceda000..f843d64 100755
+--- a/configure
++++ b/configure
+@@ -434,11 +434,8 @@ int main(void)
+ EOF
+
+ $CC $CFLAGS $LDFLAGS \
+- $($PKG_CONFIG --cflags ncurses 2>> config.log) \
+ -o $TMPDIR/ncursestest $TMPDIR/ncursestest.c \
+- $($PKG_CONFIG --libs ncurses 2>> config.log \
+- || echo '-lncurses' ) \
+- >> config.log 2>&1
++ -lncurses 2>> config.log
+ if [ ! -x $TMPDIR/ncursestest ] ; then
+ echo "[NO]"
+ MISSING_DEFS=1
+--
+2.20.1
+
--- /dev/null
+From 0f1653c82a06567ccb151e17f1fe3ff3c3b465f3 Mon Sep 17 00:00:00 2001
+From: Toni Uhlig <matzeton@googlemail.com>
+Date: Mon, 18 May 2020 20:27:32 +0200
+Subject: [PATCH] removed flowtop pkg-config usage for ncurses
+
+Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
+---
+ flowtop/Makefile | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/flowtop/Makefile b/flowtop/Makefile
+index e001ce8..aeee049 100644
+--- a/flowtop/Makefile
++++ b/flowtop/Makefile
+@@ -1,7 +1,6 @@
+ flowtop-libs = -lurcu \
+ $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs libnetfilter_conntrack 2> /dev/null ) \
+- $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs ncurses 2> /dev/null \
+- || echo '-lncurses') \
++ -lncurses \
+ $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs tinfo 2> /dev/null ) \
+ -lpthread
+
+@@ -30,8 +29,7 @@ flowtop-objs += geoip.o \
+ ioops.o
+ endif
+
+-flowtop-eflags = $(shell $(PKG_CONFIG) --cflags ncurses) \
+- $(shell $(PKG_CONFIG) --cflags libnetfilter_conntrack)
++flowtop-eflags = $(shell $(PKG_CONFIG) --cflags libnetfilter_conntrack)
+
+ flowtop-confs = tcp.conf \
+ udp.conf \
+--
+2.20.1
+
include $(TOPDIR)/rules.mk
PKG_NAME:=nextdns
-PKG_VERSION:=1.5.7
+PKG_VERSION:=1.5.8
PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/nextdns/nextdns.git
-PKG_MIRROR_HASH:=5fc253268483c565e6a984305b2703396046d26fb69dff4463ee8b65befd2063
+PKG_MIRROR_HASH:=c1783b577e790665d05b24dbcdd32c371965640fae5afac89098f47ab599a628
PKG_MAINTAINER:=Olivier Poitrey <rs@nextdns.io>
PKG_LICENSE:=MIT
#
PKG_NAME:=openvswitch
PKG_VERSION:=$(ovs_version)
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.openvswitch.org/releases/
PKG_HASH:=dd5f727427e36cab22bdeae61529d8c8fccacc53d968cfa7658f7f935ddda531
PROVIDES:=$(call ovs_kmod_package_provides,$(1))
KCONFIG:=$(ovs_kmod_$(1)_kconfig)
FILES:=$(ovs_kmod_$(1)_files)
- AUTOLOAD:=$(call AutoProbe,$(foreach m,$(ovs_kmod_$(1)_files),$(patsubst %.ko,%,$(basename $(m)))))
+ AUTOLOAD:=$(call AutoProbe,$(foreach m,$(ovs_kmod_$(1)_files),$(notdir $(patsubst %.ko,%,$(basename $(m))))))
endef
ovs_kmod_packages+=$(call ovs_kmod_package_name,$(1))
include $(TOPDIR)/rules.mk
PKG_NAME:=seafile-ccnet
-PKG_VERSION:=7.1.3
-PKG_RELEASE:=2
+PKG_VERSION:=7.1.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/haiwen/ccnet-server/tar.gz/v$(PKG_VERSION)-server?
-PKG_HASH:=148d9b1af9218943de310f3f2e29e542e7279dbfba307a1cdd894bf8b7faf2e8
+PKG_HASH:=b46508a686e7fe8eb9e1515e5384c7d9aca25cf596ef4b8383646e587f1032eb
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>, Jeffery To <jeffery.to@gmail.com>
PKG_LICENSE:=AGPL-3.0-only
include $(TOPDIR)/rules.mk
PKG_NAME:=seafile-seahub
-PKG_VERSION:=7.1.3
-PKG_RELEASE:=2
+PKG_VERSION:=7.1.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/haiwen/seahub/tar.gz/v$(PKG_VERSION)-server?
-PKG_HASH:=a2cf1ad1ff357b06c112f3f80e2e4a2ef109813496c96afc309449f6915e8797
+PKG_HASH:=921ef4373311c06c1192975a294d7d38c12ac34381a7df19542391fc1d810baf
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>, Jeffery To <jeffery.to@gmail.com>
PKG_LICENSE:=Apache-2.0
os.path.join(PROJECT_ROOT, 'seahub/templates'),
],
'APP_DIRS': True,
-@@ -630,7 +630,7 @@ CAPTCHA_IMAGE_SIZE = (90, 42)
+@@ -633,7 +633,7 @@ CAPTCHA_IMAGE_SIZE = (90, 42)
ENABLE_THUMBNAIL = True
# Absolute filesystem path to the directory that will hold thumbnail files.
if os.path.exists(SEAHUB_DATA_ROOT):
THUMBNAIL_ROOT = os.path.join(SEAHUB_DATA_ROOT, 'thumbnail')
else:
-@@ -793,7 +793,7 @@ except ImportError:
+@@ -829,7 +829,7 @@ except ImportError:
pass
else:
# In server release, sqlite3 db file is <topdir>/seahub.db
include $(TOPDIR)/rules.mk
PKG_NAME:=seafile-server
-PKG_VERSION:=7.1.3
-PKG_RELEASE:=4
+PKG_VERSION:=7.1.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/haiwen/seafile-server/tar.gz/v$(PKG_VERSION)-server?
-PKG_HASH:=79f7722a34c304adb78462194e64d6a610bd5ee40def37f4e4cdf5befed44fcd
+PKG_HASH:=cc5aaf76044f907758a75a43e321fef499482d7b57d9e61d0297a4bba66dcce4
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>, Jeffery To <jeffery.to@gmail.com>
PKG_LICENSE:=AGPL-3.0-only
--- a/lib/repo.vala
+++ b/lib/repo.vala
-@@ -34,7 +34,7 @@ public class Repo : Object {
- // data format version
- public int version { get; set; }
-
-- public int last_modify { get; set; }
-+ public int64 last_modify { get; set; }
- public int64 size { get; set; }
- public int64 file_count { get; set; }
- public string last_modifier { get; set; }
-@@ -46,7 +46,7 @@ public class Repo : Object {
- public string repo_id { get; set; }
- public string repo_name { get; set; }
- public string repo_desc { get; set; }
-- public int last_modified { get; set; }
-+ public int64 last_modified { get; set; }
-
- // Section 2: Encryption related
- // Members in this section should be set for every Repo object
@@ -70,7 +70,7 @@ public class Repo : Object {
get { return _relay_id; }
set { _relay_id = value; }
PKG_NAME:=shorewall-core
PKG_MAJOR_MINOR_VERSION:=5.2
PKG_BUGFIX_MAJOR_VERSION:=4
-PKG_BUGFIX_MINOR_VERSION:=.4
+PKG_BUGFIX_MINOR_VERSION:=.5
PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
PKG_RELEASE:=1
http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=2044014ddf2217c040c20fa1ecc1af809c5a28d1b6cbe4b9f69b5c01e5d18832
+PKG_HASH:=78f1d62d65439704896daa2439b7053934b2dd42427ccb56c4262da90183011b
PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=shorewall-lite
PKG_MAJOR_MINOR_VERSION:=5.2
PKG_BUGFIX_MAJOR_VERSION:=4
-PKG_BUGFIX_MINOR_VERSION:=.4
+PKG_BUGFIX_MINOR_VERSION:=.5
PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
PKG_RELEASE:=1
http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=fd1e059eca9f442130db9c42efb32729c728f954dd2d741bd3d854cf04e90627
+PKG_HASH:=7488f9daec34958307193fde4fff403b1c102fabab31f7d4d7e8f11d8bbfaf1a
PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=shorewall
PKG_MAJOR_MINOR_VERSION:=5.2
PKG_BUGFIX_MAJOR_VERSION:=4
-PKG_BUGFIX_MINOR_VERSION:=.4
+PKG_BUGFIX_MINOR_VERSION:=.5
PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
PKG_RELEASE:=1
http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=e6f65d2fc73d04c4667ca15b218a0372b717092b2fe24c500cad8d6363af0b3a
+PKG_HASH:=df4e8639b9dab03cb4e792f7b0760c43583340e3302125f25b048fc0248b94af
PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=shorewall6-lite
PKG_MAJOR_MINOR_VERSION:=5.2
PKG_BUGFIX_MAJOR_VERSION:=4
-PKG_BUGFIX_MINOR_VERSION:=.4
+PKG_BUGFIX_MINOR_VERSION:=.5
PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
PKG_RELEASE:=1
http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=ff8730b4ee00fcb958bd23b66ed54f27836c0943bd90335f0a520b54730e97dc
+PKG_HASH:=aeb56cb9616bef87894f7bc06e5128fe0456dc6c7c3514725d9126085194b9b2
PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=shorewall6
PKG_MAJOR_MINOR_VERSION:=5.2
PKG_BUGFIX_MAJOR_VERSION:=4
-PKG_BUGFIX_MINOR_VERSION:=.4
+PKG_BUGFIX_MINOR_VERSION:=.5
PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
PKG_RELEASE:=1
http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=8b7dc08b1e6dc86920bb68ab7266d4945af062e2bebfc5222537003bd199774b
+PKG_HASH:=d35dc296fe9c3b815f2c8d0b07c725dc1ca55f435672cb2756e2e1614d0b0645
PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
PKG_LICENSE:=GPL-2.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=unbound
-PKG_VERSION:=1.10.0
-PKG_RELEASE:=2
+PKG_VERSION:=1.10.1
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://nlnetlabs.nl/downloads/unbound
-PKG_HASH:=152f486578242fe5c36e89995d0440b78d64c05123990aae16246b7f776ce955
+PKG_HASH:=b73677c21a71cf92f15cc8cfe76a3d875e40f65b6150081c39620b286582d536
PKG_MAINTAINER:=Eric Luehrsen <ericluehrsen@gmail.com>
PKG_LICENSE:=BSD-3-Clause
PKG_NAME:=mpd
PKG_VERSION:=0.21.23
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.musicpd.org/download/mpd/0.21/
TITLE:=Music Player Daemon
URL:=https://www.musicpd.org/
DEPENDS:= +zlib +libcurl +libpthread +libmpdclient +libstdcpp $(ICONV_DEPENDS) \
- +AUDIO_SUPPORT:alsa-lib +boost +libexpat +libflac +libfaad2 +USE_UCLIBC:icu
+ +AUDIO_SUPPORT:alsa-lib +boost +libexpat +libflac +libid3tag +libfaad2 +USE_UCLIBC:icu
endef
define Package/mpd/Default/description
define Package/mpd-full
$(call Package/mpd/Default)
TITLE+= (full)
- DEPENDS+= +libffmpeg +libid3tag +libvorbis +libmms +libupnp +libshout +pulseaudio-daemon +yajl
+ DEPENDS+= +libffmpeg +libvorbis +libmms +libupnp +libshout +pulseaudio-daemon +yajl
PROVIDES:=mpd
VARIANT:=full
endef
-Dbzip2=disabled \
-Diso9660=disabled \
-Dzzip=disabled \
+ -Did3tag=enabled \
-Dchromaprint=disabled \
-Dadplug=disabled \
-Daudiofile=disabled \
-Dupnp=enabled \
-Dmms=enabled \
-Dsoundcloud=enabled \
- -Did3tag=enabled \
-Dffmpeg=enabled \
-Dmad=disabled \
-Dtremor=disabled \
-Dupnp=disabled \
-Dmms=disabled \
-Dsoundcloud=disabled \
- -Did3tag=disabled \
-Dffmpeg=disabled \
-Dmad=enabled \
-Dtremor=enabled \
include $(TOPDIR)/rules.mk
PKG_NAME:=upmpdcli
-PKG_VERSION:=1.4.7
-PKG_RELEASE:=2
+PKG_VERSION:=1.4.9
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads
-PKG_HASH:=55dec356c98e16f00b1e547f9f4a1c03756317102e91982f93eca8cc4eda115e
+PKG_HASH:=ace5a3166891109d2a874f21306986857ee2620230a77751ed6209f7b5cc9c58
PKG_MAINTAINER:=Petko Bordjukov <bordjukov@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_NAME:=collectd
PKG_VERSION:=5.11.0
-PKG_RELEASE:=4
+PKG_RELEASE:=5
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://collectd.org/files/ \
mq) handle_mq "$ifc"
;;
- *) echo "Unknown qdisc type" 1>&2
+ *) echo "Unknown qdisc type '$qdisc' on interface '$ifc'" 1>&2
;;
esac
json_cleanup
GO_PKG_INSTALL_ALL:=1
MAKE_PATH:=$(GO_PKG_WORK_DIR_NAME)/build/src/$(GO_PKG)
-MAKE_VARS += $(call GoPackage/Environment)
+MAKE_VARS += $(GO_PKG_VARS)
MAKE_FLAGS += \
DESTDIR="$(PKG_INSTALL_DIR)" \
VERSION=$(PKG_VERSION) \
define Build/Compile
( \
- export $(call GoPackage/Environment) \
+ export $(GO_PKG_VARS) \
GITCOMMIT=$(PKG_SOURCE_VERSION) \
DOCKER_GITCOMMIT=$(PKG_SOURCE_VERSION) \
DOCKER_BUILDTAGS='$(BUILDTAGS)' \
--- /dev/null
+#
+# Copyright (C) 2006-2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+include $(INCLUDE_DIR)/kernel.mk
+
+PKG_NAME:=fuse
+PKG_VERSION:=2.9.9
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/libfuse/libfuse/releases/download/$(PKG_NAME)-$(PKG_VERSION)
+PKG_HASH:=d0e69d5d608cc22ff4843791ad097f554dd32540ddc9bed7638cc6fea7c1b4b5
+
+PKG_MAINTAINER:=
+PKG_CPE_ID:=cpe:/a:fuse_project:fuse
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/fuse/Default
+ TITLE:=FUSE
+ URL:=https://github.com/libfuse/libfuse
+endef
+
+define Package/fuse/Default/description
+ FUSE (Filesystem in UserSpacE)
+endef
+
+define Package/fuse-utils
+$(call Package/fuse/Default)
+ SECTION:=utils
+ CATEGORY:=Utilities
+ DEPENDS:=+libfuse
+ TITLE+= (utilities)
+ SUBMENU:=Filesystem
+ LICENSE:=GPL-2.0-only
+ LICENSE_FILES:=COPYING
+endef
+
+define Package/fuse-utils/description
+$(call Package/fuse/Default/description)
+ This package contains the FUSE utilities.
+ - fusermount
+ - ulockmgr_server
+endef
+
+define Package/libfuse
+$(call Package/fuse/Default)
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE+= (library)
+ DEPENDS:=+kmod-fuse +libpthread
+ SUBMENU:=Filesystem
+ ABI_VERSION:=1
+ LICENSE:=LGPL-2.1-only
+ LICENSE_FILES:=COPYING.LIB
+endef
+
+define Package/libfuse/description
+$(call Package/fuse/Default/description)
+ This package contains the FUSE shared libraries, needed by other programs.
+ - libfuse
+ - libulockmgr
+endef
+
+# generic args
+CONFIGURE_ARGS += \
+ --enable-shared \
+ --enable-static \
+ --enable-lib \
+ --enable-util \
+ --disable-rpath \
+ --disable-example \
+ --disable-mtab
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/{fuse,fuse.h,ulockmgr.h} $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{fuse,ulockmgr}.{a,so*} $(1)/usr/lib/
+ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/fuse.pc $(1)/usr/lib/pkgconfig/
+ $(SED) 's,-I$$$${includedir}/fuse,,g' $(1)/usr/lib/pkgconfig/fuse.pc
+ $(SED) 's,-L$$$${libdir},,g' $(1)/usr/lib/pkgconfig/fuse.pc
+endef
+
+define Package/fuse-utils/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(CP) $(PKG_INSTALL_DIR)/sbin/mount.fuse $(1)/sbin/
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(CP) $(PKG_INSTALL_DIR)/usr/bin/{fusermount,ulockmgr_server} $(1)/usr/bin/
+endef
+
+define Package/libfuse/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{fuse,ulockmgr}.so.* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,fuse-utils))
+$(eval $(call BuildPackage,libfuse))
--- /dev/null
+--- a/include/fuse.h
++++ b/include/fuse.h
+@@ -32,6 +32,7 @@
+ #include <sys/stat.h>
+ #include <sys/statvfs.h>
+ #include <sys/uio.h>
++#include <sys/file.h>
+
+ #ifdef __cplusplus
+ extern "C" {
--- /dev/null
+--- a/util/Makefile.in
++++ b/util/Makefile.in
+@@ -736,7 +736,7 @@ mount_util.c: $(top_srcdir)/lib/mount_ut
+
+ install-exec-hook:
+ -chmod u+s $(DESTDIR)$(bindir)/fusermount
+- @if test ! -e $(DESTDIR)/dev/fuse; then \
++ -@if test ! -e $(DESTDIR)/dev/fuse; then \
+ $(MKDIR_P) $(DESTDIR)/dev; \
+ echo "mknod $(DESTDIR)/dev/fuse -m 0666 c 10 229 || true"; \
+ mknod $(DESTDIR)/dev/fuse -m 0666 c 10 229 || true; \
--- /dev/null
+From 914871b20a901e3e1e981c92bc42b1c93b7ab81b Mon Sep 17 00:00:00 2001
+From: Riku Voipio <riku.voipio@linaro.org>
+Date: Thu, 07 Feb 2013 11:04:21 +0000
+Subject: fuse_kernel.h: clean includes
+
+Use <linux/types.h> for linux and define types used for other operating systems
+using <stdint.h> types.
+---
+(limited to 'include/fuse_kernel.h')
+
+--- a/include/fuse_kernel.h
++++ b/include/fuse_kernel.h
+@@ -88,12 +88,16 @@
+ #ifndef _LINUX_FUSE_H
+ #define _LINUX_FUSE_H
+
+-#include <sys/types.h>
++#ifdef __linux__
++#include <linux/types.h>
++#else
++#include <stdint.h>
+ #define __u64 uint64_t
+ #define __s64 int64_t
+ #define __u32 uint32_t
+ #define __s32 int32_t
+ #define __u16 uint16_t
++#endif
+
+ /*
+ * Version negotiation:
select BUSYBOX_CONFIG_XZ
select BUSYBOX_CONFIG_GETOPT
select BUSYBOX_CONFIG_FEATURE_GETOPT_LONG
+ select BUSYBOX_CONFIG_MOUNTPOINT
help
Select needed busybox options for lxc-create utility. This include XZ tar
compression, long option support for tar and built-in getopt support.
#
# Copyright (C) 2013-2015 OpenWrt.org
+# Copyright (C) 2020 Sartura
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=lxc
-PKG_VERSION:=2.1.1
-PKG_RELEASE:=5
+PKG_VERSION:=4.0.2
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://linuxcontainers.org/downloads/lxc/
-PKG_HASH:=68663a67450a8d6734e137eac54cc7077209fb15c456eec401a2c26e6386eff6
+PKG_HASH:=ca336dcdf303fea5ff231d89a9b6278b061c4cffb14f0db0a71a15bdd95a5cb0
-PKG_LICENSE:=LGPL-2.1-or-later BSD-2-Clause GPL-2.0
PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr>
+PKG_LICENSE:=LGPL-2.1-or-later BSD-2-Clause GPL-2.0
-PKG_BUILD_DEPENDS:=lua
-PKG_BUILD_PARALLEL:=1
-
-PKG_INSTALL:=1
PKG_FIXUP:=autoreconf
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+PKG_USE_MIPS16:=0
include $(INCLUDE_DIR)/package.mk
SECTION:=utils
CATEGORY:=Utilities
TITLE:=LXC userspace tools
- URL:=http://lxc.sourceforge.net/
+ URL:=https://linuxcontainers.org/
+ DEPENDS:=lxc
endef
define Package/lxc
$(call Package/lxc/Default)
+ DEPENDS:=@!arc
MENU:=1
endef
define Package/lxc-auto
$(call Package/lxc/Default)
TITLE:= (initscript)
- DEPENDS:=+lxc-start +lxc-stop
+ DEPENDS+=+lxc-start +lxc-stop
endef
define Package/lxc-auto/description
LXC is the userspace control package for Linux Containers, a lightweight
virtual system mechanism sometimes described as "chroot on steroids".
- This package adds and initscript for starting and stopping the containers
+ This package adds an initscript for starting and stopping the containers
on boot and shutdown.
endef
define Package/lxc-unprivileged
$(call Package/lxc/Default)
TITLE:=Helper script for unprivileged containers support
- DEPENDS:=+shadow-utils +shadow-newuidmap +shadow-newgidmap
+ DEPENDS+=+shadow-utils +shadow-newuidmap +shadow-newgidmap
endef
define Package/lxc-unprivileged/description
define Package/lxc-common
$(call Package/lxc/Default)
TITLE:=LXC common files
- DEPENDS:= lxc
endef
define Package/lxc-hooks
$(call Package/lxc/Default)
TITLE:=LXC virtual machine hooks
- DEPENDS:= lxc
endef
define Package/lxc-templates
$(call Package/lxc/Default)
TITLE:=LXC virtual machine templates
- DEPENDS:= lxc
endef
define Package/lxc-configs
$(call Package/lxc/Default)
TITLE:=LXC virtual machine common config files
- DEPENDS:= lxc
endef
define Package/liblxc
SECTION:=libs
CATEGORY:=Libraries
TITLE:=LXC userspace library
- DEPENDS:= lxc +libcap +libpthread +LXC_SECCOMP:libseccomp
-endef
-
-define Package/lxc-lua
- $(call Package/lxc/Default)
- TITLE:=LXC Lua bindings
- DEPENDS:= lxc +liblua +liblxc
+ DEPENDS+= +libcap +libpthread +LXC_SECCOMP:libseccomp +libopenssl
endef
define Package/lxc-init
$(call Package/lxc/Default)
TITLE:=LXC Lua bindings
- DEPENDS:= lxc +liblxc
+ DEPENDS+= +liblxc
endef
CONFIGURE_ARGS += \
- --disable-apparmor \
- --disable-cgmanager \
+ --disable-werror \
+ --disable-rpath \
--disable-doc \
- --disable-examples \
- --disable-gnutls \
+ --disable-api-docs \
+ --disable-apparmor \
--disable-selinux \
- --disable-python \
- --enable-lua=yes \
- --with-lua-pc="$(STAGING_DIR)/usr/lib/pkgconfig/lua.pc"
-
-ifeq ($(CONFIG_LXC_SECCOMP),y)
-CONFIGURE_ARGS += --enable-seccomp
-else
-CONFIGURE_ARGS += --disable-seccomp
-endif
-
-MAKE_FLAGS += \
- LUA_INSTALL_CMOD="/usr/lib/lua" \
- LUA_INSTALL_LMOD="/usr/lib/lua"
+ --$(if $(CONFIG_LXC_SECCOMP),en,dis)able-seccomp \
+ --enable-capabilities \
+ --disable-examples
+ifdef CONFIG_USE_MIPS16
+ TARGET_CFLAGS += -minterlink-mips16
+endif
+TARGET_LDFLAGS += -lgcc_eh
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/lxc/
$(1)/usr/lib/
endef
-define Package/lxc-lua/install
- $(INSTALL_DIR) $(1)/usr/lib/lua
- $(CP) \
- $(PKG_INSTALL_DIR)/usr/share/lua/5.1/lxc.lua \
- $(1)/usr/lib/lua/
- $(INSTALL_DIR) $(1)/usr/lib/lua/lxc
- $(CP) \
- $(PKG_INSTALL_DIR)/usr/lib/lua/5.1/lxc/core.so \
- $(1)/usr/lib/lua/lxc/
-endef
-
define Package/lxc-init/install
$(INSTALL_DIR) $(1)/sbin
$(CP) \
define Package/lxc-$(1)
$(call Package/lxc/Default)
TITLE:=Utility lxc-$(1) from the LXC userspace tools
- DEPENDS:= lxc +lxc-common $(2) $(DEPENDS_$(1))
+ DEPENDS+= +lxc-common $(2) $(DEPENDS_$(1))
endef
define Package/lxc-$(1)/install
$(eval $(call BuildPackage,lxc-configs))
$(eval $(call BuildPackage,lxc-templates))
$(eval $(call BuildPackage,liblxc))
-$(eval $(call BuildPackage,lxc-lua))
$(eval $(call BuildPackage,lxc-init))
$(eval $(call BuildPackage,lxc-auto))
$(eval $(call BuildPackage,lxc-unprivileged))
fi
}
+#Export systemd cgroups
+boot() {
+ if [ ! -d /sys/fs/cgroup/systemd ]; then
+ mkdir -p /sys/fs/cgroup/systemd
+ mount -t cgroup -o rw,nosuid,nodev,noexec,relatime,none,name=systemd cgroup /sys/fs/cgroup/systemd
+ fi
+
+ if [ ! -d /run ]; then
+ ln -s /var/run /run
+ fi
+}
+++ /dev/null
-From c8f05589644d6b719e5a2c7fc548604f248be9be Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
-Date: Sun, 29 Jul 2018 17:44:06 +0200
-Subject: [PATCH] nl: avoid NULL pointer dereference
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It's a valid case to call nla_put() with NULL data and 0 len. It's done e.g. in
-the nla_put_attr().
-
-There has to be a check for data in nla_put() as passing NULL to the memcpy()
-is not allowed. Even if length is 0, both pointers have to be valid.
-
-For a reference see C99 standard (7.21.1/2), it says: "pointer arguments on
-such a call shall still have valid values".
-
-Reported-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
-Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
-[christian.brauner@ubuntu.com: adapted commit message]
-Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
----
- src/lxc/nl.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/src/lxc/nl.c
-+++ b/src/lxc/nl.c
-@@ -61,7 +61,8 @@ static int nla_put(struct nlmsg *nlmsg,
- rta = NLMSG_TAIL(nlmsg->nlmsghdr);
- rta->rta_type = attr;
- rta->rta_len = rtalen;
-- memcpy(RTA_DATA(rta), data, len);
-+ if (data && len)
-+ memcpy(RTA_DATA(rta), data, len);
- nlmsg->nlmsghdr->nlmsg_len = tlen;
- return 0;
- }
+++ /dev/null
---- a/src/lxc/storage/aufs.h
-+++ b/src/lxc/storage/aufs.h
-@@ -24,7 +24,6 @@
- #ifndef __LXC_AUFS_H
- #define __LXC_AUFS_H
-
--#define _GNU_SOURCE
- #include <stdbool.h>
- #include <stdio.h>
- #include <stdint.h>
+++ /dev/null
---- a/src/lxc/confile_utils.c
-+++ b/src/lxc/confile_utils.c
-@@ -677,7 +677,7 @@
- char *endptr = NULL;
-
- if (strncmp(*value, "unlimited", sizeof("unlimited") - 1) == 0) {
-- *res = RLIM_INFINITY;
-+ *res = (unsigned long)RLIM_INFINITY;
- *value += sizeof("unlimited") - 1;
- return true;
- }
--- /dev/null
+From 9f550ca53801b2b9c6c1c7a4d02ad525c704b145 Mon Sep 17 00:00:00 2001
+From: Robert Marko <robert.marko@sartura.hr>
+Date: Thu, 14 May 2020 13:40:53 +0200
+Subject: [PATCH] Remove distro check
+
+Signed-off-by: Robert Marko <robert.marko@sartura.hr>
+---
+ configure.ac | 28 ----------------------------
+ 1 file changed, 28 deletions(-)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -64,34 +64,6 @@ fi
+ LT_INIT
+ AC_SUBST([LIBTOOL_DEPS])
+
+-# Detect the distribution. This is used for the default configuration and
+-# for some distro-specific build options.
+-AC_MSG_CHECKING([host distribution])
+-AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO], [Specify the Linux distribution to target: One of redhat, redhatenterpriseserver, oracle, centos, fedora, suse, gentoo, debian, arch, slackware, plamo, paldo, openmandriva, pardus, sparclinux, altlinux.]))
+-if type lsb_release >/dev/null 2>&1 && test "z$with_distro" = "z"; then
+- with_distro=`lsb_release -is`
+-fi
+-if test "z$with_distro" = "z"; then
+- AC_CHECK_FILE(/etc/redhat-release,with_distro="redhat")
+- AC_CHECK_FILE(/etc/oracle-release,with_distro="oracle")
+- AC_CHECK_FILE(/etc/sparclinux-release,with_distro="sparclinux")
+- AC_CHECK_FILE(/etc/centos-release,with_distro="centos")
+- AC_CHECK_FILE(/etc/fedora-release,with_distro="fedora")
+- AC_CHECK_FILE(/etc/SuSE-release,with_distro="suse")
+- AC_CHECK_FILE(/etc/gentoo-release,with_distro="gentoo")
+- AC_CHECK_FILE(/etc/debian_version,with_distro="debian")
+- AC_CHECK_FILE(/etc/arch-release,with_distro="arch")
+- AC_CHECK_FILE(/etc/slackware-version,with_distro="slackware")
+- AC_CHECK_FILE(/etc/plamo-version,with_distro="plamo")
+- AC_CHECK_FILE(/etc/frugalware-release,with_distro="frugalware")
+- AC_CHECK_FILE(/etc/mandrakelinux-release, with_distro="openmandriva")
+- AC_CHECK_FILE(/etc/mandriva-release,with_distro="openmandriva")
+- AC_CHECK_FILE(/etc/pardus-release,with_distro="pardus")
+- AC_CHECK_FILE(/etc/altlinux-release,with_distro="altlinux")
+- AC_CHECK_FILE(/etc/pld-release,with_distro="pld")
+-fi
+-with_distro=`echo ${with_distro} | tr '[[:upper:]]' '[[:lower:]]'`
+-
+ if test "z$with_distro" = "zforsparc"; then
+ with_distro="sparclinux"
+ fi
+++ /dev/null
---- a/configure.ac
-+++ b/configure.ac
-@@ -47,34 +47,6 @@ AC_GNU_SOURCE
- LT_INIT
- AC_SUBST([LIBTOOL_DEPS])
-
--# Detect the distribution. This is used for the default configuration and
--# for some distro-specific build options.
--AC_MSG_CHECKING([host distribution])
--AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO], [Specify the Linux distribution to target: One of redhat, oracle, centos, fedora, suse, gentoo, debian, arch, slackware, plamo, paldo, openmandriva, pardus, sparclinux, altlinux.]))
--if type lsb_release >/dev/null 2>&1 && test "z$with_distro" = "z"; then
-- with_distro=`lsb_release -is`
--fi
--if test "z$with_distro" = "z"; then
-- AC_CHECK_FILE(/etc/redhat-release,with_distro="redhat")
-- AC_CHECK_FILE(/etc/oracle-release,with_distro="oracle")
-- AC_CHECK_FILE(/etc/sparclinux-release,with_distro="sparclinux")
-- AC_CHECK_FILE(/etc/centos-release,with_distro="centos")
-- AC_CHECK_FILE(/etc/fedora-release,with_distro="fedora")
-- AC_CHECK_FILE(/etc/SuSE-release,with_distro="suse")
-- AC_CHECK_FILE(/etc/gentoo-release,with_distro="gentoo")
-- AC_CHECK_FILE(/etc/debian_version,with_distro="debian")
-- AC_CHECK_FILE(/etc/arch-release,with_distro="arch")
-- AC_CHECK_FILE(/etc/slackware-version,with_distro="slackware")
-- AC_CHECK_FILE(/etc/plamo-version,with_distro="plamo")
-- AC_CHECK_FILE(/etc/frugalware-release,with_distro="frugalware")
-- AC_CHECK_FILE(/etc/mandrakelinux-release, with_distro="openmandriva")
-- AC_CHECK_FILE(/etc/mandriva-release,with_distro="openmandriva")
-- AC_CHECK_FILE(/etc/pardus-release,with_distro="pardus")
-- AC_CHECK_FILE(/etc/altlinux-release,with_distro="altlinux")
-- AC_CHECK_FILE(/etc/pld-release,with_distro="pld")
--fi
--with_distro=`echo ${with_distro} | tr '[[:upper:]]' '[[:lower:]]'`
--
- if test "z$with_distro" = "zforsparc"; then
- with_distro="sparclinux"
- fi
--- a/src/lxc/utils.h
+++ b/src/lxc/utils.h
-@@ -59,11 +59,7 @@ extern int mkdir_p(const char *dir, mode_t mode);
+@@ -35,11 +35,7 @@ extern int mkdir_p(const char *dir, mode
extern char *get_rundir(void);
/* Define getline() if missing from the C library */
-#endif
+#include "../include/getline.h"
- /* Define setns() if missing from the C library */
- #ifndef HAVE_SETNS
+ static inline int lxc_set_cloexec(int fd)
+ {
---- a/src/lxc/tools/lxc-checkconfig.in
-+++ b/src/lxc/tools/lxc-checkconfig.in
-@@ -3,6 +3,17 @@
+--- a/src/lxc/cmd/lxc-checkconfig.in
++++ b/src/lxc/cmd/lxc-checkconfig.in
+@@ -4,6 +4,17 @@
# Allow environment variables to override config
: ${CONFIG:=/proc/config.gz}
: ${MODNAME:=configs}
--- a/templates/lxc-download.in
+++ b/templates/lxc-download.in
-@@ -505,20 +505,7 @@ fi
+@@ -506,20 +506,7 @@ fi
# Unpack the rootfs
echo "Unpacking the rootfs"
-EXCLUDES=""
-excludelist=$(relevant_file excludes)
-if [ -f "${excludelist}" ]; then
-- while read -r line; do
-- EXCLUDES="${EXCLUDES} --exclude=${line}"
-- done < "${excludelist}"
+- while read -r line; do
+- EXCLUDES="${EXCLUDES} --exclude=${line}"
+- done < "${excludelist}"
-fi
-
-# Do not surround ${EXCLUDES} by quotes. This does not work. The solution could
-# is to use a function wrapper, but the latter can't be used here as the args
-# are dynamic. We thus need to ignore the warning brought by shellcheck.
-# shellcheck disable=SC2086
--tar --anchored ${EXCLUDES} --numeric-owner -xpJf \
-+tar --numeric-owner -xpJf \
- "${LXC_CACHE_PATH}/rootfs.tar.xz" -C "${LXC_ROOTFS}"
+-tar --anchored ${EXCLUDES} --numeric-owner -xpJf "${LXC_CACHE_PATH}/rootfs.tar.xz" -C "${LXC_ROOTFS}"
++tar --numeric-owner -xpJf "${LXC_CACHE_PATH}/rootfs.tar.xz" -C "${LXC_ROOTFS}"
mkdir -p "${LXC_ROOTFS}/dev/pts/"
+
+++ /dev/null
-From f48b5fd8ab03c200eaf5e3a9b03bcd01b2659cf3 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Thu, 2 Nov 2017 16:00:33 +0100
-Subject: [PATCH] Fix compilation on toolchain without prlimit
-
-Some toolchains which are not bionic like uclibc does not support
-prlimit or prlimit64. In this case, return an error.
-Moreover, if prlimit64 is available, use lxc implementation of prlimit.
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- configure.ac | 4 ++++
- src/lxc/Makefile.am | 6 ++++++
- src/lxc/conf.c | 12 +++++++++---
- 3 files changed, 19 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 642b78e7e1..63df7466cb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -643,6 +643,10 @@ AC_CHECK_FUNCS([prlimit],
- AM_CONDITIONAL(HAVE_PRLIMIT, true)
- AC_DEFINE(HAVE_PRLIMIT,1,[Have prlimit]),
- AM_CONDITIONAL(HAVE_PRLIMIT, false))
-+AC_CHECK_FUNCS([prlimit64],
-+ AM_CONDITIONAL(HAVE_PRLIMIT64, true)
-+ AC_DEFINE(HAVE_PRLIMIT64,1,[Have prlimit64]),
-+ AM_CONDITIONAL(HAVE_PRLIMIT64, false))
-
- # Check for some libraries
- AC_SEARCH_LIBS(sem_open, [rt pthread])
-diff --git a/src/lxc/Makefile.am b/src/lxc/Makefile.am
-index fff32ae4f3..8f0c11ecae 100644
---- a/src/lxc/Makefile.am
-+++ b/src/lxc/Makefile.am
-@@ -45,7 +45,10 @@ noinst_HEADERS += \
- ../include/ifaddrs.h \
- ../include/openpty.h \
- ../include/lxcmntent.h
-+endif
-+
- if !HAVE_PRLIMIT
-+if HAVE_PRLIMIT64
- noinst_HEADERS += ../include/prlimit.h
- endif
- endif
-@@ -142,7 +145,10 @@ liblxc_la_SOURCES += \
- ../include/ifaddrs.c ../include/ifaddrs.h \
- ../include/openpty.c ../include/openpty.h \
- ../include/lxcmntent.c ../include/lxcmntent.h
-+endif
-+
- if !HAVE_PRLIMIT
-+if HAVE_PRLIMIT64
- liblxc_la_SOURCES += ../include/prlimit.c ../include/prlimit.h
- endif
- endif
-diff --git a/src/lxc/conf.c b/src/lxc/conf.c
-index 44d9784303..8a66f2d02c 100644
---- a/src/lxc/conf.c
-+++ b/src/lxc/conf.c
-@@ -100,13 +100,14 @@
-
- #if IS_BIONIC
- #include <../include/lxcmntent.h>
--#ifndef HAVE_PRLIMIT
--#include <../include/prlimit.h>
--#endif
- #else
- #include <mntent.h>
- #endif
-
-+#if !defined(HAVE_PRLIMIT) && defined(HAVE_PRLIMIT64)
-+#include <../include/prlimit.h>
-+#endif
-+
- lxc_log_define(lxc_conf, lxc);
-
- #if HAVE_LIBCAP
-@@ -2457,10 +2458,15 @@ int setup_resource_limits(struct lxc_list *limits, pid_t pid) {
- return -1;
- }
-
-+#if HAVE_PRLIMIT || HAVE_PRLIMIT64
- if (prlimit(pid, resid, &lim->limit, NULL) != 0) {
- ERROR("failed to set limit %s: %s", lim->resource, strerror(errno));
- return -1;
- }
-+#else
-+ ERROR("Cannot set limit %s as prlimit is missing", lim->resource);
-+ return -1;
-+#endif
- }
- return 0;
- }
include $(TOPDIR)/rules.mk
PKG_NAME:=mariadb
-PKG_VERSION:=10.4.12
-PKG_RELEASE:=3
+PKG_VERSION:=10.4.13
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL := \
https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \
https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source
-PKG_HASH:=fef1e1d38aa253dd8a51006bd15aad184912fce31c446bb69434fcde735aa208
+PKG_HASH:=45bbbb12d1de8febd9edf630e940c23cf14efd60570c743b268069516a5d91df
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING THIRDPARTY
-DINSTALL_MANDIR=share/man \
-DINSTALL_MYSQLSHAREDIR=share/mariadb \
-DINSTALL_MYSQLTESTDIR="" \
+ -DINSTALL_PAMDATADIR="/etc/security" \
-DINSTALL_PAMDIR="/lib/security" \
-DINSTALL_PLUGINDIR=lib/mariadb/plugin \
-DINSTALL_SBINDIR=bin \
include $(TOPDIR)/rules.mk
PKG_NAME:=open-vm-tools
-PKG_VERSION:=11.0.5
+PKG_VERSION:=11.1.0
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-15389592.tar.gz
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-16036546.tar.gz
PKG_SOURCE_URL:=https://github.com/vmware/open-vm-tools/releases/download/stable-$(PKG_VERSION)
-PKG_HASH:=fc5ed2d752af33775250e0f103d622c0031d578f8394511617d2619b124dfc42
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-15389592
+PKG_HASH:=cb029af04357f19a899995f9e1ecfe55222b76158ab6d64fe8b56df0ccf87308
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-16036546
PKG_INSTALL:=1
PKG_BUILD_DEPENDS:=glib2/host
diff -urN a/lib/hgfsServer/hgfsServerLinux.c b/lib/hgfsServer/hgfsServerLinux.c
--- a/lib/hgfsServer/hgfsServerLinux.c
+++ b/lib/hgfsServer/hgfsServerLinux.c
-@@ -5294,8 +5294,8 @@
+@@ -5295,8 +5295,8 @@
goto exit;
}
-- LOG(6, ("%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
-- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max));
-+ LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n",
-+ __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max));
+- LOG(6, "%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
+- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max);
++ LOG(6, "%s: File Size limits: 0x%jx 0x%jx\n",
++ __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max);
/*
* Check the offset is within the file size range.
--program-prefix=% \
--program-suffix=% \
--exec-prefix=% \
- --disable-nls \
+ $(DISABLE_NLS) \
+ $(DISABLE_IPV6) \
, $(CONFIGURE_ARGS))
# Tell build system of qemu to not add _FORTIFY_SOURCE options and let the base
GO_PKG_INSTALL_ALL:=1
MAKE_PATH:=$(GO_PKG_WORK_DIR_NAME)/build/src/$(GO_PKG)
-MAKE_VARS += $(call GoPackage/Environment)
+MAKE_VARS += $(GO_PKG_VARS)
MAKE_FLAGS += \
COMMIT=$(PKG_SOURCE_VERSION)