Skip to content
Commits on Source (153)
{
"image": "docker.io/openwrt/sdk",
"features": {
}
}
...@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ...@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=htop PKG_NAME:=htop
PKG_VERSION:=3.3.0 PKG_VERSION:=3.3.0
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/htop-dev/htop/tar.gz/$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/htop-dev/htop/tar.gz/$(PKG_VERSION)?
...@@ -48,11 +48,12 @@ define Package/htop/config ...@@ -48,11 +48,12 @@ define Package/htop/config
config HTOP_LMSENSORS config HTOP_LMSENSORS
bool "Compile Htop with lm-sensors support" bool "Compile Htop with lm-sensors support"
depends on PACKAGE_htop depends on PACKAGE_htop
default y if TARGET_x86 default y
help help
Build htop with lm-sensors support. Build htop with lm-sensors support.
This doesn't add lm-sensors as dependency, This increases the binary by approx 5 kB.
if present it'll loaded using dlopen(). Users wanting this functionality need to
install libsensors.
endef endef
CONFIGURE_ARGS += \ CONFIGURE_ARGS += \
......
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=iotop
PKG_VERSION:=0.6
PKG_RELEASE:=1
PKG_MAINTAINER:=Javier Marcet <javier@marcet.info>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://guichaz.free.fr/iotop/files/$(PKG_SOURCE)?
PKG_HASH:=3adea2a24eda49bbbaeb4e6ed2042355b441dbd7161e883067a02bfc8dcef75b
PKG_LICENSE:=GPL
include $(INCLUDE_DIR)/package.mk
include ../../lang/python/python3-package.mk
PYTHON3_PKG_SETUP_ARGS:="--optimize=1"
define Package/iotop
SECTION:=admin
CATEGORY:=Administration
URL:=http://guichaz.free.fr/iotop/
TITLE:=iotop
DEPENDS:=+python3-light
VARIANT:=python3
endef
define Package/iotop/description
Python program with a top like UI used to show of behalf of which process is the I/O going on
endef
$(eval $(call Py3Package,iotop))
$(eval $(call BuildPackage,iotop))
$(eval $(call BuildPackage,iotop-src))
--- ./iotop.py-orig 2013-05-27 00:44:18.000000000 +0200
+++ ./iotop.py 2019-11-26 13:32:22.383729370 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
# iotop: Display I/O usage of processes in a top like UI
# Copyright (c) 2007, 2008 Guillaume Chazarain <guichaz@gmail.com>
# GPL version 2 or later
--- ./setup.py-orig 2013-05-27 00:44:18.000000000 +0200
+++ ./setup.py 2019-11-23 02:30:27.237162616 +0100
@@ -7,7 +7,7 @@ from iotop.version import VERSION
# Dirty hack to make setup.py install the iotop script to sbin/ instead of bin/
# while still honoring the choice of installing into local/ or not.
if hasattr(distutils_install, 'INSTALL_SCHEMES'):
- for d in distutils_install.INSTALL_SCHEMES.itervalues():
+ for d in distutils_install.INSTALL_SCHEMES.values():
if d.get('scripts', '').endswith('/bin'):
d['scripts'] = d['scripts'][:-len('/bin')] + '/sbin'
--- ./setup.py-orig 2019-11-26 10:14:27.000000000 +0100
+++ ./setup.py 2019-11-26 13:30:00.403150112 +0100
@@ -4,13 +4,6 @@ from distutils.core import setup
from distutils.command import install as distutils_install
from iotop.version import VERSION
-# Dirty hack to make setup.py install the iotop script to sbin/ instead of bin/
-# while still honoring the choice of installing into local/ or not.
-if hasattr(distutils_install, 'INSTALL_SCHEMES'):
- for d in distutils_install.INSTALL_SCHEMES.values():
- if d.get('scripts', '').endswith('/bin'):
- d['scripts'] = d['scripts'][:-len('/bin')] + '/sbin'
-
setup(name='iotop',
version=VERSION,
description='Per process I/O bandwidth monitor',
--- ./iotop/data.py-orig 2020-01-16 11:21:12.827874630 +0100
+++ ./iotop/data.py 2020-01-16 11:43:56.467458186 +0100
@@ -285,8 +285,8 @@ class ProcessInfo(DumpableObject):
def get_cmdline(self):
# A process may exec, so we must always reread its cmdline
try:
- proc_cmdline = open('/proc/%d/cmdline' % self.pid)
- cmdline = proc_cmdline.read(4096)
+ proc_cmdline = open('/proc/%d/cmdline' % self.pid, 'rb')
+ cmdline = proc_cmdline.read(4096).decode('utf-8', errors='replace')
except IOError:
return '{no such process}'
proc_status = parse_proc_pid_status(self.pid)
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# Copyright (C) 2014 OpenWrt.org # Copyright (C) 2014 OpenWrt.org
START=60 START=99
USE_PROCD=1 USE_PROCD=1
PROG=/usr/bin/monit PROG=/usr/bin/monit
......
...@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk ...@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=reschroot PKG_NAME:=reschroot
PKG_VERSION:=1.6.13 PKG_VERSION:=1.6.13
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeberg.org/shelter/reschroot/archive/release PKG_SOURCE_URL:=https://codeberg.org/shelter/reschroot/archive/release
...@@ -27,6 +27,9 @@ define Package/schroot ...@@ -27,6 +27,9 @@ define Package/schroot
TITLE:=Securely enter a chroot and run a command or login shell. TITLE:=Securely enter a chroot and run a command or login shell.
DEPENDS:=$(ICONV_DEPENDS) \ DEPENDS:=$(ICONV_DEPENDS) \
+boost +boost-filesystem +boost-iostreams +boost-program_options +boost-regex \ +boost +boost-filesystem +boost-iostreams +boost-program_options +boost-regex \
+!BUSYBOX_CONFIG_REALPATH:coreutils-realpath \
+!BUSYBOX_CONFIG_FEATURE_STAT_FORMAT:coreutils-stat \
+!BUSYBOX_CONFIG_TAC:coreutils-tac \
+SCHROOT_BTRFS:btrfs-progs \ +SCHROOT_BTRFS:btrfs-progs \
+SCHROOT_LOOPBACK:losetup \ +SCHROOT_LOOPBACK:losetup \
+SCHROOT_LVM:lvm2 \ +SCHROOT_LVM:lvm2 \
......
...@@ -75,10 +75,10 @@ ...@@ -75,10 +75,10 @@
# Device and inode # Device and inode
- da=$(/usr/bin/stat --format="%d %i" "$1") - da=$(/usr/bin/stat --format="%d %i" "$1")
+ da=$(/bin/stat --format="%d %i" "$1") + da=$(stat -c "%d %i" "$1")
# This one can fail since it might not exist yet # This one can fail since it might not exist yet
- db=$(/usr/bin/stat --format="%d %i" "$2" 2>/dev/null || :) - db=$(/usr/bin/stat --format="%d %i" "$2" 2>/dev/null || :)
+ db=$(/bin/stat --format="%d %i" "$2" 2>/dev/null || :) + db=$(stat -c "%d %i" "$2" 2>/dev/null || :)
if [ "$da" = "$db" ]; then if [ "$da" = "$db" ]; then
COPY="false" COPY="false"
...@@ -98,10 +98,10 @@ ...@@ -98,10 +98,10 @@
# Device and inode # Device and inode
- dr=$(/usr/bin/stat --format="%d %i" "/etc/$db") - dr=$(/usr/bin/stat --format="%d %i" "/etc/$db")
+ dr=$(/bin/stat --format="%d %i" "/etc/$db") + dr=$(stat -c "%d %i" "/etc/$db")
# This one can fail since it might not exist yet # This one can fail since it might not exist yet
- dc=$(/usr/bin/stat --format="%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :) - dc=$(/usr/bin/stat --format="%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :)
+ dc=$(/bin/stat --format="%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :) + dc=$(stat -c "%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :)
# If the database inside and outside the chroot is the # If the database inside and outside the chroot is the
# same, it's very likely that dup_nss would blank the # same, it's very likely that dup_nss would blank the
......
...@@ -44,7 +44,7 @@ source kernel { ...@@ -44,7 +44,7 @@ source kernel {
}; };
destination messages { destination messages {
file("/var/log/messages"); file("/var/log/messages" template("${C_DATE} ${HOST} ${MSGHDR}${MESSAGE}\n") );
}; };
log { log {
......
...@@ -2,11 +2,12 @@ include $(TOPDIR)/rules.mk ...@@ -2,11 +2,12 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mdio-netlink PKG_NAME:=mdio-netlink
PKG_RELEASE:=1 PKG_VERSION:=1.3.1
PKG_RELEASE:=2
PKG_SOURCE_URL:=https://github.com/wkz/mdio-tools PKG_SOURCE_URL:=https://github.com/wkz/mdio-tools
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=1.3.1 PKG_SOURCE_VERSION:=f74eaf38dbda441df4fcaeb21ca4465957953a2f
PKG_MIRROR_HASH:=97dfd25d8cdf5994eeb8cb0a5862c993b8aef373b280bca567d41d4113f494a9 PKG_MIRROR_HASH:=97dfd25d8cdf5994eeb8cb0a5862c993b8aef373b280bca567d41d4113f494a9
PKG_LICENSE:=GPL-2.0-only PKG_LICENSE:=GPL-2.0-only
......
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=lua-eco PKG_NAME:=lua-eco
PKG_VERSION:=3.2.0 PKG_VERSION:=3.3.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL=https://github.com/zhaojh329/lua-eco/releases/download/v$(PKG_VERSION) PKG_SOURCE_URL=https://github.com/zhaojh329/lua-eco/releases/download/v$(PKG_VERSION)
PKG_HASH:=b317599302c5c73195d980bfcfc1977e55da485137fc81f16d1a958ca893e2ed PKG_HASH:=597c3edbb20c35f638b26b4fa7a02638c48f96f0330758a7ac1c44079b2170a3
PKG_MAINTAINER:=Jianhui Zhao <zhaojh329@gmail.com> PKG_MAINTAINER:=Jianhui Zhao <zhaojh329@gmail.com>
PKG_LICENSE:=MIT PKG_LICENSE:=MIT
......
include $(TOPDIR)/rules.mk
PKG_NAME:=luaffi
PKG_MAINTAINER:=Javier Marcet <javier@marcet.info>
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/jmckaskill/luaffi
PKG_SOURCE_DATE:=2013-11-08
PKG_SOURCE_VERSION=abc638c9341025580099dcf77795c4b320ba0e63
PKG_MIRROR_HASH:=f92d5f36fc54c36f292ec994ce34f6153685050f54405bdb838a29f959068c21
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=README.md
PKG_BUILD_DEPENDS:=lua/host
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
define Package/luaffi
SUBMENU:=Lua
SECTION:=lang
CATEGORY:=Languages
TITLE:=Library for calling C function and manipulating C types from lua
URL:=https://github.com/jmckaskill/luaffi
DEPENDS:= +lua
endef
define Package/luaffi/description
Library for calling C function and manipulating C types from lua. Designed to be interface compatible with the FFI library in luajit.
endef
define Package/luaffi/install
$(INSTALL_DIR) $(1)/usr/lib/lua/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/ffi.so $(1)/usr/lib/lua/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,luaffi))
--- ./Makefile-orig 2013-11-08 23:01:32.000000000 +0100
+++ ./Makefile 2021-10-18 22:45:50.342744216 +0200
@@ -3,10 +3,10 @@
PKG_CONFIG=pkg-config
LUA=lua
-LUA_CFLAGS=`$(PKG_CONFIG) --cflags lua5.2 2>/dev/null || $(PKG_CONFIG) --cflags lua`
+LUA_CFLAGS=`$(PKG_CONFIG) --cflags lua5.1 2>/dev/null || $(PKG_CONFIG) --cflags lua`
SOCFLAGS=-fPIC
SOCC=$(CC) -shared $(SOCFLAGS)
-CFLAGS=-fPIC -g -Wall -Werror $(LUA_CFLAGS) -fvisibility=hidden -Wno-unused-function --std=gnu99
+CFLAGS=-fPIC -g -Wall -Werror $(LUA_CFLAGS) -fvisibility=hidden -Wno-unused-function --std=gnu99 -Wno-error=misleading-indentation
MODNAME=ffi
MODSO=$(MODNAME).so
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=luajit2 PKG_NAME:=luajit2
PKG_VERSION:=2.1-20231117 PKG_VERSION:=2.1-20240314
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/openresty/luajit2/archive/refs/tags/v$(PKG_VERSION).tar.gz? PKG_SOURCE_URL:=https://github.com/openresty/luajit2/archive/refs/tags/v$(PKG_VERSION).tar.gz?
PKG_HASH:=cc92968c57c00303eb9eaebf65cc8b29a0f851670f16bb514896ab5057ae381f PKG_HASH:=3efddc4104a0ce720ddf4da3d9bce927f3c5816a8a45a043462ca58914cde271
PKG_MAINTAINER:=Javier Marcet <javier@marcet.info> PKG_MAINTAINER:=Javier Marcet <javier@marcet.info>
PKG_LICENSE:=MIT PKG_LICENSE:=MIT
......
include $(TOPDIR)/rules.mk
PKG_NAME:=lualogging
PKG_VERSION:=1.8.2
PKG_RELEASE:=1
PKG_MAINTAINER:=Javier Marcet <javier@marcet.info>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYRIGHT
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/lunarmodules/lualogging/archive/refs/tags/v${PKG_VERSION}.tar.gz?
PKG_HASH:=30655889db14104f1509d20ba423a43ea8ce85f4289acdcf6b62477159482c60
PKG_BUILD_DEPENDS:=lua/host luarocks/host
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
define Package/lualogging
SUBMENU:=Lua
SECTION:=lang
CATEGORY:=Languages
TITLE:=Simple API to use logging features in Lua
URL:=https://github.com/lunarmodules/lualogging
DEPENDS:= +lua +luasocket
endef
define Package/lualogging/description
LuaLogging provides a simple API to use logging features in Lua. Its design was based on log4j.
endef
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include
# Note: the duplicate environment exports are not a typo!
# First is for luarocks, then the second is for the compilation
# invoked by luarocks
# (Same setup as luaposix)
define Build/Compile
cd $(PKG_BUILD_DIR) && \
LUA_LIBDIR=$(STAGING_DIR)/usr/lib/lua \
LUA_PKGNAME=lua5.1 \
CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
CC="$(TARGET_CC)" LD="$(TARGET_CC)" \
luarocks make --pack-binary-rock rockspecs/lualogging-${PKG_VERSION}-1.rockspec \
LUA_LIBDIR=$(STAGING_DIR)/usr/lib/lua \
YAML_DIR=$(STAGING_DIR)/usr \
LUA_INCDIR=$(STAGING_DIR)/usr/include \
LUA_PKGNAME=lua5.1 \
CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
CC="$(TARGET_CC)" LD="$(TARGET_CC)"
endef
define Package/lualogging/install
$(INSTALL_DIR) $(1)/usr/lib/lua/logging
$(INSTALL_DATA) $(PKG_BUILD_DIR)/src/logging/* $(1)/usr/lib/lua/logging/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/src/logging.lua $(1)/usr/lib/lua/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,lualogging))
include $(TOPDIR)/rules.mk
PKG_NAME:=nginx-lua-prometheus
PKG_VERSION:=0.20230607
PKG_RELEASE:=1
PKG_MAINTAINER:=Javier Marcet <javier@marcet.info>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
PKG_SOURCE:=$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/knyar/nginx-lua-prometheus/archive/refs/tags
PKG_HASH:=4e5be322a24d4de2b5e8e5c54c43b02a77d9b6ea525347078531c5517b93d9dc
HOST_BUILD_DEPENDS:=lua/host luarocks/host
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
define Package/nginx-lua-prometheus
SUBMENU:=Lua
SECTION:=lang
CATEGORY:=Languages
TITLE:=Prometheus metric library for Nginx
URL:=https://github.com/knyar/nginx-lua-prometheus
DEPENDS:= +lua
endef
define Package/ngina-lua-prometheus/description
Lua library that can be used with Nginx to keep track of metrics and expose them to be pulled by Prometheus.
endef
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include
# Note: the duplicate environment exports are not a typo!
# First is for luarocks, then the second is for the compilation
# invoked by luarocks
# (Same setup as luaposix)
define Build/Compile
cd $(PKG_BUILD_DIR) && \
LUA_LIBDIR=$(STAGING_DIR)/usr/lib/lua \
LUA_PKGNAME=lua5.1 \
CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
CC="$(TARGET_CC)" LD="$(TARGET_CC)" \
luarocks make --pack-binary-rock nginx-lua-prometheus-${PKG_VERSION}-1.rockspec \
LUA_LIBDIR=$(STAGING_DIR)/usr/lib/lua \
YAML_DIR=$(STAGING_DIR)/usr \
LUA_INCDIR=$(STAGING_DIR)/usr/include \
LUA_PKGNAME=lua5.1 \
CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
CC="$(TARGET_CC)" LD="$(TARGET_CC)"
endef
define Package/nginx-lua-prometheus/install
$(INSTALL_DIR) $(1)/usr/lib/lua/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/prometheus{,_keys,_resty_counter}.lua $(1)/usr/lib/lua/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,nginx-lua-prometheus))
...@@ -24,6 +24,7 @@ HOST_BUILD_DEPENDS:=python3/host ...@@ -24,6 +24,7 @@ HOST_BUILD_DEPENDS:=python3/host
HOST_BUILD_PARALLEL:=1 HOST_BUILD_PARALLEL:=1
PKG_BUILD_DEPENDS:=python3/host PKG_BUILD_DEPENDS:=python3/host
PKG_BUILD_FLAGS:=no-lto
PKG_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_ASLR_PIE:=0 PKG_ASLR_PIE:=0
......
From 34d914c931c6c7a1d67b0b8da0790cd9a9f2b10f Mon Sep 17 00:00:00 2001
From: Javier Marcet <javier@marcet.info>
Date: Fri, 21 Oct 2022 23:35:26 +0200
Subject: [PATCH] Revert "Replace setup.py with build"
This reverts commit fc50845c4af02fcee0c5218894b2b07a8a8940f8.
---
Makefile | 6 +++---
pyproject.toml | 3 ---
setup.py | 17 +++++++++++++++++
3 files changed, 23 insertions(+), 3 deletions(-)
delete mode 100644 pyproject.toml
create mode 100644 setup.py
--- a/Makefile
+++ b/Makefile
@@ -54,7 +54,7 @@ clean:
.PHONY: build
build:
- python -m build
+ python setup.py sdist bdist_wheel
.PHONY: publish
publish:
@@ -72,12 +72,12 @@ dev: instdev test
.PHONY: instdev
instdev:
pip install -r dev-requirements.txt
- pip install -e .
+ python setup.py develop
@echo "$@ done."
.PHONY: install
install:
- pip install .
+ python setup.py install
@echo "$@ done."
.PHONY: clobber
--- a/pyproject.toml
+++ /dev/null
@@ -1,3 +0,0 @@
-[build-system]
-requires = ["setuptools"]
-build-backend = "setuptools.build_meta"
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,17 @@
+# Copyright 2015-2020 Nir Cohen
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from setuptools import setup
+
+setup()
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=python-orjson PKG_NAME:=python-orjson
PKG_VERSION:=3.9.13 PKG_VERSION:=3.10.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PYPI_NAME:=orjson PYPI_NAME:=orjson
PKG_HASH:=fc6bc65b0cf524ee042e0bc2912b9206ef242edfba7426cf95763e4af01f527a PKG_HASH:=ba4d8cac5f2e2cff36bea6b6481cdb92b38c202bcec603d6f5ff91960595a1ed
PKG_MAINTAINER:=Timothy Ace <openwrt@timothyace.com> PKG_MAINTAINER:=Timothy Ace <openwrt@timothyace.com>
PKG_LICENSE:=Apache-2.0 MIT PKG_LICENSE:=Apache-2.0 MIT
......